sudo du -sh /opt/tomcat/logs/* ... 4.5G /opt/tomcat/logs/catalina.out ...
Tomcat在Cent OS上面的日誌文件catalina.out達到了4G多。php
建立配置文件linux
vi /etc/logrotate.d/tomcat
編寫配置文件:tomcat
/opt/tomcat/logs/catalina.out { copytruncate daily rotate 7 compress missingok size 5M }
配置說明:bash
/opt/tomcat/logs/catalina.out
copytruncate
:複製截斷模式daily
:天天觸發一次rotate
:最多7個日誌文件compress
: 使用壓縮missingok
:若是缺乏日誌文件,請繼續執行下一個日誌文件而不發出錯誤消息size
: 僅當日志文件大小超過字節大小時纔會輪換日誌文件這樣logrotate就天天自動觸發一第二天志切割歸檔。ide
logrotate -v /etc/logrotate.conf ... rotating pattern: /opt/tomcat/logs/catalina.out 5242880 bytes (7 rotations) empty log files are rotated, old logs are removed considering log /opt/tomcat/logs/catalina.out log needs rotating rotating log /opt/tomcat/logs/catalina.out, log->rotateCount is 7 dateext suffix '-20180928' glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' glob finding old rotated logs failed copying /opt/tomcat/logs/catalina.out to /opt/tomcat/logs/catalina.out-20180928 set default create context truncating /opt/tomcat/logs/catalina.out compressing log with: /bin/gzip ...
而後,在tomcat的logs文件夾下面查看一下,是否對catalina.out文件進行了輪寫備份。測試
[admin@Servicenumber logs]$ ls -lh 總用量 23M ... -rw-r-----. 1 tomcat tomcat 249K 9月 28 09:30 catalina.out -rw-r-----. 1 tomcat tomcat 566K 9月 28 09:27 catalina.out-20180928.gz ...
看到了gz文件,說明logrotate沒有問題了。操作系統
/var/lib/logrotate.status
使用logrotate時候,必定要確保tomcat日誌輸出位置是位於/var/log/tomcat/catalina.out
纔可以生效。不是操做系統的/var/log/
日誌輸出位置,logrotate是沒法啓用的。.net
logrotate(8) - Linux man page日誌
How to Rotate Tomcat catalina.outcode