Windows下的tomcat输出的日志文件问题

问题

针对最近在项目中发现Windows下的tomcat存在的问题做一记录。(linux下的tomcat会将日志自动保存到logs文件目录下的Catalina.out文件中)

一、安装目录中logs文件下没有保存日志文件。

二、安装目录中logs文件下有日志文件,但是在控制台上打印的内容不能完整的保存到日志文件中。

解决方案

首先来说一下我自己的解决方案:

打开tomcat安装目录的bin文件夹下的startup.bat文件

Windows下的tomcat输出的日志文件问题

Windows下的tomcat输出的日志文件问题

修改内容如下:

在文件最后的位置将 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 修改为 call "%EXECUTABLE%" run %CMD_LINE_ARGS%  >>%CATALINA_HOME%\logs\catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out 2>&1

其中将start修改为run是修改tomcat的启动方式。在>>之后加的是在tomcat安装目录下的logs文件夹中生成catalina.年-月-日.out的日志存储文件

修改完成后双击startup.bat启动tomcat服务器会发现命令窗口中没有内容,这样就对了。

Windows下的tomcat输出的日志文件问题

运行完成之后,会在logs文件夹下产生一个catalina.当前日期.out的日志存储文件。

Windows下的tomcat输出的日志文件问题

Windows下的tomcat输出的日志文件问题

问题成功解决!但缺点就是控制台不打印信息了,我觉得这个问题也是可以忽略的,毕竟控制台的信息可显示内容有限 。

另外一种是别人的解决方案,但是并没有解决我的问题!写出来供大家参考。

进入tomcat安装目录下的bin文件夹,找到catalina.bat文件。

Windows下的tomcat输出的日志文件问题

Windows下的tomcat输出的日志文件问题

搜索%ACTION%,可以看到四条数据都是以%ACTION%结尾。

Windows下的tomcat输出的日志文件问题

在这四条数据后面都要追加 >> %CATALINA_HOME%/logs/catalina.out 或者 >> %CATALINA_HOME%/logs/catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out

>> %CATALINA_HOME%/logs/catalina.out 是只指定catalina.out一个日志文件,所有的日志都会写入到这个文件中。

Windows下的tomcat输出的日志文件问题

>> %CATALINA_HOME%/logs/catalina.%date:~0,4%-%date:~5,2%-%date:~8,2%.out 是按照当前日期生成以catalina.年-月-日.out命名的日志文件

Windows下的tomcat输出的日志文件问题

继续在bin文件夹中,找到startup.bat文件,在最下方找到call "%EXECUTABLE%" start %CMD_LINE_ARGS% 修改为call "%EXECUTABLE%" run %CMD_LINE_ARGS%

Windows下的tomcat输出的日志文件问题

双击startup.bat文件,启动tomcat服务。