`

【转】用cronolog分割tomcat的catalina.out文件 tomcat日志分割

阅读更多

最近由于工作需要,tomcat 的catalina.out文件的不断扩大,导致系统磁盘空间边变小,而且管理也难于管理,所以想用一种工具来分割它。网上找了找用cronolog

安装过程如下:

下载(最新版本)

    # wget http://cronolog.org/download/cronolog-1.6.2.tar.gz

2、解压缩

    # tar zxvf cronolog-1.6.2.tar.gz

3、进入cronolog安装文件所在目录

    # cd cronolog-1.6.2

4、运行安装

    # ./configure
    # make
    # make install

5、查看cronolog安装后所在目录(验证安装是否成功)

    # which cronolog

一般情况下显示为:/usr/local/sbin/cronolog

要想分割tomcat的catalina.out,需作如下个工作:


修改

Java代码 复制代码
  1. org.apache.catalina.startup.Bootstrap “$@” start   \   
  2. >> “$CATALINA_BASE”/logs/catalina.out 2>& 1&  
Java代码 复制代码 收藏代码
  1. org.apache.catalina.startup.Bootstrap “$@” start  \   
  2. >> “$CATALINA_BASE”/logs/catalina.out 2>&1 &  
org.apache.catalina.startup.Bootstrap “$@” start  \
>> “$CATALINA_BASE”/logs/catalina.out 2>&1 &


Java代码 复制代码
  1. org.apache.catalina.startup.Bootstrap "$@" start   2>& 1\   
  2.      | /usr/local/sbin/cronolog "$CATALINA_BASE" /logs/catalina.%Y-%m-%d.out >> /dev/ null &  
Java代码 复制代码 收藏代码
  1. org.apache.catalina.startup.Bootstrap "$@" start  2>&1 \   
  2.       | /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &  
org.apache.catalina.startup.Bootstrap "$@" start  2>&1 \
      | /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &




同时,上面有一行

Java代码 复制代码
  1. touch “$CATALINA_BASE”/logs/catalina.out  
Java代码 复制代码 收藏代码
  1. touch “$CATALINA_BASE”/logs/catalina.out  
touch “$CATALINA_BASE”/logs/catalina.out



可以注释掉,完成之后重起Tomcat就可以了,
看logs文件中是否有catalina.2009-07-01.out样式的日志。

 

 

 

WIN下的tomcat5的日志是按日期来记录的.移到linux下发现tomcat/logs下只有一个catalina.out件.
时间一长.发现日志文件暴增.对于管理真是不方便.
要是能像win下的tomcat 那样分日期记录就好了.思来想去就想到用cron来分割日志文件.
试试吧.
先google一下.cronolog-1.6.2.tar.gz
1.下载cronolog-1.6.2.tar.gz
2.安装
# tar zxvf cronolog-1.6.2.tar.gz
# ./configure
# make
# make install
搞定!
默认是安装在/usr/local/sbin/下.
3.配置
重点来了.注意喽!!!
在tomcat/bin/catalian.sh中找到
org.apache.catalina.startup.Bootstrap "$@" start \ >> "$CATALINA_BASE"/logs/catalina.out 2&1 &

把上面的内容改成:
org.apache.catalina.startup.Bootstrap "$@" start \
|/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &
修改好了.重启
#./catalina.sh start
现去看看劳动成果吧.
# ls /tomcat/logs/
就会发现logs下面多了几个如同catalina.2006.06.01.log的文件了.
 
tomcat下catalina.out日志文件分割
2008年09月16日 星期二 下午 04:27

使用log4j成功使catalina.out文件实现分割。

在tomcat根目录下建立common/classes/log4j.properties,内容如下:
############################################################################
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/tomcat.newlog #设定日志文件名
log4j.appender.R.MaxFileSize=100KB #设定文件到100kb即分割
log4j.appender.R.MaxBackupIndex=10 #设定日志文件保留的序号数
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
############################################################################

在tomcat根目录下的common/lib下加入log4j.jar和commons-logging.jar
重新启动tomcat即可。

 

 

如果想让tomcat 不产生host-manager.2009-09-02.log之类的日志,修改conf/logging.properties,将相关的项注释掉。用cronolog分割tomcat的catalina.out文件 tomcat日志分割

 

例外一种是纯shell实现的解决办法:

编写一个.sh文件,放到tomcet的bin目录下,配置到cron中自动执行,shell脚本如下:

#!/bin/bash

cd `dirname $0`
d=`date +%Y%m%d`
d7=`date -d'7 day ago' +%Y%m%d`

cd ../logs/

cp catalina.out catalina.out.${d}
echo "" > catalina.out
rm -rf catalina.out.${d7}

 

 

注:
$0 获取当前Shell程序的文件名
diranme $0,获取当前Shell程序的路径
cd `dirname $0`,进入当前Shell程序的目录

 

转自:http://john521.iteye.com/blog/1120528

分享到:
评论

相关推荐

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

    标题中的“cronolog切割tomcat catalina.out 文件 tomcat日志按小时切割”是指使用cronolog工具对Tomcat服务器的日志文件,特别是`catalina.out`文件进行按小时分割的实践方法。`catalina.out`是Tomcat默认的日志...

    windows下tomcat的catalina.out按天自动分割

    本文将详细介绍如何在Windows环境下,通过简单的配置使Tomcat的日志文件`catalina.out`能够按照日期进行自动分割。 #### 二、准备工作 在开始配置之前,需要确保已经安装了Tomcat,并且它能正常运行。此外,还需要...

    使用cronolog工具切分Tomcat的catalina.out日志文件

    接下来,当Tomcat运行并产生日志时,`catalina.out`会被cronolog按照指定的时间间隔自动分割,生成新的文件。这样,你可以轻松地查看不同日期的日志,同时避免单个日志文件过大。 在实际操作中,你可能还需要考虑...

    TOMCAT在LINUX下catalina.out文件分割

    logrotate`中添加一行`0 0 * * * /usr/local/sbin/cronolog /path/to/tomcat/logs/catalina.%Y%m%d.out /path/to/tomcat/logs/catalina.out`,这将在每天0点创建一个格式为`catalina.20220525.out`的新日志文件。...

    catalina.out 日志分割

    ### 关于"catalina.out"日志文件及分割方法 #### 一、问题背景与重要性 在IT运维工作中,日志文件对于诊断系统错误、监控应用运行状态以及进行性能优化等方面发挥着至关重要的作用。然而,随着系统运行时间的增长...

    按天切割tomcat的catalina.out日志(附cronolog安装包)

    catalina.out是tomcat把stdout和stderr重定向到文件后生成的日志文件,其生成是不受logging.properties 或 log4j.properties配置文件所影响的,需要另行安装工具(如cronolog或rotatelogs之类)进行处理。...

    tomcat catalina.out日志分离.7z

    tomcat日志 catalina.out分离 免去catalina,out过大的情况,并且查看日志方便,里面包含了食用方法和一个写好的catalina.sh文件 安装好cronolog后直接覆盖源文件

    cronolog-catalina.out

    "cronolog-catalina.out" 这个标题可能指的是 cronolog 被用于管理和分割 Apache Tomcat 的 `catalina.out` 日志文件。`catalina.out` 文件是 Tomcat 服务器的标准输出和错误输出的默认聚合点,包含了应用服务器运行...

    catalina.out切割工具.zip cronolog-1.6.2.tar.gz

    1、解压缩catalina.out切割工具.zip,将文件cronolog-1.6.2.tar.gz传至服务器 # tar -zxvf cronolog-1.6.2.tar.gz 2、进入cronolog安装文件所在目录 # cd cronolog-1.6.2 3、运行安装 # ./configure # make # make ...

    linux下切分tomcat的Catalina.out日志

    通过上述步骤,我们成功地实现了在Linux环境下使用cronolog工具自动切分Tomcat的`catalina.out`日志文件。这种方法不仅提高了日志文件的可管理性,还避免了因单个日志文件过大而导致的问题。这对于保持系统的稳定性...

    cronolog-1.6.2.tar.gz

    要想分割tomcat的catalina.out,需作如下工作: 修改tomcat bin目录下的catalina.sh文件中的 org.apache.catalina.startup.Bootstrap “$@” start \ >> “$CATALINA_BASE”/logs/catalina.out 2>&1 & 为 org....

    tomcat日志过大问题

    - `catalina.out`是Tomcat默认的日志文件。 - 随着时间的增长,此日志文件可能会变得非常大。 - 大型日志文件可能影响系统性能,并使日志分析变得困难。 2. **影响**: - 性能问题: 大型日志文件可能会占用大量...

    tomcat8日志分割 亲测有效

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

    Tomcat日志分割.docx

    总结,通过使用`cronolog`工具,我们可以有效地对Tomcat的`catalina.out`日志进行按日期分割,避免了单个日志文件过大带来的问题,并且便于按日期查询和分析日志。这是一个简单而实用的方法,对于维护和优化Tomcat...

    catalina.out日志切分.docx

    ### Linux环境下使用Cronolog工具实现Tomcat日志文件catalina.out的自动切分 在运维场景中,为了确保服务器性能稳定以及便于日志管理,通常需要对较大的日志文件进行定期切割。特别是在使用Apache Tomcat服务器时,...

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

    例如,我们可以配置cronolog监听Tomcat的`catalina.out`日志文件,并将其分割成每天一个文件,这样每个文件只包含一天的数据。 `tail`小工具则是用于查看文件尾部内容的实用程序,特别是在日志监控中非常有用。在...

    cronolog1.6.2的tomcat日志分割

    在Tomcat这样的Java应用服务器中,catalina.out文件是默认的日志输出文件,它记录了Tomcat运行过程中的所有标准输出和错误输出。随着服务器运行时间的增长,这个文件可能会变得非常大,从而影响系统性能和日志检索...

    cronolog-1.6.2.tar.gz+catalina.sh

    这里,`/path/to/cronolog/log.out` 是日志输出文件,可以替换为 cronolog 的命令,例如: ```bash nohup ... >> | cronolog /path/to/logs/tomcat-%Y%m%d%H.log start >> /dev/null 2>&1 & ``` 这会将日志按照...

Global site tag (gtag.js) - Google Analytics