它是 子Logger 是否继承 父Logger 的 输出源(appender)的标志位。具体说,默认情况下子Logger会继承父Logger的appender,也就是说子Logger会在父Logger的appender里输出。若是additivity设为false,则子Logger只会在自己的appender里输出,而不会在父Logger的appender里输出。

使用例子:下面是一个log4j的配置文件,父logger是timer和error,子logger是net

#
# Priority = {FATAL|ERROR|WARN|INFO|DEBUG}
# # +---------------------------------------------------+
# | root |
# +---------------------------------------------------+ # Category - Root
# ================
log4j.rootLogger=info,timer,error log4j.logger.timer=info,timer
log4j.additivity.timer=false log4j.logger.net=info,net
log4j.additivity.net=false log4j.logger.error=error,error
log4j.additivity.error=false # Category - hibernate
# ========================================
log4j.category.org.springframework=ERROR
log4j.logger.com.mchange.v2=ERROR
# +---------------------------------------------------+
# | Appender |
# +---------------------------------------------------+
#
# %c Fully class name. 输出所属的类目,通常就是所在类的全名;
# %d Default is ISO8601. Custom:%d{yyy-MM-dd HH:mm:ss }, output example:2002-10-18 22:10:28
# %f Class name.
# %l Location and line number 输出日志事件的发生位置,及在代码中的行数;
# %m Message 输出代码中指定的消息;
# %n Nextline 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;
# %p Log priority 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL;
# %r Log consumed time 输出自应用启动到输出该log信息耗费的毫秒数;
# %t Thread name 输出产生该日志事件的线程名;
# # Appender - stdout
# =========================================
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} %l %p: %m%n
log4j.appender.stdout.encoding=UTF-8 log4j.appender.timer=org.apache.log4j.DailyRollingFileAppender
log4j.appender.timer.File=/data/timer_test/log/timer.log
log4j.appender.timer.layout=org.apache.log4j.PatternLayout
log4j.appender.timer.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %l %p: %m%n
log4j.appender.timer.encoding=UTF-8 log4j.appender.net=org.apache.log4j.DailyRollingFileAppender
log4j.appender.net.File=/data/timer_test/log/net.log
log4j.appender.net.layout=org.apache.log4j.PatternLayout
log4j.appender.net.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %l %p: %m%n
log4j.appender.net.encoding=UTF-8 log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.Threshold=ERROR
log4j.appender.error.File=/data/timer_test/log/error.log
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %l %p: %m%n
log4j.appender.error.encoding=UTF-8

log4j配置文件中的additivity属性的更多相关文章

  1. hibernate配置文件中的catalog属性

    在hibernate表的映射文件中 <hibernate-mapping>    <class name="com.sooyie.hibernate.orm.Link&qu ...

  2. SqlMapConfig.xml配置文件中的properties属性

    1.原始的SqlMapConfig.xml配置文件的内容为: <?xml version="1.0" encoding="UTF-8" ?> < ...

  3. web.config配置文件中的configSource属性

    每个网站里都会有一个web.config文件.修改Web.config文件会导致IIS重启,就是随意的回车一下也会导致重启.微软建议,不要将需要修改的配置内容保存在web.config中.而是单独放在 ...

  4. hadoop2.7.3配置文件中过时的属性

    过时的属性:Deprecated Properties 该列表保存于:hadoop-2.7.3-src\hadoop-common-project\hadoop-common\src\site\mar ...

  5. Spring配置文件中指定init-method属性的作用

    bean 配置文件属性 init-method 用于在bean初始化时指定执行方法,用来替代继承 InitializingBean接口.相关链接:https://www.cnblogs.com/Joe ...

  6. Feign从配置文件中读取url

    Feign的url和name都是可配置的,就是从配置文件中读取的属性值,然后用占位符引用就可以了: ${rpc.url} @FeignClient(name = "me", url ...

  7. Log4J 配置文件全属性详解

    第一步:加入log4j-1.2.8.jar到lib下. 第二步:在CLASSPATH下建立log4j.properties.内容如下: 1 log4j.rootCategory=INFO, stdou ...

  8. log4j配置文件及nutch中的日志配置

    使用slf4j作为日志系统时,由于slf4j只是一个接口,它需要一个具体实现来执行. 具体参考http://blog.csdn.net/jediael_lu/article/details/43854 ...

  9. springmvc 项目完整示例05 日志 --log4j整合 配置 log4j属性设置 log4j 配置文件 log4j应用

    log4j 就是log for java嘛,老外都喜欢这样子,比如那个I18n  ---internationalization  不就是i和n之间有18个字母... http://logging.a ...

随机推荐

  1. 孤荷凌寒自学python第四十二天python线程控制之Condition对象

     孤荷凌寒自学python第四十二天python的线程同步之Condition对象 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天学习了Condition对象,发现它综合了Event对象 ...

  2. python使用工具简介介绍

    我从研究生开学以来就开始在学python,现在来简单分享下一些基本的使用命令和快捷方式 Pycharm: 运行程序 ctrl+alt+F10 删除一行ctrl+D 注释ctrl+/ 安装python所 ...

  3. static_cast AND dynamic_cast

    类型转换是一种机制,让程序员能够暂时或永久性改变编译器对对象的解释.注意,这并不意味着程序员改变了对象本身,而只是改变了对对象的解释. 在很多情况下,类型转换是合理的需求,可解决重要的兼容问题.因此, ...

  4. intellij idea 2017 快捷键(提高工作效率)

    1.Shift+Enter Annotation annotation = c.getAnnotation(A.class); 这个时候你写代码的时候可能光标在c.getAnno中的某一个位置,那么你 ...

  5. NSOperation 开发

    目录 1.简介 2.Operation对象 3.自定义Operation对象 4.通过Operation Queues运行Operation对象 5.手动运行Operation对象 一.简介 Coco ...

  6. linux中sed工具的使用

    sed 本身也是一个管线命令,而且 sed 还可以将数据进行取代.删除.新增.撷取特定行等等的功能. $ sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式.在一般 ...

  7. Three Garlands~Educational Codeforces Round 35

    C. Three Garlands time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  8. angular.extend(dst,src)的简单示例

    自我认为这个方法跟angular.copy(src,dst)有点相似.在angular.extend({},src)时,就可以画等号.这个src只代表一个对象.代码如下:(注意这个src可以有多个对象 ...

  9. hadoop学习之HDFS

    1.什么是大数据?什么是云计算?什么是hadoop? 大数据现在很火,到底什么是大数据,多大的数据才算大,一般而言对于TB级以上的数据我们成为大数据,对于这些数据它的价值在哪?大数据的价值就是我们大量 ...

  10. bzoj 4407 于神之怒加强版 (反演+线性筛)

    于神之怒加强版 Time Limit: 80 Sec  Memory Limit: 512 MBSubmit: 1184  Solved: 535[Submit][Status][Discuss] D ...