因为最近在测试环境找问题的时候老是很难定位,可是本地却没有出现任何意外,因此为了修改日志数出级别煞费苦心。幸亏看到了logback这个东东对Tomcat支持很棒,因此就折腾了一下。。web
首先须要去logback官网 : https://logback.qos.ch/tomcat
下载对应版本的logback,而后把logback-core-1.2.3.jar和 logback-access-1.2.3.jar 放入Tomcat的lib目录中,而后在tomcat server配置文件的host节点中添加一条app
<Valve className="ch.qos.logback.access.tomcat.LogbackValve"/>测试
删除conf中commons-logging.properties配置文件,添加一个logback-access.xml 的配置文件url
而后将以下配置复制到该文件中(摘自官网)spa
<configuration> <!-- always a good activate OnConsoleStatusListener --> <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%h %l %u %user %date "%r" %s %b</pattern> </encoder> </appender> <appender-ref ref="STDOUT" /> </configuration>
而后启动Tomcat,会输出日志
这样的日志,说明你的logback与Tomcat已经完美的整合到一块儿code
另: logback增长了一个叫 Viewing status messages 的组件,看着满高大上的样子,顺手就集成进来了。。集成方式很是简单,只须要在根web.xml中加入server
<servlet> <servlet-name>AccessViewStatusMessages</servlet-name> <servlet-class>ch.qos.logback.access.ViewStatusMessagesServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>AccessViewStatusMessages</servlet-name> <url-pattern>/lbAccessStatus</url-pattern> </servlet-mapping>
该servlet,便可。Tomcat启动以后访问xml
http://localhost:{port}/lbAccessStatus 便可出现对应的状态信息