logback springmvc 把日志输出到指定文件中所遇到的小坑
来源:互联网 发布:idea关联源码 编辑:程序博客网 时间:2024/06/02 05:32
百度网上的很多都是你抄我,我抄你,就几个版本,仍然没有解决问题,废话不多说,我直接上代码:
pom.xml
<logback.version>1.2.2</logback.version>
<logback-ext-spring.version>0.1.4</logback-ext-spring.version>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
<!-- 需要把日志输入到文件才需要这个jar,否则tomcat启动时加载web.xml配置文件时,会因为找不到LogbackConfigListener报错,如果只把日志输入到控制台则不需要,也不需要-在web.xml文件中加载LogbackConfigListener->
<dependency>
<groupId>org.logback-extensions</groupId>
<artifactId>logback-ext-spring</artifactId>
<version>0.1.4</version>
</dependency>
web.xml
<context-param>
<param-name>logbackConfigLocation</param-name>
<param-value>classpath:META-INF/configuration/logback.xml</param-value>
</context-param>
<!-- 第一个坑,不写下面的这个listener 不管是配置绝对路径还是相对路径,文件都不会输出-->
<listener>
<listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class>
</listener>
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds">
<property resource="META-INF/configuration/environment/application.properties"></property>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder
by default -->
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level [%logger{120}.%method \(%line\)] - %msg%n</pattern>
</encoder>
</appender>
<appender name="rollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/a.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.path}/a.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="${cas.log.level}">
<appender-ref ref="STDOUT" />
<appender-ref ref="rollingFile" />
</root>
<logger name="org.springframework" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="org.thymeleaf" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="springfox" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="org.mybatis" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="org.hibernate" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="org.apache" level="ERROR" addtivity="false" >
<appender-ref ref="STDOUT"/>
<appender-ref ref="rollingFile" />
</logger>
<logger name="java.sql" level="DEBUG" />
</configuration>
application.properties
log.level=INFO
log.sql.level=INFO
#如果是eclipse 部署,且是相对路径那么会在你的eclipse 安装目录下面生成相关日志文件夹
#绝对路径也可以
log.path=log/tomcat/testLog
#log.path=d:/log/tomcat/testLog
第二个坑就是网上所说的不要使用logback 1.0.2及之前的版本,日志输入貌似(因为本人没有使用过,只是在国内外的几个技术论坛中都提及到这点)是个bug
- logback springmvc 把日志输出到指定文件中所遇到的小坑
- logback 日志不输出到指定文件
- 把异常信息输出到指定的文件中存储
- android开发:把指定的日志输出到指定的文件
- 配置logback将日志输出到文件
- 案例分析:把指定的信息输出到指定的文件中
- tomcat在windows下把日志输出到文件中
- TOMCAT控制台日志输出到指定文件中
- TOMCAT控制台日志输出到指定文件中
- Tomcat控制台日志输出到指定文件中
- TOMCAT控制台日志输出到指定文件中
- eclipse控制将日志输出到外部指定文件中
- TOMCAT控制台日志输出到指定文件中
- 日志文件把数据恢复到指定的日期【转载】
- intellij IDEA配置scala中使用logback,把日志丢到kafka服务的坑(已经填平)
- log4j详解 将指定日志输出到不同的文件中
- nohup:把输出指定到特定文件
- logback系列之四:输出日志到不同文件
- C++prime plus第6版第三章要点
- 仿京东的楼梯选项卡
- 《参与感,小米内部运营手册》读书笔记
- socket通信中的几个函数--accept(),send(),recv()
- 深入HBase架构解析(一)
- logback springmvc 把日志输出到指定文件中所遇到的小坑
- [4]78. Subsets/90. Subsets II(Java)
- mysql七表查询实例(一)
- javaScript怎么实现双向数据绑定
- 关于《effectivity Java》阅读笔记 02
- MPSOC系列基于ZCU102的linux的kernel的编译
- USB包格式解析
- 51nod 1378 夹克老爷的愤怒(树DP+贪心)
- hotspot vm调优 资料