`
Java_Dyf
  • 浏览: 9907 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Log4j使用总结EMAIL

阅读更多
log4j.appender.MAIL=log.mailInfo.SelfSMTPAppender
#log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
# LEVEL
log4j.appender.MAIL.Threshold=INFO
# Email
#log4j.appender.MAIL.BufferedIO=true
#设置缓存,当日志记录数为10条时,发送邮件。默认为1
log4j.appender.MAIL.BufferSize=10
# SMTP
log4j.appender.MAIL.SMTPHost=smtp.163.com
# 主题 用java native2ascii编译解决中文乱码
log4j.appender.MAIL.Subject=LOG4J\u65E5\u5FD7\u8BB0\u5F55\u4FE1\u606F\uFF01
# 邮箱登陆名称
log4j.appender.MAIL.SMTPUsername=**************
# 邮箱登陆密码
log4j.appender.MAIL.SMTPPassword=**************
# 邮箱名称
log4j.appender.MAIL.From=**********@163.com
# 目的邮箱,多个邮箱以逗号分隔
log4j.appender.MAIL.To=*******@hotmail.com
# PatternLayout
#log4j.appender.MAIL.layout=log.mailInfo.SelfHtmlLayOut
log4j.appender.MAIL.layout=log.mailInfo.SelfPatternLayOut
log4j.appender.MAIL.layout.ConversionPattern=[Message] %d - %c -%-4r [%t] %-5p %c %x - %m%n
#不写入上层即父类logger
log4j.additivity.MAIL=false

解决邮箱标题乱码:用native2ascii把中文字符进行Unicode编码
解决邮件内容乱码:写一个子类继承PatternLayOut,重写器getContentType方法,返回字符串"text/plain;charset=UTF-8”
解决邮件缓存问题:如果程序停止时,日志记录小于10, 默认不会发送。写一个子类

public class SelfSMTPAppender extends SMTPAppender implements Runnable {

	public SelfSMTPAppender() {
	super(new SelfTriggeringEventEvaluator());
	Runtime.getRuntime().addShutdownHook(new Thread(this));
            }

	@Override
	public void append(LoggingEvent event) {
		if (!(checkEntryConditions())) {
			return;
		}

		event.getThreadName();
		event.getNDC();
		event.getMDCCopy();
		if (this.getLocationInfo()) {
			event.getLocationInformation();
		}
		this.cb.add(event);
		if (this.evaluator.isTriggeringEvent(event))
			if (cb.length() > this.getBufferSize()) {
sendBuffer();
			}
	}

	/**
	 * 当程序结束时,还在缓冲里面的事件是不会被发送出来的。因为事件数往往没有bufferSize的一半<br>
	 * 加一个线程处理,当JVM退出时,将缓冲区数据发送出去。即程序结束前,执行一些清理工作<br>
	 */
	@Override
	public void run() {
		if (cb.length() > 0) {
			sendBuffer();
		}
	}
}
分享到:
评论
1 楼 koubai 2011-11-15  
very useful

相关推荐

    log4j使用详解log4j使用详解

    log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解log4j使用详解

    log4j使用教程(详解)

    log4j使用教程 log4j使用教程 log4j使用教程

    log4j使用总结

    该文档包括log4j的介绍、log4j的配置文件以及配置参数详解、log4j在程序中的使用、以及log4j配置示例四大部分。

    Log4j使用总结.doc

    Log4j使用总结.docLog4j使用总结.doc Log4j使用总结.docLog4j使用总结.doc Log4j使用总结.docLog4j使用总结.doc

    logging-log4j2-log4j-2.15.0-rc2.zip maven 资源库

    针对Log4j 2 远程代码执行漏洞,需要用到的升级资源包,适用于maven资源库,包括log4j,log4j-core,log4j-api,log4j-1.2-api,log4j-jpa等全套2.15.0 maven资源库jar包。如果是maven本地仓库使用,需要将zip包解压...

    若依框架使用的log4j2.16.0,修复log4j漏洞log4j2下载最新log4j2.16.0下载

    若依框架使用的log4j2.16.0,修复log4j漏洞log4j2下载最新log4j2.16.0下载

    log4j.jar各个版本

    apache-log4j-1.2.15.jar, apache-log4j-extras-1.0.jar, apache-log4j-extras-1.1.jar, apache-log4j.jar, log4j-1.2-api-2.0.2-javadoc.jar, log4j-1.2-api-2.0.2-sources.jar, log4j-1.2-api-2.0.2.jar, log4j-...

    log4j-core-2.15.0.jar log4j-2.15.0-rc2

    Apache log4j2零日漏洞,根据 log4j-2.15.0-rc2 版本编译生成log4j-api-2.15.0.jar 1.解压你的jar jar xvf XXX.jar 2. 删除旧版本jar cd ./BOOT-INF/lib rm -rf log4j-api-*.jar 3. 上传新版本log4j-api-2.15.0....

    log4j使用笔记

    1.该笔记中详细的介绍了log4j的作用和优势、具体地讲解了log4j的使用步骤和详细配置。 2.深入的说明了log4j在项目中的重要地位以及给项目带来的影响,同时说明了log4j的优化。 3.该笔记从log4j的简介/入门开始介绍,到...

    如何使用Log4j如何使用Log4j

    此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j此文件教你一步一步教你如何使用Log4j

    apache-log4j-2.17.0 核心jar包

    Log4j 是一个日志记录框架,Log4j 2 是对 Log4j 的升级,提供了重大改进,超越其前身 Log4j 1.x,并提供许多其它现代功能 ,例如对标记的支持、使用查找的属性替换、lambda 表达式与日志记录时无垃圾等。 Apache ...

    apache log4j使用大全

    apache log4j使用大全 log4j使用

    log4j+slf4j实现 log4j测试代码,log4j+slf4j实现 log4j测试代码

    log4j+slf4j实现 log4j测试代码,log4j+slf4j实现 log4j测试代码,

    log4j-api-2.15.0.jar log4j-2.15.0-rc2

    Apache log4j2零日漏洞,根据 log4j-2.15.0-rc2 版本编译生成log4j-api-2.15.0.jar 1.解压你的jar jar xvf XXX.jar 2. 删除旧版本jar cd ./BOOT-INF/lib rm -rf log4j-api-*.jar 3. 上传新版本log4j-api-...

    Log4j2简介及与Log4j效率对比

    描述Log4j2的配置详情及相对Log4j的优点,包括效率测试程序

    老生常谈Log4j和Log4j2的区别(推荐)

    下面小编就为大家带来老生常谈Log4j和Log4j2的区别(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Log4j日志包

    log4j.rootLogger=debug,CONSOLE,testfile,A1,MAIL ################### # Console Appender ################### log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.Target=...

    Log4J使用完全手

    Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手Log4J使用完全手

    log4j-to-slf4j-2.17.1-API文档-中文版.zip

    赠送jar包:log4j-to-slf4j-2.17.1.jar; 赠送原API文档:log4j-to-slf4j-2.17.1-javadoc.jar; 赠送源代码:log4j-to-slf4j-2.17.1-sources.jar; 赠送Maven依赖信息文件:log4j-to-slf4j-2.17.1.pom; 包含翻译后...

Global site tag (gtag.js) - Google Analytics