关闭

linux日志服务(4): 日志轮替

标签: linux
87人阅读 评论(0) 收藏 举报
分类:

日志轮替

logrotate简介

       logrotate是一个日志管理程序,用来把旧的日志文件删除(或者备份),并创建新的日志文件。有两种依据来进行日志的轮替:

  • 根据日志的大小,当文件大小达到某个阈值(设定),就进行轮替。
  • 根据其规定的天数来转储。在规定时间到了之后就进行日志文件的轮替。
           logrotate 的执行由crond服务实现。在/etc/cron.daily目录中,有个文件logrotate,它实际上是个shell script,用来启动logrotate。它每天由cron在指定的时间(/etc/crontab)启动。
           在执行logrotate时,需要指定其配置文logrotate.conf。/etc/logrotate.d目录下面的配置文件会被主动读入到logrotate.conf。

语法规则

       如果你安装了一个新的服务,它的日志转储的规则可以建立一个专门的配置文件,放在/etc/logrotate.d下面。并按照以下语法进行编写:

/var/log/messages   #文件位置与名字
{
size 1M  #当文件大于1M自动轮替
    daily   #文件每天指定时间进行轮替
    rotate 10   #保存10个备份文件
    create 0600 root root   #备份后新建一个文件
    dateformat -%Y%m%d.%s   #使用时间名作为备份日志后缀名
    sharedscripts   
    postrotate  #在日志转储以后执行的命令
     /bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
# 重新启动守护进程,否则日志不会写入新建的日志文件
endscript
}

在{}中定义的规则,如果与logrotate.conf中的冲突,以/etc/logrotatate.d/中的文件定义的为准。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:780次
    • 积分:224
    • 等级:
    • 排名:千里之外
    • 原创:22篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章存档