转 http://znda.blog.163.com/blog/static/297820052009993425704/
关于Linux下tomcat的catalina.out文件过大问题
2009-09-03 11:37
Linux下的tomcat产生的日志文件不象windows下的按时间时间和大小来处理,
尽管也生成了日志文件catalina.2009-0x-0x.log类型的文件,但是其中的catalina.out文件依然增大;它为啥在增大,为啥在增大,原因我就不探究了。
Tomcat的官方文档,由于是外文,偶还没有看明白di;
http://tomcat.apache.org/tomcat-6.0-doc/logging.html
据说是修改某些配置可以实现,希望高人指点,给个官方的解决方案;
老是增大也不是办法,还是想其他办法搞定它为好:
方法1—分割流
使用cronolog工具切分Tomcat的catalina.out日志文件
cronolog一个对日志切分的小工具,其主页在http://cronolog.org/,我们也可以用它来切分Apache的日志。
具体的方法,您可以去google之,这个方法占网络搜索结果的主流;
方法2—脚本流
事情终究不过是个大文件处理的问题,强大的bash来搞定;
使用cron每天来备份当前的catalina.out,然后清空他的内容;
参考脚本如下:
#!/bin/sh
y=`date "+%Y"`
m=`date "+%m"`
d=`date "+%d"`
cd /PATH /tomcat/logs
cp catalina.out catalina.out.$y$m$d
echo > catalina.out
exit
注意linux系统的cron服务是否启动,是否正常工作,还有脚本的存放路径(原因暂保密)
方法3—猥琐流
打开bin目录下的catalina.sh文件,终究不过是个bash文件,
查找一下,catalina.out总共出现三次;
部分截图:
shift
touch "$CATALINA_BASE"/logs/catalina.out
if [ "$1" = "-security" ] ; then
echo "Using Security Manager"
shift
"$_RUNJAVA" $JAVA_OPTS "$LOGGING_CONFIG" $CATALINA_OPTS \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \
-Djava.security.manager \
-
-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
-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
else
"$_RUNJAVA" $JAVA_OPTS "$LOGGING_CONFIG" $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 &
个人觉得也就是这里是写catalina.out文件的;让他写到一个其他的空设备如何?
修改前注意原文件的catalina.sh的备份哟~!!
修改以上代码中的
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
为
>> /dev/null 2>&1 &
保存,然后启动tomcat,目前这个 catalina.out一直是空的了。
这个方法是偶自己想到的,个人认为比较勇敢,目前还没有在生产环境测试过。虚拟机测试是通过的。
方法4—人流
这个方法其实就是linux系统管理员手工去删除,人工操作,简称“人流”;
删除之前最好停止tomcat的服务;
分享到:
相关推荐
Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli...
默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和错误信息。然而,随着服务器运行时间的增长,`catalina.out`可能会变得非常大,导致日志查找和分析变...
这意味着所有通过System.out.println()或System.err.println()打印的信息,包括Java应用的调试信息,都将被记录在此文件中。 控制`catalina.out`大小的方法主要有两种:一是配置Tomcat的logging.properties文件,二...
标题中的“tomcat下catalina.out日志乱码问题处理”主要涉及的是在Tomcat服务器运行过程中,输出的日志文件`catalina.out`中,中文字符显示为乱码的状况。这通常是由于字符编码不匹配导致的,因为Tomcat在读取或写入...
本主题主要涉及两个知识点:一是如何理解并使用`catalina.out`文件,二是如何在Linux环境下通过工具进行日志文件分割。 1. `catalina.out`文件详解: - `catalina.out`是Tomcat的默认日志文件,包含了控制台输出的...
`catalina.out`是Tomcat默认的日志文件,它记录了Tomcat启动、运行以及错误信息,对于系统监控和问题排查至关重要。日志按小时切割有助于管理和存储大量的日志数据,防止单个日志文件过大,便于后期分析和归档。 在...
以Tomcat为例,其默认的日志文件名为`catalina.out`,随着时间推移,该文件可能会变得非常庞大,这不仅消耗大量磁盘空间,还可能降低系统性能。 #### 二、cronolog工具简介 为了解决这一问题,可以使用专门的日志...
在Tomcat中,`catalina.out`文件是在`CATALINA_BASE/logs`或`CATALINA_HOME/logs`目录下创建的,它包含了标准输出和标准错误的所有内容。日志分割的目的是为了便于管理和检索,同时减少因单个大文件导致的系统资源...
在Linux环境下部署Tomcat应用服务器时,由于其默认的日志管理方式可能会导致`catalina.out`日志文件异常增大,从而影响系统的正常运行。当`catalina.out`文件增长至数百兆甚至几个GB时,它可能会占用大量的磁盘空间...
在Tomcat这样的Java应用服务器中,`catalina.out`是默认的日志文件,记录了Tomcat启动、运行过程中的所有信息,包括错误、警告以及普通日志。随着服务器运行时间的增长,`catalina.out`可能会变得非常庞大,不仅占用...
Tomcat服务器在运行时会产生大量的日志信息,通常这些信息会被记录在catalina.out文件中。随着时间的推移,这个日志文件会变得越来越大,不仅占用大量的磁盘空间,而且会影响日志的读取效率。因此,对Tomcat的日志...
3. **日志管理**: 日志文件位于`$CATALINA_HOME/logs`,包括`catalina.out`、`host-manager.log`等,可用于故障排查。 **六、安全性与性能优化** 1. **安全配置**: 通过修改`server.xml`中的`<Connector>`标签,...
mv /var/log/tomcat/catalina.out /var/log/tomcat/catalina.$DATE.out.gz # 创建新的日志文件 touch /var/log/tomcat/catalina.out # 发送HUP信号给Tomcat pkill -HUP -u tomcat catalina ``` 将此脚本保存为`/...
5. **日志管理**:Tomcat的日志信息存储在`logs`目录下,包括`catalina.out`、`host-manager`和`manager`等文件。可以通过配置`logging.properties`文件来定制日志输出。 6. **安全管理**:Tomcat提供了基于角色的...
### Linux环境下使用Cronolog工具实现Tomcat日志文件catalina.out的自动切分 在运维场景中,为了确保服务器性能稳定以及便于日志管理,通常需要对较大的日志文件进行定期切割。特别是在使用Apache Tomcat服务器时,...
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 ...
- 查看logs目录下的日志文件,如catalina.out,以诊断运行时问题。 - 使用VisualVM、JConsole或JProfiler等工具进行性能分析和内存泄漏检测。 总之,Apache Tomcat 8.5.100作为一个强大的Java Web服务器,为...
`catalina.sh` 是 Tomcat 的启动脚本,在 Unix/Linux 环境下使用,用于启动、停止或管理 Tomcat 服务。这个文件通常位于 Tomcat 安装目录的 `bin` 子目录下。 使用 cronolog 配合 `catalina.sh` 可以实现日志的自动...
`catalina.out`文件记录了Tomcat的日志,而`logs`目录下有更详细的错误日志。 8. **故障排查**:当遇到问题时,查看错误日志、检查服务器资源使用情况(如内存和CPU)、确认网络连接是否正常,以及检查配置文件的...