天天看点

Syslog-ng+Rsyslog收集日志:logrotate日志切割、轮询

很多软件都自带切割日志,比如tomcat可以按时间来命名.rsyslog可按日期生成文件,但是并不支持用"%$year%-%$month%-%$day%"这些变量来读取文件(目前版本号:rsyslog-8.17.0-1.el6.x86_64)。

那么,就要用到日志轮询logrotate。

概要,配置。

全局配置:/etc/logrotate.conf

局部配置:/etc/logrotate.d/ 为了便于管理,自定义的配置都放到/etc/logrotate.d/里

使用。

创建文件tomcat-log.conf,这个文件名可以随便起,可以没有后缀。

vi /etc/logrotate.d/tomcat-log.conf

#tomcat里catalina.out日志路径

/tomcat/logs/catalina.out {

#按天执行

daily

#按日期保存旧文件

dateext

#保留10个备份

rotate 10

#忽略错误

missingok

#日志为空,则不轮询

notifempty

#创建指定用户和权限的文件,同时logrotate修改旧文件名

create 644 root root

#截断

copytruncate

#轮询多个文件后,但只执行一次命令postrotate脚本在压缩了日志

sharedscripts

postrotate

service rsyslog restart

endscript

}

3.测试

继续阅读