resources下面編輯logback.xml:java
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder charset="UTF-8"> <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %5p %m%n</pattern> </encoder> </appender> <!-- 出錯日誌 appender --> <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>./logs/LinkManagerAPP_logs/error/LinkManagerAPP_error_console.log</file> <append>true</append> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滾 daily --> <!-- log.dir 在maven profile裏配置 --> <fileNamePattern>./logs/LinkManagerAPP_logs/error/LinkManagerAPP_error_console-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!-- 日誌最大的歷史 2天 --> <maxHistory>2</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10485760</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> <charset class="java.nio.charset.Charset">UTF-8</charset> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印錯誤日誌 --> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> </appender> <!-- info日誌 appender --> <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>./logs/LinkManagerAPP_logs/info/LinkManagerAPP_info_console.log</file> <append>true</append> <!-- 按天回滾 daily --> <!-- log.dir 在maven profile裏配置 --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滾 daily --> <fileNamePattern>./logs/LinkManagerAPP_logs/info/LinkManagerAPP_info_console-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!-- 日誌最大的歷史 2 --> <maxHistory>2</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10485760</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern> <charset class="java.nio.charset.Charset">UTF-8</charset> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印錯誤日誌 --> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> </appender> <!--<appender name="FILE"--> <!--class="ch.qos.logback.core.rolling.RollingFileAppender">--> <!--<file>./logs/LinkManagerAPP_logs/LinkManagerAPP_console.log</file>--> <!--<append>true</append>--> <!--<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">--> <!--<fileNamePattern>./logs/LinkManagerAPP_logs/LinkManagerAPP_console-%d{yyyy-MM-dd}.%i.log--> <!--</fileNamePattern>--> <!--<timeBasedFileNamingAndTriggeringPolicy--> <!--class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">--> <!--<maxFileSize>10485760</maxFileSize>--> <!--</timeBasedFileNamingAndTriggeringPolicy>--> <!--<MaxHistory>5</MaxHistory>--> <!--</rollingPolicy>--> <!--<encoder>--> <!--<pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %5p %m%n</pattern>--> <!--<charset class="java.nio.charset.Charset">UTF-8</charset>--> <!--</encoder>--> <!--</appender>--> <!--<logger name="infoAppender" level="INFO" addtivity="false">--> <!--<appender-ref ref="INFO"/>--> <!--</logger>--> <!--<logger name="errorAppender" level="ERROR" addtivity="false">--> <!--<appender-ref ref="ERROR"/>--> <!--</logger>--> <!--<root level="DEBUG">--> <!--<appender-ref ref="STDOUT" />--> <!--<appender-ref ref="errorAppender" />--> <!--<appender-ref ref="infoAppender" />--> <!--</root>--> <root level="DEBUG"> <appender-ref ref="STDOUT" /> <appender-ref ref="INFO" /> <appender-ref ref="ERROR" /> </root> </configuration>
代碼中使用樣例:api
public static final Logger LOGGER = LoggerFactory.getLogger(SequenceProducer.class);
引入的jar包:app
<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.25</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>1.7.25</version> </dependency>