debian sid下sysklogd自带了管理系统日志文件的循环备份的功能,具体配置文件在/etc/cron.daily/sysklogd。(实际上是使用了debianutils包里的savelog命令)
但大家更加熟悉的是logrotate所提供的日志循环功能。按照UNIX的简单哲学,我更倾向于用logrotate来管理所有的日志文件的循环备份。
用logrotate要注意的是,如果程序在不断的写日志文件,应该用copytruncate参数来保证原始日志文件不动。这时create参数会被忽略。
同时,要避免savelog干预我的日志文件,可修改/etc/cron.daily/sysklogd和/etc/cron.weekly/sysklogd,在用到syslogd-listfiles命令时加 -s 参数来过滤掉特定的日志,比如我的:
for LOG in `syslogd-listfiles -s ha` # Do not handle HA logs. --lanyufeng
没有评论:
发表评论