logback.xml 配置文件

logback.xml 配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!--
  scan,当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
  scanPeriod,设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
  debug,当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。

-->
<configuration debug="false" scan="true" scanPeriod="1 seconds">

    <!--
    contextName ,设置日志上下文名称,可以通过%contextName来打印日志上下文名称
    -->
    <contextName>logback</contextName>
    <!--
    property可以用来设置变量,可以通过${name}来访问,有以下的属性
        name,用于${name}访问的key
        value,用于${name}访问的value
        file ,用于指定配置文件的路径,他的作用在于,如果你有多个配置信息的话,可以直接写在配置文件中,然后通过file引入
               <property file="src/main/java/chapters/configuration/variables.properties" />
        resource作用和file一样,但是,它是可以直接从classpath路径下引入配置文件
               <property resource="resource.properties" />
    -->
    <property name="log.path" value="D:\\log\\logback.log"/>
    <!--
    appender格式化日志输出节点,有俩个属性name和class,class用来指定哪种输出策略,常用就是控制台输出策略和文件输出策略。
    -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- <filter class="com.example.logback.filter.MyFilter" /> -->
        <!--
        系统定义的拦截器,例如我们用ThresholdFilter来过滤掉INFO级别以下的日志不输出到控制台中
        -->
        <!--<filter class="ch.qos.logback.classic.filter.ThresholdFilter">-->
            <!--<!–-->
            <!--Logger可以被分配级别。级别包括:TRACE、DEBUG、INFO、WARN和ERROR,-->
           <!--程序会打印高于或等于所设置级别的日志,设置的日志等级越高,打印出来的日志就越少。-->
           <!--如果设置级别为INFO,则优先级高于等于INFO级别(如:INFO、 WARN、ERROR)的日志信息将可以被输出,小于该级别的如DEBUG将不会被输出。为确保所有logger都能够最终继承一个级别,根logger总是有级别,默认情况下,这个级别是DEBUG。-->
            <!--–>-->
            <!--<level>INFO</level>-->
        <!--</filter>-->
        <!--encoder和pattern节点组合用于具体输出的日志格式-->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="file"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}</file>
        <!--
            rollingPolicy日志回滚策略,在这里我们用了TimeBasedRollingPolicy,基于时间的回滚策略,有以下子节点
            fileNamePattern,必要节点,可以用来设置指定时间的日志归档,例如我们上面的例子是每天将日志归档成一个zip包
            maxHistory ,可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件,,例如设置为30的话,则30天之后,旧的日志就会被删除
            totalSizeCap,可选节点,用来指定日志文件的上限大小,例如设置为3GB的话,那么到了这个值,就会删除旧的日志
-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}.%d{yyyy-MM-dd}.zip</fileNamePattern>
            <maxFileSize>1000MB</maxFileSize>
            <MaxHistory>60</MaxHistory>
        </rollingPolicy>
        <encoder>
            <!--
            %logger{36} 表示logger名字最长36个字符,否则按照句点分割
            %date{HH:mm:ss.SSS}输出日志的打印日志,模式语法与java.text.SimpleDateFormat 兼容。看上去%d就已经够好了
            可选的格式修饰符位于“%”和转换符之间。第一个可选修饰符是左对齐标志,符号是减号“-”;
            m / msg / message 输出应用程序提供的信息。
            t / thread 输出产生日志的线程名。
            p / le / level输出日志级别。
            -->
            <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n
            </pattern>
        </encoder>
    </appender>
    <!--
    root节点,必选节点,用来指定最基础的日志输出级别,他有俩个节点可以用来应用appender,格式化日志输出
    -->
    <root level="debug">
        <appender-ref ref="console"/>
        <appender-ref ref="file"/>
    </root>
    <!--logger节点,可选节点,用来具体指明包的日志输出级别,它将会覆盖root的输出级别-->
    <logger name="com.apche.ibatis" level="TRACE" />
    <logger name="com.mysql.Connection" level="TRACE" />
    <logger name="com.mysql.Statement" level="TRACE" />
    <logger name="com.sql.PreparedStatement" level="TRACE" />

</configuration>
<!--
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.2.11</version>
    </dependency>

     private static final Logger LOGGER= LoggerFactory.getLogger(Agent.class);
     LOGGER.info("事务开启...........");
-->
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值