Files
drhider/History/code-fixes/2026-08-20-logging-file.md
T

1.2 KiB

2026-08-20 — Файловый лог в поде (v0.0.52)

Проблема

В v0.0.51 добавили логирование в stderr, но на платформе Штурвал kubectl logs НЕ показывает stdout/stderr приложения (fd 1/2 python -> pipe, который читает супервизор платформы, а не kubelet). Логи приложения недоступны.

Решение

setup_logging() в site/app.py:

  • логи в stderr (для локального запуска)
    • FileHandler в /tmp/drhider.log (путь через env LOG_FILE)
  • уровень через env LOG_LEVEL (DEBUG/INFO/WARNING)
  • root.handlers.clear() + свои handler'ы (не полагаемся на basicConfig)
  • если файл не открылся — не падаем, пишем в stderr

Как читать логи в поде

kubectl exec -n 20a75175-a58c-49cb-b8fa-e86367b1a8dc <pod> -c app -- cat /tmp/drhider.log

(или tail -f). Версия 0.0.52.

Проверено локально

Файл /tmp/drhider.log создаётся, пишет "Logging configured, version=0.0.52" и сообщения логгеров.