Logrotate操作手册

一.概要说明


logrotate工具是为了方便进行日志管理而产生的一个工具,主要可以完成的工作包含:基于天、周、月、文件大小进行日志的滚动备份、压缩、删除甚至是发送邮件。

二.调用方式


  1. 每天晚上,cron daemon会自动执行/etc/cron.daily目录下的任务。
  2. 这个会触发/etc/cron.daily/logrotate文件,logrotate一般是随linux安装的。它会执行这个命令“/usr/sbin/logrotate /etc/logrotate.conf”。
  3. /etc/logrotate.conf 包含了/etc/logrotate.d目录下的所有脚本。
  4. 这个会触发自定义的/etc/logrotate.d/…文件。

三. logrotate语法


logrotate [-dv] [-f] [-s] config_file+ 什么都不跟则显示版本信息和简单的帮助信息,如果处理过程中出现异常则返回非0的$?;

参数说明
- --?显示帮助信息
-v显示详细信息
-d开启调试模式并隐含开启-v,不会对日志和logrotate的state文件产生操作
-f忽略调用周期强制调用logrotate,方便测试
-m告知logrotate发送邮件的命令
-s多个logrotate运行时告知logrotate自己使用的state文件(/var/lib/logrotate.status)
config_file+表示可以使用多个配置文件(默认为/etc/logrotate.conf)在后面,最好是在一个配置文件中进行引用(测试某条新的规则时可以单独创建一个配置文件并用-f参数进行强行调用)

例: /usr/sbin/logrotate -vf /etc/logrotate.d/audit

四. logrotate配置


日志配置目录 /etc/logrotate.d/…
logrotate 缺省配置目录 /etc/logrotate.conf

五. logrotate参数


参数说明
daily表示每天整理一次,其它可用值为‘weekly’、‘monthly’、‘yearly’
rotate 30表示保留30份的备份文件
dateext让旧日志文件以创建日期命名
compress通过gzip 压缩转储以后的日志
nocompress不压缩日志
delaycompress与compress一起用,转储的日志文件到下一次转储时才压缩
copytruncate表示先复制log文件的内容,然后再清空
size 5M日志文件大小增长到5MB再进行轮循
notifempty如果日志文件为空,轮循不会进行。
missingok在日志轮循期间,任何错误将被忽略,例如“文件无法找到”之类的错误。
postrotate在转储以后执行命令,postrotate和endscript里面指定的命令将被执行。
endscript在这种情况下,rsyslogd 进程将立即再次读取其配置并继续运行。
prerotate在转储以前执行的命令
endscript在转储以前执行的命令

六. XenServer设置


/etc/logratate.d/…

文件夹文件
auditaudit.log
syslogmessages
syslogsecure
syslogmaillog
syslogspooler
syslogboot.log
syslogcron

**audit具体配置: **

/var/log/audit.log {
    daily
    rotate 30
    dateext
    compress
    delaycompress
    notifempty
    missingok
    sharedscripts
    postrotate
      /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
      /bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
    endscript
}

syslog具体配置:

/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
    daily
    rotate 30
    dateext
    compress
    delaycompress
    missingok
    notifempty
    sharedscripts
    postrotate
	/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
	/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
    endscript
}

七. Tomcat设置


Tomcat日志配置路径 /etc/logrotate.d/tomcat
Tomcat日志存储路径 /opt/tomcat7/logs/…

vim /etc/logrotate.d/tomcat
/opt/tomcat7/logs/catalina.out {
rotate 14
daily
copytruncate
compress
notifempty
missingok
}

转载于:https://my.oschina.net/gammatimes/blog/994029

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值