`
jjjssh
  • 浏览: 74109 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

设计log4j某个类的日志输出到某个日志文件

阅读更多
有时为了做业务分析,我们需要针对某个产品业务线,做日志监控,要做特定的日志输出,比如:
用flume监控某个日志文件,然后分析某个业务的业务量,这个时候就需要要求log4j对单独某个类输出的日志,单独生成一个log文件,以下是log4j的配置文件


#保存某个类的日志到单独的log文件
log4j.logger.com.app.MyClass=debug,info
log4j.appender.info=org.apache.log4j.RollingFileAppender
log4j.appender.info.File=E:/temp/myclass.log
log4j.appender.info.MaxFileSize=10MB
log4j.appender.info.MaxBackupIndex=3
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
log4j.additivity.com.app.MyClass=false


这里发挥关键作用的是log4j.additivity这个设置。log4j.additivity是 子Logger 是否继承 父Logger 的 输出源(appender) 的标志位。具体说,默认情况下 子Logger 会继承 父Logger 的appender,也就是说 子Logger 会在 父Logger 的appender里输出。若是additivity设为false,则 子Logger 只会在自己的appender里输出,而不会在 父Logger 的appender里输出。

在上面展示的log4j配置中,子logger就是com.app.MyClass,而父logger是rootLogger,设置log4j.additivity 为false之后,子logger日志将不会出现在父logger rootLogger中。

log4j.additivity 默认值为true,默认是子logger日志会写入到父logger中。
分享到:
评论

相关推荐

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

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

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

    log4j 配置日志文件,把日志信息输出到项目的某个文件夹下,能把当前的日志输出到项目下制定的某文件夹,只要到web.xml配置log4j_save保存日志文件

    log4j2.xml

    1)log4j2的配置文件,支持单独输出debug、info、warn、error文件 2)自动打包,按照日期、月份单独打包 3)自动压缩,历史日志被压缩,节省空间

    深入学习log4j

    Loggers组件的主要功能是提供相应API,根据不同配置的loggers将不同级别的log输入到控制台或文件,类似于java中经常用到的System.out.println,但是log4j封装后的loggers组件能够输出更丰富的信息,包括时间,线程,...

    java-color-loggers:用于log4j和jdk的颜色控制台日志记录

    用于log4j和jdk的颜色控制台日志记录 用法 从下载最新的颜色记录器jar或自行构建 下载可选,请参见下文( jansi-1.18是此时的最新版本,但我没什么花哨的东西,所以我不希望其他版本感到惊讶) 确保上面提到的jar...

    如何编写批处理文件批处理文件批处理文件

    简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...

    网管教程 从入门到精通软件篇.txt

    网管教程 从入门到精通软件篇 ★一。★详细的xp修复控制台命令和用法!!! 放入xp(2000)的光盘,安装时候选R,修复! Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的...

    ant1.9资源

    该任务的作用是根据日志或监控器的级别输出信息。它包括message、file、append和level四个属性,举例如下: ,Amigo" file="logs/system.log" append="true"> 四. 利用Ant构建和部署Java工程 Ant可以代替使用...

    MySQL 5.1参考手册

    8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. mysqlshow-...

    MYSQL中文手册

    8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. ...

    LINGO软件的学习

    集是LINGO建模语言的基础,是程序设计最强有力的基本构件。借助于集,能够用一个单一的、长的、简明的复合公式表示一系列相似的约束,从而可以快速方便地表达规模较大的模型。 2.2 什么是集 集是一群相联系的对象,...

    mysql官方中文参考手册

    8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. mysqlshow-...

    MySQL5.1参考手册官方简体中文版

    8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. mysqlshow-...

    MySQL 5.1参考手册中文版

    8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. ...

    Toad 使用快速入门

    定位到某一类对象上,这列对象允许的操作都会自动列出来。 特色: 支持Oracle数据库里面所有对象的新建、查看、修改,集成了几乎对所有数据库对象的管理所需要的功能。  按照 模式->对象类别 ->对象->对象可...

    oracle数据库经典题目

    10.使用Save命令可以将缓冲区中的SQL命令保存到一个文件中,并且可以使用Run命令运行该文件。 11.一个模式只能够被一个数据库对象所拥有,其创建的所有模式对象都保存在自己的模式中。 12.根据约束的作用域,约束...

    mysql5.1中文手册

    mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. ...

    新版Android开发教程.rar

    四频 (850 , 900 , 1800 , 1900) ;支持 3G , 802.11b 和 802.11g 。----------------------------------- Android 编程基础 5 互联网 支持 HTTP 、 WAP Push 和 xHTML ;支持 POP 、 IMAP 、 SMTP ,以及 AOL ...

Global site tag (gtag.js) - Google Analytics