Interstage Application Server J2EE ユーザーズガイド |
目次
索引
![]() ![]() |
第3部 EJB編 | > 第18章 アプリケーションを開発・テストする | > 18.6 EJBアプリケーションのデバッグ | > 18.6.1 スナップを利用したデバッグ |
EJBアプリケーションのユーザデバッグ情報は、EJBアプリケーションからログ出力メソッドを呼び出す時に出力されます。
ログ出力メソッドごとに出力されるユーザデバッグ情報の詳細は、“サポート対象ログ出力メソッド”を参照してください。
ここでは、ユーザデバッグ情報をスナップファイルへ出力するための方法、出力形式および出力内容を説明します。
EJBアプリケーションのユーザデバッグ情報をスナップファイルへ出力するためには、ログ出力メソッドをEJBアプリケーションクラス内に記述します。記述手順は以下のとおりです。
以下に例を示します。
package sample.ejb.entity.bmp; ・・・ 省略 ・・・ |
JDK1.3を使用して、このデバッグを使用する場合は、Interstage EJBが提供するAPIを使用します。また、JDK1.4を使用する場合は、java.util.Loggingパッケージを使用します。
JDK1.3とJDK1.4では、EJBアプリケーションを作成する際、以下の点が異なります。
JDKバージョン |
import文 |
JDK1.3 |
com.fujitsu.interstage.ejb.container.common |
JDK1.4 |
java.util.Logging |
EJBアプリケーションのコンパイル時に、以下のファイルにクラスパスを設定してください。
Apworksインストールフォルダ\ejb\lib\fjcontainer32.jar
EJBアプリケーションから出力されたユーザデバッグ情報に日付、時間などの情報を加えて出力されます。
各種ログ出力メソッドを使用して出力される形式は、以下の形式です。
使用するAPIによって出力形式は異なります。詳細は、“サポート対象ログ出力メソッド”を参照してください。
それぞれの出力形式を説明します。
日付 時間 : Log Message ログレベル メッセージ |
日付 時間 : Log Message ログレベル メッセージ Log Param :パラメタ情報 |
日付 時間 : Log Exception ログレベル メッセージ 例外情報 |
以下に、出力項目と出力内容を説明します。
出力項目 |
出力内容 |
日付 |
デバッグ情報出力時の日付を“日/月/年”の形式で示します。 |
時間 |
デバッグ情報出力時の時間を“時:分:秒.ミリ秒”の形式で出力します。 |
Log Message |
デバッグ情報であることを示します。 |
Log Exception |
デバッグ情報(例外情報)であることを示します。 |
ログレベル |
デバッグ情報のレベル(ログ出力メソッドへ指定したレベル)を下記文字列で出力します。 “[FINEST]”・“[FINER]”・“[FINE]”・“[CONFIG]”・“[INFO]”・“[WARNING]”・“[SEVERE]” |
メッセージ |
EJBアプリケーションが指定したデバッグ情報(任意の文字列)を出力します。 |
パラメタ情報 |
EJBアプリケーションが指定したパラメタ情報(任意のObject)の型、値を以下のいずれかの形式で出力します。
配列クラス、java.utilパッケージのHashtableなどは格納されているすべての値を出力します。 publicフィールドを持つユーザオブジェクト(Stringを除く)を復帰値として使用している場合は、“<Object>"を付加し、ObjectField項目の出力を行います。 |
例外情報 |
EJBアプリケーションが指定した例外情報(任意の例外)を出力します。 発生した例外に詳細文字列が含まれている場合は、その詳細文字列も出力されます。 |
フィールド情報 |
オブジェクトのpublicなフィールド情報を以下の形式で示します。
プリミティブ型とString型の場合は型、変数名、値を出力します。 その他の場合は型、変数名、“<Object>"を出力します。 |
以下に、出力例を出力形式ごとに示します。
メソッドが、logger.log(Level.INFO,"DBAccess start!!");の場合
23/10/2000 09:49:15.454 : Log Message: [INFO] DBAccess start!! |
メソッドが、logger.log(Level.INFO," prepareStatement ",sql);
(“sql”は、java.lang.String型とする)
23/10/2000 09:49:15.454 : Log Message: [INFO] prepareStatement Log Param : (java.lang.String)"SELECT * FROM EMP_EJB1 WHERE (ID=?)" |
メソッドが、logger.log(Level.SEVERE"Error!!", ex)の場合
(“ex”は java.lang.Throwable型とする)
23/10/2000 09:49:15.454:LogException:[SEVERE] Error!! java.lang.NullPointerException |
以下に、サポート対象であるログ出力メソッドの一覧を示します。
ログ出力メソッドの詳細は、“Java 2 プラットフォーム API 仕様”を参照してください。
サポートメソッド |
出力されるデバッグ情報 |
config(String msg) |
ログレベル="[CONFIG]" メッセージ=msgで指定した文字列 |
fine(String msg) |
ログレベル="[FINE]" メッセージ=msgで指定した文字列 |
finer(String msg) |
ログレベル="[FINER]" メッセージ=msgで指定した文字列 |
finest(String msg) |
ログレベル="[FINEST]" メッセージ=msgで指定した文字列 |
info(String msg) |
ログレベル="[INFO]" メッセージ=msgで指定した文字列 |
severe(String msg) |
ログレベル="[SEVERE]" メッセージ=msgで指定した文字列 |
warning(String msg) |
ログレベル="[WARNING]" メッセージ=msgで指定した文字列 |
log(Level level, String msg) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 |
log(Level level, String msg, Object param1) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=param1で指定した情報 |
log(Level level, String msg, Object[] params) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=paramsで指定した情報 |
log(Level level, String msg, Throwable thrown) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 例外情報=thrownで指定した情報 |
log(LogRecord record) |
LogRecordクラスに設定した以下の情報を出力します。 ログレベル=setLevel()メソッドで設定したレベルに対応する文字列 メッセージ=setMessage()メソッドで設定した文字列 パラメタ情報=setParameters()メソッドで設定した情報 例外情報=setThrown()メソッドで設定した情報 注)パラメタ情報と例外情報が同時に設定されている場合、例外情報のみ出力され、パラメタ情報は出力されません。 |
logp(Level level,String sourceClass,String sourceMethod, String msg) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 |
logp(Level level, String sourceClass, String sourceMethod,String msg,Object param1) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=param1で指定した情報 |
logp(Level level, String sourceClass, String sourceMethod, String msg, Object[] params) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=paramsで指定した情報 |
logp(Level level, String sourceClass, String sourceMethod, String msg, Throwable thrown) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 例外情報=thrownで指定した情報 |
logrb(Level level, String sourceClass, String sourceMethod, String bundleName,String msg) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 |
logrb(Level level, String sourceClass, String sourceMethod, String bundleName, String msg, Object param1) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=param1で指定した情報 |
logrb(Level level, String sourceClass, String sourceMethod, String bundleName, String msg, Object[] params) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 パラメタ情報=paramsで指定した情報 |
logrb(Level level, String sourceClass, String sourceMethod, String bundleName, String msg, Throwable thrown) |
ログレベル=levelに対応する文字列 メッセージ=msgで指定した文字列 例外情報=thrownで指定した情報 |
throwing(String sourceClass, String sourceMethod, Throwable thrown) |
ログレベル="[FINER]" メッセージ="THROW" 例外情報=thrownで指定した情報 |
目次
索引
![]() ![]() |