tomcat设置日志按天切割,并定时清理日志文件

Tomcat日志按天生成并定时清理

  • 安装cronolog

1、首先查看是否安装cronolog:which cronolog

2、下载安装包,我这下载的是cronolog-1.6.2.tar.gz

 

3、放到自己有权限的目录下面比如 /home/changhu/soft

4、解压tar -zxvf cronolog-1.6.2.tar.gz

5、进入cronolog安装文件所在目录:cd cronolog-1.6.2

6、运行安装(必须先不改文件进行安装,不然会报找不到文件)

./configure

make

make install

注:此时执行make install报错,提示Error 1

 

查看错误信息发现需要在 /usr/local/下新建sbin文件夹,但我这个账号没这个权限,修改文件夹下的./configure

7、进入cronolog-1.6.2文件夹,有个configure开头的,打开修改如下内容为普通用户地址,修改保存后再执行一遍安装

./configure
make
make install

嗯,现在应该是安装成功了,在目录下会多出一个sbin文件夹,里面就是cronolog的可执行文件,可以愉快的分割日志了。

https://img-blog.csdnimg.cn/20190826215618510.png

二、按天生成日志修改

1、安装成功后,我们就可以按照每天来生成日志了,需要修改tomcat/bin下的catalina.sh,找到下面这行,类似这样的行有2处:修改后第一个变量是cronnolog的地址,第二个变量是日志存放地址

org.apache.catalina.startup.Bootstrap "$@" start \

      >> "$CATALINA_OUT" 2>&1 &

修改如下:

org.apache.catalina.startup.Bootstrap "$@" start \

2>&1 | /usr/local/sbin/cronolog /usr/local/tomcat/logs/catalina.%Y-%m-%d.out >>/dev/null &

截图如下:

 

2、将 touch "$CATALINA_OUT"改为打印内容echo "11111"

 

3、保存后,重新启动tomcat就可以了

三、定时清理日志文件

1、在bin目录下创建一个定时清理脚本

cd ./bin

touch clean.sh

vi ./clean.sh

 2、脚本内容

#!/bin/bash
echo "del file start....."
find /applog/ -mtime +15 -name '*.out'  -exec rm -rf {} \;
echo "del file end"

 

3、给文件授权,并添加可执行文件

chmod +X ./clean.sh

chmod 777 ./clean.sh

4、配置Conrolog定时清理日志,使用crontab -l查看当前任务,在确认没有其他任务执行的情况下,使用crontab -e新建一个定时执行任务,输入如下内容:

#每天早上130执行脚本

30 01 * * * /jboss/tomcat-9.0.39/bin/clean.sh

输入完成后,输入wq进行保存

至此清理配置即完成了

5crontab常用命令如下(可参考该链接 Linux crontab命令.

#执行文字编辑器来设定时程表,内定的文字编辑器是 VI

crontab -e

#删除目前的时程表

crontab    -r

#列出目前的时程表

crontab    -l

四、去掉localhost_access_log日志

注释掉tomcat中server.xml中的内容

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log" suffix=".txt"

               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值