`

Linux下切分Tomcat的catalina.out日志文件

阅读更多
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条件下运行),

1
2
3
4
5
6
7
8
9
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下catalina.out日志文件分割

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

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

    默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和错误信息。然而,随着服务器运行时间的增长,`catalina.out`可能会变得非常大,导致日志查找和分析变...

    tomcat 下catalina.out 日志乱码问题处理

    标题中的“tomcat下catalina.out日志乱码问题处理”主要涉及的是在Tomcat服务器运行过程中,输出的日志文件`catalina.out`中,中文字符显示为乱码的状况。这通常是由于字符编码不匹配导致的,因为Tomcat在读取或写入...

    Tomcat输出catalina.out的大小控制

    `catalina.out`是Tomcat默认的日志文件,它记录了Tomcat启动、运行以及错误信息,对开发者和管理员来说非常重要。然而,如果不进行适当管理,这个日志文件可能会无限制增长,占用大量磁盘空间,甚至可能导致服务器...

    linux下切分tomcat的Catalina.out日志

    ### Linux下切分Tomcat的Catalina.out日志 #### 背景与问题描述 在Linux环境下部署Tomcat应用服务器时,由于其默认的日志管理方式可能会导致`catalina.out`日志文件异常增大,从而影响系统的正常运行。当`catalina....

    Tomcat使用Log4j输出catalina.out日志

    通过以上步骤,Tomcat服务器将使用Log4j来管理catalina.out日志,这不但解决了日志文件过大和格式不统一的问题,而且提供了更丰富的日志管理功能,例如,可以利用Log4j强大的过滤、路由和格式化等功能,将日志管理得...

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

    在Tomcat这样的Java应用服务器中,`catalina.out`是默认的日志文件,记录了Tomcat启动、运行过程中的所有信息,包括错误、警告以及普通日志。随着服务器运行时间的增长,`catalina.out`可能会变得非常庞大,不仅占用...

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

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

    tomcat7修改catalina.out日志按天生成jar文件

    标题中的“tomcat7修改catalina.out日志按天生成jar文件”指的是在Tomcat 7这个流行的Java应用服务器中,对`catalina.out`日志文件进行配置,以便按照日期自动分割生成新的日志文件。这有助于管理日志,避免单个日志...

    Tomcat日志catalina.out过大解决方案--使用logback按日轮转.rar

    最后,将`logback.xml`文件放置在`Tomcat`的`conf`目录下,重启`Tomcat`,日志管理就会按照新的规则进行,`catalina.out`文件将不再自动增长,而是被`logback`的日志配置所替代。 在使用过程中,可以根据实际需求...

    catalina.out 日志分割

    以Tomcat为例,其默认的日志文件名为`catalina.out`,随着时间推移,该文件可能会变得非常庞大,这不仅消耗大量磁盘空间,还可能降低系统性能。 #### 二、cronolog工具简介 为了解决这一问题,可以使用专门的日志...

    catalina.out日志查看工具

    "catalina.out"是Apache Tomcat服务器的标准输出日志文件,它记录了Tomcat启动、运行以及关闭过程中的所有信息,包括错误消息、警告、调试信息等。这个日志文件对开发者和系统管理员来说非常重要,因为它可以帮助...

    Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式

    在Java Web开发中,Tomcat是一个广泛使用的应用服务器,它默认使用`catalina.out`文件来记录所有标准输出和错误输出。然而,对于大型应用或长时间运行的服务器,`catalina.out`可能会变得非常大,不利于日志管理和...

    tomcat下用Log4j 按文件大小,生成catalina.out日志文件

    在Tomcat中配置Log4j,可以实现按照文件大小生成日志文件,如`catalina.out`,从而避免单个日志文件过大导致的管理不便。 首先,我们需要理解Log4j的工作原理。Log4j主要包括三个核心组件:Logger(日志器)、...

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

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

    TOMCAT在LINUX下catalina.out文件分割

    本主题主要涉及两个知识点:一是如何理解并使用`catalina.out`文件,二是如何在Linux环境下通过工具进行日志文件分割。 1. `catalina.out`文件详解: - `catalina.out`是Tomcat的默认日志文件,包含了控制台输出的...

    tomcat catalina.out日志分离.7z

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

    Catalina.out日志分割工具

    标题提及的"Catalina.out日志分割工具"就是专为Linux环境下Tomcat设计的一个解决方案。这个工具能够自动地将过大的`Catalina.out`文件切割成多个小文件,从而避免单个日志文件过大带来的问题。它通常包含一个脚本...

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

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

    详解关于tomcat切割catalina.out日志的三种方式

    Tomcat服务器在运行时会产生大量的日志信息,通常这些信息会被记录在catalina.out文件中。随着时间的推移,这个日志文件会变得越来越大,不仅占用大量的磁盘空间,而且会影响日志的读取效率。因此,对Tomcat的日志...

Global site tag (gtag.js) - Google Analytics