tomcat的log文件夹下有以下几种日志:

1、catalina.YYYY-MM-DD.log

catalina引擎输出的日志;catalina是tomcat的servlet引擎,(其他两大组件是处理html、css、js等静态文件的web容器和处理jsp文件的jasper引擎);catalina负责处理tomcat接入的请求,调度相应的servlet处理。catalina.YYYY-MM-DD.log文件中,主要是这部分业务逻辑的输出日志,在一般情况下,不需要关注


2、host-manager.YYYY-MM-DD.log

tomcat自带的host-manager应用的日志输出文件;如果在部署tomcat的时候,把webapps下面的host-manager删除了,则该日志文件为空。

3、localhost.YYYY-MM-DD.log

tomcat内部代码输出的日志文件;例如jasper引擎在解析jsp文件异常时输出的错误日志,就在该文件中。

4、manager.YYYY-MM-DD.log

tomcat自带的manager应用的日志输出文件;如果在部署tomcat的时候,把webapps下面的manager删除了,则该日志文件中为空。


5、catalina.out

所有输出到控制台的日志,被重定向至catalina.out;即程序中的System.out和System.err输出,均可以在这个日志文件中查询到。需要注意的是,该文件不支持rotate,会不断的膨胀,所以在应用程序中,尽量不要输出日志到控制台,统一输出到对应的日志文件中。如果有必要,可以使用cronolog对该日志文件进行分割;

6、localhost_access_log.YYYY-MM-DD.txt

访问日志,所有tomcat处理的请求和响应均在该文件中记录。

tomcat各种日志如何配置:

上述的1、2、3、4四种日志,在${tomcat_home}/conf/logging.properties文件中进行配置:

级别有OFF》server》warning》info》config》fine》finer》finest》ALL


catalina.out在catalina.sh中进行配置:

在启动脚本中,把所有控制台的输出重定向到了catalina.out文件中;可以修改脚本,把日志文件输出到别的路径


localhost_access_log日志在server.xml中进行配置:

               prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>

server.xml中该日志的配置是被注释了的,如果需要输出访问日志,可以取消这部分配置的注释。其中directory是日志输出的文件路径,以tomcat安装路径作为当前路径;pattern表示日志的格式,common是tomcat提供的一个标准设置格式。其具体的表达式为 %h %l %u %t “%r" %s %b,我们也可以根据需要,配置自己的pattern(直接把common替换为具体的格式表达式即可)。该日志支持的格式化参数如下。一般可以对tomcat的访问日志做日志分析,做相关的数据统计。

    * %a - Remote IP address   
    * %A - Local IP address
    * %b - Bytes sent, excluding HTTP headers, or '-' if zero
    * %B - Bytes sent, excluding HTTP headers
    * %h - Remote host name (or IP address if resolveHosts is false)   
    * %H - Request protocol
    * %l - Remote logical username from identd (always returns '-')
    * %m - Request method (GET, POST, etc.)
    * %p - Local port on which this request was received
    * %q - Query string (prepended with a '?' if it exists)
    * %r - First line of the request (method and request URI)
    * %s - HTTP status code of the response
    * %S - User session ID
    * %t - Date and time, in Common Log Format
    * %u - Remote user that was authenticated (if any), else '-'
    * %U - Requested URL path
    * %v - Local server name
    * %D - Time taken to process the request, in millis
    * %T - Time taken to process the request, in seconds