Мазмунга өтүү

Сабактын башталышы

Python-догу логирлөө

Чыныгы программалар өз ишин кабарлаган структуралуу, деңгээлдүү ыкма

Негизги идея: logging модулу программаңызга убакыт белгиси коюлган, категорияланган билдирүүлөрдүн агымын чыгарууга мүмкүнчүлүк берет. print() тен айырмаланып, ар бир билдирүү маанилүүлүк деңгээлин алып жүрөт, бир нече жерге бирден багытталышы мүмкүн (консоль, файл, тармак) жана кодду өзгөртпөстөн күчөтүлүшү же басаңдатылышы мүмкүн. Орто масштабдагы жана өндүрүштүк программалар эмне болгонун, качан жана канчалык оор экенин ушинтип билдирет.
Аягында сиз төмөнкүлөрдү жасай аласыз:
  • print() эмне үчүн мүчүлүштүктөрдү издөө куралы катары чектелүү экенин түшүндүрө аласыз,
  • беш логирлөө деңгээлинин ичинен туурасын тандай аласыз,
  • аталышы бар логгер ала аласыз жана тамыр логгерди түшүнөсүз,
  • жазууларды консолго жана файлга жөнөтүү үчүн иштеткичтерди жана форматтерлерди кошо аласыз,
  • logger.exception аркылуу өзгөчө учурларды толук изи менен жаза аласыз.

1. Эмне үчүн print() жетишсиз

Тилди үйрөнүп жатканда print() кодуңуз эмне кылып жатканын карап көрүүнүн табигый жолу болчу. Ал иштейт, бирок анда маанилүүлүк түшүнүгү да, эч кандай куралган структура да жок. Ар бир билдирүү бирдей, баары стандарттык чыгарууга барат, аларды тынчтандыруу үчүн саптарды физикалык түрдө өчүрүүгө же комментарий кылууга туура келет.

Чыныгы программа мындай суроолорго жооп бериши керек: кандай күнүмдүк маалымат болду? кандай эскертүүлөрдөн аман өттүк? кайсы каталар чындап бир нерсени бузду? print() менен буларды айырмалап болбойт, "өндүрүштө эскертүүлөрдү жана андан жаманды көрсөт, бирок мүчүлүштүктөрдү издеп жатканда баарын" деп кодду кайра жазбай айтуу да мүмкүн эмес.

Маселеprint()logging
Билдирүүнүн маанилүүлүгүжок, баары бирдейбеш деңгээл
Чыгаруу кайда баратар дайым stdoutкошкон каалаган иштеткичтер
Билдирүүлөрдү өчүрүүкодду өзгөртүүбир деңгээл жөндөөсүн алмаштыруу
Убакыт жана булаккол менен кошосузформаттер кошот
Толук изди көрсөтүүкол мененexc_info / exception()

Логирлөө "билдирүү басып чыгаруу" ыңгайлуулугун сактап, өсүп жаткан программага керектүү көзөмөлдү кошот.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө