1.引言
1.1.编写目的
本文档意在说明Tomcat日志过大的解决方案。
1.2.背景
由于现实生产中,Tomcat服务每天产生的日志文件中的数据都特别庞大,造成日志文件无法打开,或者打开后经常卡顿,影响到了运维、开发人员的日常工作。
1.3.方案大纲
依旧用system.out打印日志,通过批处理调用Java类来分时间段生成日志文件。
2.解决方案
2.1.设计思路
- 创建Java类------LogRedirect,功能为根据当前时间生成日志文件,并将此LogRedirect类嵌入LogRedirect.jsp中;
- 利用批处理执行LogRedirect.jsp;
- 利用Windows的定时任务功能,每小时执行一次该批处理文件;
- 创建InitServlet,功能是执行LogRedirect类;
- 在web.xml中配置InitServlet,保证服务器已启动便加载InitServlet,生成InitServlet实例。
2.2.程序设计
2.2.1.创建Java类----LogRedirect类
功能:根据当前时间生成日志文件;
注:因为主机IP和日志存放目录之间需存在一定联系,如必须现在数据库中插入相应数据:
2.2.2.创建JSP----LogRedirect.jsp
功能:调用LogRedirect类的redirect方法
2.2.3.创建批处理----LogRedirect.bat
注:其中batch类的代码如下:
2.2.4.Windows定时任务
功能:每小时都执行LogRedirect.bat,进而生成时间日志文件(如08-09.log 09-10.log)
2.2.5.创建InitServlet
功能:成InitServlet实例时,便调用Logredirect类的redirect方法。
2.2.6.在web.xml中配置InitServlet
功能:服务器一启动便加载InitServlet,生成Initservlet实例。
2.2.7.单元测试结果