| Oracle® Fusion Middleware Oracle WebLogic Serverアプリケーション・ロギングのためのロギング・サービスの使用 11g リリース1 (10.3.6) B61615-04 |
|
![]() 前 |
![]() 次 |
以下の節では、Loggableオブジェクトのリファレンス情報を提供します。
デフォルトでは、すべてのログ・メッセージ・カタログは、メッセージのWebLogicサーバー・ログへの書込みに使用されるメソッドを含むLoggerクラスを作成します。Loggerクラスには、メッセージをログに記録せずに、Loggableオブジェクトを返すメソッドをオプションで組み込むことができます。Loggableオブジェクトは、ログ・メッセージを生成しますが、実際のログへの書込みは後から行う場合に便利です。また、例外のスローなど、他の目的にメッセージ・テキストを使用する場合にも使用できます。
Loggableオブジェクトを返すメソッドを持つLoggerクラスを作成するには、メッセージ・カタログにloggables属性を設定する必要があります。
例B-1に示すtest.xmlカタログを参照してください。
例B-1 test.xmlメッセージ・カタログ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE message_catalog PUBLIC "weblogic-message-catalog-dtd" "http://www.bea.com/servers/wls90/dtd/msgcat.dtd">
<message_catalog
subsystem="Examples"
version="1.0"
baseid="500000"
endid="500001"
loggables="true"
>
<logmessage
messageid="500000"
severity="error"
method="logIOError(Throwable t)"
>
<messagebody>
IO failure detected.
</messagebody>
<messagedetail>
</messagedetail>
<cause>
</cause>
<action>
</action>
</logmessage>
</message_catalog>
このカタログをweblogic.i18ngenユーティリティで実行すると、このカタログに対して次の2つのメソッドを持つLoggerクラスが作成されます。
logIOError (throwable) - メッセージをログに記録する
logIOErrorLoggable (throwable) - Loggableオブジェクトを返す
Loggableオブジェクトの使用例は、例B-2に示しています。
例B-2 Loggableオブジェクトの使用例
package test;
import weblogic.logging.Loggable;
import weblogic.i18n.testLogger;
...
try {
// some IO
} catch (IOException ioe) {
Loggable l = testLogger.logIOErrorLoggable(ioe);
l.log(); // log the error
throw new Exception(l.getMessage());//throw new exception with
same text as logged
}