スナップは、以下の情報をロギングする機能です。
J2EEアプリケーションを開発するときに、デバッグ情報として使用できます。
J2EEアプリケーション実行中の各種入出力情報
J2EEアプリケーションのユーザデバッグ情報
注意
スナップを使用するには、Interstage管理コンソールでIJServerを起動してください。
スナップが出力する情報
スナップには以下の情報が出力されます。
クライアントから呼び出されたEJBアプリケーションのメソッド情報
クライアントアプリケーションから呼び出されたEJBアプリケーションの以下のメソッド情報を出力します。
メソッド呼出し時の情報
メソッド復帰時の情報
メソッドで例外が発生したときの情報
EJBアプリケーションが、以下のすべての条件を満たしている場合にだけ、出力できます。
インストールガイドに記載されているV6以降のInterstage管理コンソールを使用して配備したEJBアプリケーションであること
本情報が出力されるのは下記メソッド呼出し時だけです。
| Session Bean | Entity Bean |
---|---|---|
Homeインタフェースメソッド | create | create |
Remoteインタフェースメソッド | ビジネスメソッド | ビジネスメソッド |
LocalHomeインタフェースメソッド | ビジネスメソッド | create |
Localインタフェースメソッド | ビジネスメソッド | ビジネスメソッド |
詳細は、“3.13.1 クライアントから呼び出されたEJBアプリケーションのメソッド情報”を参照してください。
EJBアプリケーションのメソッド情報
EJBアプリケーションのメソッド呼出し時の以下の情報を出力します。
メソッド呼出し時の情報
メソッド復帰時の情報
メソッドで例外が発生したときの情報
詳細は、“3.13.2 EJBアプリケーションのメソッド情報”を参照してください。
javax.transaction.UserTransactionのAPI情報
javax.transaction.UserTransaction API呼出し時の以下の情報を出力します。
メソッド呼出し時の情報
メソッド復帰時の情報
メソッドで例外が発生したときの情報
詳細は、“3.13.3 javax.transaction.UserTransaction API情報”を参照してください。
データベース操作文情報(Entity Bean形態がCMPの場合のみ)
Entity Bean形態がCMPの場合、コンテナが行っているデータベース操作の以下の情報を出力します。
データベース操作呼出し時の情報
データベース操作復帰時の情報
データベース操作で例外が発生したときの情報
詳細は、“3.13.4 データベース操作文情報”を参照してください。
EJBコンテナのトランザクション制御情報
トランザクション種別がContainerでトランザクション属性がRequiredまたはRequiresNewの場合、コンテナがjavax.transaction.TransactionManagerのAPIを呼び出すときの以下の情報を出力します。
トランザクションの開始(begin)
トランザクションの完了(commit/rollback)
トランザクションにロールバックを指定(setRollbackOnly)
トランザクションの中断/再開(suspend/resume)
詳細は、“3.13.5 EJBコンテナのトランザクション制御情報”を参照してください。
J2EEアプリケーションのユーザデバッグ情報
J2EEアプリケーションより出力されたデバッグ情報を出力します。詳細は、“3.13.6 J2EEアプリケーションのユーザデバッグ情報”を参照してください。
スナップの出力レベル
出力される情報は、IJServerの起動時に指定する出力レベルの設定により異なります。
出力レベル | 出力される内容 |
---|---|
1 | J2EEアプリケーションメソッドの呼出しシーケンスが確認できます。 |
2 | レベル1情報に加え、メソッド実行時のパラメタ情報、復帰情報が確認できます。Entity Beanの形態がCMPである場合は、データベース操作の情報を出力するため、データの流れやデータベースとの関係が確認できます。 |
10 | J2EEアプリケーションのユーザデバッグ情報が確認できます。 |
11 | レベル1の情報に加え、J2EEアプリケーションのユーザデバッグ情報が確認できます。 |
12 | レベル2の情報に加え、J2EEアプリケーションのユーザデバッグ情報が確認できます。 |
スナップの環境設定
スナップを取得する場合は、スナップ取得を行うIJServerのワークユニット設定に、以下のように出力レベルを指定します。
パラメタ | 値 |
---|---|
Java VMオプション(Java Command Option) | -DFJSNAP=出力レベル |
スナップは、ディスクの空き容量がない場合を除き、出力レベルに従ってすべての情報が無制限に出力されます。
注意
スナップに関する注意事項
IJServerに配備されたすべてのJ2EEアプリケーションから出力されるスナップは、コンテナログへ出力されます。
J2EEアプリケーションをスレッド多重で動作させた場合、すべてのスナップは同一のコンテナログへ出力されます。この場合、スナップがスレッドごとに交錯して出力されますので、スレッド多重では使用しないでください。
EJBアプリケーションのメソッドの復帰値とパラメタで大量データを使用する場合、メモリ不足エラーが発生する可能性があります。スナップを使用する際は少量データで使用してください。
J2EEアプリケーション実行中にメモリ不足が発生した場合、スナップ情報は出力されません。
環境変数、および値に誤り(スペルミスなど)がある場合、IJServerは起動しますがスナップは出力されません。