21

これは、appserverで大量のログエントリを生成するサードパーティのアプリケーションです。このような:

[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の構成を見つけましたが、何も見つかりませんでした。彼らのウェブサイトも役に立ちませんでした

4

5 に答える 5

17

slf4j は、特定の種類のメッセージを取り除くために構成する必要がある、実際のログ バックエンド (ここでは Jakarta Commons ロギングをオーバーライドする) への漏斗です。logback の場合、これは適切な構成スニペットです。

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

log4j の場合は非常に似ています。

于 2010-03-05T12:36:53.987 に答える
14

または、 http://www.slf4j.org/dist/slf4j-1.6.4.tar.gzをダウンロードし、そこで slf4j-nop-1.6.4.jar (これは操作なしのロガーです) を探し、これを含めます。あなたのクラスパスで。SLF4J クラスローダーがこれを確認すると (使用できるクラスパスにあるロガーを確認するように見えます)、ログを停止する必要があります (アプリを再起動したら)。

少なくともこの方法では、ログ構成ファイルをいじる必要はありません...

于 2012-01-05T19:27:55.540 に答える
3

logback、log4j、jul など、どのロギング バックエンドを使用していますか? これらのメッセージをフィルタリングするには、バックエンドを構成する必要があります。

さらに、ログ メッセージが " org.slf4j.impl.JCLLoggerAdapter" を指しているという事実は、呼び出し元の場所の推定が正しく機能していないことを示しています。(実際の発信者ではなく言及する必要がありJCLLoggerAdapterます)。これは、次の場合に発生する可能性があります。

  1. 古いバージョンの SLF4J を使用している

また

  1. 呼び出し元が slf4j のようなラッパーを使用しているか、呼び出し元の場所を適切に推測しない独自のロギング API を持っています。関連するSLF4J FAQ エントリも参照してください。
于 2010-03-05T12:10:01.280 に答える
3

slf4j は、さまざまなロギング フレームワークのロギング ファサードです。その出力は Apache Commons Loggin フレームワーク アダプターからのもので、別のファサードになります。コモンズ ロギング構成

于 2010-03-03T15:12:48.717 に答える
0

次の文字列を検索します: level="DEBUG"using your IDE。そのテキストは.xmlファイルにあります。

そこに行き、level="INFO"代わりに使用してlevel="DEBUG"ください。

キー値は大文字と小文字が区別されません。

次のようなものがあります。

<root level="info">
    ...
</root>
于 2014-08-21T07:21:56.437 に答える