log4j 发邮件(解决中文乱码)

来源:互联网 发布:免费淘宝模版一键安装 编辑:程序博客网 时间:2024/05/03 07:00

  关于log4j发邮件的功能,就是在项目上线使用后,为了更好的维护系统,我们可以将记录项目情况的log以邮件形式发送给administor,及时了解系统遇到的问题。并且及时修正,更高效方便。

准备流程:

  1、首先准备log4j-1.2.15.jar注意只有log4j-1.2.14.jar后的版本方支持邮件发送功能。以及邮件发送的jaractivation.jarmail.jar

    2、在项目中架好log4j:首先在src源文件下建立一个log4j.properties,并在原先内容后追加如下:

 

 

  到这里,如果你操作没问题,其实可以测试一下,应该就可以将log中的记录成功发送到指定邮箱中。但是,如果有中文错误信息,你是否发现有乱码呢??别苦恼,有办法解决。

其实日志显示格式都是指定了某一个layout,罗列几种显示方式 (哎……不能用图片)

SimpleLayout:ERROR-在关键字"from"附件有错误。

HTMLLayout:显示类似表格显示效果:

Time  Thread        Level  Category          Message                    

0     http-8080-1   ERROR  dao.DownloadDao   在关键字"from"附近有语法错误

Layout是个抽象类,其子类是很多种显示格式,那么比如我想用HTMLLayout,那么我定义一个类,让其继承HTMLLayout,然后重写其getContentType方法,另外因为上面这几种layout显示方式没有显示出错误所在,不方便进行错误定位,所以我们可以自己写上一个方法,我也自己写了个,在此贴出来供大家参考。

 

其实主要就是覆盖了基类中两个方法,这样就基本完成了利用log4j发邮件,并且能够正确定位错误所在,以便及时修正。

效果就是:

错误等级:ERROR===错误原因:在关键字 'from' 附近有语法错误。 

错误所在类dao.DownloadDao===错误方法所在:doLogin===错误行:97

原创粉丝点击