| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration>
- <!-- 项目名称 -->
- <property name="PROJECT_NAME" value="demo2" />
- <!-- 文件输出格式 -->
- <property name="PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
- <!-- 输出文件路径 -->
- <property name="OPEN_FILE_PATH" value="/mnt/prd/integration/tongzi/logs "/>
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${PATTERN}</pattern>
- <!-- <charset>UTF-8</charset>-->
- </encoder>
- </appender>
- <!-- ch.qos.logback.core.rolling.RollingFileAppender 文件日志输出 -->
- <appender name="OPEN-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!--不能有这项配置!!!!!-->
- <!--<Encoding>UTF-8</Encoding>-->
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!--日志文件输出的文件名-->
- <FileNamePattern>${OPEN_FILE_PATH}/all/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <!--日志文件保留天数-->
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <!--日志文件最大的大小-->
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <layout class="ch.qos.logback.classic.PatternLayout">
- <pattern>${PATTERN}</pattern>
- </layout>
- </appender>
- <!--输出到debug-->
- <appender name="debug" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>${OPEN_FILE_PATH}/debug/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <append>true</append>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印DEBUG日志 -->
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- </appender>
- <!--输出到info-->
- <appender name="info" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>${OPEN_FILE_PATH}/info/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <append>true</append>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印INFO日志 -->
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- </appender>
- <!--输出到error-->
- <appender name="error" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>${OPEN_FILE_PATH}/error/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <append>true</append>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印ERROR日志 -->
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- </appender>
- <!--输出到warn-->
- <appender name="warn" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>${OPEN_FILE_PATH}/warn/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <append>true</append>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印WARN日志 -->
- <level>WARN</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- </appender>
- <appender name="myInfo" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>${OPEN_FILE_PATH}/myInfo/log.%d{yyyy-MM-dd}-%i.log</FileNamePattern>
- <MaxHistory>30</MaxHistory>
- <TimeBasedFileNamingAndTriggeringPolicy
- class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <MaxFileSize>10MB</MaxFileSize>
- </TimeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <append>true</append>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- <!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">-->
- <!-- <level>INFO</level>-->
- <!-- <onMatch>ACCEPT</onMatch>-->
- <!-- <onMismatch>DENY</onMismatch>-->
- <!-- </filter>-->
- </appender>
- <!-- 控制台输出日志级别 -->
- <root level="info">
- <appender-ref ref="STDOUT"/>
- <appender-ref ref="OPEN-FILE"/>
- <appender-ref ref="debug" />
- <appender-ref ref="info" />
- <appender-ref ref="error" />
- <appender-ref ref="warn" />
- </root>
- <!-- 指定项目中某个包,一把为执行sql的mapper包,当有日志操作行为时的日志记录级别DEBUG -->
- <!-- 级别依次为从高到低:FATAL > ERROR > WARN > INFO > DEBUG > TRACE -->
- <logger name="com.example.demo.dao" level="DEBUG">
- <appender-ref ref="myInfo" />
- </logger>
- <logger name="com.example.demo.controller" level="info">
- <appender-ref ref="myInfo" />
- </logger>
- </configuration>
|