标签:启动 catalina ali 生成 命名 shel man app 包含
切割catalian日志的方式有很多种,比如shell脚本的、cronolog或者通过配置log4j等等这些都可以实现。但今天我要介绍是使用logrotate来按日期生成日志。
如果catalina.out的大小超过了2G,那么tomcat可能在没有错误提示的情况下崩溃、无法启动。所以为了避免出现这个问题,我们应该每天分割catalina.out。
1.第一种方法
#!/bin/sh #需要进行分割log的路径,该脚本一般只修改这个路径就可以用 log_path=/home/webapp/tomcat/logs #获取当前日期 d=‘date +%Y-%m-%d‘ #获取30天前的日期 d90=‘date -d‘30 day ago‘ +%Y-%m-%d‘ #cd到log_path路径下 并copy 日志文件到cron目录下 cd ${log_path} && cp catalina.out catalina.out.$d.log #清空原日志文件 echo > catalina.out #移除30天前的日志文件 rm -rf $log_path/cron/catalina.out.${d90}.log
配置crontab定时任务,定时直接脚本文件。 crontab -e 打开crontab编辑; 编辑crontab每天晚上11点55分执行分割脚本 55 11 * * * sh 脚本目录/**.sh :wq保存并退出。 crontab定时任务配置完成。 可以通过crontab -l 检查是否设置成功
第二种:
在/etc/logrotate.d/ 目录下新建一个文件,命名随意。
1 /etc/logrotate.d/tomcat
1 /var/log/tomcat/catalina.out { copytruncate daily rotate 7 compress missingok size 5M }
各个配置的具体含义:
执行以下语句来手动运行cron任务
1 /usr/sbin/logrotate /etc/logrotate.conf
1 man logrotate
标签:启动 catalina ali 生成 命名 shel man app 包含
原文地址:https://www.cnblogs.com/zdqc/p/9753016.html