由于定时刷新程序的启用,导致catalina.out配置文件中打入大量日志,致使程序调试困难。

         无法正常查看日志。所以客户要求将性能流量配置日志迁移出catalina.out目录。修改log4j配置文件后,发现
      分文件中有了日志输出,但是,catalina.out文件中依然有性能流量日志输出。
          原始配置方法如下:
          
          log4j.logger.com.test.cao.snmpgather = INFO, snmpgather

          log4j.appender.snmpgather=org.apache.log4j.DailyRollingFileAppender

          log4j.appender.snmpgather.File=${catalina.home}/logs/performance/snmpgather_

          log4j.appender.snmpgather.DatePattern= yyyy-MM- dd'.log'

          log4j.appender.snmpgather.layout=org.apache.log4j.PatternLayout

          log4j.appender.snmpgather.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss,SSS} [%p] [%C.%M:%L] %m%n
          后来发现了如下方法,则可将日志从catalina.out工作台日志文件中移出,
          log4j.additivity
          现配置文件如下:
          
          log4j.logger.com.test.cao.snmpgather = INFO, snmpgather

          log4j.appender.snmpgather=org.apache.log4j.DailyRollingFileAppender

          log4j.appender.snmpgather.File=${catalina.home}/logs/performance/snmpgather_

          log4j.appender.snmpgather.DatePattern= yyyy-MM- dd'.log'

          log4j.appender.snmpgather.layout=org.apache.log4j.PatternLayout

          log4j.appender.snmpgather.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss,SSS} [%p] [%C.%M:%L] %m%n

	  log4j.additivity.com.linkage.module.liposs.system.cao.snmpgather = false
          下面是log4j.additivity解释:
          log4j.additivity是 子Logger 是否继承 父Logger 的 输出源(appender) 的标志位。

          具体说,默认情况下 子Logger 会继承 父Logger 的appender,也就是说 子Logger 会在 父Logger 的appender里输出。

          若是additivity设为false,则 子Logger 只会在自己的appender里输出,而不会在 父Logger 的appender里输出。
          
          由于父log为:
          
          log4j.rootCategory=, A1 , R

          log4j.appender.A1=org.apache.log4j.ConsoleAppender

          log4j.appender.A1.Threshold=INFO

          log4j.appender.A1.layout=org.apache.log4j.PatternLayout

          log4j.appender.A1.layout.ConversionPattern= %-d{yyyy -MM-dd HH:mm:ss} [%c]-[%p] %m%n

          log4j.appender.R.Threshold=INFO

          log4j.appender.R.MaxFileSize=100KB

          log4j.appender.R.MaxBackupIndex=10

          log4j.appender.R.layout=org.apache.log4j.PatternLayout

          log4j.appender.R.layout.ConversionPattern= %p %t %c - %m%n
          所以会打到工作台中。
          将additivity设为false则只依赖与自身的配置。

log4j日志分模块打印,同时不打印到控制台上的更多相关文章

  1. Tomcat日志、项目中的log4j日志、控制台——我的日志最后到底跑哪去了?

    1.Tomcat自带日志功能,即时你的项目中有log4j也不会影响到Tomcat自己记录日志. 2.你的项目中的log4j中的日志指定打印到什么地方(控制台或者文件),便会打印到什么地方,和Tomat ...

  2. .NET Core下的日志(3):如何将日志消息输出到控制台上

    当我们利用LoggerFactory创建一个Logger对象并利用它来实现日志记录,这个过程会产生一个日志消息,日志消息的流向取决于注册到LoggerFactory之上的LoggerProvider. ...

  3. Python+request 分模块存放接口,多接口共用参数URL、headers的抽离,添加日志打印等《三》

    主要介绍内容如下: 1.分模块存放接口 2.多接口共用参数URL.headers的抽离为配置文件 3.添加日志打印 4.一个py文件运行所有所测的接口 如上介绍内容的作用: 1.分模块存放接口:方便多 ...

  4. Logback 将日志分级别打印

    最近项目中用到了logback 记录日志,  关于为啥使用logback 请百度一下:  logback与Log4J的区别 好了,废话不多说,直奔主题, 研究了好久,终于将日志按级别将日志分文件打印出 ...

  5. Storm中log4j日志打印不出来的解决办法

    使用storm命令启动JAVA进程的时候,发现log4j日志打印不出来,咋办呢? 解决办法如下(亲测): 删除strom/lib目录下的log4j-over-slf4j-1.6.6.jar strom ...

  6. 大数据调错系列之hadoop在开发工具控制台上打印不出日志的解决方法

    (1)在windows环境上配置HADOOP_HOME环境变量 (2)在eclipse上运行程序 (3)注意:如果eclipse打印不出日志,在控制台上只显示 1.log4j:WARN No appe ...

  7. log4j.xml简单配置实现在控制台打印sql执行语句【加注释】

    转: log4j.xml简单配置实现在控制台打印sql执行语句 2017年09月27日 13:02:34 艾然丶 阅读数 8804   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协 ...

  8. Swift打印Debug日志,实现Release下不打印

    OC内,我们往往做log打印时,会考虑一个Debug环境下打印,Release下控制不打印,以节约性能消耗. OC我们可以这样做: 在pch文件内,定义如下: //打印日志 #ifdef DEBUG ...

  9. slf4j+logback搭建超实用的日志管理模块

    文章转自http://www.2cto.com/kf/201702/536097.html slf4j+logback搭建超实用的日志管理模块(对日志有编号管理):日志功能在服务器端再常见不过了,我们 ...

随机推荐

  1. 【转】Excel快捷键大全

    原文网址:http://www.bm8.com.cn/keyboard/excel.asp 显示和使用"Office 助手"注意 若要执行以下操作,"Microsoft ...

  2. <php>删除(有内容的)文件夹函数程序

    function deldir($dirname) { if(!file_exists($dirname)) {//判断文件夹是否存在 die("文件夹不存在!");//作用等于( ...

  3. 编写高质量代码改善python程序91个建议学习01

    编写高质量代码改善python程序91个建议学习 第一章 建议1:理解pythonic的相关概念 狭隘的理解:它是高级动态的脚本编程语言,拥有很多强大的库,是解释从上往下执行的 特点: 美胜丑,显胜隐 ...

  4. SRM 588 D2 L2:GUMIAndSongsDiv2,冷静思考,好的算法简洁明了

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=12707 算法决定一切,这道题目有很多方法解,个人认为这里 ve ...

  5. Pig系统分析(6)-从Physical Plan到MR Plan再到Hadoop Job

    从Physical Plan到Map-Reduce Plan 注:由于我们重点关注的是Pig On Spark针对RDD的运行计划,所以Pig物理运行计划之后的后端參考意义不大,这些部分主要分析流程, ...

  6. Android UI开发详解之ActionBar .

    在Android3.0之后,Google对UI导航设计上进行了一系列的改革,其中有一个非常好用的新功能就是引入的ActionBar,他用于取代3.0之前的标题栏,并提供更为丰富的导航效果. 一.添加A ...

  7. 转载--DEV GridControl 的一些基本操作

    1. 如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 2. 如何新增一条记录 (1).gridView.Ad ...

  8. 返回ipv 地址

    //返回ipv 地址 public static string GetIP4Address() { string IP4Address = String.Empty; foreach (IPAddre ...

  9. 关于java WEB下载

    web.xml配置mapping  页面直接配置路径就可下载 <mime-mapping>  <extension>doc</extension>  <mim ...

  10. 深入javascript——构造函数和原型对象

    常用的几种对象创建模式 使用new关键字创建 最基础的对象创建方式,无非就是和其他多数语言一样说的一样:没对象,你new一个呀! var gf = new Object(); gf.name = &q ...