CSV TimedRotatingFileHandler не вращает файлы по времени

Нам нужно выполнить запрос для нашего приложения на Python (версия 3.11.7), Django (версия 3.2.23), для регистрации определенных событий, связанных с безопасностью, в файле csv, который будет обновляться ежечасно и будет иметь имя, подобное audit_logs20250130_0800-0900.csv.

Наш серверный модуль Django запущен в контейнере docker с точкой входа, подобной gunicorn wsgi:application --bind 0.0.0.0:8000 --workers 4 --threads 4

Мы пытаемся реализовать это, наследуя от logging.обработчики.TimedRotatingFileHandler для реализации CSVTimedRotatingFileHandler, который выглядит следующим образом:

События в csv-файле регистрируются нормально, но ролловер файла не выполняется. Если мы войдем в python manage.py оболочка внутри контейнера django, ведение журнала.обработчики.TimedRotatingFileHandler.shouldRollover возвращает правильные результаты, и если мы вручную выполним ведение журнала.обработчики.TimedRotatingFileHandler.доРолловер это тоже происходит нормально.

Но когда генерируются сообщения журнала, все они записываются в базовый файл audit_logs.csv навсегда, и ротация не происходит.

Есть идеи, почему?

Вернуться на верх