`

tomcat 日志切割

 
阅读更多

atalina.out文件会越来越大,虽然Tomcat每日会生成一个catalina.ymd.log的文件,但catalina.out主文件仍然不断增加,需要对catalina.out按日切分才好,在网上找了一下,看到一篇《rotating catalina.out in tomcat 5.5 using cronolog》,就用公司的Tomcat配置一下。 
cronolog工具已经在服务器上装过,一个对日志切分的小工具,其主页在http://cronolog.org/,我们也用它来切分Apache的日志。 

进入Tomcat的bin目录,打开catalina.sh文件,找到tomcat启动的相关行,或者你直接查找catalina.out,一般我们修改下面行中的内容(因为我们一般不会在-security条件下运行), 










10 
11 
12 
13 
    else 
    “$_RUNJAVA” $JAVA_OPTS $CATALINA_OPTS \ 
    -Djava.endorsed.dirs=”$JAVA_ENDORSED_DIRS” -classpath “$CLASSPATH” \ 
    -Dcatalina.base=”$CATALINA_BASE” \ 
    -Dcatalina.home=”$CATALINA_HOME” \ 
    -Djava.io.tmpdir=”$CATALINA_TMPDIR” \ 
    org.apache.catalina.startup.Bootstrap “$@” start  \ 
    >> “$CATALINA_BASE”/logs/catalina.out 2>&1 & 

    if [ ! -z "$CATALINA_PID" ]; then 
    echo $! > $CATALINA_PID 
    fi 
    fi 
修改 
org.apache.catalina.startup.Bootstrap “$@” start  \ 
>> “$CATALINA_BASE”/logs/catalina.out 2>&1 & 
为 
org.apache.catalina.startup.Bootstrap “$@” start 2>&1 \ 
| /usr/local/sbin/cronolog “$CATALINA_BASE”/logs/catalina.%Y-%m-%d.out >> /dev/null & 
同时,上面有一行 
touch “$CATALINA_BASE”/logs/catalina.out 
可以注释掉,完成之后重起Tomcat就可以了,在logs目录下可以看到catalina.2009-02-18.out的日志,是按日生成的。 





rotating catalina.out in tomcat 5.5 using cronolog 
Submitted by theCamel on Tue, 08/14/2007 - 16:25. 
Tags: Tomcat 
Cronolog provides a solution to the age-old problem of tomcat's catalina.out log file not rotating and growing so large that the server must be stopped to deal with it. 
First, install cronolog, which can be downloaded from here. 

the cronolog command works like this: 

cronolog [OPTIONS] logfile-spec 

a simple example is: 

cronolog /logs/catalina.out.%Y-%m-%d 

so once output is piped to cronolog, it will create a logfile that looks like: 

catalina.out.2007-08-14 

and when the date changes, it creates a new file: 

catalina.out.2007-08-15 

so to configure, in the catalina.sh replace this string: 

org.apache.catalina.startup.Bootstrap "$@" start \ 
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 & 


with this: 

org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \ 
| /usr/local/sbin/cronolog /logs/catalina.out.%Y-%m-%d >> /dev/null & 


and the catalina.out will now be rotated daily and stored in the path we specified "/logs". If you wish to keep the logs in the tomcat logs dir, just specify that path in the cronolog command in catalina.sh 

| cronolog "$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d >> /dev/null & 


I also removed this line from catalina.sh: 

touch "$CATALINA_BASE"/logs/catalina.out 


as it would no longer be necessary. 

so now instead of one gigantic, ever-growing catalina.out, I have this: 


catalina.2007-08-10.log 
catalina.2007-08-11.log 
catalina.2007-08-12.log 
catalina.2007-08-13.log 
catalina.2007-08-14.log 
catalina.2007-08-15.log 


and all my old log-removal scripts can work and I no longer have to stop the tomcat server just to deal with a log file...

分享到:
评论

相关推荐

    Linux中tomcat日志切割

    "Linux中Tomcat日志切割"是指通过特定的工具或脚本,将Tomcat的日志文件`catalina.out`按照日期进行分割,以实现日志的有序管理和存储。通常,日志切割有助于保持日志文件的大小可控,避免单个文件过大导致的读写...

    tomcat日志切割和tomcat优化

    【标题】:Tomcat日志切割与Tomcat优化 【内容】: Tomcat作为流行的Java Servlet容器,其性能和日志管理是运维人员关注的重点。日志切割是保持日志文件大小合理、便于管理和分析的重要手段,而Tomcat优化则关乎...

    tomcat日志切割

    标题中的“Tomcat日志切割”是指在Apache Tomcat服务器中对日志文件进行定期管理和分割的过程。在大型系统中,日志文件可能会迅速增长,占用大量磁盘空间,因此需要有策略地处理这些日志,以便于分析、存储和清理。...

    win系统下的tomcat日志按日期切割工具

    "win系统下的tomcat日志按日期切割工具"指的是在Windows环境下对Tomcat日志进行自动切割的解决方案。通常,Linux系统中有一个名为`logrotate`的工具用于此目的,但在Windows上,我们可以使用类似功能的`cronolog`...

    Tomcat 日志切割(logrotate)详细介绍

    Tomcat日志切割就是解决这一问题的一个方法,而logrotate是一个在Linux系统中广泛使用的日志管理工具,它可以自动化地对日志文件进行定期切割、归档、压缩和清理。 首先,logrotate的工作原理是基于配置文件进行...

    cronolog-tomcat日志切割

    默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成了不便,为了实现像其它日志文件一样...

    linux shell脚本定时清理tomcat日志文件

    Linux shell脚本定时清理tomcat日志文件 本文将详细介绍 Linux 环境中使用 shell 脚本来定时清理 Tomcat 日志文件的方法。该方法使用 cron 机制来实现每天自动切割日志文件,并删除 4 天前的日志文件。 知识点一:...

    cronolog切割tomcat catalina.out 文件 tomcat日志按小时切割

    5. **监控和维护**:定期检查日志切割是否正常进行,同时根据实际需求设置日志保留策略,例如使用logrotate工具来定期清理旧的日志文件,以节省磁盘空间。 在标签中提到的“源码”可能是指查看cronolog的源代码,...

    tomcat8日志分割 亲测有效

    tomcat日志分割 先安装 cronolog yum install -y cronolog httpd cronolog安装路径为/usr/sbin/cronolog 然后用我的文件覆盖tomcat/bin下面的catalina.sh文件 重启tomcat便可

    Linux下tomcat日志catalina.out按天(/周)分割

    在Linux环境中,Tomcat作为广泛使用的Java应用服务器,其日志管理是系统监控和问题排查的重要环节。默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和...

    Shell脚本切割tomcat的日志文件

    总结,本文介绍了如何使用Shell脚本自动切割Tomcat日志文件,以及如何结合`cron`实现定时执行。这对于日常的系统维护和故障排查工作非常重要,确保日志文件始终保持在可控状态,同时方便历史数据的查询与分析。如果...

    tomcat日志分割脚本

    自己写的tomcat日志分割脚本,自动分割日志,自动删除过期日志,也可以用于其他容器日志分割,稍加修改即可

    tomcat日志文件

    本篇文章将详细探讨Tomcat日志文件的配置和日常管理。 首先,Tomcat的日志输出主要分为两种类型:Catalina日志和主机应用日志。Catalina日志主要记录Tomcat服务器本身的操作信息,而主机应用日志则针对每个部署的...

    Linux tomcat下catalina.out日志文件分割

    Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli...

    日志切割软件

    3. **重定向Tomcat日志输出**:修改Tomcat的`conf/logging.properties`配置文件,将原本写入`catalina.out`的日志重定向到由`cronolog`管理的路径,如`1>/dev/null | /usr/sbin/cronolog /var/log/tomcat/catalina....

    Linux系统Tomcat日志分割jar包及配置文件

    Linux Tomcat下使用Log4j接管catalina.out 日志文件生成方式,按天分割,解决catalina.out日志文件过大问题 1、将log4j-1.2.17.jar、tomcat-juli-adapters.jar两个jar包和log4j.properties文件拷贝到 Tomcat 的 lib...

    probe Tomcat日志管理

    本文将深入探讨"probe Tomcat日志管理"这一主题,重点讲解如何有效地管理和分析Tomcat的日志,以及汉化中文版的优势。 首先,Tomcat是Apache软件基金会的开源Java Servlet容器,广泛应用于Web应用的部署。日志系统...

    cronolog1.6.2的tomcat日志分割

    例如,可以设置每天零点时分进行日志切割,这样每天都会有一个单独的日志文件,便于按日期查找问题。 **在Tomcat中使用cronolog:** 1. **安装cronolog**:首先,你需要在你的Linux系统上安装cronolog。这通常可以...

    Tomcat日志分割20190927_日志分割_tomcat_

    本篇将深入探讨"Tomcat日志分割"这一主题,以及如何配置Tomcat以实现日志自动分割,同时解决防止重复启动的问题。 首先,让我们理解日志分割的概念。日志分割是指将不断增长的日志文件按照特定的时间间隔或大小进行...

Global site tag (gtag.js) - Google Analytics