Tomcat日志文件catalina.out文件过大问题

随着项目的运行,Tomcat的日志文件catalina.out的大小日益增大,现在都有好几个GB了。如果我们不做任何处理,catalina.out的文件大小将会持续增加,直到把我们的系统硬盘空间给撑爆不可。

当Tomcat的日志文件catalina.out的大小大于2GB时,Tomcat程序崩溃时将有可能会启动失败并且不会有任何错误信息提示。为了避免该场景的出现,我们要定期轮转catalina.out日志文件。

这里小白使用CentOS6U5自带的logrotate程序来解决catalina.out的日志轮转问题。这种方式比较简单。在/etc/logrotate.d/目录下新建一个名为tomcat的文件,


1

2

3

4

5

6

7

8

9

10

cat >/etc/logrotate.d/tomcat <<EOF

/usr/local/apache-tomcat-8.0.28/logs/catalina.out{

    copytruncate

    daily

    rotate 7

    missingok

    compress

    size 16M

}

EOF

以上的配置说明:


1

2

3

4

5

6

7

8

/usr/local/apache-tomcat-8.0.28/logs/catalina.out{ # 要轮转的文件

    copytruncate # 创建新的catalina.out副本后,截断源catalina.out文件

    daily     # 每天进行catalina.out文件的轮转

    rotate 7   # 至多保留7个副本

    missingok   # 如果要轮转的文件丢失了,继续轮转而不报错

    compress   # 使用压缩的方式(非常有用,节省硬盘空间;一个2~3GB的日志文件可以压缩成60MB左右)

    size 16M   # 当catalina.out文件大于16MB时,就轮转

}

以上是如何工作的呢?

  1. 每天晚上crond守护进程会运行在/etc/cron.daily目录中的任务列表;
  2. 与logrotate相关的脚本也在/etc/cron.daily目录中。运行的方式为"/usr/bin/logrotate /etc/logrotate.conf";
  3. /etc/logrotate.conf文件include了/etc/logrotate.d/目录下的所有文件。还包括我们上面刚创建的tomcat文件;
  4. /etc/logrotate.d/tomcat文件会触发/usr/local/apache-tomcat-8.0.28/logs/catalina.out文件的轮转。

以上是程序自动完成的,不需要我们干预。当然了,我们也可以使用手工的方式进行logrotate程序。在命令行进行如下运行:


1

logrotate /etc/logrotate.conf

或者只轮转刚刚的tomcat配置文件,可以这样运行:


1

logrotate --force /etc/logrotate.d/tomcat

要想获得logrotate程序的更多帮助信息,可以查看其man page,


1

man logrotate

可以看一下catalina.out轮转前后的文件大小,

轮转之前:


1

2

3

4

du -sh *

...

2.0G    catalina.out # 未轮转之前的文件大小

...

轮转之后的文件大小:


1

2

3

# du -sh catalina.out*

2.0M    catalina.out

60M catalina.out.1.gz # 轮转之后,进行压缩,日志文件变得更小了

另外在Tomcat的logs目录,每天都会产生很多日志文件,我们也可以定期手工或使用定时任务来删除7天前的日志文件,这里使用手工的方式进行演示,


1

2

cd /usr/local/apache-tomcat-8.0.28/logs

find -mtime +7 -exec rm -f {} \;

 

转自:http://blog.51cto.com/lavenliu/1765791

原文地址:https://www.cnblogs.com/yueminghai/p/8457997.html

时间: 2024-08-01 21:40:06

Tomcat日志文件catalina.out文件过大问题的相关文章

实战解决Tomcat日志文件catalina.out文件过大问题

随着项目的运行,Tomcat的日志文件catalina.out的大小日益增大,现在都有好几个GB了.如果我们不做任何处理,catalina.out的文件大小将会持续增加,直到把我们的系统硬盘空间给撑爆不可. 当Tomcat的日志文件catalina.out的大小大于2GB时,Tomcat程序崩溃时将有可能会启动失败并且不会有任何错误信息提示.为了避免该场景的出现,我们要定期轮转catalina.out日志文件. 这里小白使用CentOS6U5自带的logrotate程序来解决catalina.o

tomcat日志切割catalina.out

法一:利用系统logrotate命令来实现tomcat的日志切割 先定义tomcat的pid 文件 修改$TOMCAT_HOME/bin/catalina.sh文件,大约在128行左右,在PRGDIR下面一行添加CATALINA_PID参数行,修改完成后应该跟下面相同. # Get standard environment variables PRGDIR=`dirname "$PRG"` CATALINA_PID=/var/run/tomcat.pid #CATALINA_PID=$

解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

本文摘自:(http://blog.csdn.net/stevencn76/article/details/6246162) 分类: Java技术专区2011-03-13 12:25 5017人阅读 评论(1) 收藏 举报 tomcatlinux工具任务web 由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已经其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开,而且同时tomcat依旧在不断的向文

shell脚本切割tomcat日志文件

转自:http://www.cnblogs.com/lishun1005/p/6054816.html 鉴于在调试logback和log4j的文件切割一直无法成功,随性用shell写个脚本用来切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的话,可以留下使用方式,先谢谢了) 1:废话少说,直接贴上脚本: #!/bin/sh log_dir=/var/log/tomcat monitor_file=$1 #tomcat目录下的catalina.out文件的绝对路

配置tomcat日志分割

由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已及其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开,而且同时tomcat依旧在不断的向文件中输入内容,这也会降低tomcat的性能.下面利用一个工具来将tomcat产生的catalina.out文件根据日期来分割,将每天产生的日志存放在一个独立的文件中,这样单个log文件就不会太大,而且过期的日志文件可以根据情况在不需要的时间删除掉,或者备份到其他

如何处理Tomcat日志catalina.out日志文件过大的问题

tomcat默认日志文件为catalina.out,随着系统运行时间的增加,该日志文件大小会不断增大,甚至增大到G级.不仅会导致我们无法使用常规工具查找系统问题,而且会影响tomcat性能(比如我在维护中遇到的出现web页面文件上传<swfupload>错误:404). 采用cronlolog工具对日志拆分的方式处理该问题 1.下载cronolog工具,我下载的版本是cronolog-1.6.2 2.将下载好的文件解压,tar xvzf cronolog-1.6.2.tar.gz 3.切换到解

使用linux服务logrotate归档tomcat日志文件

使用notepad++编辑本地文件 tomcat: /usr/tomcat/logs/catalina.out { copytruncate daily dateext nocompress missingok }   参考下图部署此文件到linux服务器: 使用linux服务logrotate归档tomcat日志文件,布布扣,bubuko.com

tomcat生成catalina.out文件

生成catalina.out方法 导语:本文为Windows下生tomcat将控制台信息输出到catalina.out文件  且 保证能实时查看日志文件的方法. 一.创建catalina.out 1.修改tomcat bin目录下的startup.bat文件 修改位置:在startup.bat文件倒数第二行 修改call "%EXECUTABLE%" start%CMD_LINE_ARGS% 为:call "%EXECUTABLE%" run %CMD_LINE_A

eclipse集成tomcat日志文件输出配置

eclipse集成tomcat日志文件输入配置 2015-07-21 00:13 1072人阅读 评论(0) 收藏 举报  分类: tomcat(1)  eclipse Where can I view Tomcat log files in Eclipse? I'm not sure if you were after catalina.out or one of the other logs produced by Tomcat. But, if you're after the catal