root接到下级传递的信息,交给已经配置好的名为“STDOUT”的appender处理,“STDOUT”appender将信息打印到控制台; 打印结果如下: Xml代码 1. 13:19:15.406 [main] DEBUG logback.LogbackDemo - ======debug 2. 13:19:15.406 [main] INFO logback.LogbackDemo - ======info 3. 13:19:15.406 [main] WARN logback.LogbackDemo - ======warn 4. 13:19:15.406 [main] ERROR logback.LogbackDemo - ======error 第3种:带有多个loger的配置,指定级别,指定appender Xml代码 1.
当执行logback.LogbackDemo类的main方法时,先执行 name=\,将级别为“INFO”及大于“INFO”的日志信息交给此loger指定的名为“STDOUT”的appender处理,在控制台中打出日志,不再向次loger的上级 打印结果如下: Xml代码 1. 14:05:35.937 [main] INFO logback.LogbackDemo - ======info 2. 14:05:35.937 [main] WARN logback.LogbackDemo - ======warn 3. 14:05:35.937 [main] ERROR logback.LogbackDemo - ======error 如果将 没错,日志打印了两次,想必大家都知道原因了,因为打印信息向上级传递,logger本身打印一次,root接到后又打印一次 打印结果如下: Xml代码 1. 14:09:01.531 [main] INFO logback.LogbackDemo - ======info 2. 14:09:01.531 [main] INFO logback.LogbackDemo - ======info 3. 14:09:01.531 [main] WARN logback.LogbackDemo - ======warn 4. 14:09:01.531 [main] WARN logback.LogbackDemo - ======warn 5. 14:09:01.531 [main] ERROR logback.LogbackDemo - ======error 6. 14:09:01.531 [main] ERROR logback.LogbackDemo - ======error logback 常用配置详解(二) http://blog.csdn.net/haidage/article/details/6794529 : 是 有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。 1.ConsoleAppender: 把日志添加到控制台,有以下子节点: Xml代码 1. 3. 4. 5. 把日志添加到文件,有以下子节点: :如果是 true,日志被追加到文件结尾,如果是 false,清空现存文件,默认是true。 Xml代码 1. 3. 4. 7. tern> 8. 9. 10. 11. 12. 13. 3.RollingFileAppender: 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件。有以下子节点: :如果是 true,日志被追加到文件结尾,如果是 false,清空现存文件,默认是true。 : 告知 RollingFileAppender 合适激活滚动。 rollingPolicy: TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。有以下子节点: 必要节点,包含文件名及“%d”转换符, “%d”可以包含一个 java.text.SimpleDateFormat指定的时间格式,如:%d{yyyy-MM}。如果直接使用 %d,默认格式是 yyyy-MM-dd。RollingFileAppender 的file字节点可有可无,通过设置file,可以为活动文件和归档文件指定不同位置,当前日志总是记录到file指定的文件(活动文件),活动文件的名字不会改变;如果没设置file,活动文件的名字会根据fileNamePattern 的值,每隔一段时间改变一次。“/”或者“\\”会被当做目录分隔符。 可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每个月滚动,且 FixedWindowRollingPolicy: 根据固定窗口算法重命名文件的滚动策略。有以下子节点: