今天做了一个动态修改web系统的log4j日志级别的功能,这样就能灵活的配置系统的日志级别了。
经过多次的尝试,终于完成了这个功能,不过不够理想,存在一定的问题,希望看到此文章的兄弟姐妹解决我留下的问题。
先说说我通过这次经历对log4j配置的理解吧。
1、关于category配置日志级别
如果appender配置了Threshold,那么日志的输出级别为category和appender两者之间的那个高级别为准。
如以下代码:
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="ERROR"
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %t [%l] %m%n" />
</layout>
</appender>
<category name="com.ibatis.common.jdbc">
<priority value="DEBUG" />
</category>
该配置中com.ibatis.common.jdbc的日志输出级别为ERROR,而不是DEBUG
2、重新加载log4j日志
DOMConfigurator.configure(log4jXmlPath);
类DOMConfigurator为log4j包下的类
留下的疑问......
2、我通过以下配置实现了动态修改日志级别的功能,但是存在不理解的地方,还望知道的朋友给解释下。
代码:
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="DEBUG" />
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %t [%l] %m%n" />
</layout>
</appender>
<category name="com.ibatis.common.jdbc">
<priority value="DEBUG" />
</category>
<root>
<priority value="ERROR" />
<appender-ref ref="CONSOLE" />
</root>
我把appender 的级别设置为debug,root中添加<priority value="ERROR"/>
这样设置,就会以我设置的category中的级别为准了。但是不知道为什么。
附件是我的log4j日志配置文件,留作备用
分享到:
相关推荐
lo4j配置文件.rar.....................................
java Lo4j日志输出
lo4j详细讲解及详细文档,里面还附带着api文档
commons-logging是为那些需要建立在不同环境下使用不同日志架构的组件或库的开发者创建的,其中包括Apache Log4j以及Java log的日志架构。把日志信息commons-logging的Log接口,并由commons-logging在运行时决定...
log4j学习笔记,里面有怎么搭建测试环境,测试代码,是给初学者提供一些指导
log4j.properties的具体配置方法和实例,其中有我自己总接的方法和下载的原理TXT文档,以及我自己写的实例,初学者还是可以参考的
log4j 真实例子下载下来可以直接运行,里面有log4j.jar包,并且包含详细说明文档;初学者可以三十分钟就学会!主要是实用!
博文链接:https://jwfpd.iteye.com/blog/43227
lo4j简单项目(包括commons-discovery-0.2.jar, commons-logging.jar, log4j-1.2.8.jar三个jar包和log4j.properties,以及测试类)
log4j详解.doc log4j使用说明.doc log4jAPI.chm log4j配置.txt 深入学习log4j.PDF
log4j-api-2.12.4.jar和log4j-core-2.12.4.jar,该版本避免log4j漏洞问题。
创建liunx 系统的负载ip三角模式,请用lo 的三角接口模式,需要重新创建网卡,创建接口后需要重启网卡,重启网卡期间会出现网络中断的情况。由于创建新的网卡,会造成短暂的网络通讯暂停,所以要,选择访问量低的...
包含jar包,详细配置(详细的不能再详细了),相关文档
log4j日志文件的JAR包及配置文件。 使用log4j日志文件的步骤: Step1:添加日志文件所需要的JAR包; Step2:添加日志的配置文件; Step3:创建日志对象,使用日志对象的方法记录日志。
log4j2.xml日志文件,简单实用,配置齐全,你值得拥有
log4j2-logstash-json 经过测试 logstash:5 log4j2:2.7 来自fork Logstash配置 input { tcp { port => 5001 codec => json_lines } } ## Add your filters / logstash plugins configuration here filter{...