logback日誌輸出不同級別到不同檔案(開發例項配置)
阿新 • • 發佈:2018-12-27
<?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 控制檯 appender --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> </encoder> </appender> <!-- 出錯日誌 appender --> <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滾 daily --> <!-- log.dir 在maven profile裡配置 --> <fileNamePattern>D:/home/logs//security-error-%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 日誌最大的歷史 60天 --> <maxHistory>60</maxHistory> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印錯誤日誌 --> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <!-- 訪問日誌 appender --> <appender name="ACCESS" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滾 daily --> <fileNamePattern>D:/home/logs//security-access-%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 日誌最大的歷史 60天 --> <maxHistory>60</maxHistory> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> </encoder> </appender> <!-- info日誌 appender --> <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滾 daily --> <fileNamePattern>D:/home/logs//security-info-%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 日誌最大的歷史 60天 --> <maxHistory>60</maxHistory> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印錯誤日誌 --> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <!--日誌列印的包的範圍,及分類日誌檔案儲存 --> <logger name="com.crop.plat" additivity="false"> <level value="DEBUG" /> <appender-ref ref="STDOUT"/> <appender-ref ref="ERROR"/> <appender-ref ref="ACCESS"/> <appender-ref ref="INFO" /> </logger> <!--控制檯列印資源載入資訊--> <root level="info"> <appender-ref ref="STDOUT" /> </root> </configuration>
<!-- Logging dependencies --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.0.1</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency>