Я настраиваю ротацию журналов на одном из моих рабочих серверов. У меня неприятная проблема. Я настроил ротацию журнала для файла на ежедневной основе.
Но, к сожалению, ротация не работает. Я проверил статус «/var/lib/logrotate/logrotate.status», он говорит, что файл был успешно повернут. Но это не
cat /var/lib/logrotate/logrotate.status
logrotate state -- version 2
"/var/log/yum.log" 2019-1-4-14:0:0
"/var/log/chef/client.log" 2019-4-14-3:33:2
"/var/log/boot.log" 2019-1-10-3:46:1
"/usr/local/rms/kafka/kafka-connect-fluentd/stdout.log" 2019-4-15-3:9:1
"/var/log/chrony/*.log" 2019-1-4-14:0:0
"/var/log/wtmp" 2019-1-4-14:0:0
"/var/log/spooler" 2019-4-14-3:33:2
"/var/log/btmp" 2019-1-4-14:0:0
"/var/log/telegraf/telegraf.log" 2019-1-10-3:0:0
. Файл, который нужно повернуть: /usr/local/rms/kafka/kafka-connect-fluentd/stdout.log
Файл конфигурации поворота журнала:
/usr/local/rms/kafka/kafka-connect-fluentd/stdout.log {
daily
copytruncate
rotate 7
compress
postrotate
/bin/kill -HUP `cat /usr/local/rms/kafka/kafka-connect-fluentd/connector.pid 2> /dev/null` 2> /dev/null || true
endscript
}
попробуйте с моим файлом logrotate: Это приводит к ротации журналов apache с указанием даты, и, если он заканчивается в 2019 году, он сжимает эти файлы перед их удалением.
/var/log/apache2/*.log {
daily
create 0640 root root
su root adm
rotate 2
missingok
compress
delaycompress
dateext
dateformat -%d-%m-%Y.log
notifempty
sharedscripts
postrotate
gzip /var/log/apache2/*-2019.log
service apache2 restart
rm /var/log/apache2/*.gz
endscript
}
Если вы хотите проверить или принудительно выполнить logrotate, выполните следующую команду:
logrotate -vf /etc/logrotate.d/name_of_your_file
и с подробный режим, вы сможете увидеть, что там происходит
Надеюсь, это будет полезно.