概述
经常用tomcat的朋友肯定会发现tomcat logs 目录下会存在各种各样的日志文件,那么这些日志文件分别代表什么意思?哪些信息才是我们需要关注的呢?
tomcat各日志文件含义
tomcat每次启动时,自动在logs目录下生产以下日志文件,按照日期自动备份
localhost.2019-04-25.txt //主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志。 catalina.2019-04-25.txt //经常用到的文件之一,程序的输出,tomcat的日志输出等等 manager.2019-04-25.txt //这个是manager项目专有的日志文件,看不出有什么重要的信息。 host-manager.2019-04-25.txt //这个是放tomcat的自带的manager项目的日志信息的,一般看不到有什么重要的信息。 localhost_access_log.2019-04-25.txt //这个是存放访问tomcat的请求的所有地址以及请求的路径、时间,请求协议以及返回码等信息,需要配置
让所有文件都输出到同一个文件中
打开Tomcat目录conf\logging.properties,修改如下,所有日志输出到tomcat开头的文件中
打开访问日志
默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志
编辑 ${catalina}/conf/server.xml 文件. 注 :${catalina} 是 tomcat 的安装目录
把以下的注释 (<!-- -->) 去掉即可。
<!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> -->
上面的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"
修改tomcat日志级别
Tomcat 日志分为下面5类:
catalina 、 localhost 、 manager 、 admin 、 host-manager
每类日志的级别分为如下 7 种:
SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)
日志级别的设定方法
修改 conf/logging.properties 中的内容,设定某类日志的级别