tomcat配置日志输出

Posted by Sunfy on 2020-02-18
Words 900 and Reading Time 4 Minutes
Viewed Times
Viewed Times
Visitors In Total

tomcat配置gc日志输出

omcat目录/bin

找到catalina.sh(这是linux下,window下应该是catalina.bat)

配置JAVA_OPTS参数,我这里配置的是tomcat目录/log目录下

JAVA_OPTS= -Xms1024m -Xmx3048m -XX:PermSize=512m -XX:MaxPermSize=1524m -Xss4096K
-Xloggc:../logs/tomcat_gc.log

将输出语句打印至tomcat日志文件中

tomcat-9.0.0

将程序中 System.out.println(“——————这是输出语句System.out.println()——————-“);输出到tomcat 的日志文件中

只需修改tomcat目录中conf-web.xml 中 debug-value 改为1 默认是0

1
2
3
4
5
6
7
8
9
10
11
12
13
 <servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>1</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

日志文件位置在 tomcat目录 logs-catalina.out 中

img

打开看到

img

完成后再将默认值改为0 即可

tomcat日志配置(自带log)

问题

tomcat每次启动时,自动在logs目录下生产以下日志文件,且每天都会生成对应日期的一个文件,造成日志文件众多:

​ localhost.2012-07-05.txt

​ catalina.2012-07-05.txt

​ manager.2012-07-05.txt

​ host-manager.2012-07-05.txt

目的

​ Tomcat以上日志都输出到同一个文件中。

修改步骤

​ 打开Tomcat目录conf\logging.properties,修改如下,所有日志输出到tomcat开头的文件中

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

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

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

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

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

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

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

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

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

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

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

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

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.

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

Tomcat日志总结

Tomcat 日志信息分为两类

一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息 。

二是访问日志信息,它记录的访问的时间,IP ,访问的资料等相关信息。

访问日志的配置

默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志

编辑 ${catalina}/conf/server.xml 文件. 注 :${catalina} 是 tomcat 的安装目录

把以下的注释 () 去掉即可。

配置tomcat 写出更详细的日志

通过对 2.1 示例中 pattern 项的修改,可以改变日志输出的内容。

该项值可以为: common 与 combined ,这两个预先设置好的格式对应的日志输出内容如下:

common 的值: %h %l %u %t %r %s %b

combined 的值: %h %l %u %t %r %s %b %{Referer}i %{User-Agent}i

pattern 也可以根据需要自由组合, 例如 pattern=”%h %l”

对于各fields字段的含义请参照 :

http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html 中的 Access Log Valve 项

修改Tomcat运行日志的等级

日志类型与级别

Tomcat 日志分为下面5类:

catalina 、 localhost 、 manager 、 admin 、 host-manager

每类日志的级别分为如下 7 种:

SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

日志级别的设定方法

修改 conf/logging.properties 中的内容,设定某类日志的级别

示例:

设置 catalina 日志的级别为: FINE

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

禁用 catalina 日志的输出:

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

输出 catalina 所有的日志消息均输出:

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


Copyright 2021 sunfy.top ALL Rights Reserved

...

...

00:00
00:00