springboot+log4j2配置日誌方法
阿新 • • 發佈:2019-02-14
springboot+log4j2配置日誌方式
宣告:為什麼springboot配置log4j2,一開始我配置的是logback.xml去做日誌處理,之後專案配置jenkins自動化部署,需要用log4j2.yml檔案
第一步,配置pom檔案
1.先去除springboot自帶的logging
2.新增log4j2依賴
3.新增yml識別
<!-- 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> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> <version>2.0.4.RELEASE</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-yaml</artifactId> </dependency>
第二步配置log4j.yml 檔案
Configuration: status: info monitorInterval: 30 Properties: property: - name: log_file_name value: "databus.log" Appenders: RollingFile: name: "serviceAppender" fileName: "${log_file_name}" filePattern: "${log_file_name}.%i" PatternLayout: Pattern: "%d %p %c{1.} [%t] %C{1} %M %m %ex%n" Policies: SizeBasedTriggeringPolicy: size: "50 MB" DefaultRolloverStrategy: max: 20 Console: name: "consoleAppender" target: "SYSTEM_OUT" PatternLayout: Pattern: "%d %p %c{1.} [%t] %C{1} %M %m %ex%n" Loggers: Root: level: debug AppenderRef: - ref: "serviceAppender" - ref: "consoleAppender"
第三步application.yml 檔案載入log4j2.yml(可有可無)
如果你的日誌不區分生產開發測試不同的配置那麼這步可以省略
如果你區分開發日誌,測試日誌,生產日誌配置不同路徑沒那麼要在application.yml檔案配置載入log4j2.yml
如圖區分:
application.yml檔案新增下面分別載入不同log4j2.yml檔案。
logging:
config: classpath:log4j2-development.yml
結束
感謝觀看