从logrotate手册页。 除非该日志的标准基于日志的大小,否则它不会在一天内多次修改日志 根据手册页,如果configuration基于日志大小,logrotate应该旋转文件。 但是,即使文件大小大于100k,我的文件也没有得到。 有人可以指出是什么问题。 我的configuration /home/jetech/work/lampstack-5.3.9-0/apache2/logs/access_log { copytruncate compress # dateext rotate 365 size 100k olddir /home/jetech/work/lampstack-5.3.9-0/apache2/old_logs notifempty nomail missingok }
postgres_db_dump_20091016.gz.1.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 postgres_db_dump_20091017.gz.1.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 postgres_db_dump_20091018.gz.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 postgres_db_dump_20091019.gz.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 postgres_db_dump_20091020.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 postgres_db_dump_20091021.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 这是我强制运行logrotate时的示例输出(文件名)。 不知何故,它不识别旧的文件。 debugging输出示例: glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' glob finding old rotated logs failed renaming /var/backup/postgres/postgres_db_dump_20091019.gz.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 to /var/backup/postgres/postgres_db_dump_20091019.gz.1.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 rotating log /var/backup/postgres/postgres_db_dump_20091020.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021, log->rotateCount is 4 dateext suffix '-20091021' glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' glob finding old rotated logs failed renaming /var/backup/postgres/postgres_db_dump_20091020.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 to /var/backup/postgres/postgres_db_dump_20091020.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021 rotating log /var/backup/postgres/postgres_db_dump_20091021.gz.1.1.1.1.1.1.1.1.1-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021-20091021, log->rotateCount is 4 dateext suffix '-20091021' glob pattern […]
我有一个configuration文件,如下所示: /var/log/nginx/*.log { daily missingok rotate 90 dateext compress notifempty create 644 root adm sharedscripts postrotate [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid` /usr/local/bin/synclogs.sh endscript } 当所有的日志文件被旋转和压缩时,synclogs.sh应该运行。 脚本确实启动成功,但是当它开始运行时,程序没有find任何logrotate应该创build的.gz文件。 几分钟后我手动运行脚本,它踢得很好。 根据我发现的文档,postrotate不应该启动,直到压缩完成。 情况不是这样吗? 这是一个在Debian挤压发布的logrotate中的错误,还是我错过了一些非常简单的东西?
我正在使用logrotate来旋转我的Web服务器上的Symfony2日志。 一切工作正常,但我想通过电子邮件发送给我的旧日志。 所以,我在logrotate conf文件中添加了一些行,如下所示 Logrotateconfiguration /var/www/symfony/app/logs/prod.log { daily missingok rotate 5 compress notifempty mail [email protected] su www-data www-data } 现在我收到了电子邮件,但内容并不是我所期望的。 收到电子邮件 /etc/cron.daily/logrotate: 错误:/var/www/symfony/app/logs/prod.log.6.gz邮件命令失败 错误:解压缩命令失败邮件/var/www/symfony/app/logs/prod.log.6.gz 运行部分:/etc/cron.daily/logrotate退出,返回代码1 我做了很多研究这个错误,但我没有发现任何有用的东西。 我已经发起了一个讨论,希望能够对这个问题有所了解,但是并没有如预期的那样奏效。 Strace命令 strace -f -o ./strace.txt logrotate -d /etc/logrotate.d/symfony2 生成的文件是相当大的,但我认为相关部分是以下 Strace输出 6842 execve(“/ usr / bin / mail”,[“/ usr / bin / mail”,“-s”,“/ var / www / symfony / […]
我正在使用posgtres的内部日志旋转机制。 我想要将超过30天的日志文件删除。 我如何获得postgres来做到这一点? 如果postgres不支持它,我可以设置logrotate只是删除超过30天的日志? 我目前的configuration是: log_destination = 'stderr' logging_collector = on log_directory = 'pg_log' log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' #log_truncate_on_rotation = off log_rotation_age = 1440 log_rotation_size = 0
我已经设置了Logrotate来每晚转动我的JBoss应用程序服务器4.2.2.GA日志。 在日志文件轮换后,JBoss开始再次写入日志文件之后,新的日志文件开始的NUL字符数与前一个日志文件中的字符数一样多,后面是新的日志消息。 例如,如果JBoss server.log文件的长度是5000字节,那么在循环之后,新的server.log文件将以5000个NUL字符开始。 几天之后,server.log以NUL字符开头,与之前所有日志文件中的字符相结合。 看起来好像JBoss正在logging它在日志文件中的位置并拾取它在截断文件中的位置。 这里是我的JBoss的logrotateconfiguration: /apps/jboss-4.2.2.GA/server/default/log/*log { daily rotate 30 compress notifempty copytruncate missingok nocreate } 我无法每晚重新启动JBoss,因为这会造成太多的停机时间。 我也不能使用log4j DailyRollingFileAppender,因为它不会删除旧的日志文件。 有没有人得到logrotate与JBoss正常工作?
是否有可能只是通过使用logrotate删除日志文件在目录中实际上旋转它们? 我们有一个应用程序生成以下格式的日志:app.log.DD_MM_YYYY。 我没有成功与logrotate具有以下configuration: /opt/log/app/app.log.* { rotate 0 missingok nomail } 可以login旋转做到这一点,或者我应该只写一个脚本,并将其置于cron? 最好的 – 尤莲
我想使用logrotate -f /var/log/syslog来强制日志文件的旋转,但是它只是返回音调: error: syslog:1 unknown option 'May' — ignoring line error: syslog:1 unexpected text 我知道在这个系统上rsyslogd正在运行。 如何旋转/var/log/syslog ? 我希望它是空的。
我有两个不同的(i386 v AMD)Debian盒,并有相同的问题。 logrotate不会自动旋转我的日志。 它工作正常,当我强制手动像 /usr/sbin/logrotate -f /etc/logrotate.conf 但对我来说并不好 设置没有被修改(至less我没有修改它们),AMD的盒子是一个新的安装,但不会做它的工作。 如果您发现了类似的问题,请帮助我。 更新(某些服务器输出): logrotate -d http://pastebin.com/e6AshtGq ls -l /var/log http://pastebin.com/Y2A4Li59 cat /etc/logrotate.conf http://pastebin.com/1h7Uwctr ls -l /etc/logrotate.d http://pastebin.com/NvUAeszM
我有一个Tomcat服务器,通过阀门创build访问日志( org.apache.catalina.valves.FastCommonAccessLogValve )。 此阀门负责旋转访问日志文件,但不会压缩或在一段时间后删除它们。 目前,我有一个使用find […] -mtime +30 […]压缩和删除日志的cron作业。 我宁愿使用logrotate,以便日志轮转处于所有日志的集中位置。 我不喜欢为Tomcat提供单独的解决scheme。 我试图读取logrotate文档,但我仍然有点失落。 我可以使用logrotate来压缩和清理日志文件吗? 我该怎么做? 或者绕过这个问题,有没有一个Tomcat的访问日志阀,将压缩和清理日志文件? 感谢您的帮助!