Настройте Logrotate, чтобы он вращался только частично

212
Minzkraut

Я использую Logrotate, чтобы вращать логи Apache. Но вместо того, чтобы начинать с пустого файла журнала после каждого поворота, я бы хотел сохранить несколько строк из старого журнала.

Есть ли решение, которое предотвращает дублирование линий при следующем повороте? Является ли Logrotate даже правильным инструментом для этого?

0
«Я хотел бы сохранить некоторые строки из старого журнала». Кажется, это невозможно. DavidPostill 6 лет назад 0
«Есть ли решение, которое предотвращает дублирование линий при следующем повороте?» А? Что ты хочешь этим сказать? DavidPostill 6 лет назад 0
@DavidPostill, если я скопирую, скажем, 10 строк в новый журнал, эти строки будут присутствовать в file.log.1 и file.log, эффективно дублируя данные, если я не вырежу их из старого файла. Minzkraut 6 лет назад 0

1 ответ на вопрос

1
mtak

Нет, это невозможно. Logrotate вращает весь файл.

Конечно, было бы возможно написать скрипт, который объединит файлы вместе и покажет вам также последние строки предыдущего журнала, базовый пример:

#!/bin/bash  tail -5 /var/log/apache2/access.log.1 cat /var/log/apache2/access.log 

Похожие вопросы