菜单

使用Logrotate化解Tomcat日志文件catalina.out过大的主题素材

2019年7月25日 - www6165com

1、安装logrotate

(3)软件包表明

本文永远更新链接地址

3、测验实施

  logrotate程序是多少个日志文件管理工科具。用于私分日志文件,删除旧的日记文件,并创办新的日志文件,起到”转储”效用。能够节省磁盘空间。举个例子,你能够安装logrotate,让/var/log/logfile日志文件每30天轮循,并剔除超越7个月的日记。配置完后,logrotate的运作完全自动化,不必进行另外更进一竿的人工干预。

在日记轮循时期,任何错误将被忽视,举个例子“文件无法找到”之类的不当。

missingok

在颇具其余指令实现后,postrotate和endscript里面内定的下令将被实行。在这种状态下,rsyslogd 进程将立即再度读取其配备并三番五遍运行。

① 要调用为/etc/lograte.d/下安顿的兼具日志切割配置

在具有其余指令完结后,postrotate和endscript里面钦定的通令将被实践。在这种场馆下,rsyslogd 进程将立刻再一次读取其配备并继续运行。

[root@linuxidc ~]# touch /var/log/log-file

(4)运行logrotate

 注:logrotate的配置文件是/etc/logrotate.conf,日常没有供给对它进行修改。

postrotate/endscript

(1)系统版本,作者利用的如下

[root@linuxidc ~]# cat /var/run/tomcat.pid

  在尚未施行kill -US昂科拉1 `cat
${pid_path}`事先,就算已经对文件实践了mv命令而更换了文件名称,tomcat依旧会向新命名的文件”
xxx.out_
20180619″照常写入日志数据的。原因在于:linux系统中,内核是依赖文件陈诉符来找文件的。

假定日志文件为空,轮循不会举行。

日记文件的轮循设置在单身的安顿文件中,它(们)放在/etc/logrotate.d/目录下。

[root@linuxidc ~]# logrotate -vf /etc/logrotate.d/tomcat_catalina

  -f:选项来强制logrotate轮循日志文件

[root@linuxidc ~]# head -c 10M < /dev/urandom >
/var/log/log-file

 ③ 选项注释

在轮循职务完毕后,已轮循的存档将运用gzip进行压缩。

[root@linuxidc ~]# ll /var/log/log-file*
-rw-r–r– 1 root root 10485760 Jun 19 11:33 /var/log/test/log-file
[root@linuxidc ~]# logrotate -vf /etc/logrotate.d/log-file
[root@linuxidc ~]# ll /var/log/log-file*
-rw-r–r– 1 root root        0 Jun 19 11:33 /var/log/test/log-file
-rw-r–r– 1 root root 10485760 Jun 19 11:22
/var/log/test/log-file-20180619

一、介绍日志切割logrotate

4、设置logrotate定期任务

[root@linuxidc ~]# vim /etc/logrotate.d/log-file

日记文件将按月轮循。其余可用值为’daily’,’weekly’大概’yearly’。

切换后的日记文件会附加上贰个短横线和YYYYMMDD格式的日期,没有这几个布局项会附加三个小数点加二个数字序号

notifempty

(1)策画测量试验日志

[root@linuxidc ~]# vim /data/tomca/bin/catalina.sh
# Get standard environment variables
PRGDIR=`dirname “$PRG”`
CATALINA_PID=/var/run/tomcat.pid

[root@linuxidc ~]# systemctl restart tomcat.service

(2)默许centos系统装置自带logrotate,直接使用yum 安装

  对于Linux系统安全来讲,日志文件是非常重要的工具。不知为什么,作者开掘众多运营同学的服务器上都运作着一些诸如天天切分Nginx日志之类的CRON脚本,大家仿佛忘记了Logrotate,争相发明自身的车轱辘,那不失为令人衰颓啊!就好比显著身边躺着现存的妖媚女神,大家却忙着自娱自乐,罪过!

dateext

三、使用logrotate管理tomcat catalina.out日志过大难点

图片 1

sharedscripts

以钦点的权杖成立全新的日志文件,同有时常候logrotate也会重命名原始日志文件。

(2)配置切割设置

 

[root@linuxidc ~]# crontab -e
#auth root
#date 2018-06-19
00 00 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/log-file
&>/dev/null

rotate 5

连年与compress选项一同用,delaycompress选项提醒logrotate不要将最近的存档压缩,压缩就要下叁次轮循周期实行。那在您或其余软件依旧须求读取最新归档时很有用。

[root@linuxidc ~]# vim /etc/logrotate.d/tomcat_catalina
/data/tomcat/logs/catalina.out {
        daily
        rotate 15
        missingok
        notifempty
        dateext
        compress
        delaycompress
        sharedscripts
        create 644 root root
        postrotate
                if [ -f /var/run/tomcat.pid ]; then
                        kill -USR1 `cat /var/run/tomcat.pid`
                fi
        endscript
}

② 要为有个别特定的布局调用logrotate,实施一回切割义务测验

delaycompress

[root@linuxidc ~]# logrotate /etc/logrotate.conf 

  US路虎极光1亦平日被用来报告应用程序重载配置文件;比如,向Apache
HTTP服务器发送二个USLAND1复信号将促成以下步骤的爆发:甘休接受新的接连,等待前段时间接二连三截止,重新载入配置文件,重新展开日志文件,重启服务器,从而完成相对平缓的不关机的改观。

[root@linuxidc ~]# rpm -ql logrotate
/etc/cron.daily/logrotate
/etc/logrotate.conf  #logrotate 本身的配备文件
/etc/logrotate.d  #计划切割设置的目录

二、logrotate配置利用

1、定义tomcat的pid 文件

成立测量检验日志/log-file,然后在内部填入三个10MB的随便比特流数据文件

(1)修改catalina.sh 文件,定义汤姆cat的pid文件的门道

(3)配置文件参数表明

标题陈说:一般在布局汤姆cat后,运转久了,catalina.out文件会特别大,对系统的稳定变成了必然的影响。

上述消息来源 “man logrotate”

(2)重启Tomcat,且查询pid

 

monthly

布局参数

[root@linuxidc ~]# crontab -e
#auth root
#date 2018-06-19
00 00 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat_catalina
&>/dev/null

21924

logrotate可以在其余时候从命令行手动调用

(5)设置logrotate定期职务

说明

一遍将储存5个归档日志。对于第四个归档,时间最久的存档将被删除。

(2)USTiguan1复信号表明

[root@linuxidc ~]# vim /etc/logrotate.d/log-file
/var/log/test/log-file {
        daily
        rotate 15
        compress
        delaycompress
        missingok
        notifempty
        dateext
        sharedscripts
        create 644 root root
        postrotate
                /usr/bin/killall -HUP rsyslogd
        endscript

compress

  -v:参数提供了详实的出口

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

Linux公社的RSS地址:

create 644 root root

2、配置切割设置

2、配置使用logrotate

[root@linuxidc ~]# cat
/etc/RedHat-release
CentOS Linux release
7.3.1611 (Core)
[root@linuxidc ~]# uname -r
3.10.0-514.26.2.el7.x86_6 

(1)配置切割

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图