当前位置: 首页 > 面试题库 >

单个Logger的每个附加程序的日志级别

周祺
2023-03-14
问题内容

是否可以基于附加程序为单个Logger配置不同的日志级别?

我意识到这与这个问题类似,这是我已经了解到的,但是问题是该阈值适用于登录到该附加程序的所有记录器,而我只希望该阈值适用于单个记录器。

即到目前为止,我有这样的事情:

log4j.rootLogger=WARN, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

log4j.logger.mylogger=DEBUG,logfile
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.DatePattern=${roll.pattern.daily}
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C{2} - %m%n
log4j.appender.logfile.File=mylogfile.log

我希望将 Mylogger的 DEBUG消息发送到 日志文件 追加器,但是我也希望将 Mylogger的 INFO消息发送到
stdout 追加器(但对于所有其他记录器,仅WARN ings)。使用阈值将stdout限制为WARN会限制 mylogger 的输出。


问题答案:

啊哈,我改了

log4j.appender.stdout.Threshold=WARN

log4j.appender.stdout.Threshold=INFO

第一次应该更谨慎。



 类似资料:
  • 我希望在我的应用程序(Spring Integration)中有两个日志文件,Debug.log和Main.log。我想在信息级别运行main.log,在调试级别运行DEBUG.log。这可以通过附加程序上的筛选器来实现。我想根据源记录不同级别的附加程序。换句话说,也就是 总结一下: Spring记录器 主->错误 调试->调试 主->信息 调试->调试 因此,我必须让记录器在DEBUG运行,而附

  • 我正在使用log4j2记录应用程序的事件。然而,我被以下问题所困扰。 当前,所有日志记录消息都被写入到两个不同的附加程序中。一个具有RollingFile类型,而另一个具有Console类型。 编辑: 我看到很多问题,要求只将某个级别的消息写入文件,而将不同级别的消息写入不同文件。在我的情况下,我需要将具有一定级别的更高的消息写入到不同的文件中。例如,在我提供的情况下,带有级别错误或致命的消息将同

  • 我继承了一堆代码,我注意到在tomcat日志中写着 log4j:警告找不到logger(org.springframework.web.context.contextLoader)的附加程序。log4j:警告请正确初始化log4j系统。log4j:警告有关更多信息,请参见http://logging.apache.org/log4j/1.2/faq.html#noconfig。

  • 我有一个多线程Java应用程序,每个线程都是一个扩展基类的类。其中一个线程偶尔会给基类中的一个方法大量机器生成的数据,而其他线程只给出少量的人类类型数据。我想在比机器数据更高的日志级别上记录这些人类类型的消息,但是由于基类是所有线程的一部分,我无法在代码中区分出来。 一种解决方案是通知扩展类中的基类在不同的级别上登录,但是我必须将这些知识硬编码到应用程序中,这很难看。 我想做的是通过我的logba

  • 我想为woocommerce创建一个函数,当访问者在他们的购物车中添加多个产品时,每个产品的运输成本会增加2美元。 例如,一种产品的运输成本是适用的。对于额外产品或超过1个数量,运输成本增加2美元。 我想不出解决这个问题的办法。 在此方面的任何帮助都将不胜感激。

  • 问题内容: 我想在我的应用程序(Spring Integration)中有两个日志文件,debug.log和main.log。我想在INFO级别运行main.log,在DEBUG级别运行debug.log。这可以通过追加程序上的过滤器完成。我想根据源将不同级别记录到附加程序。换一种说法 总结一下: 弹簧记录器 主要->错误 调试->调试 com.myapp记录器 主要->信息 调试->调试 因此,