解决Tomcat文件过大问题

1.引言

1.1.编写目的

   本文档意在说明Tomcat日志过大的解决方案。

1.2.背景

    由于现实生产中,Tomcat服务每天产生的日志文件中的数据都特别庞大,造成日志文件无法打开,或者打开后经常卡顿,影响到了运维、开发人员的日常工作。

1.3.方案大纲

    依旧用system.out打印日志,通过批处理调用Java类来分时间段生成日志文件。

 

2.解决方案

2.1.设计思路

  1. 创建Java类------LogRedirect,功能为根据当前时间生成日志文件,并将此LogRedirect类嵌入LogRedirect.jsp中;
  2. 利用批处理执行LogRedirect.jsp;
  3. 利用Windows的定时任务功能,每小时执行一次该批处理文件;
  4. 创建InitServlet,功能是执行LogRedirect类;
  5. 在web.xml中配置InitServlet,保证服务器已启动便加载InitServlet,生成InitServlet实例。

2.2.程序设计

2.2.1.创建Java类----LogRedirect类

解决Tomcat文件过大问题

解决Tomcat文件过大问题

解决Tomcat文件过大问题

解决Tomcat文件过大问题

功能:根据当前时间生成日志文件;

注:因为主机IP和日志存放目录之间需存在一定联系,如必须现在数据库中插入相应数据:

解决Tomcat文件过大问题

2.2.2.创建JSP----LogRedirect.jsp

解决Tomcat文件过大问题

功能:调用LogRedirect类的redirect方法

2.2.3.创建批处理----LogRedirect.bat

解决Tomcat文件过大问题

 

 

注:其中batch类的代码如下:

解决Tomcat文件过大问题

2.2.4.Windows定时任务

功能:每小时都执行LogRedirect.bat,进而生成时间日志文件(如08-09.log  09-10.log)

2.2.5.创建InitServlet

解决Tomcat文件过大问题

功能:成InitServlet实例时,便调用Logredirect类的redirect方法。

2.2.6.在web.xml中配置InitServlet

解决Tomcat文件过大问题

功能:服务器一启动便加载InitServlet,生成Initservlet实例。​​​​​​​

2.2.7.单元测试结果

解决Tomcat文件过大问题