`
michales003
  • 浏览: 403305 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

操作log4jAPI

    博客分类:
  • J2EE
阅读更多

import java.io.ByteArrayOutputStream;
import java.io.PrintWriter;
import org.apache.log4j.*;

public class CustomerLogUtil
{

    private static CustomerLogUtillogUtil;
    private Logger log;

    public static SOALogUtil getInstance(Class c)
    {
        if(logUtil == null)
        {
            logUtil = new CustomerLogUtil(c);
        }
        return logUtil;
    }

    private CustomerLogUtil(Class c)
    {
        String filepath = (new StringBuilder()).append(System.getProperty("java.classpath")).append("/config/log4j.properties").toString();
        PropertyConfigurator.configure(filepath);
        log = Logger.getLogger(c);
        Logger _tmp = log;
        RollingFileAppender appender = (RollingFileAppender)Logger.getRootLogger().getAppender("stdout");
        String file = appender.getFile().replace("CustomerLogUtil.log", (new StringBuilder()).append(c.getSimpleName()).append(".log").toString());
        appender.setFile(file);
        appender.activateOptions();
    }

    private String objToString(Object obj)
    {
        if(obj instanceof Exception)
        {
            if(((Exception)obj).getStackTrace() == null)
            {
                ByteArrayOutputStream buf = new ByteArrayOutputStream();
                ((Exception)obj).printStackTrace(new PrintWriter(new PrintWriter(buf, true)));
                return buf.toString();
            } else
            {
                return ((Exception)obj).getMessage();
            }
        } else
        {
            return obj.toString();
        }
    }

    public void info(Object obj)
    {
        log.info(objToString(obj));
    }

    public void debug(Object obj)
    {
        log.debug(objToString(obj));
    }

    public void error(Object obj)
    {
        log.error(objToString(obj));
    }

    public void fatal(Object obj)
    {
        log.fatal(objToString(obj));
    }

    public void warn(Object obj)
    {
        log.warn(objToString(obj));
    }
}

 

log4j.properties:

log4j.rootLogger=info, stdout

log4j.appender.stdout=org.apache.log4j.RollingFileAppender

log4j.appender.stdout.Threshold=info

log4j.appender.stdout.File = ${java.classpath}/log/CustomerLogUtil.log

log4j.appender.stdout.MaxFileSize=100MB

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.MaxBackupIndex=1

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d %c %n%-5p %c %x - %m%n

分享到:
评论

相关推荐

    Log4jAPI 应用案例 配置说明 log4jjar包

    Log4j是Java平台上广泛使用的日志记录框架,它的全称是Apache Log4j,它为应用程序提供了灵活的日志记录功能。在Java开发中,日志记录是非常关键的一部分,可以帮助开发者跟踪程序运行状态,定位错误,进行性能分析...

    log4jAPI schame

    最新的日志log4j帮助文档 帮你快速玩转log4j

    log4j api log4j

    **日志框架Log4j详解** 在Java编程中,日志记录是一项至关重要的任务,它帮助开发者追踪程序运行状态,定位错误和异常,为系统维护提供关键信息。Log4j是Apache软件基金会的一个开源项目,它是一个广泛使用的Java...

    log4j-api-2.7-API文档-中英对照版.zip

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

    s4japi jar包

    s4japi jar包

    最新的dom4jAPI

    DOM4J是一款强大的Java XML处理库,它提供了全面的XML解决方案,包括解析、生成、操作和事件驱动模型。这个“最新的DOM4J API”CHM文档是开发人员在处理XML文档时的重要参考资料。 **1. DOM4J基本概念** DOM4J基于...

    Log4j学习资料大全

    "log4j使用说明.doc"则是对Log4j实际操作的指南,可能会包含如何在代码中添加日志语句、如何配置Log4j.properties文件以及如何处理不同环境下的日志需求等实践指导。例如,使用`Logger.getLogger()`获取Logger实例,...

    DOM4jAPI文档

    4. **操作XML** - 添加元素:通过`Element.addElement()`或`Element.addContent(Element)`方法向XML树中添加元素。 - 删除元素:使用`Element.removeContent(Element)`或`Element.detach()`方法移除元素。 - 修改...

    dom4jApi 中文文档

    dom4j 编译好的中文版,例子详细,简单易懂

    Dom4jAPI(修改版)

    dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的...

    dom4jAPI帮助文档

    DOM4J使用起来非常简单。只要你了解基本的XML-DOM模型,就能使用。然而他自己带的指南只有短短一页(html),不过说的到挺全。国内的中文资料很少。因而俺写这个短小的教程方便大家使用,这篇文章仅谈及基本的用法,...

    log4j-api-2.20.0.jar

    log4j-api.jar 免费下载 如果不能免费下载,关注我,评论区联系我索要!

    log4j所需全部文件

    已经在开源网站下齐了log4j所需全部文件,免积分提供给大家,希望帮大家节约点时间和积分。 下面是说明: 1.移除原来的slf4j-nop-1.5.8.jar加入log4j-1.2.17.jar 2.并加入转换器slf4j-log4j12-1.2-sources.jar 3...

    PyPI 官网下载 | neo4japi-1.1.3.tar.gz

    标题中的"PyPI 官网下载 | neo4japi-1.1.3.tar.gz"表明这是一个在Python Package Index(PyPI)上发布的名为`neo4japi`的软件包,版本为1.1.3,它以tar.gz格式提供。PyPI是Python开发者发布自己软件包的官方平台,...

    保证看完就用log4j

    log4j.appender.llg=org.apache.log4j.RollingFileAppender #文件位置 #配置llg这个日志文件的位置 log4j.appender.llg.File=f:/llg/log.log #挂上 #。。。没想机密,都配置好了,还要有一个确认 log4j.appender.llg...

    JAPI-launcher v1.0(本地运行地图).zip

    4. **用户界面**:简洁的启动器界面,让用户能够方便地选择和启动地图,同时提供了一些基本的设置选项,以满足不同的需求。 5. **错误处理与日志记录**:当遇到问题时,JAPI-launcher会记录详细的错误信息,帮助...

    dom4japi文挡

    - 集成 Java 集合框架:DOM4J 结构与 Java 集合框架紧密集成,使得 XML 节点可以像处理普通 Java 对象一样操作。 2. **XML 文档操作示例** 在 DOM4J 中,创建 XML 文档通常涉及以下步骤: - 创建 `Document` ...

    dom4japi,帮助文档,实例,方法,ppt

    在提供的"dom4japi,帮助文档,实例,方法,ppt"资料中,PPT和课件可以帮助你更直观地理解DOM4J的使用方法和技巧,通过实例和讲解加深对XML处理的理解。 总结来说,DOM4J是一个强大而灵活的XML处理工具,适用于各种...

Global site tag (gtag.js) - Google Analytics