windows下tomcat7日志配置

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_33427869/article/details/87875547

一、配置tomcat将多个日志输出到同一个文件

1、conf/logging.properties详解

#可配置项(5类日志)catalinalocalhostmanageradminhost-manager

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler,3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

#日志输出为输出到文件和输出到控制台

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

 

#日志输出级别:SEVERE (最高级别) > WARNING > INFO > CONFIG > FINE > FINER(精心) > FINEST (所有内容,最低级别)OFF为禁用、ALL为全部

#配置文件使catalina日志输出级别为FINE

1catalina.org.apache.juli.FileHandler.level = FINE

#catalina文件输出位置

1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

#catalina日志前缀为catalina

1catalina.org.apache.juli.FileHandler.prefix = catalina.

#catalina日志后缀为.log

1catalina.org.apache.juli.FileHandler.suffix = .log

#catalina日志输出格式

1catalina.org.apache.juli.FileHandler.formatter = java.util.logging.SimpleFormatter

 

# localhost日志

2localhost.org.apache.juli.FileHandler.level = FINE

2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

2localhost.org.apache.juli.FileHandler.prefix = localhost.

 

# manager日志

3manager.org.apache.juli.FileHandler.level = FINE

3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

3manager.org.apache.juli.FileHandler.prefix = manager.

 

# host-manager日志

4host-manager.org.apache.juli.FileHandler.level = FINE

4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

4host-manager.org.apache.juli.FileHandler.prefix = host-manager.

 

#控制台日志

java.util.logging.ConsoleHandler.level = FINE

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

 

#localhost日志文件输出级别为INFO

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO

#localhost日志文件输出处理类2localhost.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler

 

#manager日志文件输出级别为INFO

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO

#manager日志文件输出处理类3manager.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler

 

#host-manager日志文件输出级别为INFO

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO

#host-manager日志文件输出处理类4host-manager.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler

 

2、conf/server.xml详解

conf/server.xml中配置的是tomcat端口号、服务名等信息,这里讲一下访问日志的配置:

详解:

         className:日志记录使用的类名

         directory:保存日志的文件夹

         prefix:日志文件名前缀

         suffix:日志文件名后缀

         pattern:日志格式

 

3、通过配置将日志输出至同一文件中

将catalina、localhost、manager、host-manager四个日志的输出位置、日志前缀修改为统一的即可:

 

tomcat运行日志默认是以天为单位记录的,格式如:catalina.YYYY-MM-DD.log

 

二、通过配置将控制台输出文本保存至日志。

1、配置bin/startup.bat文件

把call "%EXECUTABLE%" start %CMD_LINE_ARGS%中的start改为run。

修改前:

修改后:

 

2、配置bin/catalina.bat文件

打开后在最后边可以看到有四处 %ACTION%。

我们需要在每处%ACTION%后面加上一些代码:

>> %CATALINA_BASE%\logs\catalina.out

这样,每次启动tomcat,系统就会将控制台输出的信息保存在catalina.out文件中了。

 

3、配置按天自动分割日志

这里使用cronolog工具进行日志分割。

3.1、从网上下载cronolog-1.6.1-win32.zip

网上挺多的,我这里也有一个,cronolog-1.6.1-win32.zip需要5积分(这可不是我定的)

3.2、解压,解压后找到cronolog.exe,将其复制到tomcat的bin目录下。

3.3、配置bin/catalina.bat文件

还是四处%ACTION%。,在其后添加:

|%CATALINA_BASE%\bin\cronolog %CATALINA_BASE%\logs\catalina.%%Y-%%m-%%d.out

 

三、Java项目还需要另外做一下配置

如果你的Java项目使用了第三方日志插件,那么你需要做下边这些配置:

项目中的logging.properties配置文件,需要跟tomcat下的日志配置文件对应,不然插件输出的日志可能会保存到其他地方。

 

当然,也不止这些,后缀、日志滚卷格式等,如果你配置了,就要做出调整

 

四、配置后结果

1、

         logging.properties运行日志已合并。

         startup.bat未修改

         catalina.bat未修改

运行日志不显示System.out.print

cmd显示System.out.print

 

未被捕获的异常:        cmd不显示    日志中显示

被捕获的异常:            cmd显示                 日志中不显示       

 

2、

         logging.properties运行日志已合并。

         startup.bat已修改

         catalina.bat已修改

运行日志不显示System.out.print

logging.properties与catalina.bat不能输出到同一个文件中

运行日志 与 System.out.print未能合并

cmd不显示System.out.print

 

未被捕获的异常:        cmd不显示    日志中显示

被捕获的异常:            cmd显示                 日志中不显示       

 

五、实时查看日志

         Linux下我们可以使用tail –f命令来实时查看日志,但是windows下没有这个命令。不过网上有类似的工具,下载下来,就可以像在Linux下那样使用tail –f查看日志了。

         百度搜索:tail.exe,找一个下载下来。

         添加至path环境变量:

         这样,就可以直接在windows下使用tail –f命令实时查看tomcat日志了。

 

六、定时删日志

首先,在tomcat/log目录下写一个.bat脚本,内容如下:

forfiles /p D:\For_Java\apache-tomcat-7.0.52\logs\ /s /m catalina.*.out /d -5 /c "cmd /c del @path"

 

右键“我的电脑”,打开管理 --> 计算机管理 --> 系统工具 --> 任务计划程序 --> 创建任务

 

先配置常规项,写下任务名称等信息:

 

配置触发器,设置什么时候运行程序,比如:每周一执行

 

配置操作:指定刚才编写的.bat脚本

 

确定。

 

展开阅读全文

没有更多推荐了,返回首页