Spring Boot 整合 log4j2 實現日誌管理
阿新 • • 發佈:2019-01-01
摘要:上一篇,我們講了Spring Boot 整合 log4j實現日誌管理,這一篇接著說一下Spring Boot 整合 log4j2,。
一:還是新建一個java工程:
二:增加log4j2的pom.xml配置,如下:
三:新建log4j2.xml配置檔案:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <groupId>com.micai</groupId> <artifactId>micai-springboot-log4j2-9</artifactId> <version>1.0-SNAPSHOT</version> <modelVersion>4.0.0</modelVersion> <packaging>jar</packaging> <name>micai-springboot-log4j2-9</name> <url>http://maven.apache.org</url> <!-- Spring Boot 啟動父依賴 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.1.RELEASE</version> </parent> <dependencies> <!-- Spring Boot web依賴 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <!-- Spring Boot log4j2依賴 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency> </dependencies> </project>
四:在java類中使用log4j2日誌,如下:<?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN" monitorInterval="30"> <Properties> <Property name="PID">????</Property> <Property name="LOG_PATTERN">%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%-40.40c{1.}}{cyan} %clr{:}{faint} %m%n%xwEx</Property> </Properties> <Appenders> <Console name="Console" target="SYSTEM_OUT" follow="true"> <PatternLayout pattern="${LOG_PATTERN}"/> </Console> </Appenders> <Loggers> <Logger name="org.hibernate.validator.internal.util.Version" level="warn" /> <Logger name="org.apache.coyote.http11.Http11NioProtocol" level="warn" /> <Logger name="org.apache.tomcat.util.net.NioSelectorPool" level="warn" /> <Root level="info"> <AppenderRef ref="Console"/> </Root> </Loggers> </Configuration>
package com.micai.springboot.web; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @author zhaoxinguo on 2017/8/21. */ @RestController //提供實現了REST API,可以服務JSON,XML或者其他。這裡是以String的形式渲染出結果。 public class HelloWorldController { private Logger logger = LoggerFactory.getLogger(this.getClass()); @RequestMapping("/") //提供路由資訊,”/“路徑的HTTP Request都會被對映到sayHello方法進行處理。 public String sayHello(){ logger.info("hello world"); return "Hello,World!"; } }