パッケージjava.util.logging
パッケージjava.util.logging
Java 2プラットフォー のコア・ロギング機能のクラスおよびインタフェースを提供します。 ロギングAPIの主な目的は、顧客サイトでのソフトウェアの管理とサービスをサポートすることです。
ログを使用する主な4つの目的は次のとおりです。
- エンド・ユーザーとシステ 管理者による問題の診断。 これは、リソースの不足、セキュリティ障害、および単純な設定エラーなど、ローカルで修復または追跡可能なよくある問題の簡潔なロギングから構成されます。
- フィールド・サービス・エンジニアによる問題の診断。 フィールド・サービス・エンジニアが使用するロギング情 は、システ 管理者が必要とする情 よりも大幅に複雑かつ冗長なものとなる可能性があります。 通常、そのような情 を取得するには、特定サブシステ 内での追 ロギングが必要となります。
- 開発組織による問題の診断。 フィールドで問題が発生した 合、 合によっては取得したロギング情 を元の開発チー に診断用として戻す必要があります。 このロギング情 は、極めて詳細でかなり難解なものになる可能性があります。 合によってはこのような情 には特定のサブシステ の内部実行の詳細なトレースが含まれます。
- 開発者による問題の診断。 ロギングAPIは、開発中のアプリケーションのデバッグを支援する目的でも使用できます。 これにはおそらく、ターゲット・アプリケーションによって生成されるロギング情 や低レベル・ライブラリによって生成されるロギング情 が含まれます。 た し、この使用方法はまったく妥当なものですが、ロギングAPIの目的は、開発環境内にすでに存在している可能性のある、通常のデバッグ・ツールやプロファイリング・ツールに取って代わることではありません。
このパッケージの主な要 は次のとおりです。
- Logger: アプリケーションがロギング呼出しを行う際に使用する主要エンティティです。 Loggerオブジェクトは、特定のシステ ・コンポーネントやアプリケーション・コンポーネントのメッセージをロギングするために使用されます。
- LogRecord: これを使用して、ログ・フレー ワークと個々のログ・ハンドラとの間のロギング要求を渡します。
- ハンドラ: メモリー、出力ストリー 、コンソール、ファイル、ソケットなど、さまざまな出力先にLogRecordオブジェクトをエクスポートします。 この目的のために、さまざまなHandlerサブクラスが存在しています。 追 のHandlerがサード・パーティで開発され、コア・プラットフォー に えて提供される 合があります。
- Level: ログ出力を制御するために使用される標準ログ・レベルのセットを定義します。 プログラ はほかのレベルでの出力を無視して一部のレベルのログを出力するよう構成できます。
- Filter: ログ・レベルが提供する制御を超えた、ログ・データに対するきめ細かい制御を行います。 ロギングAPIがサポートする汎用フィルタ・メカニズ を使えば、アプリケーション・コードは、任意のフィルタを接続してロギングの出力を制御できます。
- Formatter:LogRecordオブジェクトのフォーマット処理のサポートを提供します。 このパッケージにはSimpleFormatter、XMLFormatterの2つのフォーマッタが含まれています。これらはそれぞれ、ログ・レコードをプレーン・テキスト、XMLでフォーマットするためのものです。 Handlerと同様に、追 のFormatterがサード・パーティで開発される 合があります。
ロギングAPIは、静的構成制御、動的構成制御の両方を提供します。 静的制御を使えば、フィールド・サービス・スタッフは、特定の構成を設定したあと、その新しいロギング設定を使ってアプリケーションを再起動することができます。 動的制御を使えば、現在実行中のプログラ 内からロギング構成を更新できます。 また、このAPIでは、システ の機能 域ごとにロギングの有効/無効を切り替えることもできます。 たとえば、あるフィールド・サービス・エンジニアは、すべてのAWTイベントを追跡することには関心があっても、ソケット・イベントやメモリー管理にはまったく関心がない 合があるからです。
nullポインタ
一般に、javadoc内で特に記載のないかぎり、メソッドおよびコンストラクタは、null引数を渡されるとNullPointerExceptionをスローします。 このルールには大きな例外が1つあります。それは、Loggerクラスのロギング簡易メソッド(config、entering、exiting、fine、finer、finest、log、logp、logrb、severe、throwing、およびwarningメソッド)は、最初のLevel引数(存在する 合)を除くすべての引数でnull値を受け取る、ということです。
関連 目
制御フローの概要は、「Javaロギングの概要」を参照してく さい
- 導入されたバージョン:
- 1.4
-
クラス説明この
Handlerは、ログ・レコードをSystem.errに公開します。ErrorManagerオブジェクトはHandlerに接続され、ロギング時にHandlerで発生するエラーを処理します。単純なファイル・ロギングHandler。Filterは、ログ・レベルが提供する制御以上に、ログ対象をきめ細かく制御するために使用されます。FormatterはLogRecordのフォーマット処理をサポートします。Handlerオブジェクトは、Loggerからログ・メッセージを取得し、それらをエクスポートします。Levelクラスは、ロギング出力の制御に使用可能な一連の標準ロギング・レベルを定義します。Loggerオブジェクトは、特定のシステ ・コンポーネントやアプリケーション・コンポーネントのメッセージをロギングするために使用されます。非推奨。このクラスは、ロギング権限用です。Loggerとログ・サービスの共有状態のセットを管理するために使用される単一のグローバルLogManagerオブジェクトがあります。LogRecordオブジェクトを使用して、ログのフレー ワークと個々のログHandler間のロギングの要求を渡します。メモリー内の循環バッファでリクエストをバッファするHandler。LogRecordの簡単なサマリーを人が理解できる形式で出力します。単純なネットワーク・ロギングHandler。ストリー ・ベースのロギングHandler。LogRecordを標準XML形式でフォーマットします。
LoggingMXBeanはもはやplatform MXBeanでなく、PlatformLoggingMXBeanに置き換えられました。