- 博客分类:
以前的log一直都是组长进行配置,自己甚至连log的级别都分不太清楚,为了避免这种尴尬的情况再次发生,自己尝试了一下在spring boot中进行log4j2的配置。
首先自定义一个log4j2.xml文件:
Java代码
- <?xml version="1.0" encoding="UTF-8"?>
- <Configuration status="WARN">
- <Appenders>
- <Console name="Console" target="SYSTEM_OUT" follow="true">
- <PatternLayout>
- <pattern>%d %p %C{1.} [%t] %m%n</pattern>
- </PatternLayout>
- </Console>
- <File name="File" fileName="/Users/zk_chs/logtest/zk_chs.log">
- <PatternLayout>
- <pattern>%d %p %C{1.} [%t] %m%n</pattern>
- </PatternLayout>
- </File>
- </Appenders>
- <Loggers>
- <Logger name="org.apache.catalina.util.LifecycleBase" level="error" />
- <Logger name="org.apache.coyote.http11.Http11NioProtocol" level="warn" />
- <Logger name="org.apache.tomcat.util.net.NioSelectorPool" level="warn" />
- <Logger name="org.hibernate.validator.internal.util.Version" level="warn" />
- <Logger name="org.springframework" level="warn" />
- <Logger name="com.github" level="debug" />
- <Root level="info">
- <AppenderRef ref="Console" />
- </Root>
- </Loggers>
- </Configuration>
这个log文件相信大家都能看懂,不太明白的话可以参考下面的地址:
接下来在pom.xml按照spring boot的文档进行定义
Java代码
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-log4j2</artifactId>
- </dependency>
最后在application.properties文件中,指定加载的log文件位置:
Java代码
- logging.config=classpath:log4j2.xml
这样,我们便能在程序中使用log了,目前我们的日志是在控制台进行输出,如果需要输出到文件中的话,添加<AppenderRef ref="File" />即可