不能通过简单的配置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实现这一高级日志管理需求。 1. **日志级别**: - 在Log4j2中,日志级别包括DEBUG、INFO、WARN、ERROR、FATAL...
文件中内容包括模块中某个类单独输出到一个日志文件中、模块中某个package单独输出到一个日志文件中、同一模块不同package输出到一个日志文件中三种情况下log4j.properties配置项配置事例、Java类中代码如何一致编写...
这是log4j框架的配置文件,使用Java Properties格式,用于定义日志输出的行为。主要包括以下几个核心部分: 1. **Logger**: 定义日志级别,例如DEBUG、INFO、WARN、ERROR和FATAL。日志级别决定了哪些信息会被记录。...
本工程基于Eclipse IDE,配置了一个简单的Log4j设置,实现了每天自动将日志输出到一个特定命名格式的文件中,即“XXX_年月日时分.log”。下面我们将详细解析这个配置及其工作原理。 1. **Log4j介绍**: Log4j是一...
在Web应用中,如使用的是Servlet环境,可以通过在`web.xml`中配置`ContextLoaderListener`来加载Log4j配置,同时,我们还可以创建一个Servlet,当接收到特定请求时,更新Log4j配置。 ```xml <!-- web.xml 示例 --> ...
Log4j是Apache提供的一款广泛使用的日志框架,它提供了丰富的配置选项,允许开发者灵活地控制日志输出。当我们面对特定项目需求,比如需要自定义日志文件名和日志输出格式时,Log4j同样提供了相应的解决方案。 首先...
这篇博客"Log4j 把不同包的日志打印到不同位置"可能详细解释了如何利用Log4j配置来实现特定包的日志定向输出,以便于管理和分析来自不同模块的日志信息。 在Java应用中,我们常常会遇到多个模块或者不同包的类同时...
`Log4j`作为一款优秀的日志管理工具,被广泛应用于Java应用程序中。然而,在不同的开发环境下,日志文件的存储路径往往需要根据实际情况进行调整,这不仅增加了维护成本,还可能导致日志丢失或错误记录。因此,采用...
Log4j是Apache的一个开源项目,它为Java应用程序提供了一个灵活的日志系统。这个系统能够帮助开发者记录程序运行过程中的各种信息,包括错误、警告、调试信息等,这对于软件的调试、性能分析以及问题追踪非常有帮助...
总结,通过以上步骤,你已成功配置了 MyBatis 使用 Log4j 来记录日志,同时将日志输出到后台控制台和文件,这有助于在开发和调试过程中追踪问题,提高代码的可维护性。记得根据实际需求调整日志级别和输出格式,以...
本文将详细解释如何配置Log4j2以实现不同级别的日志分别存储到不同的文件中。 首先,确保在项目中正确引入了Log4j2的jar包。通常,这可以通过在Maven或Gradle构建文件中添加依赖来完成。对于Maven,可以在pom.xml...
首先,我们需要在`log4j2.xml`配置文件中定义一个使用JDBC Appender的配置: ```xml <ConnectionFactory class="org.apache.logging.log4j.core.jdbc.DriverManagerConnectionFactory"> ...
Log4j提供了一个名为`org.apache.log4j.ConsoleAppender`的类,用于将日志输出到控制台,我们可以通过自定义Filter或者继承现有Appender来实现这个功能。 下面是一个简单的示例,展示如何在Log4j配置文件中设置...
在实际应用中,可能会根据需求调整日志的输出策略,比如添加过滤器、使用不同的布局模式,或者配置多个Appender同时将日志输出到控制台、文件和数据库。总之,理解和掌握Log4j的使用,能够极大地方便开发者进行日志...
在"Log4j多文件输出打印"的场景下,我们通常会配置多个Appender,每个Appender对应一个不同的输出文件。这样,不同的日志信息可以被分别写入不同的文件,便于管理和分析。例如,在`log4j.properties`配置文件中,...
本文将深入讲解如何配置log4j以实现日志输出到控制台和文件,并提供相关代码实例和案例分析。** ### 一、Log4j简介 Log4j是Apache组织开发的一个开源项目,用于生成日志信息。它提供了灵活的配置方式,支持多种输出...
- 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,你可以定义多个Appender,每个Appender对应一个特定的功能或模块。 - 使用`category`或`logger`标签指定Logger的名称,这通常与你的功能模块相...
文件输出是log4j的另一个常用的输出目标,用于将日志信息输出到文件中。文件输出可以通过org.apache.log4j.DailyRollingFileAppender实现。 log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j....
2. **配置全局 Log4j 属性文件**:在任意位置创建 `log4j.properties` 文件,并设置全局的日志级别、输出格式及存储路径等。通常会将该文件放置在 Tomcat 的 `conf` 目录下。 ```properties log4j.rootLogger=...