logback.xml 配置详解(2)

1.logback.xml文件

eclipse放在src目录下,在idea项目中,有一个放配置文件的文件夹。

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
    <!--Appendar详解: http://logback.qos.ch/manual/appenders.html#RollingFileAppender -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 当前Log文件名 -->
        <file>test.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 非当天的Log文件压缩备份为 archive/ldap-pwd.2014-08-10.zip -->
            <fileNamePattern>archive/ldap-pwd.%d{yyyy-MM-dd}.zip</fileNamePattern>
            <!-- 超过30天的备份文件会被删除 -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>

        <layout class="ch.qos.logback.classic.PatternLayout">
            <!-- 格式说明:http://logback.qos.ch/manual/layouts.html#ClassicPatternLayout -->
            <Pattern>%d [%thread] %-5level %40logger{40} - %msg%n</Pattern>
        </layout>
    </appender>

    <logger name="cn.justfly.training.logging" level="info" />

    <root level="info">
        <appender-ref ref="FILE" />
    </root>
</configuration>

###2.configuration节点 属性值:

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

例如:

<configuration scan="true" scanPeriod="60 seconds" debug="false">  
      <!-- 其他配置省略-->  
</configuration> 

3.<property>节点

根目录下的一个节点,主要是设置参数时使用,主要有两个属性name,value。比如可以设置日志路径信息。 例如:获取项目根目录。

<property name="path" value="."/>

获取值:使用${name}

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 当前Log文件名 -->
        <file>${path}/logs/test.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 非当天的Log文件压缩备份为 archive/ldap-pwd.2014-08-10.zip -->
            <fileNamePattern>${path}/logs/log.%d{yyyy-MM-dd}.zip</fileNamePattern>
            <!-- 超过30天的备份文件会被删除 -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>

        <layout class="ch.qos.logback.classic.PatternLayout">
            <!-- 格式说明:http://logback.qos.ch/manual/layouts.html#ClassicPatternLayout -->
            <Pattern>%d [%thread] %-5level %40logger{40} - %msg%n</Pattern>
        </layout>
    </appender>

###4.<timestamp>节点 有两个属性

  1. key:标识此<timestamp> 的名字。
  2. datePattern:设置将当前时间(解析配置文件的时间)转换为字符串的模式,遵循java.txt.SimpleDateFormat的格式。

例子:获取值使用${key}

<configuration scan="true" scanPeriod="60 seconds" debug="false">  
      <timestamp key="bySecond" datePattern="yyyyMMdd'T'HHmmss"/>   
      <!-- 其他配置省略-->  
</configuration>   

###5.<logger>节点 用来设置某一个包或者具体的某一个类的日志打印级别、以及指定<appender>。<logger>仅有一个name属性,一个可选的level和一个可选的addtivity属性。

  1. name:用来指定受此logger约束的某一个包或者具体的某一个类。
  2. level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前logger将会继承上级的级别。
  3. addtivity:是否向上级logger传递打印信息。默认是true。

<logger>可以包含零个或多个<appender-ref>元素,标识这个appender将会添加到这个logger。

###6.<root>节点 但是它是根logger。只有一个level属性.。 level: 用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,不能设置为INHERITED或者同义词NULL。 默认是DEBUG。 <root>可以包含零个或多个<appender-ref>元素,标识这个appender将会添加到这个loger。

转载于:https://my.oschina.net/u/2948232/blog/822320

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值