• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:デバックログの出し方)

デバックログの出し方

このQ&Aのポイント
  • 「commons」の「Logging」を使用し検証しています。log.isDebugEnabled()がTRUEとならずデバックログが出力されません。
  • 他の「log.fatal」などの出力は問題ありません。
  • 別ファイルに設定などが必要でしょうか?アドバイスお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • momozange
  • ベストアンサー率67% (21/31)
回答No.1

提供元の情報は参照してみましたか? http://commons.apache.org/logging/guide.html に大抵の情報は記載してあります。 Commons-logging自体は主にログ出力の仕様を提供するのが主たる 役割で、その実装(実装クラス)はアプリケーション、またはそれが動作する 環境(JRE)に依存するものです。 さて、今回の場合Commons-logging単体でLogインスタンスを生成していますが 特にその実装クラスの指定がないので内部実装されているLog4jまたはJDKの の実装クラスにLogインスタンスが結び付けられていると思います。 確認するにはコード内のLogインスタンスから log.getClass().getName() 確認してみてください。 出力された結果が実装クラスです。 その実装クラスには通常対応した設定情報ファイルが存在します。 現在ではすっかりデファクトスタンダードになっているLog4jの場合は log4j.propertiesまたはlog4j.xmlなどがそれにあたります。 あまり長くなると混乱されてしまうでしょうから、要件の実現のみを 記載すると クラスパス配下に実装クラスを定義する commons-logging.properties を作成し実装クラスを指定する記述を追加する。 org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog クラスパス配下に実装クラスSimpleLogの出力設定を定義する simplelog.properties を作成しログレベルを指定する木津樹を追加する。 org.apache.commons.logging.simplelog.defaultlog=trace これでtraceログまでを出力することができるようになるでしょう。 しかしSimpleLogは出力を標準エラーにリダイレクトするので デバッグ機能としての使用は?です。 やはり慣習に従い、Log4j等のwrapperクラスを使用する(log4j.jarを導入する)ほう が よいと思います。

noname#46519
質問者

お礼

有難うございました。助かりました。

関連するQ&A