Ротация журнала Tinyproxy: почему maxsize 100M — не жёсткий предел
logrotate проверяет maxsize только при запуске. Задайте частоту проверки и обработку повторного открытия журнала вместе с порогом.
Запись maxsize 100M — это триггер ротации, а не постоянный предел файла журнала Tinyproxy. Если logrotate запускается раз в сутки, файл может вырасти сверх 100 MB до следующей проверки.
Если Tinyproxy пишет напрямую в LogFile, добавьте такую политику в существующую секцию logrotate:
daily
maxsize 100M
rotate 7
compress
delaycompressСохраните правильный путь, владельца, права create и специфичную для службы обработку postrotate из установленной секции. Этот фрагмент задаёт политику хранения, а не полную интеграцию со службой.
Настройте более частый запуск logrotate, если ежедневные проверки оставляют слишком большой прирост. Каждый запуск оценивает правила; он не обязательно выполняет ротацию. При ротации по размеру rotate 7 означает семь ротированных файлов и может охватывать меньше семи дней.
Повторное открытие завершает ротацию
После переименования файла Tinyproxy должен заново открыть свой журнал. Tinyproxy документирует SIGUSR1 как перезагрузку конфигурации и закрытие с повторным открытием файла журнала; конфигурация фильтров тоже перезагружается. Сохраните поставляемый помощник, который уже выполняет правильное действие, вместо того чтобы угадывать сигнал или расположение PID-файла.
Удаление активного файла не согласует это повторное открытие. copytruncate избегает схемы «переименовать и открыть заново», но имеет документированный интервал, в течение которого данные могут быть потеряны при копировании и усечении.
Если прокси отправляет журналы в Syslog, применяйте хранение в принимающей системе логирования, а не добавляйте правило для файла, который Tinyproxy не пишет.