久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      Logrotate實(shí)現(xiàn)Catalina.out日志按小時(shí)切割

      一.Logrotate工具介紹

      Logrotate是一個(gè)日志文件管理工具,它是Linux默認(rèn)自帶的一個(gè)日志切割工具。用來把舊文件輪轉(zhuǎn)、壓縮、刪除,并且創(chuàng)建新的日志文件。我們可以根據(jù)日志文件的大小、天數(shù)等來轉(zhuǎn)儲(chǔ),便于對(duì)日志文件管理,一般都是通過cron計(jì)劃任務(wù)來完成的,讓日志切割實(shí)現(xiàn)按小時(shí)分割,按天分割等。

      二.Logrotate運(yùn)行機(jī)制

      系統(tǒng)會(huì)定時(shí)運(yùn)行l(wèi)ogrotate,一般是每天一次。系統(tǒng)是這么實(shí)現(xiàn)按天執(zhí)行的。crontab會(huì)每天定時(shí)執(zhí)行/etc/cron.daily目錄下的腳本,而這個(gè)目錄下有個(gè)文件叫l(wèi)ogrotate。

      [root@test01 ~]# cat /etc/cron.daily/logrotate

      #!/bin/sh

      /usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf

      EXITVALUE=$?

      if [ $EXITVALUE != 0 ]; then

          /usr/bin/logger -t logrotate “ALERT exited abnormally with [$EXITVALUE]”

      fi

      exit 0

      實(shí)際運(yùn)行時(shí),Logrotate會(huì)調(diào)用配置文件/etc/logrotate.conf

      三.Logrotate的組成

      /usr/sbin/logrotate        #程序所在位置;

      /etc/cron.daily/logrotate    #默認(rèn)讓Cron每天執(zhí)行l(wèi)ogrotate一次;

      /etc/logrotate.conf        #全局配置文件;

      /etc/logrotate.d/          #應(yīng)用自個(gè)的配置文件存放目錄,覆蓋全局配置;

      注意:logrotate.d 是一個(gè)目錄,該目錄里的所有文件都會(huì)被主動(dòng)的讀入/etc/logrotate.conf中執(zhí)行。另外,如果/etc/logrotate.d/里面的文件中沒有設(shè)定一些細(xì)節(jié),則會(huì)以/etc/logrotate.conf這個(gè)文件的設(shè)定來作為默認(rèn)值。

      四.Logrotate的命令格式

      logrotate [OPTION…] <configfile>
      -d, –debug :debug模式,測(cè)試配置文件是否有錯(cuò)誤。
      -f, –force :強(qiáng)制轉(zhuǎn)儲(chǔ)文件。
      -m, –mail=command :壓縮日志后,發(fā)送日志到指定郵箱。
      -s, –state=statefile :使用指定的狀態(tài)文件。
      -v, –verbose :顯示轉(zhuǎn)儲(chǔ)過程。

      例如:想強(qiáng)行切割日志文件,不等logrotate切割。

      [root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat  #我是用來測(cè)試用的嘿嘿

      注意:CentOS7 命令是在/usr/sbin/里。

      五.常用配置參數(shù)說明

      Logrotate功能的實(shí)現(xiàn),最重要的就是它的配置參數(shù)

      下面介紹下它常用的配置參數(shù):

      compress

      啟用壓縮,指的是輪替后的舊日志,這里默認(rèn)用的是gzip壓縮的

      daily

      每天輪替

      dateext

      使用當(dāng)期日期作為命名格式

      dateformat .%s

       配合dateext使用,緊跟在下一行出現(xiàn),定義文件切割后的文件名,必須配合dateext使用,只支持 %Y %m %d %s 這四個(gè)參數(shù)

      ifempty

      即使日志文件是空的也輪替

      mail

      將輪替后的文件發(fā)送到指定E-mail地址

      copytruncate

      用于還在打開中的日志文件,把當(dāng)前日志備份并截?cái)?,是先拷貝再清空的方式,拷貝和清空之間有一個(gè)時(shí)間差,可能會(huì)丟失部分日志數(shù)據(jù)。

      monthly

      一個(gè)月輪替一次

      nocompress

      如果在logrotate.conf中啟用了壓縮,這里是做不用壓縮的參數(shù)

      nomail

      不發(fā)送郵件到任何地址

      notifempty

      如果日志是空的就不輪替(也就是空日志不切割)

      olddir + 目錄

      輪替后日志文件放入指定的目錄,必須和當(dāng)前日志文件在同一個(gè)文件系統(tǒng)

      rotate +次數(shù)

      輪替最多保留之前的數(shù)據(jù)幾次,超出的將被刪除或郵件接收,設(shè)為0則不保存

      size size

      當(dāng)日志增長(zhǎng)到指定大小的時(shí)候開始輪替

      weekly

      如果當(dāng)前的星期幾比上次輪替的星期幾少,或者過了一個(gè)多星期,就會(huì)發(fā)生輪替通常是在每周的第一天輪替,如果logrotate不是每天運(yùn)行的,會(huì)在第一次有機(jī)會(huì)時(shí)進(jìn)行輪替

      yearly

      如果當(dāng)前年份不同于上次輪替的年份,則進(jìn)行日志輪替

      Missingok

      如果日志丟失,不報(bào)錯(cuò)繼續(xù)滾動(dòng)下一個(gè)日志

      六.安裝配置Logrotate

      #yum安裝下

       [root@test01 ~]# yum -y install logrotate

      #機(jī)器已經(jīng)裝好tomcat,下面配置切割tomcat日志的配置文件

      [root@test01 ~]# vim /etc/logrotate.d/tomcat

       

      注意:logrotate的配置文件是/etc/logrotate.conf,通常不需要對(duì)它進(jìn)行修改。

      日志文件的切割輪循設(shè)置在獨(dú)立的配置文件中,它們是放在/etc/logrotate.d/目錄下的。

       

       

      [root@test01 ~]# mkdir -p /var/log/tomcat/oldlog

      [root@test01 ~]# cat /etc/logrotate.d/tomcat

      /usr/local/tomcat8/logs/catalina.out {  #要切割的日志路徑,如果是多個(gè)就用空格分隔

          notifempty    #如果日志是空的就不輪替(也就是空日志不切割)

          rotate 5000    #輪替最多保留之前的數(shù)據(jù)5000次

          missingok      #如果日志丟失,不報(bào)錯(cuò)繼續(xù)滾動(dòng)下一個(gè)日志

          compress      #啟用壓縮,指的是輪替后的舊日志,這里默認(rèn)用的是gzip壓縮的

          dateext        #使用當(dāng)期日期作為命名格式

          dateformat .%Y%m%d-%H點(diǎn)    #配合dateext使用,緊跟在下一行出現(xiàn),定義文件切割后的文件名,必須配合dateext使用,只支持 %Y %m %d %s

          olddir /var/log/tomcat/oldlog  #輪替后日志文件放入指定的目錄 

      }

      注意:我這個(gè)配置里沒有設(shè)置多久切割一次,但是它也是一天切割一次,因?yàn)楫?dāng)/etc/logrotate.d/tomcat這個(gè)文件沒有配置時(shí),默認(rèn)是每天定時(shí)執(zhí)行/etc/cron.daily/logrotate這個(gè)文件,這個(gè)文件是一天一次的。

      #強(qiáng)制執(zhí)行切割,查看/var/log/tomcat/oldlog下是否有日志

      [root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat

      reading config file /etc/logrotate.d/tomcat

      olddir is now /var/log/tomcat/oldlog

      Allocating hash table for state file, size 15360 B

      Handling 1 logs

      rotating pattern: /usr/local/tomcat8/logs/catalina.out  forced from command line (5000 rotations)

      olddir is /var/log/tomcat/oldlog, empty log files are not rotated, old logs are removed

      considering log /usr/local/tomcat8/logs/catalina.out

        log needs rotating

      rotating log /usr/local/tomcat8/logs/catalina.out, log->rotateCount is 5000

      Converted ‘ .%Y%m%d-%H點(diǎn)’ -> ‘.%Y%m%d-%H點(diǎn)’

      dateext suffix ‘.20181226-15點(diǎn)’

      glob pattern ‘.[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9]點(diǎn)’

      glob finding old rotated logs failed

      fscreate context set to unconfined_u:object_r:usr_t:s0

      renaming /usr/local/tomcat8/logs/catalina.out to /var/log/tomcat/oldlog/catalina.out.20181226-15點(diǎn)

      compressing log with: /bin/gzip

      set default create context to unconfined_u:object_r:usr_t:s0

      set default create context

      #查看切割結(jié)果

      Logrotate實(shí)現(xiàn)Catalina.out日志按小時(shí)切割

      #把之前切割的刪除了,因?yàn)樵俣〞r(shí)切割文件是相同的,還是catalina.out.20181226-15點(diǎn).gz這個(gè)文件,所以不會(huì)切割成功。

      [root@test01 ~]# rm -rf /var/log/tomcat/oldlog/catalina.out.20181226-15點(diǎn).gz
      [root@test01 ~]# ls /var/log/tomcat/oldlog/
      [root@test01 ~]#

      #設(shè)置定時(shí)任務(wù),每一分鐘切割一次(注意:日志里要有內(nèi)容,因?yàn)榍懊娑x空的日志文件是不切割的)

      [root@test01 ~]# crontab –e
      */1 * * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >>/var/log/tomcat/oldlog/cutting.log

      #每倆小時(shí)切割一次

      [root@test02 ~]# crontab -l
      0 */2 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >> /root/chenjiaxin/cutting.log

      #查看定時(shí)切割的結(jié)果

      Logrotate實(shí)現(xiàn)Catalina.out日志按小時(shí)切割

      當(dāng)然,上面設(shè)置一分鐘切割一次,是為了實(shí)驗(yàn)?zāi)鼙M快看到效果。實(shí)際是需要根據(jù)公司需要來設(shè)置多久來切割一次日志的!

      贊(0)
      分享到: 更多 (0)
      ?
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)