@prochanev

Как организовать логгирование в python приложении?

Добрый день! Надеюсь на ответ более опытных коллег.

Как лучше организовать логирование в python приложении, которое запускается через systemd или в docker, можно ли в таком случае все отправлять в stdout, stderr, а запись в файлы положить на плечи systemd, docker?

Для логгирование на уровне приложения вижу плюсы в том, что мы можем более гибко с разными фильтрами, ханлерами раскладывать все по файлам с ротацией.

Для логгирования уровнем выше преимуществом будет простота настройки и меньше кода относящегося к логгированию.

Речь особенно про блокирующие хандлеры, smtp, file, ну или кастомный TelegrammHandler в асинхронных или в Web приложениях. В рецептах библиотеки logging в этом случае предлагается использовать QueueListner, QueueHandler, но ведь это опять усложнение на уровне приложения.

Или все таки все зависит от ситуации? Тогда в каком случае применять тот и другой подход?
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Ошибки выкидывай в sentry, остальное зависит сугубо от твоего желания и удобства. Я никогда особо не заморачивался с логами, для некоторых сервисов нужно было писать ход выполнения, использовал коробочный logging или loguru, запись в файл, в случае с docker можно монтировать в отдельный каталог.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы