Как предусмотреть интеграцию логов Python-приложения с системами логирования разных заказчиков без пересборки приложения?

Разделите создание событий и их доставку: приложение пишет стабильные структурированные логи, а формат, уровни и handlers задаются конфигурацией. Часто проще отдавать JSON в stdout и адаптировать сборщик у заказчика.

Короткий ответ

Что ответить на собеседовании

Разделите создание событий и их доставку: приложение пишет стабильные структурированные логи, а формат, уровни и handlers задаются конфигурацией. Часто проще отдавать JSON в stdout и адаптировать сборщик у заказчика.

Подробный разбор

Ответ с пояснениями

Разделите создание событий и их доставку: приложение пишет стабильные структурированные логи, а формат, уровни и handlers задаются конфигурацией. Часто проще отдавать JSON в stdout и адаптировать сборщик у заказчика.

В Python logging поддерживает конфигурацию через dictConfig. Конфиг загружают из контролируемого файла или окружения без пересборки, но не принимают произвольные небезопасные классы от недоверенного источника. Для разных систем можно настраивать внешние агенты доставки. Маскировка секретов выполняется до экспорта, а backpressure и сбои лог-системы не должны бесконтрольно блокировать приложение.

Источник: docs.python.org.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее