У меня есть следующий скрипт logrotate
/path/to/folder/*.logs {
daily
rotate 30
notifempty
sharedscripts
copytruncate
compress
dateext
preremove
if file --mime-type "$1" | grep -q gzip$; then
mkdir -p /path/to/archive/folder && cp $1 $_
fi
endscript
}
Чего я пытаюсь достичь: -
Перед удалением файла журнала после хранения в течение 30 дней скопируйте его в другую папку.
Я запускаю эту конфигурацию logstash в режиме отладки
logrotate -d $CONFIG_FILE
Судя по журналам, ротация работает нормально, но даже не запускает preremove
сценарий. Я еще не запускал эту конфигурацию вживую, так как хотел проверить ее перед этим.
logrotate версия 3.8.6