log4j.rootLogger=INFO
log4j.logger.com.my.haha.hello.A=INFO,A1
log4j.logger.com.my.haha.hello.B=INFO,A2
log4j.logger.com.my.haha.hello.C=INFO,A3
log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.File=c:/logs/test-a1.log
log4j.appender.A1.MaxFileSize=500KB
log4j.appender.A1.MaxBackupIndex=50
log4j.appender.A1.Append=true
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} - [%p] [%C{1}] - %m%n
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.File=c:/logs/test-a2.log
log4j.appender.A2.MaxFileSize=500KB
log4j.appender.A2.MaxBackupIndex=50
log4j.appender.A2.Append=true
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{ISO8601} - [%p] [%C{1}] - %m%n
log4j.appender.A3=org.apache.log4j.RollingFileAppender
log4j.appender.A3.File=c:/logs/test-a3.log
log4j.appender.A3.MaxFileSize=500KB
log4j.appender.A3.MaxBackupIndex=50
log4j.appender.A3.Append=true
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=%d{ISO8601} - [%p] [%C{1}] - %m%n
package com.my.haha.hello;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class A {
public void log() {
Log log = LogFactory.getLog(A.class);
log.info("Log in A");
}
}
package com.my.haha.hello;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class B {
public void log() {
Log log = LogFactory.getLog(B.class);
log.info("Log in B");
}
}
package com.my.haha.hello;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class C {
public void log() {
Log log = LogFactory.getLog(C.class);
log.info("Log in C");
}
}
package com.my.haha.hello;
public class Test {
public static void main(String[] args) {
A a = new A();
B b = new B();
C c = new C();
a.log();
b.log();
c.log();
}
}
分享到:
相关推荐
在“Log4j2实现不同线程不同级别日志输出到不同的文件中”这个主题中,我们将深入探讨如何利用Log4j2实现这一高级日志管理需求。 1. **日志级别**: - 在Log4j2中,日志级别包括DEBUG、INFO、WARN、ERROR、FATAL...
文件中内容包括模块中某个类单独输出到一个日志文件中、模块中某个package单独输出到一个日志文件中、同一模块不同package输出到一个日志文件中三种情况下log4j.properties配置项配置事例、Java类中代码如何一致编写...
Log4j采用分模块输出不同日志文件的配置
《Logback配置文件根据LEVEL级别将日志分类保存到不同文件》 日志管理是软件开发中的重要一环,它能帮助开发者追踪程序运行状态,定位问题,优化性能。Logback是一个广泛使用的日志框架,它允许我们高效地处理日志...
在某些情况下,我们希望将不同模块的日志信息输出到不同的文件中,以便于管理和分析。以下是实现这一目标的具体步骤和配置说明。 1. **实现目标** 目标是将不同业务模块的日志分开存储,例如,注册模块的日志输出...
标题"Android-AndroidLog日志打印输出到文件方便查看和上传到服务器"所描述的,就是一种将Android应用的日志信息写入到本地文件的方法,以便后续分析或上传到远程服务器。这个方法能够帮助开发者在无法直接访问设备...
在C++中,实现日志输出到文件通常需要自定义一个日志类或使用第三方库。例如,你可以创建一个名为`CLog`的类,这个类应该具备以下核心功能: 1. **日志级别设置**:日志级别包括DEBUG、INFO、WARNING、ERROR和FATAL...
4. **写入排序后的数据**:遍历排序后的容器,将每个结构体或类实例的字段写入到输出文件,确保每个字段间以逗号分隔,每行结束后换行。 在`Unit_Test_WriteCSV`这个测试文件中,可能包含了对上述功能的单元测试,...
在Qt中,进行文件输入输出(I/O)是通过QFile类来实现的。QFile提供了基本的文件操作功能,如打开、关闭、读取和写入文件。下面我们将深入探讨Qt中的文件和目录操作。 1. **QFile的使用**: - **打开文件**:使用`...
然而,仅依赖Logcat有时并不能满足所有需求,例如在长时间运行或者大量数据输出时,可能需要将日志保存到本地文件以便后续分析。本篇将详细介绍一个Android日志工具,它不仅支持Logcat输出,还能进行文件记录,并...
为了方便管理和分析,将这些日志按照包进行区分,输出到不同的文件或者位置是非常有必要的。Log4j通过其强大的配置能力,可以实现这一目标。 首先,我们需要了解Log4j的配置文件(通常是`log4j.properties`或`log4j...
Java程序设计中的输入输出流和文件操作是编程中不可或缺的部分,它们允许程序与外部世界进行数据交换,包括读取文件内容、写入数据到文件、以及处理标准输入输出。以下是对这些概念的详细阐述: 1. **文件和流的...
配置文件可以包含多个Appender,不同级别的日志可以输出到不同的文件,或者通过Filter进一步控制日志输出。 总结起来,Log4Cpp提供了一套强大的日志系统,通过灵活的配置,可以在C++项目中实现高效、易管理的日志...
本文将详细解释如何配置Log4j2以实现不同级别的日志分别存储到不同的文件中。 首先,确保在项目中正确引入了Log4j2的jar包。通常,这可以通过在Maven或Gradle构建文件中添加依赖来完成。对于Maven,可以在pom.xml...
通过定义枚举类型,我们可以方便地切换不同的日志级别,只输出特定级别的信息。例如: ```cpp enum LogLevel { DEBUG, INFO, WARNING, ERROR, FATAL }; ``` 2. **时间戳**:为了追踪日志的生成时间,可以在每条...
- 接下来,在Reducer中根据需要生成不同文件的标准,调用`MultipleOutputs.write()`方法将数据写入相应的文件中。 2. **自定义Reducer**: - 在自定义的Reducer中,除了处理数据逻辑之外,还需要关注如何根据条件...
如果文件成功打开,就逐行读取文件内容并输出到屏幕上。最后,使用`close()`函数关闭文件。 总的来说,理解和掌握C++的流类体系与文件操作是进行高效、灵活的输入/输出编程的关键。通过流类,我们可以轻松地实现...
《基于文件输入输出流的成绩管理系统实现详解》 在信息技术领域,数据管理是核心任务之一,尤其是在教育场景下,成绩管理是不可或缺的环节。本篇文章将深入探讨如何利用C++编程语言,结合文件输入输出流(File ...
在Java中,输入输出流是进行文件读写操作的基础,通过理解和掌握`java.io`包中的类体系结构,开发者可以更加灵活地处理各种文件操作。无论是简单的文件读写还是复杂的网络通信,都能够基于这些基础构建出高效的应用...