【问题标题】:How to turn off logging from SLF4J?如何从 slf4j 关闭日志记录
【发布时间】:2011-01-23 05:51:33
【问题描述】:

这是一个第三方应用程序,在我们的应用服务器上生成大量日志。像这样:

[03.03.10 15:21:57:250 CET] 00000180 FtpProtocolHa I org.slf4j.impl.JCLLoggerAdapter info Close connection : 10.227.10.10 - admin
[03.03.10 15:27:35:209 CET] 00000181 MinaFtpProtoc I org.slf4j.impl.JCLLoggerAdapter info [/10.227.10.10] CLOSED
++++

如何关闭 slf4j 的输出?我查看了 .war 文件以找到 slf4j 的一些配置,但什么也没有。他们的网站也没有帮助

【问题讨论】:

    标签: java logging jakarta-ee slf4j


    【解决方案1】:

    slf4j 只是实际日志后端(此处覆盖 jakarta commons 日志记录)的一个漏斗,这是您必须配置以摆脱某种消息的一个漏斗。对于 logback,这是适当的配置 sn-p:

        <!--  No Tomcat debug logs -->
        <configuration>
        ...
            <logger name="org.apache.catalina.core" level="OFF" />
        ...
        </configuration>
    

    对于 log4j,它非常相似。

    【讨论】:

      【解决方案2】:

      哪个日志记录后端,例如logback、log4j、j.u.l.,你在用吗?您需要配置后端来过滤这些消息。

      此外,日志消息指向“org.slf4j.impl.JCLLoggerAdapter”这一事实表明调用方位置推断没有正常工作。 (它应该提到实际的调用者而不是JCLLoggerAdapter)。在以下情况下可能会发生这种情况:

      1. 您使用的是旧版本的 SLF4J

      1. 调用者正在使用类似 slf4j 的包装器,或者有自己的本地日志 API,无法正确推断调用者的位置。另请参阅相关的SLF4J FAQ entry

      【讨论】:

      • 这是第三方应用程序。我无权访问任何代码(反编译除外) 没有 log4j.properties 文件或任何其他看起来包含任何日志属性的文件
      【解决方案3】:

      使用您的 IDE 搜索以下字符串:level="DEBUG"。 您将在 .xml 文件中找到该文本。

      去那里使用level="INFO"而不是level="DEBUG"

      键值不区分大小写。

      可能是这样的:

      <root level="info">
          ...
      </root>
      

      【讨论】:

        【解决方案4】:

        或者,下载http://www.slf4j.org/dist/slf4j-1.6.4.tar.gz,在其中查找 slf4j-nop-1.6.4.jar(这是无操作记录器)并将其包含在您的类路径中。当 SLF4J 类加载器看到这一点时(它会查看它可以使用的类路径中有哪些记录器),它应该停止记录(一旦你重新启动了应用程序)。

        至少这样你就不需要弄乱日志配置文件了……

        【讨论】:

        • 在我的系统上,我还必须从类路径中删除 slf4j-log4j*.jar。
        • 如果类路径中有多个 slf4j 后端,slf4j 会非常不喜欢。
        • 我正在使用 maven,我添加了 Zorn 先生建议的依赖项,我将其他 slf4j 依赖项更改为都具有相同的版本,正如 Thorbjørn Ravn Andersen 建议的那样,但我仍然看到来自外部的日志图书馆。
        【解决方案5】:

        slf4j 是各种日志框架的日志外观。该输出来自 Apache Commons Loggin 框架适配器,它变成了另一个外观。 Commons Logging Configuration.

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-09-22
          • 2012-08-26
          • 2011-11-07
          • 1970-01-01
          • 2012-03-02
          • 2012-08-30
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多