tomcat:日志配置详解(避免日志过多撑爆磁盘) |
您所在的位置:网站首页 › tomcat关闭管理控制台 › tomcat:日志配置详解(避免日志过多撑爆磁盘) |
一,tomcat日志配置
tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties。 # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. 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 ############################################################ # Handler specific properties. # Describes specific configuration info for Handlers. ############################################################ 1catalina.org.apache.juli.FileHandler.level = INFO 1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 1catalina.org.apache.juli.FileHandler.prefix = catalina. 2localhost.org.apache.juli.FileHandler.level = INFO 2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 2localhost.org.apache.juli.FileHandler.prefix = localhost. 3manager.org.apache.juli.FileHandler.level = INFO 3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 3manager.org.apache.juli.FileHandler.prefix = manager. 4host-manager.org.apache.juli.FileHandler.level = INFO 4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 4host-manager.org.apache.juli.FileHandler.prefix = host-manager. java.util.logging.ConsoleHandler.level = INFO java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter ############################################################ # Facility specific properties. # Provides extra control for each logger. ############################################################ org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler # For example, set the org.apache.catalina.util.LifecycleBase logger to log # each component that extends LifecycleBase changing state: #org.apache.catalina.util.LifecycleBase.level = INFO # To see debug messages in TldLocationsCache, uncomment the following line: #org.apache.jasper.compiler.TldLocationsCache.level = INFO 二,tomcat 日志文件详解tomcat有五类日志:catalina、localhost、manager、admin、host-manager catalina.out catalina.out即标准输出和标准出错,所有输出到这两个位置的都会进入catalina.out,这里包含tomcat运行自己输出的日志以及应用里向console输出的日志。默认这个日志文件是不会进行自动切割的,我们需要借助其他工具进行切割(注意:catalina.out文件如果过大会影响) catalina.YYYY-MM-DD.log catalina.{yyyy-MM-dd}.log是tomcat自己运行的一些日志,这些日志还会输出到catalina.out,但是应用向console输出的日志不会输出到catalina.{yyyy-MM-dd}.log,它是tomcat的启动和暂停时的运行日志,注意,它和catalina.out是里面的内容是不一样的。 localhost.YYYY-MM-DD.log localhost.{yyyy-MM-dd}.log主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志,它也是包含tomcat的启动和暂停时的运行日志,但它没有catalina.2018-09-19.log日志全。它只是记录了部分日志。 localhost_access_log.YYYY-MM-DD.txt localhost_access_log.2018-09-19.txt:这个是访问tomcat的日志,请求时间和资源,状态码都有记录。 host-manager.YYYY-MM-DD.log host-manager.2018-09-19.log:这个估计是放tomcat的自带的manager项目的日志信息的,未看到有什么重要的日志信息。 manager.YYYY-MM-DD.log manager.2018-09-19.log : 这个是tomcat manager项目专有的日志文件. 三,Tomcat日志总结 1 Tomcat 日志信息分为两类 : 一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息 。 二是访问日志信息,它记录的访问的时间,IP ,访问的资料等相关信息。 2 访问日志的配置 2.1 默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志 编辑 catalina/conf/server.xml文件.注:catalina/conf/server.xml文件.注:{catalina} 是 tomcat 的安装目录 把以下的注释 () 去掉即可。
2.2 配置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 项
3 修改Tomcat运行日志的等级 3.1 日志类型与级别 Tomcat 日志分为下面5类: catalina 、 localhost 、 manager 、 admin 、 host-manager 每类日志的级别分为如下 7 种: SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value) 3.2 日志级别的设定方法 修改 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
配置完成后,记得重启Tomcat ./shutdown.sh ./startup.sh |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |