截取log4j日志并输出到GUI组件
这几天在为自己写的一个网络爬虫加一个UI控制界面,之前的爬虫核心是以命令行启动的,所以日志信息由log4j直接输出的控制台,可是现在有了UI,就不能再将日志信息输出到控制台了,必须将日志信息以某种方式截取,输出到界面上。
?
在网上找了一下相关代码,确实不少,但经过实践检验之后,发现要么是代码太多太麻烦,要么是性能太差(爬虫运行时每秒钟产生日志信息超过百行很随意),大都不适用。无奈,只好自己绞尽脑汁,才勉强做出来一个能用的。现在把代码贴出来,供学习交流,欢迎拍砖!
?
废话不多说,看代码:
?很简单的一个Demo,仅供参考。
下面是我的Log4j日志配置信息:
log4j.appender.label=org.apache.log4j.ConsoleAppenderlog4j.appender.label.layout=org.apache.log4j.PatternLayoutlog4j.appender.label.layout.ConversionPattern=%m%nlog4j.appender.textArea=org.apache.log4j.ConsoleAppenderlog4j.appender.textArea.layout=org.apache.log4j.PatternLayoutlog4j.appender.textArea.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [ %p ] %m%nlog4j.rootLogger=INFO,label,textArea?其实鉴于上述方法,还可以实现更多自定义log4j日志输出功能,在此不再赘述。
?
原创文章,转载请注明出处:http://yshjava.iteye.com/blog/1325036?
?
?
?