tomcat日志切割

简介:

第一种方法:yum 安装cronolog软件
1.yum install cronolog -y 第三方软件
源码包下载地址
http://download.chinaunix.net/download.php?id=3457&ResourceID=1851
2.修改配置文件。修改前记得备份
[root@tomcat01 sbin]# cat -n /aliyun/tomcat7/bin/catalina.sh
184 #if [ -z "$CATALINA_OUT" ] ; then
185 # CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
186 #fi
改为下面的
187 ###################
188 if [ -z "$CATALINA_OUT" ] ; then
189 CATALINA_OUT="$CATALINA_BASE"/logs/tomcat01.$(date +%F).out
190 fi
191 #####################
注释掉373 #touch "$CATALINA_OUT"
386 387 改为一下:
386 org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
387 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
395 396 改为一下:
395 org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
396 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
注意此两处修改不要注视,注释启动tomcat时会报错。要直接删掉这两处的原内容

[root@tomcat01 logs]# /aliyun/tomcat7/bin/startup.sh
报错:/usr/local/sbin/ 没有cronolog 
[root@tomcat01 logs]# cp /usr/sbin/cronolog /usr/local/sbin/
/aliyun/tomcat7/bin/startup.sh (成功)
如果抱错catalina.sh,说明此脚本文件没有执行权限,所以 chown +x catalina.sh
3.区分不同的tomcat机器的日志方便集中收集tomcat实时日志
[root@tomcat01 logs]# vim /aliyun/tomcat7/bin/catalina.sh
188 if [ -z "$CATALINA_OUT" ] ; then
189 ATALINA_OUT="$CATALINA_BASE"/logs/ tomcat01.$(date +%F).out
190 fi
/aliyun/tomcat7/bin/startup.sh
[root@tomcat01 logs]# find ./ -type f -name "tomcat01.2016-04-22.out"
./tomcat1.2016-04-22.out

[root@tomcat01 logs]# vim /aliyun/tomcat7/bin/catalina.sh
188 if [ -z "$CATALINA_OUT" ] ; then
189 ATALINA_OUT="$CATALINA_BASE"/logs/ tomcat01.$(date +%F).out
190 fi
/aliyun/tomcat7/bin/startup.sh
[root@tomcat01 logs]# find ./ -type f -name "tomcat01.2016-04-22.out"
./tomcat01.2016-04-22.out

第二种方法源码包编译安装cronolog第三方tomcat日志切割软件
1.源码包下载地址
http://download.chinaunix.net/download.php?id=3457&ResourceID=1851
2.安装过程
cd /aliyun/soft/
rz -y cronolog-1.6.2.tar.gz
ls
tar xf cronolog-1.6.2.tar.gz -C /aliyun/
cd /aliyun/cronolog-1.6.2/
./configure 
echo $?
make && make install
echo $?
[root@tomcat02 sbin]# ll /usr/local/sbin/
total 52
-rwxr-xr-x 1 root root 40438 May 12 09:15 cronolog
-rwxr-xr-x 1 root root 9673 May 12 09:15 cronosplit
到此处编译安装完成
3.编辑文件按天切割日志
vim /aliyun/tomcat7/bin/catalina.sh

[root@tomcat01 sbin]# cat -n /aliyun/tomcat7/bin/catalina.sh
184 #if [ -z "$CATALINA_OUT" ] ; then
185 # CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
186 #fi
改为下面的
187 ###################
188 if [ -z "$CATALINA_OUT" ] ; then
189 CATALINA_OUT="$CATALINA_BASE"/logs/tomcat01.$(date +%F).out
190 fi
191 #####################
注释掉373 #touch "$CATALINA_OUT"
386 387 改为一下:
386 org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
387 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
395 396 改为一下:
395 org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
396 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
注意此两处修改不要注视,注释启动tomcat时会报错。要直接删掉这两处的原内容
4.重新启动tomcat生效
[root@tomcat02 sbin]# ll /aliyun/tomcat7/logs/
total 0
[root@tomcat02 sbin]# /etc/init.d/tomcat7 stop
tomcat7 service is stopped! [ OK ]
[root@tomcat02 sbin]# ll /aliyun/tomcat7/logs/
total 0
[root@tomcat02 sbin]# /etc/init.d/tomcat7 start
tomcat7 service is starting! [ OK ]
[root@tomcat02 sbin]# ll /aliyun/tomcat7/logs/
total 16
-rw-r--r-- 1 root root 4295 May 12 09:34 catalina.2016-05-12.log
-rw-r--r-- 1 root root 0 May 12 09:34 localhost.2016-05-12.log
-rw-r--r-- 1 root root 0 May 12 09:34 localhost_access_log.2016-05-12.txt
-rw-r--r-- 1 root root 4295 May 12 09:34 tomcat02.2016-05-12.out


 本文转自 wjw555 51CTO博客,原文链接:http://blog.51cto.com/wujianwei/2056448


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
14天前
|
Java 应用服务中间件
解决IDEA tomcat控制台只有server日志
请注意,确保在调试或开发阶段使用更详细的日志级别(如 `DEBUG`或 `TRACE`),但在生产环境中应将其设置为更高的级别以减少日志量。
14 0
|
6月前
|
应用服务中间件
Tomcat启动时日志报 dcom.sun.manager.jmxremote 异常导致无法正常启动使用
Tomcat启动时日志报 dcom.sun.manager.jmxremote 异常导致无法正常启动使用
|
6月前
|
应用服务中间件 Linux
Linux不重启Tomcat清空catalina.out日志的几种方法
Linux不重启Tomcat清空catalina.out日志的几种方法
280 0
|
6月前
|
Unix 应用服务中间件 Linux
Tomcat清理日志文件无法立即释放磁盘空间
Tomcat清理日志文件无法立即释放磁盘空间
|
9月前
|
移动开发 应用服务中间件 Linux
linux启动tomcat并查看启动日志
linux启动tomcat并查看启动日志
806 0
|
10月前
|
监控 应用服务中间件 Linux
linux中用tailf实时观看tomcat日志
linux中用tailf实时观看tomcat日志
121 0
|
11月前
|
监控 Java 应用服务中间件
简单看看就会的tomcat全家桶(部署-多实例-监控-远程上传-日志-优化等)(下)
简单看看就会的tomcat全家桶(部署-多实例-监控-远程上传-日志-优化等)(下)
132 0
|
应用服务中间件
Tomcat日志实现每天切割(通过Cronolog实现日志分割)
Tomcat日志,如果不做切割处理,会导致日志输出会越来越大,不方便后续的问题追踪。 所以我们对日志文件进行按天进行分割。
616 0
Tomcat日志实现每天切割(通过Cronolog实现日志分割)
|
Shell 应用服务中间件 Linux
Tomcat 日志分割.
一、前言    随着每天业务的增长,Tomcat 的catalina.out日志 变得越来越大,占用磁盘空间不说。要查看某个时候的日志的时候,庞大的日志让你顿时无从下手,所以日志的切割的变得刻不容缓。
1260 0