`
shuai1234
  • 浏览: 972716 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

JAVA log4j 同一个类日志输出 到不同的log文件中配置

    博客分类:
  • java
 
阅读更多

不能通过简单的配置log4j配置文件来实现,而需要在代码中调用Log4j的类来实现。下面给出实现类:

 /** * @author QG * * 2010-7-22 上午10:27:50 LoggerRun.java */

public class LoggerRun { //设定两个Log 

      public static Logger infoLogger = Logger.getLogger("info.logger");

      public static Logger errorLogger = Logger.getLogger("error.logger");

      public static final String PROFILE = "log4j.properties";

     //设定异常log输出的路径

       private static final String PATH = Constants.PATH;

          static{

                  try{

                      URL configFileResource = (new File(LoggerRun.class.getResource("/").getPath()+PROFILE)).toURL();          

                      PropertyConfigurator.configure(configFileResource); 

                }catch(Exception e){

                     e.printStackTrace(); 

           }

         } 

      public LoggerRun(){

             try {

                         Date date = new Date();

                        SimpleDateFormat sf = new SimpleDateFormat("yyyyMMddHHmmss"); 

                        String fileName = PATH + "exception_" + sf.format(date).toString() + ".log";

                            FileAppender exceptionAppender = new FileAppender(new SimpleLayout(), fileName);       

                         errorLogger.addAppender(exceptionAppender);

                      } catch (Exception e) {

                              e.printStackTrace();

                     }

                   }

         }

同时给出配置文件配置信息:

log4j.category.info.logger=INFO, info,stdout

log4j.category.error.logger=ERROR,error 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 

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

log4j.appender.stdout.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss.SSS} %-5p %m%nlog4j.appender.info=org.apache.log4j.RollingFileAppender

log4j.appender.info.File=bin/log/info.log

log4j.appender.info.MaxFileSize=100kb

log4j.appender.info.MaxBackupIndex=4

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

log4j.appender.info.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss.SSS} %-5p %m%nlog4j.appender.error=org.apache.log4j.RollingFileAppender

log4j.appender.error.File=bin/log/error.log

log4j.appender.error.MaxFileSize=100kb

log4j.appender.error.MaxBackupIndex=4

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

log4j.appender.error.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss.SSS} %-5p %m%n

 

在给出测试类:

public class TestLog {

                      public static final Logger logger=Logger.getLogger(TestLog.class);

              /** * @param args */

              public static void main(String[] args) {

                      // TODO Auto-generated method stub

                            for(int i=0;i<10;i++){

                                             if(i<5){

                                                      LoggerRun.infoLogger.info("TEST The Logger DUBUG!!!!");

                                             }else{

                                                     LoggerRun.errorLogger.error("TEST THe LOGGER ERROR!!!!!!");

                                             }

                            }

                  }

              } 

 

 

同一个类中的日志按类型输出到了不同的日志文件中。希望对大家能有所帮助。

分享到:
评论

相关推荐

    Log4j2实现不同线程不同级别日志输出到不同的文件中

    在“Log4j2实现不同线程不同级别日志输出到不同的文件中”这个主题中,我们将深入探讨如何利用Log4j2实现这一高级日志管理需求。 1. **日志级别**: - 在Log4j2中,日志级别包括DEBUG、INFO、WARN、ERROR、FATAL...

    Log4j日志根据模块不同输出到不同的日志文件开发配置,便于监控项目各功能模块的运行情况

    文件中内容包括模块中某个类单独输出到一个日志文件中、模块中某个package单独输出到一个日志文件中、同一模块不同package输出到一个日志文件中三种情况下log4j.properties配置项配置事例、Java类中代码如何一致编写...

    log4j日志配置以及配置文件详解

    这是log4j框架的配置文件,使用Java Properties格式,用于定义日志输出的行为。主要包括以下几个核心部分: 1. **Logger**: 定义日志级别,例如DEBUG、INFO、WARN、ERROR和FATAL。日志级别决定了哪些信息会被记录。...

    配置好log4j的eclipse简单工程,每天输出到一个日志文件中,该文件名为:“XXX_年月日时分.log”的形式

    本工程基于Eclipse IDE,配置了一个简单的Log4j设置,实现了每天自动将日志输出到一个特定命名格式的文件中,即“XXX_年月日时分.log”。下面我们将详细解析这个配置及其工作原理。 1. **Log4j介绍**: Log4j是一...

    log4j(二):动态配置日志输出路径

    在Web应用中,如使用的是Servlet环境,可以通过在`web.xml`中配置`ContextLoaderListener`来加载Log4j配置,同时,我们还可以创建一个Servlet,当接收到特定请求时,更新Log4j配置。 ```xml &lt;!-- web.xml 示例 --&gt; ...

    log4j自定义日志文件名及日志输出格式

    Log4j是Apache提供的一款广泛使用的日志框架,它提供了丰富的配置选项,允许开发者灵活地控制日志输出。当我们面对特定项目需求,比如需要自定义日志文件名和日志输出格式时,Log4j同样提供了相应的解决方案。 首先...

    Log4j 把不同包的日志打印到不同位置

    这篇博客"Log4j 把不同包的日志打印到不同位置"可能详细解释了如何利用Log4j配置来实现特定包的日志定向输出,以便于管理和分析来自不同模块的日志信息。 在Java应用中,我们常常会遇到多个模块或者不同包的类同时...

    log4j中配置日志文件相对路径方法(PDF)

    `Log4j`作为一款优秀的日志管理工具,被广泛应用于Java应用程序中。然而,在不同的开发环境下,日志文件的存储路径往往需要根据实际情况进行调整,这不仅增加了维护成本,还可能导致日志丢失或错误记录。因此,采用...

    log4j 配置日志文件,把日志信息输出到项目的某个文件夹下

    Log4j是Apache的一个开源项目,它为Java应用程序提供了一个灵活的日志系统。这个系统能够帮助开发者记录程序运行过程中的各种信息,包括错误、警告、调试信息等,这对于软件的调试、性能分析以及问题追踪非常有帮助...

    mybatis,log4j打印日志到后台和文件

    总结,通过以上步骤,你已成功配置了 MyBatis 使用 Log4j 来记录日志,同时将日志输出到后台控制台和文件,这有助于在开发和调试过程中追踪问题,提高代码的可维护性。记得根据实际需求调整日志级别和输出格式,以...

    log4j2在项目中的配置,对不同级别的日志进行不同文件的存储

    本文将详细解释如何配置Log4j2以实现不同级别的日志分别存储到不同的文件中。 首先,确保在项目中正确引入了Log4j2的jar包。通常,这可以通过在Maven或Gradle构建文件中添加依赖来完成。对于Maven,可以在pom.xml...

    log4j2.xml记录日志到到数据库

    首先,我们需要在`log4j2.xml`配置文件中定义一个使用JDBC Appender的配置: ```xml &lt;ConnectionFactory class="org.apache.logging.log4j.core.jdbc.DriverManagerConnectionFactory"&gt; ...

    Log4j将System.out搞到log4j中输出四

    Log4j提供了一个名为`org.apache.log4j.ConsoleAppender`的类,用于将日志输出到控制台,我们可以通过自定义Filter或者继承现有Appender来实现这个功能。 下面是一个简单的示例,展示如何在Log4j配置文件中设置...

    log4j使用与java中log4j记录日志如何写入数据库

    在实际应用中,可能会根据需求调整日志的输出策略,比如添加过滤器、使用不同的布局模式,或者配置多个Appender同时将日志输出到控制台、文件和数据库。总之,理解和掌握Log4j的使用,能够极大地方便开发者进行日志...

    log4j多文件输出打印

    在"Log4j多文件输出打印"的场景下,我们通常会配置多个Appender,每个Appender对应一个不同的输出文件。这样,不同的日志信息可以被分别写入不同的文件,便于管理和分析。例如,在`log4j.properties`配置文件中,...

    log4j配置 输出日志 案例

    本文将深入讲解如何配置log4j以实现日志输出到控制台和文件,并提供相关代码实例和案例分析。** ### 一、Log4j简介 Log4j是Apache组织开发的一个开源项目,用于生成日志信息。它提供了灵活的配置方式,支持多种输出...

    log4j按功能保存日志

    - 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,你可以定义多个Appender,每个Appender对应一个特定的功能或模块。 - 使用`category`或`logger`标签指定Logger的名称,这通常与你的功能模块相...

    java程序log4j配置

    文件输出是log4j的另一个常用的输出目标,用于将日志信息输出到文件中。文件输出可以通过org.apache.log4j.DailyRollingFileAppender实现。 log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j....

    tomcat下的log4j日志配置

    2. **配置全局 Log4j 属性文件**:在任意位置创建 `log4j.properties` 文件,并设置全局的日志级别、输出格式及存储路径等。通常会将该文件放置在 Tomcat 的 `conf` 目录下。 ```properties log4j.rootLogger=...

Global site tag (gtag.js) - Google Analytics