java的logback日志
<!-- LOGGING -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</dependency>
<dependency>
<groupId>janino</groupId>
<artifactId>janino</artifactId>
<version>2.5.10</version>
</dependency>
<!-- LOGGING end -->
<!--全局排除spring-boot-starter-logging内的所有依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<substitutionProperty name="log.proj" value="spring-aop"/>
<substitutionProperty name="log.base" value="logs/${log.proj}"/>
<jmxConfigurator/>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%date [%X{req.id}] [%thread] %-5level %logger{80} - %msg%n</pattern>
</layout>
</appender>
<appender name="COMMON-ALL-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${log.base}/common-all.log</File>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator>
<expression>
<![CDATA[ return level >= INFO && level <= WARN; ]]>
</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>ACCEPT</OnMatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log.base}/common-all_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>200mb</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>%date [%X{req.id}] [%thread] %-5level %logger{80} - %msg%n</pattern>
</encoder>
</appender>
<appender name="COMMON-ERROR-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${log.base}/common-error.log</File>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log.base}/common-error_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>200mb</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>%date [%X{req.id}] [%thread] %-5level %logger{80} - %msg%n</pattern>
</encoder>
</appender>
<!-- zookeeper log -->
<logger name="org.apache.zookeeper">
<level value="info"/>
</logger>
<logger name="com.alibaba.dubbo">
<level value="info"/>
</logger>
<!-- spring mvc log -->
<logger name="org.springframework.web">
<level value="${log.level}"/>
</logger>
<logger name="org.springframework">
<level value="${log.level}"/>
</logger>
<!-- spring transaction log -->
<logger name="org.springframework.transaction">
<level value="${log.level}"/>
</logger>
<logger name="org.springframework.jdbc.datasource">
<level value="${log.level}"/>
</logger>
<!-- project log -->
<logger name="com.ls">
<level value="${log.level}"/>
</logger>
<!-- mybatis log -->
<logger name="java.sql">
<level value="${log.level}"/>
</logger>
<logger name="com.ibatis">
<level value="${log.level}"/>
</logger>
<root>
<level value="${log.level}"/>
<appender-ref ref="COMMON-ERROR-APPENDER"/>
<appender-ref ref="COMMON-ALL-APPENDER"/>
<appender-ref ref="stdout"/>
</root>
<!-- <root additivity="FALSE"> <level value="debug" /> <appender-ref ref="COMMON-ERROR-APPENDER" /> <appender-ref ref="COMMON-ALL-APPENDER" /> <appender-ref ref="stdout" /> </root> -->
</configuration>
还没有评论,来说两句吧...