У меня есть проблема с моим rsyslog и imfile, который перестал работать, когда один из моего файла журнала становится усеченным..
Таким образом к обходному решению проблема я изменил logrotate сценарий следующим образом:
"/etc/logrotate.d/logrotate.elasticbeanstalk.tomcat7.conf":
mode: "000644"
owner: root
group: root
content: |
/var/log/tomcat7/* {
size 1M
rotate 5
missingok
compress
notifempty
copytruncate
dateext
dateformat %s
olddir /var/log/tomcat7/rotated
postrotate
(/sbin/service rsyslog stop && rm -f /var/lib/rsyslog/tomcat-catalina && /sbin/service rsyslog start 2>&1) || true
endscript
}
В tomcat7 папке там более или менее 15 файлов, они - что-то меньшее, чем 1M ожидают catalina.out, Таким образом, я ожидал бы, что logrotate ТОЛЬКО выполнит постповорачивать сценарий при обработке этого файла, но здесь это, что это делает:
[ec2-user@ixxxxxxx]$ sudo logrotate -v /etc/logrotate.d/logrotate.elasticbeanstalk.tomcat7.conf
reading config file /etc/logrotate.d/logrotate.elasticbeanstalk.tomcat7.conf
reading config info for /var/log/tomcat7/*
olddir is now /var/log/tomcat7/rotated
Handling 1 logs
rotating pattern: /var/log/tomcat7/* 1048576 bytes (5 rotations)
olddir is /var/log/tomcat7/rotated, empty log files are not rotated, old logs are removed
considering log /var/log/tomcat7/catalina.2015-03-11.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-12.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-13.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-14.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-16.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-17.log
log does not need rotating
considering log /var/log/tomcat7/catalina.2015-03-18.log
log does not need rotating
considering log /var/log/tomcat7/catalina.out
log needs rotating
considering log /var/log/tomcat7/host-manager.2015-03-11.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-12.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-13.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-14.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-16.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-17.log
log does not need rotating
considering log /var/log/tomcat7/host-manager.2015-03-18.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-11.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-12.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-13.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-14.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-16.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-17.log
log does not need rotating
considering log /var/log/tomcat7/localhost.2015-03-18.log
log does not need rotating
considering log /var/log/tomcat7/localhost_access_log.txt
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-11.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-12.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-13.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-14.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-16.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-17.log
log does not need rotating
considering log /var/log/tomcat7/manager.2015-03-18.log
log does not need rotating
considering log /var/log/tomcat7/tomcat7-initd.log
log does not need rotating
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
rotating log /var/log/tomcat7/catalina.out, log->rotateCount is 5
Converted ' %s' -> '%s'
dateext suffix '1426682650'
glob pattern '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
copying /var/log/tomcat7/catalina.out to /var/log/tomcat7/rotated/catalina.out1426682650
truncating /var/log/tomcat7/catalina.out
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
compressing log with: /bin/gzip
removing old log /var/log/tomcat7/rotated/catalina.out1426648681.gz
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
running postrotate script
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
как я могу избежать этого для случая? Я не эксперт с материалом Unix, но я предполагаю запуск в 100 раз, когда сервис как это не очень хорош?
Чтобы запустить сценарий postrotate только один раз (при определении записи logrotate для нескольких файлов), добавьте параметр sharedscripts