Вращающиеся журналы с разными именами с помощью logrotate

К имени журналов добавляется метка времени при создании, например, log-20140526-062503.txt Есть ли способ управлять этим? Я пытался с пользовательским файлом состояния, но поворот журнала не удаляет старый файл.

/var/logs/*.txt {
rotate 15
daily
compress
missingok
nocreate
}

Любая помощь?

1 ответ

Решение

Проблема в том, что logrotate будет рассматривать каждый новый лог-файл с этим пользовательским именем как отдельную сущность для вращения (так же, как access_log а также error_log будет обрабатываться отдельно, если шаблон файла будет /var/log/httpd/*log). Таким образом, вы никогда не получите 15 предметов для поворота.

Один из способов обойти это может быть с maxage опция:

максимальное количество

Удалите повернутые журналы старше дней. Возраст проверяется только в том случае, если файл журнала должен быть повернут. Файлы отправляются по указанному адресу, если настроены почта и почта.

но я не уверен, если это действительно работает.

Если это не сработает, я бы просто рекомендовал использовать задание cron, удаляющее файлы старше 15 дней, соответствующие вашему шаблону, так как кажется, что ваше приложение уже использует новый файл журнала каждый день.

Другие вопросы по тегам