tomcat配置linux下日志按天输出catalina.out |
您所在的位置:网站首页 › linux退出log › tomcat配置linux下日志按天输出catalina.out |
前言:在tomcat的环境下,日志会随时间的增长而变得庞大,有时候甚至有几十G的大小,打开查看很不方便,所以这里对tomcat的catalina.out日志进行分割,切割工具用的cronolog,并且定期删除之前的一些日志,保障内存大小。 环境:centos7服务器,tomcat版本是8以上(其他版本可能会有不同) 1.安装cronolog(有的服务器自带这个工具) yum install -y cronolog httpd 2.配置tomcat的切割文件,只用配置tomcat目录下的catalina.sh文件即可 编辑catalina.sh,在tomcat的bin目录下 vim /opt/tomcat2/bin/catalina.sh 修改三处: (1).找到 if [ -z " if [ -z " (3).找到 org.apache.catalina.startup.Bootstrap "$@" start \ "$CATALINA_OUT" 2>&1 "&" 修改为: org.apache.catalina.startup.Bootstrap " 注意:这里的if判断里面有两处,都改了,把之前的那个尽量不要注释,直接删除,然后替换成下面的代码,不过你可以先注释掉试一下,一般也不会错,我在测试的时候可能是注释的不规范,总是执行不成功,后来就把它删除了。然后:wq保存退出以后,再重启服务器查看启动正常,不知道为什么,有时候刚配置完重启失败,但是,我还是重新把之前的代码删除再复制,重复几次就成功了,可能是我的代码不规范。有时复制代码框里面的代码报错,可以复制底下那行代码。 重启后截图: 红框部分输出说明配置成功,有的启动方式不一样,效果不一样,具体看代码是否生效是去看看日志文件是否分割 3.查看是否分割成功 进入tomcat的logs目录 cd /opt/tomcat2/logs ls 看到这样的文件就说明成功切割了。 4.定期删除 linux自带crontab定时任务工具,直接拿来使用,设置每天凌晨00:00执行删除任务,删除一周前的日志文件 (1).创建一个sh的脚本,用于执行删除,我把它放在了/opt/tomcat/bin目录下,方便管理 cd /opt/tomcat2/bin vim auto_del_log.sh (2).将下面代码复制进去,:wq保存退出 !/bin/shfind /opt/tomcat2/logs/ -mtime +7 -name ".out" -exec rm -rf {} ; find /opt/tomcat2/logs/ -mtime +7 -name ".out" -exec rm -rf {} ; (3).制作定时任务 crontab -e #直接这个该命令,添加一个定时任务计划 然后在里面添加如下代码: 00 00 * * * /opt/tomcat2/bin/auto_del_log.sh >/dev/null 2>&1 这样就设置成功了。每天凌晨回去执行tomcat2/bin,目录下的autoa-del_log.sh的shell脚本执行清除任务。 (4).查看定时任务 crotab -l 日志分割和定期删除完毕! ———————————————— 版权声明:本文为CSDN博主「unhejing」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/unhejing/article/details/79924630 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |