Как вести логгирование правильно: забудьте про print, только logging
Вставка
- Опубліковано 6 лис 2024
- 🔥 ⏱💵Научись зарабатывать с помощью Python - money-python.c...
Код из урока: money-python.c...
В этом коротком видео я покажу простой пример логгирования ваших ошибок и инфо, которые вы будете выводить в отдельные файлы.
Также не забывайте подписываться на наш канал, вступать в чат и забирать подарки для юных(и не очень) программистов.
Добавиться в канал и чат: money-python.c...
Очень мелко, если смотреть с телефона, то по крайне мере точно(
В остальном спасибо большое за видео, идеально всё 👍🙂
Автору большое спасибо! Видео краткое, четкое и лаконичное. Просто и точно!
Краткость сестра таланта. А когда кратко и лаконично, это уже сам талант. Респект
Логирование, кстати , очень удобно . Хотя это только моё мнение. Спасибо за познавательный видос !
От души!
Спасибо за урок!
если filemode выдает ошибку, альтернатива mode='w' :
import logging
# добавляем поток вывода в файл (с перезаписью)
file_log = logging.FileHandler("thecode.log", mode='w')
# и вывод в консоль
console_out = logging.StreamHandler()
# указываем эти два потока в настройках логгера
logging.basicConfig(handlers=(file_log, console_out), level=logging.DEBUG,
format='%(levelname)s (%(asctime)s): %(message)s (Line: %(lineno)d) [%(filename)s]',
datefmt='%d/%m/%Y %I/%M/%S', encoding='utf-8')
Я правильно понимаю, что можно использовать либо точки остановы для дебага либо модуль логгинг. Это зависит от удобства ?
Зачем logging, если есть loguru?
Логинг из коробки, не нужно зависимостей лишних вертеть, плюс он поинтересней
тема разнесения вывода информации в разные файлы не раскрыта! Ну например ошибки в один лог, вывод инфы в другой.
А логировать разве можно только ошибки? Им, как я понимаю, можно вообще заменить print , в некоторых местах.
И что значит print (f"")?
Uptd: когда-то я начинал знакомиться с питоном с версии 2.4, тогда такой фичи не было.
Для тех кто не знает, гуглите print(f)
f - это просто f-строки, т.е. форматированные строки, когда можно прямо в строку вставить либо значение переменной либо целое выражение с помощью фигурных скобок {}, например, f"val1={val1}" и f-строки можно использовать везде где используются строки, не обязательно только в print.