Sabtu, 11 Agustus 2018

How to setting and config log rotate for catalina.out tomcat

  Tidak ada komentar

Some day as system engineer i face the trouble, the catalina.out of tomcat logs growth rapidly, the file system size running low, we can delete it manually but it have to stop the tomcat service and this is not easy because it was a production server, if we let it, the server will down when there is no space for catalina.out grow. finally i got the solution by install log rotate that will copy truncate the log file and delete the old series of file base on the configuration automatically.


Create a configuration file for catalina.out log in log rotate configuration folder as shown bellow
[maswachid@tomcat logrotate.d]$
[maswachid@tomcat logrotate.d]$ cat catalinaout
    /opt/tomcatstack-7.0.86-0_satu/apache-tomcat/logs/catalina.out {
     copytruncate
     daily
     rotate 7
     compress
     missingok
     size 50M
    }
[maswachid@tomcat logrotate.d]$
We can running the preview or test the configuration by running it manually

You can try it out with -d to see what would happen:
logrotate -df /etc/logrotate.d/catalina
when you execute the preview command (using catalina as an example), here are the output
[maswachid@tomcat logrotate.d]$ logrotate -df /etc/logrotate.d/catalinaout_sch
reading config file /etc/logrotate.d/catalinaout_sch
Allocating hash table for state file, size 15360 B

Handling 1 logs

rotating pattern: /opt/tomcatstack-7.0_scheduler/apache-tomcat/logs/catalina.out  forced from command line (7 rotations)
empty log files are rotated, old logs are removed
considering log /opt/tomcatstack-7.0_scheduler/apache-tomcat/logs/catalina.out
  log needs rotating
rotating log /opt/tomcatstack-7.0_scheduler/apache-tomcat/logs/catalina.out, log->rotateCount is 7
dateext suffix '-20180811'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.7.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.8.gz (rotatecount 7, logstart 1, i 7),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.6.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.7.gz (rotatecount 7, logstart 1, i 6),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.5.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.6.gz (rotatecount 7, logstart 1, i 5),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.4.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.5.gz (rotatecount 7, logstart 1, i 4),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.3.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.4.gz (rotatecount 7, logstart 1, i 3),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.2.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.3.gz (rotatecount 7, logstart 1, i 2),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.1.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.2.gz (rotatecount 7, logstart 1, i 1),
renaming /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.0.gz to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.1.gz (rotatecount 7, logstart 1, i 0),
copying /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out to /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.1
truncating /opt/tomcatstack-7.0_scheduler/apache-tomcat/logs/catalina.out
compressing log with: /bin/gzip
removing old log /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.8.gz
error: error opening /opt/tomcatstack-7.0/apache-tomcat/logs/catalina.out.8.gz: No such file or directory
[maswachid@tomcat logrotate.d]$
Then you can run (using catalina as an example):
logrotate -f /etc/logrotate.d/catalina
Execute log rotate single config manually and the result as shown bellow
[maswachid@tomcat logrotate.d]$ sudo logrotate -f /etc/logrotate.d/catalinaout_sch
[maswachid@tomcat logrotate.d]$
And the catalina logs alone will be rotated.
[maswachid@tomcat logrotate.d]$ ls /opt/tomcatstack-7.0/apache-tomcat/logs/
catalina.2018-05-06.log              localhost_access_log.2018-05-21.txt  localhost_access_log.2018-06-19.txt
catalina.2018-05-07.log              localhost_access_log.2018-05-22.txt  localhost_access_log.2018-06-20.txt
catalina.2018-05-29.log              localhost_access_log.2018-05-23.txt  localhost_access_log.2018-06-21.txt
catalina.2018-06-22.log              localhost_access_log.2018-05-24.txt  localhost_access_log.2018-06-22.txt
catalina.2018-06-27.log              localhost_access_log.2018-05-25.txt  localhost_access_log.2018-06-23.txt
catalina.out                         localhost_access_log.2018-05-26.txt  localhost_access_log.2018-06-24.txt
catalina.out.1.gz                    localhost_access_log.2018-05-27.txt  localhost_access_log.2018-06-25.txt
host-manager.2018-05-06.log          localhost_access_log.2018-05-28.txt  localhost_access_log.2018-06-26.txt
host-manager.2018-05-07.log          localhost_access_log.2018-05-29.txt  localhost_access_log.2018-06-27.txt
host-manager.2018-05-29.log          localhost_access_log.2018-05-30.txt  localhost_access_log.2018-06-28.txt
localhost.2018-05-06.log             localhost_access_log.2018-05-31.txt  localhost_access_log.2018-06-29.txt
You can check the log rotate status by running following command 
[mawwachid@tomcat ~]# cat /var/lib/logrotate/logrotate.status
logrotate state -- version 2
"/var/log/yum.log" 2019-1-24-3:30:1
"/var/log/cups/page_log" 2019-10-9-3:0:0
"/var/log/cups/error_log" 2019-10-9-3:0:0
"/var/log/haproxy.log" 2019-10-1-3:0:0
"/var/log/boot.log" 2019-1-25-3:47:1
"/var/log/up2date" 2019-9-6-3:0:0
"/var/log/cups/access_log" 2019-11-24-3:39:1
"/var/log/httpd/error_log" 2019-11-24-3:39:1
"/var/log/wtmp" 2019-10-9-3:0:0
"/var/log/chrony/*.log" 2019-9-6-3:0:0
"/opt/tomcatstack-7.0/apache-tomcat/logs/" 2019-11-24-3:39:1
"/var/log/spooler" 2019-11-24-3:39:1
"/var/log/btmp" 2019-11-1-3:14:1
"/var/log/rhsm/rhsmcertd.log" 2019-11-24-3:39:1
"/var/log/xferlog" 2019-9-6-3:0:0
"/var/log/iscsiuio.log" 2019-9-6-3:0:0
"/var/log/maillog" 2019-11-24-3:39:1
"/var/log/libvirt/libvirtd.log" 2019-9-6-3:0:0
"/var/log/libvirt/qemu/*.log" 2019-9-6-3:0:0
"/var/log/wpa_supplicant.log" 2019-10-9-3:0:0
"/var/log/secure" 2019-11-24-3:39:1
"/var/log/numad.log" 2019-9-6-3:0:0
"/var/log/ppp/connect-errors" 2019-9-6-3:0:0
"/var/log/rhsm/rhsm.log" 2019-11-24-3:39:1
"/var/log/messages" 2019-11-24-3:39:1
"/var/account/pacct" 2019-10-9-3:0:0
"/var/log/cron" 2019-11-24-3:39:1
"/var/log/httpd/access_log" 2019-11-24-3:39:1
"/var/log/vsftpd.log" 2019-9-6-3:0:0
[maswachid@tomcat ~]#
And the catalina logs alone will be rotated.

Tidak ada komentar :

Posting Komentar