共计 1957 个字符,预计需要花费 5 分钟才能阅读完成。
Tomcat 默认生成的日志文件 catalina.out,随着时间的推移,逐渐增大,可能达到 G 数量级。文件过大,我们将无法使用过常规编辑工具查看,严重影响系统维护工作。解决此问题,主要从 Tomcat 和代码两方面考虑。
一、代码本身考虑
Tomcat 输出 catalina.out 文件,数据主要来源为:System.out 和 System.err 在控制台上直接输出的信息。为了减少日志输出的压力,规范代码习惯,编码时应避免使用 System.out.println() 和 e.printStackTrace()。
二、Tomcat 配置考虑
1、Tomcat 使用 log4j
该方法,在这里不做讨论。
2、Tomcat 配置
部署服务时,在 Context 中添加属性 swallowOutput=”true”,可以减少控制台日志的输出。
3、使用 cronolog 工具分割
A、cronolog 工具下载
官方 URL:http://cronolog.org/download/index.html
B、cronolog 编译安装
[TSP@tsp-dev-webservice ~]$ tar xvf cronolog-1.6.2.tar.gz
[TSP@tsp-dev-webservice cronolog-1.6.2]$ ./configure
[TSP@tsp-dev-webservice cronolog-1.6.2]$ make
[TSP@tsp-dev-webservice cronolog-1.6.2]$ sudo make install
C、修改 Tomcat 启动脚本 catalina.sh
a、修改输出日志路径
修改:
if [-z “$CATALINA_OUT”] ; then
CATALINA_OUT=”$CATALINA_BASE”/logs/catalina.out
fi
为:
if [-z “$CATALINA_OUT”] ; then
CATALINA_OUT=”$CATALINA_BASE”/logs/catalina.%Y-%m-%d.out
fi
b、删除生成日志文件
注释:
touch “$CATALINA_OUT”
为:
#touch “$CATALINA_OUT”
c、修改启动脚本参数
修改:
org.apache.catalina.startup.Bootstrap “$@” start \
>> “$CATALINA_OUT” 2>&1 “&”
为:
org.apache.catalina.startup.Bootstrap “$@” start 2>&1 \
| /usr/local/sbin/cronolog “$CATALINA_OUT” >> /dev/null &
D、重启 Tomcat
Tomcat 输出日志文件分割成功,输出 log 文件格式为:catalina.2014-08-15.out 类型。
资源下载:
—————————————— 分割线 ——————————————
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2014 年资料 /10 月 /25 日 /Tomcat 输出 catalina.out 的大小控制
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
—————————————— 分割线 ——————————————
Linux 下 Apache 与多个 Tomcat 集群负载均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm
Nginx Tomcat 集群负载均衡解决笔记 http://www.linuxidc.com/Linux/2013-07/86827.htm
实例详解 Tomcat 组件安装 +Nginx 反向代理 Tomcat+Apache 使用 mod_jk 和 mod_proxy 反向代理和负载均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm
CentOS 6.5 下利用 Rsyslog+LogAnalyzer+MySQL 部署日志服务器 http://www.linuxidc.com/Linux/2014-06/103836.htm
Apache+Tomcat 环境搭建(JK 部署过程)http://www.linuxidc.com/Linux/2012-11/74474.htm
Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里