JR 精品文章 - 原来写的一篇老文:实战Log4j
AD: jr (at) javaresearch.org


首页 | 动态 | 文章 | FAQ  | 新闻 | 下载 | 代码 | 工作 | 调查 | 术语 | 站点 | 图书 | 论坛 | 帮助 | 全部  

TOP | 交流 | 软件 | 专栏 | 开源 | 译/著 | 源码 | API  | 推荐 | FTP  | 积分 | 统计 | 搜索 | Blog | 我们  
首页 » 研究文集 » 第三方类库 搜索标题相关文章 搜索标题相关文章    评论此文章 发表评论     开始监控此文章 开始监控   加入收藏夹  加入收藏夹
原来写的一篇老文:实战Log4j
changzheng 原创   更新:2004-11-28 10:09:34  版本: 1.0   

实验目的:
 1.把FATAL级错误写入2000NT日志
 2. WARN,ERROR,FATAL级错误发送email通知管理员
 3.其他级别的错误直接在后台输出 


 实验步骤:
 输出到2000NT日志
 1.把Log4j压缩包里的NTEventLogAppender.dll拷到WINNT\SYSTEM32目录下
 2.写配置文件log4j.properties

 # 在2000系统日志输出
 log4j.logger.NTlog=FATAL, A8
 # APPENDER A8
 log4j.appender.A8=org.apache.log4j.nt.NTEventLogAppender
 log4j.appender.A8.Source=JavaTest
 log4j.appender.A8.layout=org.apache.log4j.PatternLayout
 log4j.appender.A8.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

 3.调用代码:
 Logger logger2 = Logger.getLogger("NTlog"); //要和配置文件中设置的名字相同
 logger2.debug("debug!!!");
 logger2.info("info!!!");
 logger2.warn("warn!!!");
 logger2.error("error!!!");
 //只有这个错误才会写入2000日志
 logger2.fatal("fatal!!!");


 发送email通知管理员:
 1. 首先下载JavaMail和JAF, 
  http://java.sun.com/j2ee/ja/javamail/index.html 
 http://java.sun.com/beans/glasgow/jaf.html 
 在项目中引用mail.jar和activation.jar。
 2. 写配置文件
 # 将日志发送到email
 log4j.logger.MailLog=WARN,A5
 #  APPENDER A5
 log4j.appender.A5=org.apache.log4j.net.SMTPAppender
 log4j.appender.A5.BufferSize=5
 log4j.appender.A5.To=chunjie@263.net
 log4j.appender.A5.From=error@error.com
 log4j.appender.A5.Subject=ErrorLog
 log4j.appender.A5.SMTPHost=smtp.263.net
 log4j.appender.A5.layout=org.apache.log4j.PatternLayout
 log4j.appender.A5.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
 3.调用代码:
 //把日志发送到mail
 Logger logger3 = Logger.getLogger("MailLog");
 logger3.warn("warn!!!");
 logger3.error("error!!!");
 logger3.fatal("fatal!!!");

 在后台输出所有类别的错误:
 1. 写配置文件
 # 在后台输出
 log4j.logger.console=DEBUG, A1
 # APPENDER A1
 log4j.appender.A1=org.apache.log4j.ConsoleAppender
 log4j.appender.A1.layout=org.apache.log4j.PatternLayout
 log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
 2.调用代码
 Logger logger1 = Logger.getLogger("console");
 logger1.debug("debug!!!");
 logger1.info("info!!!");
 logger1.warn("warn!!!");
 logger1.error("error!!!");
 logger1.fatal("fatal!!!");

 --------------------------------------------------------------------
 全部配置文件:log4j.properties
 # 在后台输出
 log4j.logger.console=DEBUG, A1
 # APPENDER A1
 log4j.appender.A1=org.apache.log4j.ConsoleAppender
 log4j.appender.A1.layout=org.apache.log4j.PatternLayout
 log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

 # 在2000系统日志输出
 log4j.logger.NTlog=FATAL, A8
 # APPENDER A8
 log4j.appender.A8=org.apache.log4j.nt.NTEventLogAppender
 log4j.appender.A8.Source=JavaTest
 log4j.appender.A8.layout=org.apache.log4j.PatternLayout
 log4j.appender.A8.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

 # 将日志发送到email
 log4j.logger.MailLog=WARN,A5
 #  APPENDER A5
 log4j.appender.A5=org.apache.log4j.net.SMTPAppender
 log4j.appender.A5.BufferSize=5
 log4j.appender.A5.To=chunjie@263.net
 log4j.appender.A5.From=error@error.com
 log4j.appender.A5.Subject=ErrorLog
 log4j.appender.A5.SMTPHost=smtp.263.net
 log4j.appender.A5.layout=org.apache.log4j.PatternLayout
 log4j.appender.A5.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

 全部代码:Log4jTest.java
 
  1. /*
  2.   * 创建日期 2003-11-13
  3.   */
  4.  package edu.bcu.Bean;
  5.  import org.apache.log4j.*;
  6.  //import org.apache.log4j.nt.*;
  7.  //import org.apache.log4j.net.*;
  8.  /**
  9.   * @author yanxu
  10.   */
  11.  public class Log4jTest
  12.  {
  13.   public static void main(String args[])
  14.   {
  15.    PropertyConfigurator.configure("log4j.properties");
  16.    //在后台输出
  17.    Logger logger1 = Logger.getLogger("console");
  18.    logger1.debug("debug!!!");
  19.    logger1.info("info!!!");
  20.    logger1.warn("warn!!!");
  21.    logger1.error("error!!!");
  22.    logger1.fatal("fatal!!!");
  23.    //在NT系统日志输出
  24.    Logger logger2 = Logger.getLogger("NTlog");
  25.    //NTEventLogAppender nla = new NTEventLogAppender();
  26.    logger2.debug("debug!!!");
  27.    logger2.info("info!!!");
  28.    logger2.warn("warn!!!");
  29.    logger2.error("error!!!");
  30.    //只有这个错误才会写入2000日志
  31.    logger2.fatal("fatal!!!");
  32.    //把日志发送到mail
  33.    Logger logger3 = Logger.getLogger("MailLog");
  34.    //SMTPAppender sa = new SMTPAppender();
  35.    logger3.warn("warn!!!");
  36.    logger3.error("error!!!");
  37.    logger3.fatal("fatal!!!");
  38.   }
  39.  }


版权声明   给作者写信
本篇文章对您是否有帮助?  投票:         投票结果:     14       2
作者其它文章: 作者全部文章
评论人:dulu 发表时间: Sun Nov 28 22:51:39 CST 2004
呵呵,新人不断,老文不老。
评论人:dulu 发表时间: Sun Nov 28 23:00:04 CST 2004
奇怪,发表评论还要审核吗?
评论人:技术商人 发表时间: Mon Nov 29 11:06:37 CST 2004
test
评论人:changzheng 发表时间: Mon Feb 28 09:11:41 CST 2005
:)感谢支持,继续原创好文

这个文章共有 4 条评论
主题: 在Java中读写Excel文件 上一篇文章
返回文章列表 返回〔第三方类库〕
下一篇文章 主题: 使用高效的日志工具―Log4J


文字广告链接
        自主、快速定制基于JAVA的B/S业务系统          重量级企业在线自定义WEB报表平台
        Excel制表、零代码发布、打印、图表结合——快逸报表,免费、稳定、功能强大的java工具
        技术圈: 关于Java、dotNet、PHP、Ruby、奇客、Web2.0等更多资讯博客精选文章

关于 JR  |  版权声明  |  联系我们 

©2002-2006 JR 版权所有 沪ICP备05019622号