zoukankan      html  css  js  c++  java
  • logrotate 日志清理后 rsyslog中断问题

    <pre name="code" class="html">随后配置logrotate的配置文件/etc/logrotate.conf,加入下面的内容:
    /var/log/ipwall/messages.log {   #日志路径一定要和rsyslog定义的日志文件路径一致
            rotate 65535             #滚动65535次
            create 0777 syslog adm   #设置权限,方便windows连接samba服务器
            compress                 #采用压缩
            size 50M                 #文件大小50M以上的分割日志
            dateext
            dateformat .%s           #定义文件切割后的文件名,必须配合dateext使用
            postrotate
            /bin/kill -HUP $(/bin/cat /var/run/rsyslogd.pid 2>/dev/null) &>/dev/null
            endscript
    }
        在这里一定要加posrotate/endscript这段脚本,这样可以使rsyslog程序重新读取配置文件,这样做的作用是让rsyslog程序释放对messages.log文件持有的文件描述符,否则即使日志文件被分割后,rsyslog也不会向新产生的日志文件写数据。
    
    
    经测试还是这种方法好:
    v-test-app01:/root/sbin# cat logrotate.sh 
    . ~/.bash_profile
    /usr/sbin/logrotate -f /etc/logrotate.conf
    kill -9 `ps -ef | grep rsyslogd | grep -v grep | awk '{print $2}'`
    rm -rf /var/run/rsyslogd.pid
    rsyslogd -f /etc/rsyslog.conf
    v-test-app01:/root/sbin# cat /etc/logrotate.
    cat: /etc/logrotate.: No such file or directory
    v-test-app01:/root/sbin# cat /etc/logrotate.conf 
    /usr/local/apache-tomcat-7.0.55_8082/logs/catalina.out {  
    #rotate 7 表示保留7天的备份文件
    rotate 1  
    #daily 表示每天整理一次 
    daily  
    #copytruncate 表示先复制log文件的内容,然后再清空
    copytruncate  
    #compress 表示压缩备分文件
    compress  
    #如果是空文件的话,不转储
    notifempty  
    #如果指定的目录不存在,logrotate会报错,此项用来关闭报错
    missingok  
    }
    


    
       
    
    
  • 相关阅读:
    Leetcode Binary Tree Preorder Traversal
    Leetcode Minimum Depth of Binary Tree
    Leetcode 148. Sort List
    Leetcode 61. Rotate List
    Leetcode 86. Partition List
    Leetcode 21. Merge Two Sorted Lists
    Leetcode 143. Reorder List
    J2EE项目应用开发过程中的易错点
    JNDI初认识
    奔腾的代码
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199376.html
Copyright © 2011-2022 走看看