分享

利用logrotate工具对catalina.out进行日志分割实战

 悦光阴 2022-05-25 发布于北京

logrotate是linux自带的日志分割工具,如果没有可以用yum安装

yum -y install logrotate

 

要配置日志分割定时任务,需要在/etc/logrotate.d/下创建一个名为catalina的配置文件

(logrotate.d目录下的配置文件是用作logrotate.conf的补充)

touch /etc/logrotate.d/catalina

 

 以下是配置文件内容,可以选择vi/vim编辑catalina配置文件输入内容

/home/tomcat/logs/catalina.out
{daily
rotate7
missingok
dateext
compress
notifempty
copytruncate
}

 

也可以选择用echo命令输入内容到catalina配置文件

1 echo -e "/home/tomcat/logs/catalina.out\n
2 {\ndaily\nrotate7\nmissingok\ndateext\ncompress\nnotifempty\ncopytruncate\n}">/etc/logrotate.d/catalina

这里 echo 必须加 -e 参数启用转义字符,引号必须使用 双引号。不然会出现无法换行等格式错误。

 

输入完记得

cat /etc/logrotate.d/catalina

查看一下配置文件内容是否正确。

 

确认无误后,修改/etc/anacrontab来决定任务执行时间

修改之前先对其进行备份

cp /etc/anacrontab /etc/anacrontab.bak

 

备份后对其进行修改

sed -i 's/START_HOURS_RANGE=3-22/START_HOURS_RANGE=1-22/g' /etc/anacrontab
START_HOURS_RANGE=3-22指的是任务在凌晨三点到二十二点之间执行,我们想让它在凌晨1~22点执行,故修改为
START_HOURS_RANGE=1-22

修改完之后日志分割定时任务就配置完成了

附上批处理命令:
pssh -h ip.list -P 'touch /etc/logrotate.d/catalina;
echo -e "/home/tomcat/logs/catalina.out\n{\ndaily\nrotate7\nmissingok\ndateext\ncompress\nnotifempty\ncopytruncate\n}">/etc/logrotate.d/catalina;
cp /etc/anacrontab /etc/anacrontab.bak;
sed -i 's/START_HOURS_RANGE=3-22/START_HOURS_RANGE=1-22/g' /etc/anacrontab'

还原命令:

pssh -h ip.list -P 'mv /etc/anacrontab.bak /etc/anacrontab;rm -f /etc/logrotate.d/catalina'

 

至此,日志分割定时任务配置完成。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多