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

log4j:将特定类的输出记录到特定附加程序

范云
2023-03-14
问题内容

我使用log4j,并希望将某些Logger的输出路由到特定文件。

我已经有多个附加器。现在,为了简化调试,我想告诉log4j,应该将特定类(例如foo.bar.Baz)生成的输出写入特定的日志文件。

能做到吗?


问题答案:

一个例子:

log4j.rootLogger=ERROR, logfile

log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.datePattern='-'dd'.log'
log4j.appender.logfile.File=log/radius-prod.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%-6r %d{ISO8601} %-5p %40.40c %x - %m\n

log4j.logger.foo.bar.Baz=DEBUG, myappender
log4j.additivity.foo.bar.Baz=false

log4j.appender.myappender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.myappender.datePattern='-'dd'.log'
log4j.appender.myappender.File=log/access-ext-dmz-prod.log
log4j.appender.myappender.layout=org.apache.log4j.PatternLayout
log4j.appender.myappender.layout.ConversionPattern=%-6r %d{ISO8601} %-5p %40.40c %x - %m\n


 类似资料:
  • 我正在从log4j1.2迁移到log4j2。 我有我的整个配置到一个log4j2.properties文件。 我注意到在启动tomcat时,我的日志中出现了一条新的错误消息: log4j:WARN找不到记录器(org.springframework.web.filter.CharacterEncodingFilter)的追加器。log4j:警告请正确初始化log4j系统。log4j:请参阅http

  • 我已经将log4j放入了buildpath中,但在运行应用程序时会收到以下消息: 这些警告意味着什么?这里的附加符是什么?

  • 我有一个情况,我有两个追加器,一个写到控制台,另一个写到文件。我想记录除一个类以外的所有调试级别的东西。对于这个类,我想要记录调试到控制台,错误到文件。 我发现这种过滤是通过类别标记完成的,但是我还没有设法将不同的级别拆分给特定类上的不同追加器。

  • 问题内容: 如何根据包名将log4j设置为登录到其他文件? 例如: 我正在使用属性文件配置格式。目前,它是为服务器设置的,我想不理会它,并添加一些东西来记录我的日志。 属性文件如下所示: 问题答案: 您必须创建两个新的追加程序并相应地设置可加性。 更新:只需检查是否需要添加以下行。 您的常规日志文件在哪里,该日志文件记录除和以外的所有内容。

  • 问题内容: 我已经将log4j放到了我的构建路径中,但是在运行应用程序时收到以下消息: 这些警告是什么意思?这里的追加器是什么? 问题答案: 这个log4j指南的简短介绍有些陈旧,但仍然有效。 该指南将为你提供有关如何使用记录器和附加器的信息。 为了让你步入正轨,你可以采用两种简单的方法。 首先是将这一行添加到你的main方法中: 第二种方法是将这个标准文件log4j.properties(来自上

  • 我正在系统上处理一个新函数,现在我需要选择一个文件,并保存在用户C:的文件夹中。这个过程是这样发生的,用户上传一个文件到系统中,这个文件可以是任何东西,文本,图像,除了视频,现在它被保存在系统数据库中,但是我的老板想要改变这个过程,所以我需要保存在用户C:上的一个特定文件夹上,我已经创建了特定文件夹,但是我不知道如何将文件保存在创建的文件夹上。因此上载文件的代码如下所示: