web-dev-qa-db-ja.com

Jettyが組み込まれたデバッグレベルのログを有効にする方法

埋め込みJettyインスタンスでログレベルをDEBUGに設定しようとしています。

http://docs.codehaus.org/display/JETTY/Debugging にあるドキュメントには、

新しいorg.mortbay.jetty.Server()を呼び出す前に、SystemProperty.set( "DEBUG"、 "true")を呼び出します。

SystemPropertyクラスが何かはわかりません。どこにもドキュメント化されていないようです。私はSystem.setProperty()を試しましたが、それはうまくいきませんでした。

29
HolySamosa

Joakim ErdfeltがJettyメーリングリストで私の質問に回答しました。

Docs.codehaus.orgで古いJetty 6.xのドキュメントを参照しています。

DEBUGロギングは、使用することを選択したロギング実装によって決定される単なるロギングレベルです。

-D {classref} .LEVEL = {level}

ここで、{classref}は、レベルを設定するクラス参照、およびすべてのサブクラス参照です。 {level}は、ALL、DEBUG、INFO、WARNのいずれかの値です

例:-Dorg.Eclipse.jetty.LEVEL = INFO-これにより、すべてのjettyパッケージ/クラスのINFOレベルのロギングが有効になります。 -Dorg.Eclipse.jetty.io.LEVEL = DEBUG-IOクラスのみのデバッグレベルのログ記録を有効にします-Dorg.Eclipse.jetty.servlet.LEVEL = ALL-すべてのログ記録を有効にします(トレースイベント、内部的に無視された例外など)サーブレットパッケージの場合-Dorg.Eclipse.jetty.util.thread.QueuedThreadPool.LEVEL = ALL-これにより、特定のクラスでのみALL +レベルが有効になります。

25
HolySamosa

ログメッセージをstderrにすばやく取得したい場合は、Javaコマンドラインに次のように追加します。

-Dorg.Eclipse.jetty.util.log.class=org.Eclipse.jetty.util.log.StdErrLog -D{classref}.LEVEL=DEBUG
14
ssasa

これを追加

-Dorg.Eclipse.jetty.util.log.class=org.Eclipse.jetty.util.log.StdErrLog 
-Dorg.Eclipse.jetty.LEVEL=DEBUG

Snap of Eclipse Configuration

12
Apurva Singh

このスニペットを使用して、ロギングを有効にすることができます。

import org.Eclipse.jetty.util.log.Log;
import org.Eclipse.jetty.util.log.StdErrLog;
 .
 .
 .
StdErrLog logger = new StdErrLog();
logger.setDebugEnabled(true);
Log.setLog(logger);
4
Daniel