Neo Anderson's Blog

Linux基础命令-Logrotate

字数统计: 313阅读时长: 1 min
2015/01/16
loading

linux 有很多日志归档整理的命令,其中logrotate作为原生支持, 已经可以应付大多数场合,下面一起看下一些使用分享;

  • 基本的命令格式与参数
1
2
3
4
5
logrotate -f -v -d -s 
-f: 手动执行时指定需要执行的文件
-v: 输出详细的打包过程
-d: 模拟打包过程,但不真实执行
-s:
  • 一般的配置文件目录
1
/etc/logrotate.d/xxxx
  • 配置文件格式:
1
2
3
4
5
6
7
8
9
10


/var/log/xxx.log { //待处理日志目录及文件名
xxxx1 //命令1
xxxx2 //命令2
...
lastaction
/usr/bin/killall -HUP rsyslogd
endscript
}
  • 配置文件可使用配置命令: @todo

    • 设置处理周期: daily/weekly/monthly/yearly
    • 通过文件大小控制触发命令: size 100K
    • 处理后执行指定命令: lastaction/endscript
    • 处理前执行指定命令: firstaction/endscript
    • 添加日期后缀作为压缩后文件名: dateext
    • 设置日期格式: dateformat %Y%m%d
    • 归档命令执行时忽略异常(如:文件缺失等): missingok
    • 设置归档最多保留的文件数量: rotate 24
    • 归档后对归档文件进行压缩处理: compress
    • 压缩处理在下一次归档时再执行: delaycompress
    • 如果日志是个空文件不进行归档: notifempty
CATALOG
  1. 1. 配置文件可使用配置命令: @todo