如何使用Log4j记录Proxool中的日志?

一、如何使用Log4j记录Proxool中的日志
1) 想必用Proxool的同志们一定会看过其帮助文件吧,那里面有关于log的一个章节,但是里面只教大家如何去配置log4j的xml的使用方式,而没有去教大家log4j是怎么连接到proxool的日志系统(默认是输出INFO级别的信息到Console中)中的。
2)Proxool中日志记录是试用了Apache的common-logging组件,也就是说,如果你想使用log4j为日志的管理程序时,你就必须配置common-logging使其指向log4j.
3)common-logging文件配置方式,文件名:commons-logging.properties,文件内容:org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger。当然了前提是您的项目中一定要包含commons-logging.jar和apache-log4j.jar。这样Proxool就会将其日志控制转交给log4j.
4)log4j配置文件的技巧,其实没有必要按照Proxool中的方式去寻找log4j.xml文件,只要将其放入classes文件下,log4j就会自动找到log4j.xml配置文件。但文件名字一定要是log4j.xml.

二、解决相同日志重复输出的问题
1)为什么会出现这个问题?
其实具体的原因我也说不清楚,因为我还没有细致研究过log的原理。表面的原因是这个,在Proxool帮助文件中很明确的说明了,可以分别为单独的数据库连接池做日志,问题就出在这里。帮助文件的代码<category name="org.logicalcobwebs.proxool.test">
<appender-ref ref="test-appender"/>
</category>
只要不加这行代码,Proxool的日志管理就不会同时输入两编相同的日志。
<!--End_rbody_63802415//-->

你可能感兴趣的:(proxool)