RotatingFileHandler сохраняет файл журнала открытымPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 RotatingFileHandler сохраняет файл журнала открытым

Сообщение Anonymous »

Я использую RotatingFileHandler для ротации файлов журналов в приложении Python:

Код: Выделить всё

    logger.addHandler(
RotatingFileHandler(
filename=args.log_file, mode="w", maxBytes=1_000_000, backupCount=4
)
)
Приложение работает в течение нескольких дней, создавая 4 файла журнала размером 1 М каждый. Я обнаружил, что последний файл все еще открыт в приложении:

Код: Выделить всё

[my@myhost monitoring *PROD*]$ sudo lsof -a +L1 /app
COMMAND   PID     USER   FD   TYPE DEVICE   SIZE/OFF NLINK     NODE NAME
python3 44759 me    3w   REG  253,3 4346986722     0 50375001 /app/exploit/monitoring/monitoringd.log.4 (deleted)
Как видите, размер файла довольно большой — 4,3 ГБ. Чтобы вернуть диск, мне нужно перезапустить приложение.
У кого-нибудь возникала такая ошибка? Вы нашли решение этой проблемы?
Я использую Python 3.9.18.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -file-open
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»