前几天看师兄都不用看服务器,天天盯着邮箱看就能知道代码哪里出问题了。手痒,我就试试,写了一个小的程序Java的
导入jar文件
log4j-1.2.1.jar
activation.jar
mail.jar
项目结构:
log4j.properties
log4j.appender.infoR.Append = true
log4j.appender.infoR.Threshold = INFO
#log4j.appender.infoR.DatePattern='_'yyyy-MM-dd-HH'.log'
log4j.appender.infoR.layout = org.apache.log4j.PatternLayout
log4j.appender.infoR.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [ %l ] %m%n
#errorR
log4j.appender.errorR = org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorR.File =f:/errorLog.txt
log4j.appender.errorR.Append = true
log4j.appender.errorR.Threshold = ERROR
#log4j.appender.errorR.DatePattern='_'yyyy-MM-dd-HH'.log'
log4j.appender.errorR.layout = org.apache.log4j.PatternLayout
log4j.appender.errorR.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [ %l ] %m%n
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.MAIL.Threshold=ERROR
log4j.appender.MAIL.BufferSize=512
log4j.appender.MAIL.SMTPHost=smtp.sina.cn
log4j.appender.MAIL.Subject=\u522B\u6CE1\u59B9\u5B50\u4E86\uFF0C\u8D76\u7D27\u4FEE\u7406\u670D\u52A1\u5668
log4j.appender.MAIL.SMTPUsername=zhanglu1236789@sina.cn
log4j.appender.MAIL.SMTPPassword=aasd6778246995
log4j.appender.MAIL.From=zhanglu1236789@sina.cn
log4j.appender.MAIL.To=2366585970@qq.com
log4j.appender.MAIL.layout=test.Logger4jHTMLLayout
log4j.appender.MAIL.layout.ConversionPattern=[ErrorMessage] %d - %c -%-4r [%t] %-5p %c %x - %m%n
Logger4jHTMLLayout.jave
import org.apache.log4j.HTMLLayout;
/**
* author:zhanglu
* 2015年9月14日
* 下午5:19:58
*/
public class Logger4jHTMLLayout extends HTMLLayout {
@Override
public String getContentType() {
return "text/html;charset=utf-8";
}
}
checkLog4j1.java 测试类
import org.apache.log4j.Logger;
/**
* author:zhanglu
* 2015年9月14日
* 下午4:50:15
*/
public class checkLog4j1 {
private static Logger info = Logger.getLogger("InfoLogger");
private static Logger error = Logger.getLogger("ErrorLogger");
public static void main(String[] args) {
error.error("sdadfwf");
}
}
运行,邮箱收到如下邮件
注意,大家一定要重写getContentType方法,防止乱码