JAVA LOG4J管理(续JAVA中LOG4J的封装)

原创 2006年06月20日 16:42:00

/********************************************************************
 * 最終更新日:$Date: 2005/11/16 05:48:47 $ [$Revision: 1.11 $]
 * 最終更新者:$Author: LHJ_KK$
 * Copyright (c) 2004-2006 NNN ATA CORPORATION, All rights reserved.
 ********************************************************************/
package jp.co.**.**.core.logging;

import jp.co.**.**.core.constants.BaseConstant;

import org.apache.log4j.Category;
import org.apache.log4j.PropertyConfigurator;

/**
 * ログマネジャクラス<br>
 * 機能は以下の通り<br>
 * <ul>
 * <li>静態方法でインスタンスを実装する
 * <li>ログインスタンスの取得
 * </ul>
 * <br>
 * @since 1.0.0
 * @version <br>1.0.0 2005/09/30 新規作成
 * @author LHJ
 */
public class CategoryManage implements BaseConstant {
 /**
  * カテゴリーインスタンス
  */
 private static Category category = null;
 /**
  * 静態方法でインスタンスを実装する
  * log4j.properties
  */
 static {
  try {
   System.out.println("LOG4J ログマネージャ 初期化メッソド");
   PropertyConfigurator.configureAndWatch(LOG4JFILE);
   
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

 /**
  * ログインスタンスの取得
  * @param thisclass カテゴリーのキー
  * @return Category カテゴリー
  */
 public static synchronized Category getInstance(String thisclass) {
  //20051103 UC.UP-1 陸宇 修正 STA
  if (!SERVERLOG.equals(thisclass)) {
   thisclass = SERVERLOG;
  }
  if (category == null) {
   category = Category.getInstance(thisclass);
  }
  //20051103 UC.UP-1 陸宇 修正 END
  return category;
 }
}

2.

package jp.co.nec.inf.frw.log;

import java.net.URL;

import jp.co.nec.inf.frw.com.FrwCst;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.apache.log4j.xml.DOMConfigurator;

public class FrwAdapterLog implements FrwLog {
 
 public static final String XML_FILE_EXTENSION = ".xml";
 
 static{
  //log4j初期化
  URL url = FrwAdapterLog.class.getClassLoader().getResource(FrwCst.LOG4JFILE_LOCATION);
  
  if (FrwCst.LOG4JFILE_LOCATION.toLowerCase().endsWith(XML_FILE_EXTENSION)) {
   DOMConfigurator.configure(url);
  }
  else {
   PropertyConfigurator.configure(url);
  }
//  if (url != null) {
//   DOMConfigurator.configure(url);
//  } else {
//   DOMConfigurator.configure(System.getProperty("log4j.configuration", "log4j.xml"));
//  }
 }

 /** 
  * ロギング本体
  */
 private org.apache.log4j.Logger logger;

 /** 
  * コンストラクタ
  *
  * @param cls ログを出力するクラス
  */
 protected FrwAdapterLog(Class cls) {
  logger = Logger.getLogger(cls);
 }

 /**
  * 指定されたクラスでロギングを初期化します。
  *
  * @param cls ログを出力するクラス
  */
 public static FrwLog getInstance(Class cls) {
  FrwAdapterLog wrapper = new FrwAdapterLog(cls);
  return wrapper;
 }
 
 /**
  * ログクラスを置き直する。
  *
  *  @param cls ログクラス
  */
 public void resetLogger(Class cls) {
  logger = org.apache.log4j.Logger.getLogger(cls);
 }
 
 
 public void debug(String message, Throwable cause) {
  logger.debug(message,cause);
 }

 public void error(String message, Throwable cause) {
  logger.error(message,cause);
 }

 public void info(String message, Throwable cause) {
  logger.info(message,cause);
 }

 public void warn(String message, Throwable cause) {
  logger.warn(message,cause);
 }

 public void debug(String message) {
  logger.debug(message);
 }

 public void info(String message) {
  logger.info(message);
 }

 public void warn(String message) {
  logger.warn(message);
 }

 public void error(String message) {
  logger.error(message);
 }


}

相关文章推荐

Log4J日志管理类使用详解,java开发必备,不多说了

Log4J日志管理类使用详解,java开发必备,不多说了 一、前言: log4j 是一个开放源码项目,是广泛使用的以Java编写的日志记录包。由于log4j出色的表现, 当时在log4j完成时...

Java日志管理:Logger.getLogger()和LogFactory.getLog()的区别(详解Log4j)

声明:这是转载的。 第一、Logger.getLogger()和LogFactory.getLog()的区别     1.Logger.getLogger()是使用log4j的方式...

Java Web Application 自架构 四 Log4j2日志管理

上一篇里,笔者将DAO做了一个通用的实现,不过在继续之前,我们好像忘了些什么。就是做任何程序都不可缺少的东东,一个对程序的功能没什么用,很容被遗忘,但是每个方法里都需要有的东西,那就是日志。    ...

log4j实例java工程.zip

  • 2015年12月26日 15:00
  • 20KB
  • 下载

日志管理框架:Log4j工具封装类

做这个例子的初衷就是,把任何一个对象丢进框架中的对应的输出日志的方法中,都能输出这个对象所对应的toString重写方法,来输出对象的包含的数据,现在能实现:字符串,数组,List,Map集合的输出:...

log4j JAVA包

  • 2015年08月25日 10:30
  • 347KB
  • 下载

java中log4j的扩展写法

  • 2009年11月24日 13:14
  • 56KB
  • 下载

用java编程方式实现logback和log4j的自定义格式日志

近期有个项目需求打印"yyyyMMdd.log"的日志,以方便flume进行日志收集,查看了官方文档http://logback.qos.ch/manual/layouts.html,下面是简单的实现...

java日志操作之Log4j

  • 2012年02月20日 13:43
  • 135KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA LOG4J管理(续JAVA中LOG4J的封装)
举报原因:
原因补充:

(最多只允许输入30个字)