logback使用

来源:互联网 发布:路由器封端口 编辑:程序博客网 时间:2024/04/27 20:27
1.log4j(基本不用)
主要配置信息在log4j.properties里面
初始化log4j的配置文件:有两种方法:
  1.新建一个初始化类,一般用Servlet或过滤器Log4JInit.java,然后配置配置web.xml文件启动时加载
  2.使用Spring已经写好的监听器org.springframework.web.util.Log4jConfigListener

2.logback(常用)
主要配置信息在logback.xml中
初始化方法:
1.没有像log4j那样有现成的spring写好的监听器,需要自己编写。
2.默认启动

  1.logback首先会试着查找logback.groovy文件;

  2.当没有找到时,继续试着查找logback-test.xml文件;

  3.当没有找到时,继续试着查找logback.xml文件;

  4.如果仍然没有找到,则使用默认配置(打印到控制台)。

3.logback基本使用:


1. <configuration scan="true" scanPeriod="60 seconds" debug="false">   debug = true 将打印出logback的内部日志信息,可以定时检测配置信息是否修改

2.<property> 有两个属性,name和value;其中name的值是变量的名称,value的值时变量定义的值。通过<property>定义的值会被插入到logger上3下文中。定义变量后,可以使“${}”来使用变量。

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

4.<root>也是<loger>元素,但是它是根loger。只有一个level属性,应为已经被命名为"root".

5.<appender>有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。


1.consoleAppender

2.FileAppender
<append>:如果是 true,日志被追加到文件结尾,如果是 false,清空现存文件,默认是true。

3.RollingFileAppender
<rollingPolicy>:当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名。
3.1 TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。有以下子   节点:
<fileNamePattern>:
必要节点,包含文件名及“%d”转换符, “%d”可以包含一个java.text.SimpleDateFormat指定的时间格式,如:%d{yyyy-MM}。如果直接使用 %d,默认格式是 yyyy-MM-dd。RollingFileAppender 的file字节点可有可无,通过设置file,可以为活动文件和归档文件指定不同位置,当前日志总是记录到file指定的文件(活动文件),活动文件的名字不会改变;如果没设置file,活动文件的名字会根据fileNamePattern 的值,每隔一段时间改变一次。“/”或者“\”会被当做目录分隔符。

3.2 FixedWindowRollingPolicy: 根据固定窗口算法重命名文件的滚动策略。
triggeringPolicy在两种策略中如下:
1.SizeBasedTriggeringPolicy: 查看当前活动文件的大小,如果超过指定大小会告知
2.RollingFileAppender 触发当前活动文件滚动。只有一个节点:<maxFileSize>:这是活动文件的大小,默认值是10MB。

问题点1:loger的上下级如何确定
如果 logger的名称带上一个点号后是另外一个 logger的名称的前缀,那么,前者就被称为后者的祖先。如果 logger与其后代 logger之间没有其他祖先,那么,前者就被称为子logger 之父。比如,名为 "com.foo""的 logger 是名为"com.foo.Bar"之父。root logger 位于 logger 等级的最顶端,root logger 可以通过其名称取得,如果logger没有被分配级别,那么它将从有被分配级别的最近的祖先那里继承级别。root logger 默认级别是 DEBUG。

问题点2:日志组件间冲突
已经有一些jar可以用来做桥接,删除原来的日志jar,log4j-over-slf4j.jar的作用是通过Log4j进行logback slf4j共存时bridge的作用。slf4j-log4j12.jar用途在于slf4j通过slf4j-log4j12调度log4j。

问题3:如何屏蔽某些包下面的日志
将此包的级别设置为error

0 0
原创粉丝点击