1

以下について確認を求めています。

  1. Websphere Application Server 管理コンソールを使用して、いくつかのロギング構成を指定し、アプリケーションのクラスも表示できます (以下に示すように)。WAS コンソールでログを有効にすると、My Application (およびそこに記載されている他のクラス) に JUL が実装されている場合にのみ機能しますか? ここに画像の説明を入力

  2. デフォルトでは、WAS コンソールを使用したロギングはトレース ファイル (${SERVER_LOG_ROOT}/trace.log) で行われます。これはコンソールにもできますか?(はい、${SERVER_LOG_ROOT}/SystemOut.log に変更するだけです)

  3. WAS コンソールからも Log4j プロパティを構成する方法はありますか? (いいえ、Log4j を構成可能にするために他の方法を使用する必要があると思います)。

PS: JUL は独自の実装だけでなく、抽象化も提供することを理解しています。上記の質問は、JULの実装を念頭に置いて尋ねられます:)

4

1 に答える 1

3

こんにちは私たちは同じ演習を行ったときです:WASを使用しているときのJULとLog4j。Log4jに行くことにしました。

1)はい。アプリでJULを使用している場合は、そのコンソールからレベルを変更できるはずです。

2)わかりません。

3)いいえ、WASコンソールからLog4jを変更することはできません。この例では、(wsadminを介して)各WebAppのLo4jログレベルを制御できるように、単純なMBeanを作成しました。また、BEAの素晴らしくシンプルなJSPもあります。これをWebAppに組み込んで、各カテゴリを表示するUIを作成できます。

(log4jを介して)JULを使用する場合は、次の意味を理解してください。

  • JULには、すぐに使用できるハンドラーは多くありません。

  • JULはJVMレベルであり、すべてのアプリがそれを共有します。カスタムJULHanlderを開発する場合、すべてのWebAppは同じインスタンスを共有します。

  • JULハンドラーは一般的であるため、各アプリを個別のログファイル(WebAppごとに1つ)に分割することは困難です。

  • サードパーティのLib(Spring、Ibatisなど)を使用している場合、およびJULを使用している場合、SpringでログレベルをDEBUGに変更すると、すべてのWebAppで変更されます。より細かい粒度(特定のWebAppでSpringのレベルを変更する)が必要な場合は、各WebAppにLog4jを埋め込むことをお勧めします。

これがお役に立てば幸いです

于 2011-01-28T22:04:29.697 に答える