log4j.additivity 是 子Logger 是否继承父Logger 的 输出源(appender)的标志位。具体说,默认情况下,子Logger 会继承父Logger 的appender,也就是说 子Logger 会在父Logger 的appender里输出。若是additivity设为false,则子Logger 只会在自己的appender里输出,而不会在父Logger 的appender里输出。
(来自http://www.wenhq.com/article/view_414.html)
log在输出时,会先去找本身的appender,可以debug进入Category.callAppenders(LoggingEvent event),如果设置additive就会跳出循环。
for(Category c = this; c != null; c=c.parent) {
// Protected against simultaneous call to addAppender, removeAppender,...
synchronized(c) {
if(c.aai != null) {
writes += c.aai.appendLoopOnAppenders(event);
}
if(!c.additive) {
break;
}
}
}
例子如下:
Logger log = Logger.getLogger("test");
log.setAdditivity(false);
分享到:
相关推荐
Log4j Appender 配置详解 Log4j 是一个 Java 语言下的日志记录工具库,它提供了灵活的日志记录机制,可以将日志信息写入到控制台、文件、数据库等多种目标中。在 Log4j 中,Appender 是一种输出目标,它负责将日志...
本示例将深入讲解如何利用Log4j的不同Appender来生成不同的日志文件,以满足不同接口或模块的日志记录需求。 首先,我们需要理解什么是Appender。在Log4j中,Appender是负责将日志信息输出到特定目的地的组件,如...
提供的`log4netTest`项目可能包含了一个简单的示例,演示了如何在实际应用中配置和使用自定义Appender。通过查看和运行这个项目,你可以更好地理解自定义Appender的工作机制和使用方式。 总结,Log4net的自定义...
log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000 # 发送日志给邮件 log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender log4j.appender....
5. **注册Appender**:在Log4j的配置文件(如log4j.properties或log4j.xml)中,声明你的自定义Appender,并配置相关属性。例如: ```xml <appender name="MyCustomAppender" class=...
在Java日志处理框架Log4j中,Appender是用于定义日志输出目的地的重要组件。当我们需要将日志数据发送到Apache Kafka这种分布式消息系统时,就需要配置一个特定的Appender,即Log4jKafkaAppender。这个Appender允许...
Log4j Appender 阿里云Log Log4j Appender Apache log4j是一个Apache软件基础项目。 您可以通过Log4j控制日志的目的地。 它可以是控制台,文件,GUI组件,套接字,NT事件日志,系统日志。 您也可以控制每个日志的...
本文将深入讲解基于log4cplus-1.2.0-rc5版本自实现的一个appender——RollingAppender,该appender结合了RollingFileAppender和TimeBasedRollingFileAppender的优点,实现了更加完善的日志转储机制。 首先,...
标签:activemq-log4j-appender-5.10.0-sources.jar,activemq,log4j,appender,5.10.0,sources,jar包下载,依赖包
上述配置中,`log4j.appender.FILE.File`指定了日志文件的路径,`${user.home}/logs/myapp.log`表示日志将被写入用户主目录下的logs文件夹中的myapp.log文件。通过改变这个路径,我们就能动态地改变日志输出的位置。...
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender log4j.appender.logfile.File=${WORKDIR}/logs/app.log log4j.appender.logfile.DatePattern='.'yyyy-MM-dd log4j.appender.logfile.layout=org....
- `lib/Log/Log4perl/Appender/*`:Appender子模块,如File、Screen等。 - `lib/Log/Log4perl/Layout/*`:Layout子模块,如Pattern、Simple等。 - `lib/Log/Log4perl/Config.pm`:配置文件解析模块,帮助处理配置...
log4j.appender.appender1.encoding=GBK log4j.appender.appender2.encoding=GBK ``` - 这里需要注意的是,上面的示例代码中使用的是GBK编码。如果你的应用程序使用的是其他编码格式(如UTF-8),那么应该相应...
标签:activemq-log4j-appender-5.10.0-javadoc.jar,activemq,log4j,appender,5.10.0,javadoc,jar包下载,依赖包
阿里云java源码Log4j2 附加程序 阿里云日志 Log4j2 Appender Apache Log4j2 是对 Log4j 的升级,与其前身 Log4j 1.x 相比提供了重大改进。 可以通过Log4j2控制日志的目的地。 它可以是控制台、文件、GUI 组件、套接...
<groupId>org.apache.kafka <artifactId>kafka-log4j-appender <version>0.10.2.0 </dependency>
AppenderPtr appender(new FileAppender("my_log_file.log", false)); // 不追加,覆盖原有文件 ``` 3. **配置Layout**:接下来,设置日志输出格式。PatternLayout允许你自定义输出格式,如日期、线程ID、日志级别...
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.Target=System.out log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout log4j.appender.CONSOLE.layout....
- `log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender`:指定了名为`CONSOLE`的appender是控制台输出。 - `log4j.appender.CONSOLE.Target=System.out`:日志输出到标准输出流(System.out)。 - `log4j....
log4j.appender.stdout=org.apache.log4j.WriterAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern...