28

デフォルトでは、slf4j は、jdk ( slf4j-jdk14-1.6.1.jar ) を使用する場合、デバッグ メッセージをログに記録しません。それらを有効にするにはどうすればよいですか?

公式ドキュメント、Web、またはここで有効にする方法に関する情報が見つかりません。

%JDK_HOME%/lib にファイルを作成し、設定ファイルでレベルを定義することに関する情報をいくつか見つけました (ただし失敗しました)。ただし、コンパイル/実行時にレベルを定義して、さまざまなログ レベルで IDE からアプリを実行およびデバッグできるようにしたいと考えています。

設定できる環境変数、または VM arg はありませんか?

4

5 に答える 5

26

DEBUG メッセージがログに記録されないのはなぜだと思いますか?

log.debug(String)ロギング呼び出しがログ ファイルに終わらないことを意味する場合は、レベルでログ メッセージを許可するように構成ファイルをjava.util.logging構成する必要があると思います。logging.propertiesFINE

global をいじりたくない場合は、コマンド ライン%JRE_HOME%/lib/logging.propertiesで渡すことができます。-Djava.util.logging.config.file=logging.propertiesこれにより、ロギング システムが現在のディレクトリでその構成ファイルを探すようになります。

または、他の (プログラムによる) 方法を使用して を構成しますjava.util.logging。以下のチュートリアルを参照してください。

これは、SLF4J の構成とは関係ありません。実際、SLF4J には構成がなく、 JAR ファイルを交換するだけですべてが構成されます。


ご参考までに:

于 2010-11-25T16:04:40.170 に答える
13

slf4j SimpleLogger 実装を使用している場合は、こちらをお読みください

そこには、デフォルトのログレベルとしてsimpleLogger使用されていることがわかります。INFOシステム プロパティを使用して変更できます。これは、非本番環境で役立ちます。

static {

    System.setProperty("org.slf4j.simpleLogger.defaultLogLevel", "trace");
}
于 2015-08-26T16:41:06.380 に答える
4

logging.properties ファイルをアプリケーションの WEB-INF/classes ファイルに配置し (または、戦争にデプロイしていない場合は、Neeme Praks によって識別されるコマンド ライン引数を使用します)、プロパティ ファイルを Eclipse で開いて、次のことができるようにします。パッケージをログに記録し、興味のあるレベルで微調整します。

logging.properties ファイルで、ロガー レベルとハンドラー レベルの両方が必要なレベルに設定されていることを確認する必要があります。たとえば、出力をコンソールに表示するには、少なくとも次のものが必要です。

#logging.properties file contents

#Define handlers
handlers=java.util.logging.ConsoleHandler

#Set handler log level
java.util.logging.ConsoleHandler.level=FINE

#Define your logger level
com.company.application.package.package.level=FINE

#Assign your handler to your logger
com.company.application.package.package.handlers=java.util.logging.ConsoleHandler

あなたはslf4j-jdk14-1.6.1.jar. これにより、java.util.logging への slf4j バインディングが提供されます。クラスパスにそれが必要ですが、クラスパスにも slf4j api ( slf4j-api-1.7.12.jar) があることを確認してください。

このリンクの例の logging.properties ファイルは、さまざまなロガーとハンドラーを作成するのに役立ち、どのログをコンソールに送信し、どのログをファイルに送信するかをきめ細かく制御できます。

そして、ここに slf4j のマニュアルがあります

于 2015-06-07T18:38:47.303 に答える