最近在学log4j2
网上找了相应的依赖,
4.0.0
cn
jsnu
war
0.0.1-SNAPSHOT
jsnu Maven Webapp
http://maven.apache.org
4.3.3.RELEASE
junit
junit
4.12
jar
test
true
com.jayway.jsonpath
json-path
2.4.0
javax.servlet
javax.servlet-api
3.0.1
provided
org.apache.commons
commons-dbcp2
2.1
mysql
mysql-connector-java
5.1.38
org.mybatis
mybatis
3.2.5
commons-io
commons-io
2.5
org.springframework
spring-core
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-oxm
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-aop
${spring.version}
org.springframework
spring-context-support
${spring.version}
org.springframework
spring-test
${spring.version}
com.mchange
c3p0
0.9.2.1
org.mybatis
mybatis-spring
1.3.0
jstl
jstl
1.2
com.google.code.gson
gson
2.3.1
org.hibernate.validator
hibernate-validator
6.0.0.CR3
javax.validation
validation-api
2.0.0.CR3
javax.el
javax.el-api
3.0.0
org.glassfish.web
javax.el
2.2.4
commons-fileupload
commons-fileupload
1.2.2
org.apache.commons
commons-lang3
3.4
com.sun.mail
javax.mail
1.6.0
commons-codec
commons-codec
1.9
commons-collections
commons-collections
3.2.1
org.slf4j
slf4j-api
1.7.13
org.slf4j
jcl-over-slf4j
1.7.13
runtime
org.apache.logging.log4j
log4j-api
2.8.2
org.apache.logging.log4j
log4j-core
2.8.2
org.apache.logging.log4j
log4j-slf4j-impl
2.8.2
org.apache.logging.log4j
log4j-web
2.8.2
runtime
com.lmax
disruptor
3.2.0
log4j
log4j
1.2.17
fendou-jsnu
org.apache.maven.plugins
maven-compiler-plugin
3.5.1
1.7
1.7
在web.xml中的配置
log4jConfiguration
classpath:conf/log4j2.xml
log4jRefreshInterval
60000
org.apache.logging.log4j.web.Log4jServletContextListener
log4jServletFilter
org.apache.logging.log4j.web.Log4jServletFilter
log4jServletFilter
/*
REQUEST
FORWARD
INCLUDE
ERROR
contextConfigLocation
classpath:conf/applicationContext-*.xml
org.springframework.web.context.ContextLoaderListener
spring
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:conf/springmvc.xml
spring
/
spring request
org.springframework.web.context.request.RequestContextListener
5
CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
utf-8
CharacterEncodingFilter
/*
responseHeadersFilter
com.china.bill.java.Intercepter.ResponseHeadersFilter
responseHeadersFilter
/*
/WEB-INF/jsp/index.jsp
404
/WEB-INF/jsp/error404.jsp
500
/WEB-INF/jsp/error500.jsp
log4j2.xml
/log/fish
{LOG_HOME}/backup
stat
global
日志打印
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static Logger LOG = LoggerFactory.getLogger(LoginHandlerIntercepter.class);
LOG.debug("url = {}", url);
以上代码是修改后正确的代码
刚开始配置的时候遇到了很多问题,jar包冲突导致tomcat无法启动,找了好久才发现log4j相关jar包的版本不对,废了就九牛二虎之力终于把tomcat给启动起来了。
在执行maven install的时候,一会报错(执行编译环境是jre而不是jdk),一会正常,我以为是我建maven工程的问题,新建了maven工程把之前的代码拷进去,执行正常,看项目编译的jdk版本是1.5,然后手动改成1.8,之后又出现执行环境的问题,后来改成1.7终于可以正常打包了。
启动环境,log4j2出现如下错误
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'org.apache.logging.log4j.simplelog.StatusLogger.level' to TRACE to show Log4j2 internal initialization logging.
信息: Initializing log4j from [classpath:conf/log4j2.xml]
log4j:WARN Continuable parsing error 3 and column 53
log4j:WARN 文档根元素 "Configuration" 必须匹配 DOCTYPE 根 "null"。
log4j:WARN Continuable parsing error 3 and column 53
log4j:WARN 文档无效: 找不到语法。
log4j:ERROR DOM element is - not a <log4j:configuration> element.
log4j:WARN Continuable parsing error 3 and column 53
log4j:WARN 文档根元素 "Configuration" 必须匹配 DOCTYPE 根 "null"。
log4j:WARN Continuable parsing error 3 and column 53
log4j:WARN 文档无效: 找不到语法。
log4j:ERROR DOM element is - not a <log4j:configuration> element.
在网上查各种资料,有人说执行project clean < maven clean < maven install 执行后不再报文档无效的错了,然后一直报No log4j2 configuration,网上继续搜资料,终于有人说是web.xml中的文件配置有误,
context-param中关于配置文件的路径信息配置是【log4jConfiguration】而不是log4jConfigLocation。
修改后能正常打印日志了
参考:http://www.cnblogs.com/yoyotl/p/4920073.html
http://www.cnblogs.com/hafiz/p/6170702.html
http://blog.csdn.net/jiangguilong2000/article/details/11397557