java⽇志logback配置⽂件详解
logback配置
<?xml version="1.0" encoding="UTF-8" ?>
<!--根结点-->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!--configuration:-->
properties是什么文件<!--scan:当此属性设置为true时,配置⽂件如果发⽣改变,将会被重新加载,默认值为true-->
<!--scanPeriod:设置监测配置⽂件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒.当scan为true时,此属性⽣效.默认的时间间隔为1分钟-->    <!--debug:当此属性设置为true时,将打印出logback内部⽇志信息,实时查看logback运⾏状态.默认值为false-->
<!-- 属性⽂件:在properties⽂件中到对应的配置项 -->
<property name="logging.path" value="/Users/huqunqing/work_log/testdemo_log/log/junitDemoLog"/>
数据库mysql查询语句
<!--property:-->
<!--name:变量的名称,在上下⽂中可通过${}来使⽤-->
<!--value:变量定义的值-->
<!--上下⽂名称-->
<contextName>junitDemoLog</contextName>
<!--ch.olling.RollingFileAppender=>⽇志⽂件输出-->
<!--根据⽇志级别分离⽇志,分别输出到不同的⽂件-->
<appender name="STDOUT" class="ch.olling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!--通过设置⽇志级别来筛选出该⽂件输出什么级别的⽇志-->
<level>STDOUT</level>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以上-->
<!--<onMatch>DENY</onMatch>-->
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以下-->
<!--<onMismatch>ACCEPT</onMismatch>-->
</filter>
<encoder class="ch.qos.der.PatternLayoutEncoder">
<!--格式化输出(配⾊):%d表⽰⽇期,%thread表⽰线程名,%-5level:级别从左显⽰5个字符宽度%msg:⽇志消息,%n是换⾏符-->
<pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n
</pattern>
<!--⽇志⽂件内容编码格式-->
<charset>UTF-8</charset>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.olling.TimeBasedRollingPolicy">
<!--按时间保存⽇志修改格式可以按⼩时、按天、⽉来保存-->
<fileNamePattern>${logging.path}/junitDemoLog.stdout.%d{yyyy-MM-dd}.log</fileNamePattern>
<!--保存时长-->
<MaxHistory>90</MaxHistory>
<!--⽂件⼤⼩-->
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
</appender>
<!--根据⽇志级别分离⽇志,分别输出到不同的⽂件-->
vlookup多行多列批量匹配<appender name="INFO" class="ch.olling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!--通过设置⽇志级别来筛选出该⽂件输出什么级别的⽇志-->
<level>INFO</level>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以上-->
<!--<onMatch>DENY</onMatch>-->
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以下-->
<!--<onMismatch>ACCEPT</onMismatch>-->
</filter>
html5从入门到精通手册
<encoder class="ch.qos.der.PatternLayoutEncoder">
<!--⽇志⽂件中输出⽇志信息格式-->
<pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n
</pattern>
<!--⽇志⽂件内容编码格式-->
swith语句怎么运行的<charset>UTF-8</charset>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.olling.TimeBasedRollingPolicy">
<!--按时间保存⽇志修改格式可以按⼩时、按天、⽉来保存-->
<fileNamePattern>${logging.path}/junitDemoLog.info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!--保存时长-->
<MaxHistory>90</MaxHistory>
<!--⽂件⼤⼩-->
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
</appender>
<!--根据⽇志级别分离⽇志,分别输出到不同的⽂件-->
<appender name="ERROR" class="ch.olling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
精神谱系
<!--通过设置⽇志级别来筛选出该⽂件输出什么级别的⽇志-->
<level>ERROR</level>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以上-->            <!--<onMatch>DENY</onMatch>-->
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以下-->            <!--<onMismatch>ACCEPT</onMismatch>-->
</filter>
<encoder>
<!--⽇志⽂件中输出⽇志信息格式-->
<pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n
</pattern>
<!--⽇志⽂件内容编码格式-->
<charset>UTF-8</charset>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.olling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>${logging.path}/%d{yyyy-MM-dd}.log</fileNamePattern>
<!--保存时长-->
<MaxHistory>90</MaxHistory>
<!--⽂件⼤⼩-->
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
</appender>
<!--根据⽇志级别分离⽇志,分别输出到不同的⽂件-->
<appender name="DEBUG" class="ch.olling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<!--通过设置⽇志级别来筛选出该⽂件输出什么级别的⽇志-->
<level>DEBUG</level>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以上-->            <!--<onMatch>DENY</onMatch>-->
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以下-->            <!--<onMismatch>ACCEPT</onMismatch>-->
</filter>
<encoder>
<!--⽇志⽂件中输出⽇志信息格式-->
<pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n
</pattern>
<!--⽇志⽂件内容编码格式-->
<charset>UTF-8</charset>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.olling.TimeBasedRollingPolicy">
<!--路径-->
<!--路径-->
<fileNamePattern>${logging.path}/junitDemoLog.debug.%d{yyyy-MM-dd}.log</fileNamePattern>
<!--保存时长-->
<MaxHistory>90</MaxHistory>
<!--⽂件⼤⼩-->
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
</appender>
<!--ch.ConsoleAppender=>⽇志控制台输出-->
<appender name="STDOUT_CONSOLE" class="ch.ConsoleAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!--通过设置⽇志级别来筛选出该⽂件输出什么级别的⽇志-->
<level>STDOUT</level>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以上-->            <onMatch>DENY</onMatch>
<!--ACCEPT、DENY、NEUTRAL,onMatch表⽰接受、拒绝、交给下⼀个filter处理(如果为最后⼀个也表⽰为接受)匹配该级别及以下-->            <onMismatch>ACCEPT</onMismatch>
</filter>
<encoder class="ch.qos.der.PatternLayoutEncoder">
<!--格式化输出(配⾊):%d表⽰⽇期,%thread表⽰线程名,%-5level:级别从左显⽰5个字符宽度%msg:⽇志消息,%n是换⾏符-->            <pattern>
%yellow(%d{yyyy-MM-dd HH:mm:ss}) %red([%thread]) %highlight(%-5level) %cyan(%logger{50}) -
%magenta(%msg) %n
</pattern>
<!--⽇志⽂件内容编码格式-->
<charset>UTF-8</charset>
</encoder>
</appender>
<!--设置哪些输出⽇志和⽇志的输出级别-->
<logger name="com.ibatis" level="DEBUG"/>
<logger name="java.sql.Connection" level="DEBUG"/>
<logger name="java.sql.Statement" level="DEBUG"/>
<logger name="java.sql.PreparedStatement" level="DEBUG"/>
<logger name="java.sql.ResultSet" level="DEBUG"/>
<logger name="cn.hqq.springboot.mapper" level="DEBUG"/>
<!--level控制将打印哪种级别的⽇志-->
<root level="DEBUG">
<appender-ref ref="INFO"/>
<appender-ref ref="ERROR"/>
<appender-ref ref="DEBUG"/>
<!-- ⽣产环境将请STDOUT、STDOUT_CONSOLE去掉 -->
<appender-ref ref="STDOUT"/>
<appender-ref ref="STDOUT_CONSOLE"/>
</root>
</configuration>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。