Cosminexus アプリケーションサーバ V8

機能解説 保守／移行／互換編

解説書

3020-3-U10-60

目　　次

前書き

変更内容

はじめに

1.　アプリケーションサーバの機能

1.1　機能の分類

1.1.1　アプリケーションの実行基盤としての機能

1.1.2　アプリケーションの実行基盤を運用・保守するための機能

1.1.3　機能とマニュアルの対応

1.2　システムの目的と機能の対応

1.2.1　システムの保守のための機能

1.2.2　日立固有のJavaVMの機能

1.2.3　旧バージョンの製品から移行するための機能

1.2.4　旧バージョンの製品との互換のための機能

1.3　このマニュアルに記載している機能の説明

1.3.1　分類の意味

1.3.2　分類を示す表の例

1.4　アプリケーションサーバ 08-70での主な機能変更

2.　トラブルシューティング（資料取得と対処の概要）

2.1　この章の構成

2.2　トラブルシューティングの概要

2.2.1　トラブルへの対処の手順

2.2.2　トラブル発生時の資料取得の流れ

2.3　資料の取得

2.3.1　トラブル発生時に自動的に取得できる資料

2.3.2　障害検知時コマンドによる資料取得

2.3.3　snapshotログの収集

2.3.4　取得した情報の格納先

2.4　取得が必要な資料の種類

2.4.1　トラブルの種別と取得が必要な資料

2.4.2　取得が必要な資料の一覧

2.4.3　取得方法および調査方法との対応

2.5　トラブルへの対処と回復

2.5.1　構成ソフトウェアのプロセス（論理サーバ）が異常終了した場合

2.5.2　J2EEアプリケーションの強制停止に失敗した場合

2.5.3　データベースセッションフェイルオーバ機能でトラブルが発生した場合

2.5.4　メモリセッションフェイルオーバ機能でトラブルが発生した場合

2.5.5　JPAアプリケーションでトラブルが発生した場合

2.5.6　JavaVMが異常終了した場合

2.5.7　OutOfMemoryError発生時に運用管理エージェントが強制終了した場合

2.5.8　JP1と連携したシステムでトラブルが発生した場合

2.5.9　1:1系切り替えシステムでトラブルが発生した場合

2.5.10　N:1リカバリシステムでトラブルが発生した場合

2.5.11　ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合

2.5.12　EJBクライアントでトラブルが発生した場合

2.6　トラブルシューティングに関連する留意事項

2.6.1　EJBクライアントアプリケーションのシステムログに関する留意事項

2.6.2　CTM使用時の留意事項

2.6.3　PRF使用時の留意事項

3.　トラブルシューティング（資料取得の設定）

3.1　この章の構成

3.2　資料取得の設定の概要

3.2.1　資料取得の設定の概要（J2EEアプリケーションを実行するシステム）

3.2.2　資料取得の設定の概要（バッチアプリケーションを実行するシステム）

3.3　実行環境での設定

3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）

3.3.2　障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）

3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）

3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）

3.3.5　Management Serverのログ取得の設定

3.3.6　J2EEサーバのログ取得の設定

3.3.7　バッチサーバのログ取得の設定

3.3.8　SFOサーバのログ取得の設定

3.3.9　Webサーバのログ取得の設定

3.3.10　リダイレクタのログ取得の設定

3.3.11　インプロセスHTTPサーバのログ取得の設定

3.3.12　Cosminexus Managerのログ取得の設定

3.3.13　リソースアダプタのログ取得の設定

3.3.14　Cosminexus TPBrokerのログ取得の設定

3.3.15　Cosminexus JMSプロバイダのログ取得の設定

3.3.16　OSの統計情報取得の設定

3.3.17　ユーザダンプ取得の設定

3.3.18　coreダンプ取得の設定

3.3.19　JavaVMの資料取得の設定

4.　トラブルシューティング（資料の出力先と出力方法）

4.1　この章の構成

4.2　トラブルシューティングで使用する資料の種類（snapshotログを使用しない場合）

4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）

4.3.1　Cosminexus Component Containerのログの取得

4.3.2　Cosminexus Performance Tracerのログの取得

4.3.3　Cosminexus Component Transaction Monitorのログの取得

4.3.4　監査ログで出力するログの取得

4.3.5　アプリケーションのユーザログの取得

4.3.6　構築済み実行環境の切り替えで出力するログの取得

4.4　アプリケーションサーバのログ（バッチアプリケーションを実行するシステム）

4.4.1　Cosminexus Component Containerのログの取得（バッチアプリケーションを実行するシステム）

4.4.2　アプリケーションのユーザログの取得（バッチアプリケーションを実行するシステム）

4.5　EJBクライアントアプリケーションのシステムログ

4.5.1　EJBクライアントアプリケーションのシステムログの種類

4.5.2　EJBクライアントアプリケーションのシステムログの出力先

4.6　性能解析トレース

4.7　JavaVMのスレッドダンプ

4.7.1　運用管理コマンドを使用する場合

4.7.2　個別のコマンドを使用する場合

4.7.3　日立固有のJavaVMのコマンドを使用する場合

4.7.4　スレッドダンプにクラス別統計情報を出力する場合の注意事項

4.8　JavaVMのガーベージコレクションログ

4.9　メモリダンプ

4.9.1　ユーザダンプの取得（Windowsの場合）

4.9.2　J2EEサーバのメモリダンプの取得

4.9.3　CORBAネーミングサービスのメモリダンプの取得

4.10　日立固有のJavaVMログ（日立JavaVMログファイル）

4.11　JavaVM出力メッセージログ（標準出力またはエラーリポートファイル）

4.11.1　Windowsの場合

4.11.2　UNIXの場合

4.12　OSの状態情報とOSのログ

4.12.1　OSの状態情報の取得

4.12.2　OSのログの取得

4.13　OSの統計情報

4.13.1　Windowsの場合

4.13.2　UNIXの場合

4.14　アプリケーションサーバの定義情報

4.15　J2EEサーバまたはバッチサーバの作業ディレクトリの内容

4.16　アプリケーションサーバのリソース設定情報

4.17　Webサーバログ

4.18　JavaVMのスタックトレース情報

4.19　明示管理ヒープ機能のイベントログ

5.　トラブルシューティング（資料の出力内容）

5.1　この章の構成

5.2　アプリケーションサーバのログの内容

5.2.1　日立トレース共通ライブラリ形式のログの出力形式と出力項目

5.2.2　日立トレース共通ライブラリ形式のログを参照する場合の注意

5.2.3　インプロセスHTTPサーバのアクセスログの出力形式と出力項目

5.2.4　イベントログの出力形式と出力項目（Windowsの場合）

5.2.5　syslogの出力形式と出力項目（UNIXの場合）

5.2.6　構築済み実行環境の切り替えで出力するログの出力形式と出力項目（UNIXの場合）

5.3　EJBクライアントアプリケーションのログの内容

5.4　性能解析トレースの内容

5.5　JavaVMのスレッドダンプの内容

5.6　JavaVMのガーベージコレクションログの内容

5.7　日立固有のJavaVMログの内容（日立JavaVMログファイル）

5.7.1　日立JavaVMログファイルを出力するオプション

5.7.2　拡張verbosegc情報の取得

5.8　JavaVMが出力するメッセージログの内容（標準出力およびエラーリポートファイル）

5.8.1　シグナルが発生した場合

5.8.2　Cヒープが不足した場合

5.8.3　Internal Errorが発生した場合

5.8.4　スレッド作成に失敗した場合

5.9　OSの状態情報およびOSのログの内容

5.10　JavaVMスタックトレース情報の内容

5.10.1　-XX:+HitachiLocalsInThrowableオプションが指定されている場合

5.10.2　-XX:+HitachiLocalsInStackTraceオプションが指定されている場合

5.11　明示管理ヒープ機能のイベントログの内容

5.11.1　明示管理ヒープ機能のイベントログの出力契機

5.11.2　明示管理ヒープ機能のイベントログの確認方法

5.11.3　出力レベルがnormalの場合に出力される内容

5.11.4　出力レベルがverboseの場合に出力される内容

5.11.5　出力レベルがdebugの場合に出力される内容

6.　性能解析トレースを使用したシステムの性能解析

6.1　この章の構成

6.2　性能解析トレースの概要

6.2.1　性能解析トレースのトレース情報収集の概要

6.2.2　性能解析トレースの仕組み

6.2.3　性能解析トレースの構成

6.2.4　トレース情報の取得によるトラブルシュート

6.3　性能解析トレースファイル

6.3.1　性能解析トレースファイルの収集方法

6.3.2　性能解析トレースファイルの出力先と出力情報

6.4　性能解析トレースのルートアプリケーション情報取得のための実装

6.5　実行環境での設定

6.6　性能解析トレースファイルを使用した処理性能の解析作業

6.6.1　処理性能の解析作業の概要

6.6.2　Webサーバのレスポンスタイムの解析

6.6.3　アプリケーションサーバ内でのリクエストの処理状況の調査

6.6.4　セッションのライフサイクルの調査

6.6.5　タイムアウトが発生したトランザクションの特定

6.6.6　タイムアウトが発生したリクエストの特定

6.6.7　ルートアプリケーション情報を利用したログ調査

6.6.8　トラブルが発生したコネクションの特定

6.6.9　性能解析トレースファイルとスレッドダンプを対応づけた問題個所の調査

7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル

7.1　この章の構成

7.2　性能解析トレースのトレース取得ポイントとPRFトレース取得レベルの概要

7.3　CTMのトレース取得ポイント

7.3.1　トレース取得ポイントとPRFトレース取得レベル

7.3.2　取得できるトレース情報

7.4　リダイレクタのトレース取得ポイント

7.4.1　トレース取得ポイントとPRFトレース取得レベル

7.4.2　取得できるトレース情報

7.5　Webコンテナのトレース取得ポイント（リクエスト処理のトレース）

7.5.1　トレース取得ポイントとPRFトレース取得レベル

7.5.2　取得できるトレース情報

7.5.3　トレース取得ポイントとPRFトレース取得レベル（インプロセスHTTPサーバを使用した場合）

7.5.4　取得できるトレース情報

7.6　Webコンテナのトレース取得ポイント（セッショントレース）

7.6.1　トレース取得ポイントとPRFトレース取得レベル（セッショントレース）

7.6.2　取得できるトレース情報

7.7　Webコンテナのトレース取得ポイント（フィルタのトレース）

7.7.1　正常に処理が終了した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

7.7.2　例外が発生した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

7.8　Webコンテナのトレース取得ポイント（データベースセッションフェイルオーバ機能のトレース）

7.8.1　HTTPセッションを作成するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.2　HTTPセッションを更新するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.3　HTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.4　有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.9　Webコンテナのトレース取得ポイント（メモリセッションフェイルオーバ機能のトレース）

7.9.1　トレース取得ポイントとPRFトレース取得レベル

7.9.2　取得できるトレース情報

7.10　EJBコンテナのトレース取得ポイント

7.10.1　Session Bean，Entity Beanの場合

7.10.2　Message-driven Bean（EJB2.0）の場合

7.10.3　Message-driven Bean（EJB2.1以降）の場合

7.10.4　Timer Serviceの場合

7.10.5　メソッドキャンセルが発生した場合

7.11　JNDIのトレース取得ポイント

7.11.1　トレース取得ポイントとPRFトレース取得レベル

7.11.2　取得できるトレース情報

7.12　JTAのトレース取得ポイント

7.12.1　CMTの場合

7.12.2　BMTの場合

7.12.3　トランザクションタイムアウトの場合

7.12.4　スレッドの非同期並行処理を使用する場合

7.13　DB Connector，JCAコンテナのトレース取得ポイント

7.13.1　コネクション関連のトレース取得ポイントと取得できるトレース情報

7.13.2　ローカルトランザクションを使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.3　コネクションアソシエーションを使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.4　コネクション自動クローズ機能を使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.5　DB Connector for Cosminexus RMと連携する場合のトレース取得ポイントと取得できるトレース情報

7.13.6　ワーク管理を使用する場合のトレース取得ポイントと取得できるトレース情報

7.14　RMIのトレース取得ポイント

7.14.1　トレース取得ポイントとPRFトレース取得レベル

7.14.2　取得できるトレース情報

7.15　OTSのトレース取得ポイント

7.15.1　トレース取得ポイントとPRFトレース取得レベル

7.15.2　取得できるトレース情報

7.16　標準出力／標準エラー出力／ユーザログのトレース取得ポイント

7.16.1　標準出力／標準エラー出力のトレース取得ポイント

7.16.2　ユーザログのトレース取得ポイント

7.17　DIのトレース取得ポイント

7.17.1　トレース取得ポイントとPRFトレース取得レベル

7.17.2　取得できるトレース情報

7.18　バッチアプリケーション実行機能のトレース取得ポイント

7.18.1　トレース取得ポイントとPRFトレース取得レベル

7.18.2　取得できるトレース情報

7.19　JPAでのトレース取得ポイント

7.19.1　アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

7.19.2　コンテナ管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

7.20　Cosminexus JPAプロバイダのトレース取得ポイント

7.20.1　EntityManagerFactoryの取得／解放処理のトレース取得ポイントと取得できるトレース情報

7.20.2　EntityManagerの取得処理のトレース取得ポイントと取得できるトレース情報

7.20.3　EntityManagerの操作のトレース取得ポイントと取得できるトレース情報

7.20.4　EntityManagerの解放処理のトレース取得ポイントと取得できるトレース情報

7.20.5　Queryの操作のトレース取得ポイントと取得できるトレース情報

7.20.6　EntityTransactionの操作のトレース取得ポイントと取得できるトレース情報

7.20.7　ユーザへのコールバックメソッドのトレース取得ポイントと取得できるトレース情報

7.20.8　エンティティクラスのバイナリ変換のトレース取得ポイントと取得できるトレース情報

7.20.9　トランザクションマネージャとのトランザクション連携処理のトレース取得ポイントと取得できるトレース情報

7.20.10　DB Connectorのコネクション操作のトレース取得ポイントと取得できるトレース情報

7.21　TP1インバウンド連携機能のトレース取得ポイント

7.21.1　トレース取得ポイントとPRFトレース取得レベル

7.21.2　取得できるトレース情報

7.22　Cosminexus JMSプロバイダのトレース取得ポイント

7.22.1　JMS ConnectionFactoryインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.2　JMS Connectionインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.3　JMSセッションインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.4　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーのトレース取得ポイントと取得できるトレース情報

7.22.5　CJMSPリソースアダプタと接続するときのCJMSPブローカーのトレース取得ポイントと取得できるトレース情報

7.22.6　CJMSPリソースアダプタでのトランザクション管理のトレース取得ポイントと取得できるトレース情報

7.22.7　CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時のトレース取得ポイントと取得できるトレース情報

7.23　JavaMailのトレース取得ポイント

7.23.1　JavaMail送信時のトレース取得ポイントと取得できるトレース情報

7.23.2　JavaMail受信時のトレース取得ポイントと取得できるトレース情報

7.24　J2EEサーバの開始・終了時のトレース取得ポイント

7.24.1　トレース取得ポイントとPRFトレース取得レベル

7.24.2　取得できるトレース情報

8.　日立固有のJavaVMの機能

8.1　この章の構成

8.2　日立固有のJavaVMの機能の概要

8.3　クラス別統計機能

8.3.1　クラス別統計機能の概要

8.3.2　クラス別統計機能を前提とする機能

8.3.3　クラス別統計情報の出力

8.3.4　クラス別統計情報出力時の注意事項

8.4　インスタンス統計機能

8.4.1　インスタンス統計機能の概要

8.4.2　インスタンス統計機能で出力するクラス別統計情報

8.5　STATICメンバ統計機能

8.5.1　STATICメンバ統計機能の概要

8.5.2　STATICメンバ統計機能で出力するクラス別統計情報

8.6　参照関係情報出力機能

8.6.1　参照関係情報出力機能の概要

8.6.2　参照関係情報出力機能で出力するクラス別統計情報

8.7　統計前のガーベージコレクション選択機能

8.7.1　統計前のガーベージコレクション選択機能の概要

8.7.2　ガーベージコレクションの選択の指針

8.8　Tenured領域内不要オブジェクト統計機能

8.8.1　Tenured領域内不要オブジェクト統計機能の概要

8.8.2　Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報

8.8.3　Tenured領域内不要オブジェクト統計機能の実行に関する注意事項

8.9　Tenured増加要因の基点オブジェクトリスト出力機能

8.9.1　Tenured増加要因の基点オブジェクトリスト出力機能の概要

8.9.2　Tenured増加要因の基点オブジェクトリスト出力機能で出力するクラス別統計情報

8.10　クラス別統計情報解析機能

8.10.1　クラス別統計情報解析機能の概要

8.10.2　クラス別統計情報解析機能の出力例

8.10.3　クラス別統計情報解析機能の注意事項

8.11　Survivor領域の年齢分布情報出力機能

8.11.1　Survivor領域の年齢分布情報出力機能の概要

8.11.2　Survivor領域の年齢分布情報の出力形式と出力例

8.11.3　実行環境での設定

8.11.4　Survivor領域の年齢分布情報出力機能使用時の注意事項

8.12　ファイナライズ滞留解消機能

8.12.1　ファイナライズ滞留解消機能の概要

8.12.2　ファイナライズ滞留解消機能使用時の出力情報

8.12.3　実行環境での設定

8.12.4　ファイナライズ滞留解消機能使用時の注意事項

8.13　hndlwrap機能

8.13.1　hndlwrap機能の概要

8.13.2　hndlwrap機能使用時の注意事項

8.14　JITコンパイル時のCヒープ確保量の上限値設定機能

8.15　スレッド数の上限値設定機能

9.　旧バージョンとの互換用機能（ベーシックモード）

9.1　ベーシックモードの概要

9.2　使用できる機能の一覧

9.2.1　使用できるJava EEおよびJ2EEの機能

9.2.2　使用できるアプリケーションサーバの機能

9.3　ベーシックモードでのリソース接続

9.3.1　接続できるリソースとトランザクションの管理方法

9.3.2　データベース接続の前提条件

9.3.3　データソースによるデータベースへの接続で使用できる機能

9.3.4　リソースへの接続テスト

9.3.5　JTAによるトランザクション実装時の注意事項

9.4　ベーシックモードの利用方法

9.4.1　ベーシックモードの設定

9.4.2　データソースの設定

9.5　プロセスの依存関係とプロセスの再起動方法

9.5.1　ベーシックモードの場合のプロセスの依存関係

9.5.2　ベーシックモードの場合のプロセスの再起動方法

9.6　データソースからDB Connectorへの移行方法

10.　旧バージョンとの互換用機能（サーブレットエンジンモード）

10.1　サーブレットエンジンモードとは

10.2　使用できる機能の一覧

10.2.1　使用できるJava EEおよびJ2EEの機能

10.2.2　使用できるアプリケーションサーバの機能

10.3　サーブレットエンジンモードとJ2EEサーバモードの比較

10.3.1　システムの構築方法

10.3.2　Webアプリケーションのデプロイと設定

10.3.3　Webサーバの使用方法

10.3.4　データベースとの接続

10.3.5　Webアプリケーションに組み込むサーブレットフィルタ

10.3.6　Webアプリケーションのリロード

10.3.7　システムの起動および停止方法

10.3.8　使用するメモリ，スレッド数，ポート番号

10.4　サーブレットエンジンモードで使用できるWebコンテナの機能

10.4.1　Webアプリケーションの実行

10.4.2　Webアプリケーションの更新検知とリロード

10.4.3　JSPファイルのコンパイル結果の保持

10.4.4　アプリケーションのイベントリスナ

10.4.5　リクエストおよびレスポンスのフィルタリング

10.4.6　Webコンテナのセキュリティ管理

10.4.7　EJBコンテナとの連携

10.4.8　データベースとの接続

10.4.9　Webコンテナによるスレッドの作成

10.4.10　同時実行スレッド数の制御

10.4.11　ユーザスレッドで使用できるアプリケーションサーバの機能

10.4.12　ドメイン名指定でのトップページの表示

10.4.13　静的コンテンツのキャッシュ

10.4.14　簡易Webサーバ機能

10.5　サーブレットエンジンモードでのリソース接続

10.5.1　接続できるリソースとトランザクションの管理方法

10.5.2　データベース接続の前提条件

10.5.3　Webコンテナコネクションプール機能によるデータベース接続

10.6　サーブレットエンジンモードの利用方法

10.6.1　サーブレットエンジンモードでのシステム構築

10.6.2　Webコンテナサーバのセットアップ

10.6.3　Webコンテナサーバの動作設定のカスタマイズ

10.6.4　トラブルシューティングの資料取得の設定

10.6.5　統合ユーザ管理機能の設定

10.6.6　Webアプリケーションの設定

10.6.7　Webコンテナサーバの作業ディレクトリ

10.7　サーブレットエンジンモードでのシステム運用

10.7.1　Component Container管理者による運用に関する留意事項

10.7.2　システムの起動

10.7.3　システムの停止

10.7.4　システムの処理性能の解析

10.7.5　トラブルシューティング

10.7.6　資料の調査

10.7.7　トラブルへの対処と回復

10.7.8　トラブルシューティングに関連する留意事項

10.7.9　資料の取得方法

11.　Cosminexus DABroker Libraryを使用したデータベース接続

11.1　Cosminexus DABroker Libraryの機能概要

11.1.1　Cosminexus DABroker Libraryを使用してデータベースに接続する方法

11.1.2　接続できるデータベース

11.2　Cosminexus DABroker Libraryの初期設定

11.2.1　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（Windowsの場合）

11.2.2　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（UNIXの場合）

11.2.3　データベースの設定

11.3　データベースとアプリケーション間の文字コードの変換

11.4　受信バッファのプーリングの設定

11.4.1　受信バッファの管理

11.4.2　受信バッファプール数の指定

11.5　Cosminexus DABroker Libraryを使用する場合のトラブルシュート

11.5.1　snapshotログとして収集できる資料

11.5.2　資料取得のための設定

11.5.3　Cosminexus DABroker Libraryで取得できるトレース

11.6　Cosminexus DABroker Libraryを使用したデータベース接続の実装

11.6.1　Cosminexus DABroker Libraryで開発するアプリケーション

11.6.2　JDBC2.0の概要

11.6.3　JDBC2.0拡張機能の概要

11.6.4　データベース接続の設定

11.6.5　JDBC2.0拡張機能を使用したデータベース接続の設定

11.6.6　エラー時のJDBCドライバの処理

11.6.7　データ型の対応

11.7　DB Connectorを使用したデータベースとの接続

11.7.1　DB Connectorで接続できるデータベース

11.7.2　DB Connector（RARファイル）の種類

11.7.3　必要なモジュール

11.7.4　データベースにアクセスする場合の構成

11.7.5　DB Connectorのインポート

11.7.6　DB Connectorのプロパティ定義

11.7.7　データベースと接続するときの注意事項

11.8　DB Connector for Cosminexus RMを使用したデータベース上のキューへの接続

11.8.1　DB Connector for Cosminexus RMで接続できるデータベース

11.8.2　DB Connector for Cosminexus RM（RARファイル）の種類

11.8.3　キューに接続する場合に必要なモジュール

11.8.4　データベースにアクセスする場合の構成

11.8.5　DB Connector for Cosminexus RMのインポートおよびプロパティ定義

11.8.6　データベース上のキューと接続するときの注意事項

11.9　Cosminexus DABroker Libraryを使用する場合の注意事項

11.9.1　Cosminexus DABroker Libraryを使用する場合に使用できるJ2EEコンポーネントおよび機能についての注意事項

11.9.2　トランザクションリカバリを使用する場合の注意事項

11.9.3　CMPフィールドとデータベースのマッピングの注意事項

11.9.4　複数の構築済み実行環境を切り替える場合の注意事項

12.　旧バージョンのアプリケーションサーバからの移行

12.1　J2EEサーバモードの場合の移行

12.1.1　アプリケーションサーバの移行の概要

12.1.2　アプリケーションサーバの移行の手順

12.1.3　旧バージョンからの仕様変更の確認

12.1.4　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

12.1.5　移行前の確認

12.1.6　定義などのバックアップ

12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行

12.1.8　リソースアダプタの移行コマンドの実行

12.1.9　Management Serverの移行コマンドの実行

12.1.10　手動による定義などの修正

12.1.11　移行コマンドで作成されたバックアップの削除

12.1.12　J2EEサーバまたはバッチサーバの移行コマンドで自動的に追加／変更される定義

12.1.13　メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ

12.2　サーブレットエンジンモードの場合の移行

12.2.1　アプリケーションサーバの移行の概要

12.2.2　アプリケーションサーバの移行の手順

12.2.3　旧バージョンからの仕様変更の確認

12.2.4　移行前の確認

12.2.5　定義などのバックアップ

12.2.6　手動による定義などの修正

12.2.7　Webコンテナサーバの移行コマンドで自動的に追加される定義

13.　推奨機能への移行

13.1　Microsoft IISからHitachi Web Serverへの移行

13.2　インプロセストランザクションサービスへの移行

13.2.1　移行作業の流れ

13.2.2　運用の移行

13.2.3　トラブルシュート情報の取得方法の移行

13.2.4　プログラムソースコードの移行

付録

付録A　snapshotログの収集対象一覧

付録A.1　snapshotログの収集対象一覧の概要

付録A.2　Cosminexus Component Container

付録A.3　Cosminexus Component Transaction Monitor

付録A.4　Cosminexus DABroker Library

付録A.5　Cosminexus Developer's Kit for Java

付録A.6　Cosminexus Performance Tracer

付録A.7　Cosminexus Web Services - Security

付録A.8　Hitachi Web Server

付録A.9　Microsoft Internet Information Service

付録A.10　uCosminexus Service Adapter for FTP

付録A.11　uCosminexus Service Adapter for Flat Files

付録A.12　uCosminexus Service Adapter for Message Queue

付録A.13　uCosminexus Service Adapter for Object Access

付録A.14　uCosminexus Service Adapter for TP1

付録A.15　監査ログ

付録A.16　そのほかの情報

付録B　データベースと接続中にトラブルが発生したコネクションの特定

付録B.1　Cosminexus Component Container

付録B.2　Cosminexus DABroker Library

付録B.3　HiRDBクライアント

付録B.4　HiRDBサーバ

付録B.5　Oracleクライアント

付録B.6　Oracleサーバ

付録C　機能ごとに出力されるログ情報

付録C.1　J2EEアプリケーション実行時間監視で出力されるログ情報

付録C.2　Cosminexus JPAプロバイダの稼働ログ

付録D　障害発生時のCMR用の表の回復

付録E　Cosminexus DABroker Libraryでのトラブルシューティング

付録E.1　Cosminexus DABroker Libraryで取得できるログの種類と出力先

付録E.2　Cosminexus DABroker Libraryのログ取得の設定

付録E.3　Cosminexus DABroker Libraryのトレースファイル運用時の留意事項

付録E.4　データベースと接続中にトラブルが発生した場合

付録F　Cosminexus DABroker Libraryのスプール情報の内容

付録F.1　メッセージログ

付録F.2　拡張データベースアクセストレース

付録F.3　エラートレース

付録F.4　Exceptionトレースログ

付録F.5　イベントトレース

付録F.6　XAトレースの取得形式

付録F.7　JDBCドライバのトレース（JDBCインタフェースメソッドトレース）

付録F.8　JDBCドライバのトレース（Cosminexus DABroker Libraryとのイベントトレース）

付録G　Cosminexus DABroker Libraryのメモリ所要量

付録G.1　JDBCのメモリサイズの計算式に使用するデータのサイズ

付録H　各バージョンでの主な機能変更

付録H.1　08-53での主な機能変更

付録H.2　08-50での主な機能変更

付録H.3　08-00での主な機能変更

付録I　このマニュアルの参考情報

付録I.1　関連マニュアル

付録I.2　マニュアル体系の変更について

付録I.3　このマニュアルでの表記

付録I.4　英略語

付録I.5　KB（キロバイト）などの単位表記について

付録J　用語解説

索引

[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2008, 2011, Hitachi, Ltd.

前書き

■ 対象製品

●適用OS：Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64）※¹，Windows Server 2003 R2（x64）※¹，Windows Server 2008 x86，Windows Server 2008 x64※¹，Windows Server 2008 R2※¹

P-2443-7B84　 uCosminexus Application Server Standard-R　 08-70
P-2443-7D84　 uCosminexus Application Server Standard　 08-70
P-2443-7K84　 uCosminexus Application Server Enterprise　 08-70
P-2443-7M84　 uCosminexus Web Redirector　 08-70
P-2443-7S84　 uCosminexus Service Platform　 08-70※2

●適用OS：Windows Server 2003，Windows Server 2003 R2，Windows Vista，Windows XP，Windows 7（32bit），Windows 7（x64）※¹

P-2443-7E84　 uCosminexus Developer Standard　 08-70
P-2443-7F84　 uCosminexus Developer Professional　 08-70
P-2443-7T84　 uCosminexus Service Architect　 08-70※2

●適用OS：Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64）※¹，Windows Server 2003 R2（x64）※¹，Windows Server 2008 x86，Windows Server 2008 x64※¹，Windows Server 2008 R2※¹，Windows Vista，Windows XP，Windows 7（32bit），Windows 7（x64）※¹

P-2443-7H84　 uCosminexus Client　 08-70

●適用OS：Windows Server 2003（x64），Windows Server 2003 R2（x64），Windows Server 2008 x64，Windows Server 2008 R2

P-2943-7B84　 uCosminexus Application Server Standard-R　 08-70
P-2943-7D84　 uCosminexus Application Server Standard　 08-70
P-2943-7K84　 uCosminexus Application Server Enterprise　 08-70
P-2943-7S84　 uCosminexus Service Platform　 08-70※2

●適用OS：AIX 5L V5.3，AIX V6.1，AIX V7.1

P-1M43-7D81　 uCosminexus Application Server Standard　 08-70※2
P-1M43-7K81　 uCosminexus Application Server Enterprise　 08-70※2
P-1M43-7S81　 uCosminexus Service Platform　 08-70※2

●適用OS：HP-UX 11i V2（IPF），HP-UX 11i V3（IPF）

P-1J43-7D81　 uCosminexus Application Server Standard　 08-70
P-1J43-7K81　 uCosminexus Application Server Enterprise　 08-70
P-1J43-7S81　 uCosminexus Service Platform　 08-70※2

●適用OS：Red Hat Enterprise Linux AS 4（x86），Red Hat Enterprise Linux ES 4（x86），Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T），Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T），Red Hat Enterprise Linux 5 Advanced Platform（x86），Red Hat Enterprise Linux 5（x86），Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64），Red Hat Enterprise Linux 5（AMD/Intel 64），Red Hat Enterprise Linux Server 6（32-bit x86），Red Hat Enterprise Linux Server 6（64-bit x86_64）

P-9S43-7B81　 uCosminexus Application Server Standard-R　 08-70※2
P-9S43-7D81　 uCosminexus Application Server Standard　 08-70※2
P-9S43-7K81　 uCosminexus Application Server Enterprise　 08-70※2
P-9S43-7M81　 uCosminexus Web Redirector　 08-70※2
P-9S43-7S81　 uCosminexus Service Platform　 08-70※2

注※1　WOW64（Windows On Windows 64）環境だけで使用できます。
注※2　この製品については，サポート時期をご確認ください。
これらのプログラムプロダクトのほかにもこのマニュアルをご利用になれる場合があります。詳細は「リリースノート」でご確認ください。
本製品では日立トレース共通ライブラリをインストールします。

■ 輸出時の注意

本製品を輸出される場合には，外国為替および外国貿易法ならびに米国の輸出管理関連法規などの規制をご確認の上，必要な手続きをお取りください。
なお，ご不明な場合は，弊社担当営業にお問い合わせください。

■ 商標類

Active Directoryは，米国Microsoft Corporationの，米国およびその他の国における登録商標または商標です。
AIXは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
AIX 5Lは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
AMDは，Advanced Micro Devices,Inc.の商標です。
AX2000は，A10 Networks,Inc.の商品名称です。
BIG-IP，3-DNS，iControl Services Manager，FirePass　および F5 は F5 Networks Inc の商標，または登録商標です。
CORBAは，Object Management Groupが提唱する分散処理環境アーキテクチャの名称です。
gzipは，米国FSF（Free Software Foundation）が配布しているソフトウェアです。
HP-UXは，Hewlett-Packard Companyのオペレーティングシステムの名称です。
IIOPは，OMG仕様によるORB（Object Request Broker）間通信のネットワークプロトコルの名称です。
Internet Explorerは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Itaniumは，アメリカ合衆国およびその他の国におけるIntel Corporationの商標です。
J2EEは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Javaは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JDBCは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JDKは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JSPは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Linuxは，Linus Torvalds氏の日本およびその他の国における登録商標または商標です。
Microsoftは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Microsoft Internet Information Servicesは，米国Microsoft Corporationの商品名称です。
Microsoft Office Excelは，米国 Microsoft Corporation の商品名称です。
MyEclipseは，米国Genuitec社の商品名称です。
OMG，CORBA，IIOP，UML，Unified Modeling Language，MDA，Model　Driven　Architectureは，Object Management Group, Inc.の米国及びその他の国における登録商標または商標です。
ORACLEは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle 10gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle8iは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle9iは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle Database 10gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle Database 11gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標もしくは商標です。
SOAP（Simple Object Access Protocol）は，分散ネットワーク環境においてXMLベースの情報を交換するための通信プロトコルの名称です。
Solarisは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
すべてのSPARC商標は，米国SPARC International,Inc. のライセンスを受けて使用している同社の米国およびその他の国における商標または登録商標です。SPARC商標がついた製品は，米国Sun Microsystems,Inc. が開発したアーキテクチャに基づくものです。
SQL Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Sunは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Sun Microsystemsは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
UNIXは，The Open Groupの米国ならびに他の国における登録商標です。
VMwareおよびESXは，VMware,Inc.の米国および各国での登録商標または商標です。
VMwareおよびVMware vSphereは，VMware,Inc.の米国および各国での登録商標または商標です。
Windowsは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Vistaは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
X/Openは，The Open Groupの英国ならびに他の国における登録商標です。
Eclipseは，開発ツールプロバイダのオープンコミュニティであるEclipse Foundation,Inc.により構築された開発ツール統合のためのオープンプラットフォームです。
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).

■ マイクロソフト製品のスクリーンショットの使用について

Microsoft Corporationのガイドラインに従って画面写真を使用しています。

■ マイクロソフト製品の表記について

このマニュアルでは，マイクロソフト製品の名称を次のように表記しています。

製品名 | 表記
Microsoft(R) Active Directory(R) | Active Directory
Microsoft(R) Internet Information Services 6.0 | Microsoft IIS 6.0 | Microsoft IIS
Microsoft(R) Internet Information Services 7.0 | Microsoft IIS 7.0
Microsoft(R) Internet Information Services 7.5 | Microsoft IIS 7.5
Microsoft(R) Office Excel | Excel
Microsoft(R) SQL Server 2000 | SQL Server 2000 | SQL Server
Microsoft(R) SQL Server 2005 | SQL Server 2005
Microsoft(R) SQL Server 2008 | SQL Server 2008
Microsoft(R) Windows(R) 7 Enterprise（32bit） | Windows 7（32bit） | Windows 7 | Windows
Microsoft(R) Windows(R) 7 Professional（32bit）
Microsoft(R) Windows(R) 7 Ultimate（32bit）
Microsoft(R) Windows(R) 7 Enterprise（x64） | Windows 7（x64）
Microsoft(R) Windows(R) 7 Professional（x64）
Microsoft(R) Windows(R) 7 Ultimate（x64）
Microsoft(R) Windows Server(R) 2003，Enterprise Edition 日本語版 | Windows Server 2003 Enterprise Edition | Windows Server 2003
Microsoft(R) Windows Server(R) 2003，Standard Edition 日本語版 | Windows Server 2003 Standard Edition
Microsoft(R) Windows Server(R) 2003 R2，Enterprise Edition 日本語版 | Windows Server 2003 R2 Enterprise Edition | Windows Server 2003 R2
Microsoft(R) Windows Server(R) 2003 R2，Standard Edition 日本語版 | Windows Server 2003 R2 Standard Edition
Microsoft(R) Windows Server(R) 2003，Enterprise x64 Edition 日本語版 | Windows Server 2003 Enterprise x64 Edition | Windows Server 2003（x64）
Microsoft(R) Windows Server(R) 2003，Standard x64 Edition 日本語版 | Windows Server 2003 Standard x64 Edition
Microsoft(R) Windows Server(R) 2003 R2，Enterprise x64 Edition 日本語版 | Windows Server 2003 R2 Enterprise x64 Edition | Windows Server 2003 R2（x64）
Microsoft(R) Windows Server(R) 2003 R2，Standard x64 Edition 日本語版 | Windows Server 2003 R2 Standard x64 Edition
Microsoft(R) Windows Server(R) 2008 Enterprise 32-bit 日本語版 | Windows Server 2008 x86 | Windows Server 2008
Microsoft(R) Windows Server(R) 2008 Standard 32-bit 日本語版
Microsoft(R) Windows Server(R) 2008 Enterprise 日本語版 | Windows Server 2008 x64
Microsoft(R) Windows Server(R) 2008 Standard 日本語版
Microsoft(R) Windows Server(R) 2008 R2 Enterprise 日本語版 | Windows Server 2008 R2
Microsoft(R) Windows Server(R) 2008 R2 Standard 日本語版
Microsoft(R) Windows Vista(R) Business | Windows Vista Business | Windows Vista
Microsoft(R) Windows Vista(R) Enterprise | Windows Vista Enterprise
Microsoft(R) Windows Vista(R) Ultimate | Windows Vista Ultimate
Microsoft(R) Windows(R) XP Professional Operating System | Windows XP
Windows(R) Internet Explorer(R) | Internet Explorer

■ 発行

2011年 7月 3020-3-U10-60

■ 著作権

All Rights Reserved. Copyright (C) 2008, 2011, Hitachi, Ltd.

変更内容

変更内容（3020-3-U10-60）uCosminexus Application Server Enterprise 08-70，uCosminexus Application Server Standard 08-70，uCosminexus Application Server Standard-R 08-70，uCosminexus Client 08-70，uCosminexus Developer Professional 08-70，uCosminexus Developer Standard 08-70，uCosminexus Service Architect 08-70，uCosminexus Service Platform 08-70，uCosminexus Web Redirector 08-70

追加・変更内容
変更個所

アプリケーションサーバ 08-70での主な機能変更についての説明を追加した。また，アプリケーションサーバ 08-53での主な機能変更についての説明を付録H.1に移動した。
1.4，付録H.1

snapshotログ（一次送付資料および二次送付資料）収集時に，タイムアウトを設定できる機能を追加した。また，snapshotログ収集の流れについて説明を追加した。
2.3.3，3.3.3，3.3.4

Hitachi Web Serverに関連するsnapshotログ収集対象のうち，次のログの収集タイミングを一次資料から二次資料に変更した。

リクエストログ

アクセスログ

2.4.2，付録A.8

OutOfMemoryErrorスロー条件を変更した。
2.5.6

Management Serverを利用してWebサーバの動作確認をする場合に，動作確認用のログを通常のログと別に出力する場合の設定例を追加した。
3.3.9

cjgetsysinfoコマンドの実行によって実行されるOSのコマンドで，Linuxのオプションを変更した。
4.12.1，4.13.2

シグナルが発生した場合の次の出力内容を変更した。

異常終了位置とシグナル種別（JDKの場合）

システム名，CPU，実メモリ，およびVM情報（UNIXの場合）

5.8.1

データベースセッションフェイルオーバ機能で取得できるトレース情報に，完全性保障モードが無効な場合に取得できる情報を追加した。
7.8.1，7.8.2，7.8.3，7.8.4

Webコンテナサーバのファイルディスクリプタ数の見積もりの計算式を変更した。
10.6.1

サーブレットエンジンモードで統合ユーザ管理機能を使用する場合のJavaVMのプロパティ設定方法を追加した。
10.6.5

Cosminexus DABroker Libraryの機能の説明をまとめた。
11章，付録E.2，付録E.4，付録G

アプリケーションサーバ 08-70への移行情報を追加した。
12.1，12.1.1，12.1.2，12.1.3，12.1.5，12.1.10，12.1.12，12.2，12.2.1，12.2.2，12.2.3，12.2.7

Cosminexus Service Coordinatorに関するsnapshotログ収集対象に，次のログを追加した。

メールアダプタ運用コマンドメッセージログ

メールアダプタの保守ログ

付録A.1，付録A.2

uCosminexus Service Adapter for FTPに関連するsnapshotログ収集対象に，FTPアダプタの運用コマンドのメッセージログを追加した。
付録A.1，付録A.10

Cosminexus Component Containerに関するsnapshotログ収集対象に，保護区リストファイルを追加した。
付録A.2

次の製品の適用OSにAIX，HP-UX（IPF）を追加した。

uCosminexus Application Server Enterprise

uCosminexus Application Server Standard

uCosminexus Service Platform

－

次の製品の適用OSにRed Hat Enterprise Linux Server 6（32-bit x86），Red Hat Enterprise Linux Server 6（64-bit x86_64）を追加した。

uCosminexus Application Server Enterprise

uCosminexus Application Server Standard

uCosminexus Application Server Standard-R

uCosminexus Service Platform

uCosminexus Web Redirector

－

単なる誤字・脱字などはお断りなく訂正しました。

変更内容（3020-3-U10-40）uCosminexus Application Server Enterprise 08-53，uCosminexus Application Server Standard 08-53，uCosminexus Application Server Standard-R 08-53，uCosminexus Client 08-53，uCosminexus Developer Professional 08-53，uCosminexus Developer Standard 08-53，uCosminexus Service Architect 08-53，uCosminexus Service Platform 08-53，uCosminexus Web Redirector 08-53

追加・変更内容

機能の分類とマニュアルの対応の説明に，次の機能を追加した。

JavaMailの利用

日立固有のJavaVMの機能として，次の機能を追加した。

JITコンパイル時のCヒープ確保量の上限値設定機能

スレッド数の上限値設定機能

アプリケーションサーバ 08-53での主な機能変更についての説明を追加した。また，アプリケーションサーバ 08-50での主な機能変更についての説明を付録G.1に移動した。

OutOfMemoryハンドリング機能（-XX:+HitachiOutOfMemoryHandling）を追加した。

拡張verbosegc情報を出力するために指定するオプションを追加した。

JavaMailのトレース取得ポイントを追加した。

PRFトレースを取得できる機能レイヤの種類と，対応するイベントIDを追加した。

TP1インバウンド連携機能のトレース取得ポイントを追加した。また，トレース取得ポイントの詳細を変更した。

アプリケーションサーバ 08-53への移行情報を追加した。

次の機能のディレクトリをsnapshotログの収集対象に追加した。

EJBクライアント

バッチアプリケーション

仮想サーバマネージャ

Smart Composer

Cosminexus Service Coordinator

Cosminexus Manager

uCosminexus Service Adapter for FTP

08-50モードの仮想サーバマネージャのsnapshotログ収集対象ディレクトリの説明を変更した。

HiRDB Version 9に対応した。

SQL Server 2008に対応した。これに伴い，使用できるJDBCドライバにSQL Server JDBC Driver 2.0，およびSQL Server JDBC Driver 3.0を追加した。

Microsoft IIS 7.0およびMicrosoft IIS 7.5に対応した。

対象製品としてuCosminexus Application Server Standard-Rを追加した。

次の製品の適用OSからAIX，HP-UX，Linux（IPF）を削除した。

uCosminexus Application Server Standard

uCosminexus Application Server Enterprise

uCosminexus Service Platform

変更内容（3020-3-U10-20）uCosminexus Application Server Enterprise 08-50，uCosminexus Application Server Standard 08-50，uCosminexus Client 08-50，uCosminexus Developer Professional 08-50，uCosminexus Developer Standard 08-50，uCosminexus Service Architect 08-50，uCosminexus Service Platform 08-50，uCosminexus Web Redirector 08-50

追加・変更内容

機能の分類とマニュアルの対応の説明に，次の機能を追加した。

OpenTP1からのアプリケーションサーバの呼び出し（TP1インバウンド連携機能）

Cosminexus JMSプロバイダ

スレッドの非同期並行処理

ホスト単位管理モデルを対象にした系切り替えシステム（クラスタソフトウェアとの連携）

JP1 Version 9に対応した。また，JP1 Version 7は非サポートとなったため削除した。

日立固有のJavaVMの機能にTenured増加要因の基点オブジェクトリスト出力機能を追加した。

日立固有のJavaVMの機能にTenured領域内不要オブジェクト統計機能を追加した。

日立固有のJavaVMの機能にクラス別統計情報解析機能を追加した。

日立固有のJavaVMの機能にhndlwrap機能を追加した。

アプリケーションサーバ 08-50での主な機能変更についての説明を追加した。また，アプリケーションサーバ 08-00での主な機能変更についての説明を付録に移動した。

OutOfMemoryError発生時に運用管理エージェントが強制終了した場合の動作について説明を追加した。

ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合について説明を追加した。

次の製品の適用OSにWindows Server 2008 R2を追加した。

uCosminexus Application Server Standard

uCosminexus Application Server Enterprise

uCosminexus Web Redirector

uCosminexus Service Platform

uCosminexus Client

次の製品の適用OSにWindows 7を追加した。

uCosminexus Developer Standard

uCosminexus Developer Professional

uCosminexus Service Architect

uCosminexus Client

Cosminexus JMSプロバイダについて記述を追加した。

JavaVMのスレッドダンプ情報にJNIグローバル参照情報を追加した。

JDK 6に対応した。また，JDK 6とJDK 5.0との差異を追加した。

明示管理ヒープのイベントログの出力レベルと出力契機に，次の契機を追加した。

Explicitメモリブロックの自動解放処理

Explicitメモリブロックの自動解放処理時のJavaヒープあふれ

明示管理ヒープ自動配置設定ファイルオープンエラー

明示管理ヒープ自動配置設定ファイルパースエラー

明示管理ヒープ自動配置エラー

明示管理ヒープ自動配置

Explicitメモリブロックの自動解放処理の詳細（詳細情報出力）

OpenTP1からアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）を追加した。

スレッドの非同期並行処理の機能を追加した。

アプリケーションサーバ 08-50で追加した機能のベーシックモードでの対応を追加した。

Timer and Work Manager for Application Servers

URIのデコード機能

Webアプリケーションのバージョン設定機能

ジェネリクスの使用

OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

Cosminexus JMSプロバイダの機能

スレッド非同期並行処理

J2EEアプリケーションからのネットワークリソースへのアクセス

ホスト単位管理モデルを対象にした系切り替えシステム

Tenured領域内不要オブジェクト統計機能

Tenured増加要因の基点オブジェクトリスト出力機能

クラス別統計情報解析機能

hndlwrap機能

アプリケーションサーバ 08-50で追加した機能のサーブレットエンジンモードでの対応を追加した。

Timer and Work Manager for Application Servers

URIのデコード機能

Webアプリケーションのバージョン設定機能

OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

Cosminexus JMSプロバイダの機能

スレッド非同期並行処理

J2EEアプリケーションからのネットワークリソースへのアクセス

Tenured領域内不要オブジェクト統計機能

Tenured増加要因の基点オブジェクトリスト出力機能

クラス別統計情報解析機能

hndlwrap機能

アプリケーションサーバ 08-50への移行情報を追加した。

次の機能をsnapshotログの収集対象として追加した。

仮想サーバマネージャ

サーバ通信エージェント

Cosminexus JMSプロバイダ

次の製品の適用OSからSolarisを削除した。

uCosminexus Application Server Standard

uCosminexus Application Server Enterprise

はじめに

このマニュアルは，Cosminexus（コズミネクサス）のアプリケーションサーバの機能について説明したものです。このマニュアルでは，システムの保守のための機能，旧バージョンから移行するための機能，および旧バージョンの製品との互換のための機能について説明します。

アプリケーションサーバでは，次に示すプログラムプロダクトを使用してシステムを構築，運用します。

uCosminexus Application Server Enterprise

uCosminexus Application Server Standard

uCosminexus Application Server Standard-R

uCosminexus Client

uCosminexus Developer Professional

uCosminexus Developer Standard

uCosminexus Service Architect

uCosminexus Service Platform

uCosminexus Web Redirector

このマニュアルでは，これらのプログラムプロダクトの構成ソフトウェアのうち，次に示す構成ソフトウェアについて説明しています。

Cosminexus Component Container

Cosminexus Component Container - Client

Cosminexus Component Container - Redirector

Cosminexus Component Transaction Monitor

Cosminexus Developer's Kit for Java

Cosminexus Performance Tracer

Cosminexus TPBroker

なお，オペレーティングシステム（OS）の種類によって，機能が異なる場合があります。

対象読者

このマニュアルは，アプリケーションサーバのシステムを設計，構築または運用する方，およびアプリケーションサーバで動作するアプリケーションを開発する方を対象としています。

次の内容を理解されていることを前提としています。

システムを設計，構築または運用する方

Windowsまたはご使用のUNIXのシステム構築および運用に関する知識

Java EEに関する知識

SQLおよびリレーショナルデータベースに関する基本的な知識

CORBAに関する基本的な知識

アプリケーションを開発する方

Windowsの基本操作に関する知識

Javaによるプログラム開発に関する基本的な知識

使用するIDE（Eclipse）に関する基本的な知識

ご利用の製品ごとの用語の読み替えについて

ご利用の製品によっては，マニュアルで使用している用語を，ご利用の製品名に読み替える必要があります。

次の表に従って，マニュアルで使用している用語をご利用の製品名に読み替えてください。

ご利用の製品名 | マニュアルで使用している用語
uCosminexus Application Server Standard-R | Application Server
uCosminexus Developer Professional※1 | Application ServerおよびApplication Server Enterprise
uCosminexus Developer Standard※1，※2 | Application Server
uCosminexus Service Architect※1 | Application ServerおよびApplication Server Enterprise
uCosminexus Service Platform

注※1　テスト環境で使用している場合にだけ読み替えが必要です。

注※2　uCosminexus Developer StandardとApplication Serverには一部機能差があります。機能差については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション開発ガイド」の「付録D　Developer Standard使用時の注意事項」を参照してください。

図中で使用している記号

このマニュアルの図中で使用している記号について次に示します。

文法で使用している記号

このマニュアルで使用している記号について次に示します。

記号
意　味

［　］
この記号で囲まれている項目は省略してもよいことを示します。複数の項目が横に並べて記述されている場合には，すべてを省略するか，記号｛ ｝と同じくどれか一つを選択します。
（例１）　［A］
　「何も指定しない」か「Aを指定する」ことを示します。
（例２）　［B｜C］
　「何も指定しない」か「BまたはCを指定する」ことを示します。

<　>
この記号で囲まれている項目は，該当する要素やファイルなどを指定したり，該当する要素が表示されたりすることを示します。
（例1）　<プロパティ>
　プロパティを記述します。またはプロパティが表示されます。
（例2）　<ファイル名>
　ファイル名を指定します。

CUIおよびGUIの説明で使用している記号

このマニュアルのCUIおよびGUIの説明で使用している記号について次に示します。

記号
意味

　｜
横に並べられた複数の項目に対する項目間の区切りを示し，「または」を意味します。
（例）　A｜B
　AまたはBを指定することを示します。

{ 　 }
この記号で囲まれている複数の項目のうちから一つを選択することを示します。項目が横に並べられ，記号｜で区切られている場合は，そのうちの一つを選択します。
（例）　｛A｜B｜C｝
　A，BまたはCのどれかを指定することを示します。

［　　］
この記号で囲まれている項目は画面名または画面に表示されている項目であることを表します。

［　　］－［　　］
－の前に示したメニューから，－の後ろのメニューを選択することを表します。

＜　　＞
＜＞内の名称がユーザの環境によって異なることを表します。

「　　」
入力値，可変値，またはメッセージなどを表します。

1.　アプリケーションサーバの機能

この章では，アプリケーションサーバの機能の分類と目的，および機能とマニュアルの対応について説明します。また，このバージョンで変更した機能についても説明しています。

＜この章の構成＞

1.1　機能の分類

1.2　システムの目的と機能の対応

1.3　このマニュアルに記載している機能の説明

1.4　アプリケーションサーバ 08-70での主な機能変更

1.1　機能の分類

アプリケーションサーバは，Java EE 5に準拠したJ2EEサーバを中心としたアプリケーションの実行環境を構築したり，実行環境上で動作するアプリケーションを開発したりするための製品です。Java EEの標準仕様に準拠した機能や，アプリケーションサーバで独自に拡張された機能など，多様な機能を使用できます。目的や用途に応じた機能を選択して使用することで，信頼性の高いシステムや，処理性能に優れたシステムを構築・運用できます。

アプリケーションサーバの機能は，大きく分けて，次の二つに分類できます。

アプリケーションの実行基盤としての機能

アプリケーションの実行基盤を運用・保守するための機能

二つの分類は，機能の位置づけや用途によって，さらに詳細に分類できます。アプリケーションサーバのマニュアルは，機能の分類に合わせて提供しています。

アプリケーションサーバの機能の分類と対応するマニュアル（機能解説）の体系について，次の図に示します。

図1-1　アプリケーションサーバの機能の分類と対応するマニュアル（機能解説）の体系

ここでは，機能の分類について，マニュアルとの対応と合わせて説明します。

＜この節の構成＞

1.1.1　アプリケーションの実行基盤としての機能

1.1.2　アプリケーションの実行基盤を運用・保守するための機能

1.1.3　機能とマニュアルの対応

1.1.1　アプリケーションの実行基盤としての機能

アプリケーションとして実装されたオンライン業務やバッチ業務を実行する基盤となる機能です。システムの用途や求められる要件に応じて，使用する機能を選択します。

アプリケーションの実行基盤としての機能を使用するかどうかは，システム構築やアプリケーション開発よりも前に検討する必要があります。

アプリケーションの実行基盤としての機能について，分類ごとに説明します。

＜この項の構成＞

(1)　Java EEに準拠したアプリケーションを動作させるための基本的な機能（基本・開発機能）

(2)　信頼性や性能などを向上させるために拡張されたアプリケーションサーバ独自の機能（拡張機能）

(1)　Java EEに準拠したアプリケーションを動作させるための基本的な機能（基本・開発機能）

Java EEに準拠したアプリケーション（J2EEアプリケーション）を動作させるための基本的な機能が該当します。主にJ2EEサーバの機能が該当します。

アプリケーションサーバでは，Java EE 5に準拠したJ2EEサーバを提供しています。J2EEサーバでは，標準仕様に準拠した機能のほか，アプリケーションサーバ独自の機能も提供しています。

基本・開発機能は，機能を使用するJ2EEアプリケーションの形態に応じて，さらに三つに分類できます。アプリケーションサーバの機能解説のマニュアルは，この分類に応じて分冊されています。

それぞれの分類の概要を説明します。

Webアプリケーションを実行するための機能（Webコンテナ）
Webアプリケーションの実行基盤であるWebコンテナの機能，およびWebコンテナとWebサーバが連携して実現する機能が該当します。

Enterprise Beanを実行するための機能（EJBコンテナ）
Enterprise Beanの実行基盤であるEJBコンテナの機能が該当します。また，Enterprise Beanを呼び出すEJBクライアントの機能も該当します。

WebアプリケーションとEnterprise Beanの両方で使用する機能（コンテナ共通機能）
Webコンテナ上で動作するWebアプリケーションおよびEJBコンテナ上で動作するEnterprise Beanの両方で使用できる機能が該当します。

(2)　信頼性や性能などを向上させるために拡張されたアプリケーションサーバ独自の機能（拡張機能）

アプリケーションサーバで独自に拡張された機能が該当します。バッチサーバ，CTM，データベースなど，J2EEサーバ以外のプロセスを使用して実現する機能も含まれます。

アプリケーションサーバでは，システムの信頼性を高め，安定稼働を実現するための多様な機能が拡張されています。また，J2EEアプリケーション以外のアプリケーション（バッチアプリケーション）をJavaの環境で動作させる機能も拡張しています。

1.1.2　アプリケーションの実行基盤を運用・保守するための機能

アプリケーションの実行基盤を効率良く運用したり，保守したりするための機能です。システムの運用開始後に，必要に応じて使用します。ただし，機能によっては，あらかじめ設定やアプリケーションの実装が必要なものがあります。

アプリケーションの実行基盤を運用・保守するための機能について，分類ごとに説明します。

＜この項の構成＞

(1)　システムの起動・停止など日常的な運用をするための機能（運用機能）

(2)　システムの利用状況を監視するための機能（監視機能）

(3)　ほかの製品と連携して運用するための機能（連携機能）

(4)　トラブル発生時などに対処するための機能（保守機能）

(5)　旧バージョンの製品から移行するための機能（移行機能）

(6)　旧バージョンの製品との互換のための機能（互換機能）

(1)　システムの起動・停止など日常的な運用をするための機能（運用機能）

システムの起動や停止，アプリケーションの開始や停止，入れ替えなどの，日常運用で使用する機能が該当します。

(2)　システムの利用状況を監視するための機能（監視機能）

システムの稼働状態や，リソースの枯渇状態などを監視するための機能が該当します。また，システムの操作履歴など，監査で使用する情報を出力する機能も該当します。

(3)　ほかの製品と連携して運用するための機能（連携機能）

JP1やクラスタソフトウェアなど，ほかの製品と連携して実現する機能が該当します。

(4)　トラブル発生時などに対処するための機能（保守機能）

トラブルシューティングのための機能が該当します。トラブルシューティング時に参照する情報を出力するための機能も含みます。

(5)　旧バージョンの製品から移行するための機能（移行機能）

旧バージョンのアプリケーションサーバから新しいバージョンのアプリケーションサーバに移行するための機能が該当します。

(6)　旧バージョンの製品との互換のための機能（互換機能）

旧バージョンのアプリケーションサーバとの互換用の機能が該当します。なお，互換機能については，「1.1.1　アプリケーションの実行基盤としての機能」に該当する機能などの推奨機能に移行することをお勧めします。

1.1.3　機能とマニュアルの対応

アプリケーションサーバの機能解説のマニュアルは，機能の分類に合わせて分冊されています。

機能の分類と，それぞれの機能について説明しているマニュアルとの対応を次の表に示します。

表1-1　機能の分類とマニュアルの対応

分類 | 機能 | マニュアル※1
基本・開発機能 | Webコンテナ | 基本・開発編(Webコンテナ)
Webサーバ連携
インプロセスHTTPサーバ
サーブレットおよびJSPの実装
EJBコンテナ | 基本・開発編(EJBコンテナ)
EJBクライアント
Enterprise Bean実装時の注意事項
ネーミング管理 | 基本・開発編(コンテナ共通機能)
リソース接続とトランザクション管理
OpenTP1からのアプリケーションサーバの呼び出し（TP1インバウンド連携機能）
アプリケーションサーバでのJPAの利用
Cosminexus JPAプロバイダ
Cosminexus JMSプロバイダ
JavaMailの利用
セキュリティ管理
アプリケーションの属性管理
アノテーションの使用
J2EEアプリケーションの形式とデプロイ
コンテナ拡張ライブラリ
拡張機能 | バッチサーバによるアプリケーションの実行 | 拡張編
CTMによるリクエストのスケジューリングと負荷分散
バッチアプリケーションのスケジューリング
J2EEサーバ間のセッション情報の引き継ぎ（セッションフェイルオーバ機能）
明示管理ヒープ機能を使用したフルガーベージコレクションの抑止
クライアント性能の測定と分析
統合ユーザ管理
複数の構築済み実行環境の切り替え
アプリケーションのユーザログ出力
スレッドの非同期並行処理
運用機能 | システムの起動と停止 | 運用／監視／連携編
J2EEアプリケーションの運用
監視機能 | 稼働情報の監視（稼働情報収集機能）
リソースの枯渇監視
監査ログ出力機能
データベース監査証跡連携機能
運用管理コマンドによる稼働情報の出力
Managementイベントの通知とManagementアクションによる処理の自動実行
CTMの稼働統計情報の収集
コンソールログの出力
連携機能 | JP1と連携したシステムの運用
システムの構成定義および管理（JP1/IM-CMとの連携）
システムの集中監視（JP1/IMとの連携）
ジョブによるシステムの自動運転（JP1/AJSとの連携）
シナリオによるシステムの自動運転（JP1/AJS2 - SOとの連携）
監査ログの収集および一元管理（JP1/NETM/Auditとの連携）
クラスタソフトウェアとの連携
1:1系切り替えシステム（クラスタソフトウェアとの連携）
相互系切り替えシステム（クラスタソフトウェアとの連携）
N:1リカバリシステム（クラスタソフトウェアとの連携）
ホスト単位管理モデルを対象にした系切り替えシステム（クラスタソフトウェアとの連携）
保守機能 | トラブルシューティング関連機能 | 保守／移行／互換編※2
性能解析トレースを使用したシステムの性能解析
日立固有のJavaVMの機能
移行機能 | 旧バージョンのアプリケーションサーバからの移行
推奨機能への移行
互換機能 | 旧バージョンとの互換用機能（ベーシックモード）
旧バージョンとの互換用機能（サーブレットエンジンモード）
Cosminexus DABroker Libraryを使用したデータベース接続

注※1　マニュアル名称の「Cosminexus アプリケーションサーバ 機能解説」を省略しています。

注※2　このマニュアルです。

1.2　システムの目的と機能の対応

アプリケーションサーバでは，構築・運用するシステムの目的に合わせて，適用する機能を選択する必要があります。

この節では，このマニュアルで説明している次の機能をどのような場合に使用するとよいかを説明します。なお，これらの機能は，アプリケーションサーバが独自に拡張した機能です。

システムの保守のための機能

日立固有のJavaVMの機能

旧バージョンの製品から移行するための機能

旧バージョンの製品との互換のための機能

機能ごとに，次の項目への対応を示しています。

性能
性能を重視したシステムの場合に使用するとよい機能です。
システムのパフォーマンスチューニングで使用する機能などが該当します。

運用・保守
効率の良い運用・保守をしたい場合に使用するとよい機能です。

そのほか
そのほかの個別の目的に対応するための機能です。

＜この節の構成＞

1.2.1　システムの保守のための機能

1.2.2　日立固有のJavaVMの機能

1.2.3　旧バージョンの製品から移行するための機能

1.2.4　旧バージョンの製品との互換のための機能

1.2.1　システムの保守のための機能

システムの保守のための機能を次の表に示します。システムの目的に合った機能を選択してください。機能の詳細については，参照先を確認してください。

表1-2　システムの保守のための機能

機能
システムの目的
参照先

性能
運用・
保守
そのほか

トラブルシューティング
－
○
－
2章，3章，4章，5章

性能解析トレースを使用したシステムの性能解析
○
○
－
6章，7章

（凡例）　○：対応する　　－：対応しない

1.2.2　日立固有のJavaVMの機能

日立固有のJavaVMの機能を次の表に示します。システムの目的に合った機能を選択してください。機能の詳細については，参照先を確認してください。

表1-3　日立固有のJavaVMの機能

機能
システムの目的
参照先

性能
運用・
保守
そのほか

クラス別統計機能
○
○
－
8.3

インスタンス統計機能
○
○
－
8.4

STATICメンバ統計機能
○
○
－
8.5

参照関係情報出力機能
○
○
－
8.6

統計前のガーベージコレクション選択機能
○
○
－
8.7

Tenured領域内不要オブジェクト統計機能
○
○
－
8.8

Tenured増加要因の基点オブジェクトリスト出力機能
○
○
－
8.9

クラス別統計情報解析機能
○
○
－
8.10

Survivor領域の年齢分布情報出力機能
○
○
－
8.11

ファイナライズ滞留解消機能
○
－
－
8.12

hndlwrap機能
－
○
－
8.13

JITコンパイル時のCヒープ確保量の上限値設定機能
－
○
－
8.14

スレッド数の上限値設定機能
－
○
－
8.15

（凡例）　○：対応する　　－：対応しない

1.2.3　旧バージョンの製品から移行するための機能

旧バージョンの製品から移行するための機能を次の表に示します。システムの目的に合った機能を選択してください。機能の詳細については，参照先を確認してください。

表1-4　旧バージョンの製品から移行するための機能

機能
システムの目的
参照先

性能
運用・
保守
そのほか

旧バージョンのアプリケーションサーバからの移行
－
－
○
12章

Microsoft IISからHitachi Web Serverへの移行
－
－
○
13.1

インプロセストランザクションサービスへの移行
－
－
○
13.2

（凡例）　○：対応する　　－：対応しない

1.2.4　旧バージョンの製品との互換のための機能

旧バージョンの製品との互換のための機能を次の表に示します。システムの目的に合った機能を選択してください。機能の詳細については，参照先を確認してください。

表1-5　旧バージョンの製品との互換のための機能

機能
システムの目的
参照先

性能
運用・
保守
そのほか

旧バージョンとの互換用機能（ベーシックモード）
－
－
○
9章

旧バージョンとの互換用機能（サーブレットエンジンモード）
－
－
○
10章

Cosminexus DABroker Libraryを使用したデータベース接続
－
－
○
11章

（凡例）　○：対応する　　－：対応しない

1.3　このマニュアルに記載している機能の説明

ここでは，このマニュアルで機能を説明するときの分類の意味と，分類を示す表の例について説明します。

＜この節の構成＞

1.3.1　分類の意味

1.3.2　分類を示す表の例

1.3.1　分類の意味

このマニュアルでは，各機能について，次の五つに分類して説明しています。マニュアルを参照する目的によって，必要な個所を選択して読むことができます。

解説
機能の解説です。機能の目的，特長，仕組みなどについて説明しています。機能の概要について知りたい場合にお読みください。

実装
コーディングの方法やDDの記載方法などについて説明しています。アプリケーションを開発する場合にお読みください。

設定
システム構築時に必要となるプロパティなどの設定方法について説明しています。システムを構築する場合にお読みください。

運用
運用方法の説明です。運用時の手順や使用するコマンドの実行例などについて説明しています。システムを運用する場合にお読みください。

注意事項
機能を使用するときの全般的な注意事項について説明しています。注意事項の説明は必ずお読みください。

1.3.2　分類を示す表の例

機能説明の分類については，表で説明しています。表のタイトルは，「この章の構成」または「この節の構成」となっています。

次に，機能説明の分類を示す表の例を示します。

機能説明の分類を示す表の例

表X-1　この章の構成（○○機能）

分類 | タイトル | 参照先
解説 | ○○機能とは | X.1
実装 | アプリケーションの実装 | X.2
DDおよびcosminexus.xml※での定義 | X.3
設定 | 実行環境での設定 | X.4
運用 | ○○機能を使用した運用 | X.5
注意事項 | ○○機能使用時の注意事項 | X.6

注※

cosminexus.xmlについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「10.　アプリケーションの属性管理」を参照してください。

ポイント

cosminexus.xmlを含まないアプリケーションのプロパティ設定

cosminexus.xmlを含まないアプリケーションでは，実行環境へのインポート後にプロパティを設定，または変更します。設定済みのプロパティも実行環境で変更できます。

実行環境でのアプリケーションの設定は，サーバ管理コマンドおよび属性ファイルで実施します。サーバ管理コマンドおよび属性ファイルでのアプリケーションの設定については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「3.3.2　J2EEアプリケーションのプロパティの設定手順」を参照してください。

属性ファイルで指定するタグは，DDまたはcosminexus.xmlと対応しています。DDまたはcosminexus.xmlと属性ファイルのタグの対応については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「3.　J2EEアプリケーションの設定で使用する属性ファイル」を参照してください。

なお，各属性ファイルで設定するプロパティは，アプリケーション統合属性ファイルでも設定できます。

1.4　アプリケーションサーバ 08-70での主な機能変更

この節では，アプリケーションサーバ 08-70での主な機能の変更について，変更目的ごとに説明します。

説明内容は次のとおりです。

アプリケーションサーバ 08-70で変更になった主な機能と，その概要を説明しています。機能の詳細については「参照先マニュアル」の「参照個所」の記述を確認してください。「参照先マニュアル」および「参照個所」には，その機能についての主な記載個所を記載しています。

「参照先マニュアル」に示したマニュアル名の「Cosminexus アプリケーションサーバ V8」は省略しています。

＜この節の構成＞

(1)　導入・構築の容易性強化

(2)　標準機能・既存機能への対応

(3)　信頼性の維持・向上

(4)　運用性の維持・向上

(5)　そのほかの目的

(1)　導入・構築の容易性強化

導入・構築の容易性強化を目的として変更した項目を次の表に示します。

表1-6　導入・構築の容易性強化を目的とした変更

項目
変更の概要
参照先マニュアル
参照個所

運用管理ポータル改善
運用管理ポータルの画面で，リソースアダプタの属性を定義するプロパティ（Connector属性ファイルの設定内容）の設定，および接続テストができるようになりました。また，運用管理ポータルの画面で，J2EEアプリケーション（earファイルおよびzipファイル）をManagement Serverにアップロードできるようになりました。
ファーストステップガイド
3.4.1

運用管理ポータル操作ガイド
－

page/tagディレクティブのimport属性暗黙インポート機能の追加
page/tagディレクティブのimport属性暗黙インポート機能を使用できるようになりました。
機能解説 基本・開発編(Webコンテナ)
2.3.7

仮想化環境でのJP1製品に対する環境設定の自動化対応
仮想サーバへのアプリケーションサーバ構築時に，仮想サーバに対するJP1製品の環境設定を，フックスクリプトで自動的に設定できるようになりました。
仮想化システム構築・運用ガイド
7.7.2

統合ユーザ管理機能の改善
ユーザ情報リポジトリでデータベースを使用する場合に，データベース製品のJDBCドライバを使用して，データベースに接続できるようになりました。Cosminexus DABroker LibraryのJDBCドライバによるデータベース接続はサポート外になりました。
簡易構築定義ファイルおよび運用管理ポータルの画面で，統合ユーザ管理機能に関する設定ができるようになりました。
また，Active Directoryの場合，DNで日本語などの2バイト文字に対応しました。
機能解説 拡張編
10章

運用管理ポータル操作ガイド
3.5，10.9.1

リファレンス 定義編(サーバ定義)
14.3

Hitachi Web Server設定項目の拡充
簡易構築定義ファイルおよび運用管理ポータルの画面で，Hitachi Web Serverの動作環境を定義するディレクティブ（httpsd.conf（Hitachi Web Server定義ファイル）の設定内容）を直接設定できるようになりました。
システム構築・運用ガイド
8.4.3

運用管理ポータル操作ガイド
10.10.1

リファレンス 定義編(サーバ定義)
4.13

（凡例）－：マニュアル全体を参照する

(2)　標準機能・既存機能への対応

標準機能・既存機能への対応を目的として変更した項目を次の表に示します。

表1-7　標準機能・既存機能への対応を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
ejb-jar.xmlの指定項目の追加 | ejb-jar.xmlに，クラスレベルインターセプタおよびメソッドレベルインターセプタを指定できるようになりました。 | 機能解説 基本・開発編(EJBコンテナ) | 2.15
パラレルコピーガーベージコレクションへの対応 | パラレルコピーガーベージコレクションを選択できるようになりました。 | リファレンス 定義編(サーバ定義) | 19.5
Connector 1.5仕様に準拠したInboundリソースアダプタのグローバルトランザクションへの対応 | Connector 1.5仕様に準拠したリソースアダプタでTransacted Deliveryを使用できるようにしました。これによって，Message-driven Beanを呼び出すEISがグローバルトランザクションに参加できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 3.16.3
TP1インバウンドアダプタのMHPへの対応 | TP1インバウンドアダプタを使用してアプリケーションサーバを呼び出すOpenTP1のクライアントとして，MHPを使用できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 4章
cjrarupdateコマンドのFTPインバウンドアダプタへの対応 | cjrarupdateコマンドでバージョンアップできるリソースアダプタにFTPインバウンドアダプタを追加しました。 | リファレンス コマンド編 | 2.2

(3)　信頼性の維持・向上

信頼性の維持・向上を目的として変更した項目を次の表に示します。

表1-8　信頼性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
データベースセッションフェイルオーバ機能の改善 | 性能を重視するシステムで，グローバルセッション情報を格納したデータベースのロックを取得しないモードを選択できるようになりました。また，データベースを更新しない，参照専用のリクエストを定義できるようになりました。 | 機能解説 拡張編 | 6章
OutOfMemoryハンドリング機能の対象となる処理の拡大 | OutOfMemoryハンドリング機能の対象となる処理を追加しました。 | このマニュアル | 2.5.6
リファレンス 定義編(サーバ定義) | 19.2
HTTPセッションで利用するExplicitヒープの省メモリ化機能の追加 | HTTPセッションで利用するExplicitヒープのメモリ使用量を抑止する機能を追加しました。 | 機能解説 拡張編 | 8.9

(4)　運用性の維持・向上

運用性の維持・向上を目的として変更した項目を次の表に示します。

表1-9　運用性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
仮想化環境でのJP1製品を使用したユーザ認証への対応（クラウド運用対応） | JP1連携時に，JP1製品の認証サーバを利用して，仮想サーバマネージャを使用するユーザを管理・認証できるようになりました。 | 仮想化システム構築・運用ガイド | 1.2.2，3章，4章，5章，6章，7.8

(5)　そのほかの目的

そのほかの目的で変更した項目を次の表に示します。

表1-10　そのほかの目的による変更

項目
変更の概要
参照先マニュアル
参照個所

負荷分散機へのAPI（RESTアーキテクチャ）を使用した直接接続の対応
負荷分散機への接続方法として，API（RESTアーキテクチャ）を使用した直接接続に対応しました。
また，使用できる負荷分散機の種類にACOS（AX2500）が追加になりました。
システム構築・運用ガイド
4.3.1

仮想化システム構築・運用ガイド
2.1

リファレンス 定義編(サーバ定義)
4.5

snapshotログ収集時のタイムアウトへの対応と収集対象の改善
snapshotログの収集が指定した時間で終了（タイムアウト）できるようになりました。一次送付資料として収集される内容が変更になりました。
このマニュアル
付録A

2.　トラブルシューティング（資料取得と対処の概要）

アプリケーションサーバでは，システムの運用中に発生したトラブルの対処で利用できる，さまざまな資料を出力する機能を提供しています。この章では，トラブルが発生した場合に使用する資料の取得方法，対処手順，トラブルシューティングに関する留意事項などについて説明します。

＜この章の構成＞

2.1　この章の構成

2.2　トラブルシューティングの概要

2.3　資料の取得

2.4　取得が必要な資料の種類

2.5　トラブルへの対処と回復

2.6　トラブルシューティングに関連する留意事項

2.1　この章の構成

トラブルシューティングに関する説明のうち，トラブルシューティングの資料取得と対処の概要について説明します。

運用中のシステムでトラブルが発生した場合，発生したトラブルの種別に応じて資料を収集する必要があります。アプリケーションサーバでは，システムの保守に利用できる資料として，ログを出力する機能を提供しています。

この章の構成を次の表に示します。

表2-1　この章の構成（トラブルシューティング（資料取得と対処の概要））

分類 | タイトル | 参照先
解説 | トラブルシューティングの概要 | 2.2
資料の取得 | 2.3
取得が必要な資料の種類 | 2.4
運用 | トラブルへの対処と回復 | 2.5
注意事項 | トラブルシューティングに関連する留意事項 | 2.6

なお，トラブルシューティングの資料の取得や出力に関する設定，資料を個別に出力する方法，および資料の出力先や出力内容については，それぞれ次の個所を参照してください。

資料の取得や出力に関する設定
「3.　トラブルシューティング（資料取得の設定）」

資料のデフォルトでの出力先と，資料を個別に出力する方法
「4.　トラブルシューティング（資料の出力先と出力方法）」

資料に出力される内容
「5.　トラブルシューティング（資料の出力内容）」

2.2　トラブルシューティングの概要

トラブル発生時，構成ソフトウェアでは，トラブルシュート情報としてその時点の状態をログに出力します。このログを収集・分析して，トラブルの発生要因を調査します。また，性能解析トレースを使用して，リクエストの処理状況からトラブルの発生個所を特定することもできます。

アプリケーションサーバで構築したシステムでは，構成ソフトウェアのトラブル発生時のログと定義ファイルを一括して収集できます。この情報をsnapshotログといいます。運用管理ドメイン内の論理サーバが停止される直前，またはJ2EEサーバを手動で一括再起動する直前に，snapshotログの一括収集が自動で実行されます。

また，CTMを利用すると，J2EEサーバが異常終了した場合でも，すぐにクライアントにエラーが返却されないように設定できます。J2EEサーバが再起動されるまでの間，CTMによってJ2EEアプリケーションのスケジュールキューが閉塞制御され，すでに登録されているリクエストを保持して，さらにクライアントからのリクエストを受け付け続けます。これによって，すぐに再起動すれば，クライアントにトラブルを気づかせないで運用を続けられます。なお，CTMは，構成ソフトウェアにCosminexus Component Transaction Monitorを含む製品だけで利用できます。利用できる製品については，マニュアル「Cosminexus アプリケーションサーバ 概説」の「2.3.2　構成ソフトウェアの機能概要」を参照してください。

この節では，トラブル発生時の対処手順と，資料取得の流れについて説明します。

＜この節の構成＞

2.2.1　トラブルへの対処の手順

2.2.2　トラブル発生時の資料取得の流れ

2.2.1　トラブルへの対処の手順

この節では，アプリケーションサーバのシステムの運用中にトラブルが発生した場合の，対処の手順について説明します。

なお，トラブル発生時に取得する情報のうち，次に示す情報を取得するためには，運用開始前の準備が必要です。

日立固有のJavaVMログ（日立JavaVMログファイル）
このファイルには，JavaVMのガーベージコレクションのログも出力されます。

ユーザダンプ（Windowsの場合）

coreダンプ（UNIXの場合）

OSの統計情報（Windowsの場合）

これらの情報については，必要に応じてシステム構築時に取得準備をしてください。詳細は，「3.2　資料取得の設定の概要」および「3.3　実行環境での設定」を参照してください。

システムの運用中にトラブルが発生した場合は，次の図に示す手順で対処します。トラブル発生時の対処の流れを次の図に示します。

図2-1　トラブル発生時の対処の流れ

資料取得
トラブルシューティングに必要な資料をすべて取得します。
取得が必要な資料については，「2.4　取得が必要な資料の種類」を参照してください。なお，メモリダンプは，J2EEサーバまたはCORBAネーミングサービスを再起動する場合にだけ必要な資料です。
また，資料の取得方法については，「2.3　資料の取得」，または「4.　トラブルシューティング（資料の出力先と出力方法）」を参照してください。

参考

資料の取得には，snapshotログとして一括して取得する方法と，個別のログを取得する方法があります。

snapshotログの取得には，運用管理コマンドを使用して取得する方法，および設定によって自動で取得する方法があります。

論理サーバに異常が発生した場合の資料取得を自動化できます。詳細は，「2.3.1　トラブル発生時に自動的に取得できる資料」を参照してください。

トラブル原因の判別（一次判別）
トラブルの原因を判別します。判別には，取得した資料を使用します。資料の調査方法については，「5.　トラブルシューティング（資料の出力内容）」を参照してください。

トラブルへの対処と回復
トラブルに対処して，回復します。
トラブルの種類ごとの対処方法については，「2.5　トラブルへの対処と回復」を参照してください。

トラブル原因の解析（二次解析）
必要に応じてトラブル原因をさらに分析します。なお，この解析作業は保守員が実施します。

2.2.2　トラブル発生時の資料取得の流れ

アプリケーションサーバで構築したシステムでは，自動でトラブルシューティングの資料を取得できます。論理サーバを起動すると，運用管理エージェントは論理サーバの監視を開始します。論理サーバに異常が発生すると，運用管理エージェントは異常を検知し，Management Serverに通知します。Management Serverは資料を取得および収集し，論理サーバを停止して再起動します。

自動で資料を取得する場合の流れを次の図に示します。

図2-2　自動で資料を取得する場合の流れ

2.の障害検知時コマンドによって，トラブルシューティングに必要な情報が出力されます。このコマンドで出力した情報，およびそれ以外のトラブルシューティングに必要な情報を，3.でsnapshotログとしてまとめて収集します。なお，障害検知時コマンドを使用しないで，4.の論理サーバの停止後にsnapshotログを取得することもできますが，このとき取得できる情報はJ2EEサーバだけとなります。このため，障害検知時コマンドを使用して，3.でsnapshotログを収集することをお勧めします。障害検知時コマンドを使用した資料の取得については，「2.3.2　障害検知時コマンドによる資料取得」を，snapshotログについては，「2.3.3　snapshotログの収集」を参照してください。

また，Management Serverの運用管理コマンド（mngsvrutil）を使用して，snapshotログを任意のタイミングで収集することもできます。運用管理コマンドを使用したsnapshotログの収集については，「2.3.3(4)　運用管理コマンドを使用したsnapshotログの収集」を参照してください。

論理サーバのプロセスがダウンしたとき，および論理サーバのプロセスがハングアップしたときの処理の流れについて説明します。

＜この項の構成＞

(1)　論理サーバのプロセスがダウンしたときの処理の流れ

(2)　論理サーバのプロセスがハングアップしたときの処理の流れ

(1)　論理サーバのプロセスがダウンしたときの処理の流れ

論理サーバの起動後，運用管理エージェントのプロセス監視では，論理サーバプロセスのプロセスIDを使用して定期的にプロセスを監視します。論理サーバプロセスがダウンしたときの処理の流れを次の図に示します。

図2-3　論理サーバのプロセスがダウンしたときの処理の流れ

論理サーバプロセスのプロセスIDで，定期的にプロセスを監視します。

論理サーバプロセスが異常終了すると，運用管理エージェントはプロセスダウンを検知して，Management Serverに通知します。
プロセス監視では，プロセスIDの存在確認をします。確認内容は，論理サーバの種類によって異なります。詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「2.3.1　論理サーバの起動と稼働確認」，およびマニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「2.3.2　論理サーバの停止」を参照してください。

Management Serverではプロセスダウンを検知すると，障害検知時コマンドを実行し，snapshotログを収集します。

障害検知時コマンドとsnapshotログ収集後，論理サーバを自動再起動します。

(2)　論理サーバのプロセスがハングアップしたときの処理の流れ

論理サーバの起動後，運用管理エージェントのプロセス監視では，論理サーバプロセスに対して定期的に，論理サーバが動作しているかを確認します。動作確認中に論理サーバプロセスがハングアップしたときの処理の流れを次の図に示します。

図2-4　論理サーバのプロセスがハングアップしたときの処理の流れ

定期的に論理サーバプロセスの動作確認をします。
動作確認は，プロセス監視でプロセスIDが存在することが確認されてから，実施されます。確認内容は，論理サーバの種類によって異なります。詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「2.3.1　論理サーバの起動と稼働確認」，およびマニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「2.3.2　論理サーバの停止」を参照してください。

連続して動作確認に2回失敗すると（デフォルト値），運用管理エージェントはハングアップと判断して，Management Serverに通知します。なお，ハングアップと判断する，動作確認の失敗回数は変更できます。

Management Serverではハングアップを検知すると，障害検知時コマンドを実行し，snapshotログを収集します。

ハングアップの場合，プロセスは稼働中であるため，自動停止処理を実行します。

運用管理エージェントでは論理サーバの停止コマンドを実行します。
なお，一定時間経っても停止しない場合は，強制停止コマンドが実行されます。

障害検知時コマンドとsnapshotログ収集後，論理サーバを自動再起動します。

2.3　資料の取得

トラブルシューティングに必要な資料は，次のどれかの方法で取得できます。

トラブル発生時に自動的に取得する

運用管理コマンドを利用して一括取得する

それぞれの情報を個別に収集する

トラブルシューティングに必要な情報は，snapshotログとしてまとめて収集できます。snapshotログとは，システムの構成ソフトウェアのトラブル発生時に，そのときの状態を出力したログのことです。アプリケーションサーバで構築したシステムでは，各種構成ソフトウェアのsnapshotログを一括して収集して，ZIP形式のログファイルとして出力できます。snapshotログは，一次送付資料と二次送付資料に分けて取得できます。また，運用管理コマンド（mngsvrutil）を使用して，任意のタイミングでsnapshotログを収集することもできます。

この節では，トラブル発生時に必要な資料の取得方法として，資料を取得するときに実行する障害検知時コマンドと，資料を一括収集するsnapshotログについて説明します。

snapshotログとして取得しない情報については，「2.4.3　取得方法および調査方法との対応」を，それぞれの情報を個別に収集する方法ついては，「4.　トラブルシューティング（資料の出力先と出力方法）」を参照してください。

なお，資料によっては，事前に取得のための設定をしておく必要があります。例えば，OSの統計情報，ユーザダンプなどは，システム構築時に取得のための設定をしておかないと，取得できません。これらの資料はトラブルシューティングで必要となるため，取得することをお勧めします。

デフォルトの設定で取得できる資料についても，ログファイルの出力先，ログファイルの面数や1ファイル当たりの最大サイズなどを変更できます。必要に応じて，資料取得の設定を変更してください。

また，デフォルトの設定ではsnapshotログとして収集できない資料でも，その資料の取得先をsnapshotログの収集対象として定義することで，snapshotログとして一括収集できるようになります。

トラブルシューティングに必要な資料取得の設定については，「3.　トラブルシューティング（資料取得の設定）」を参照してください。

＜この節の構成＞

2.3.1　トラブル発生時に自動的に取得できる資料

2.3.2　障害検知時コマンドによる資料取得

2.3.3　snapshotログの収集

2.3.4　取得した情報の格納先

2.3.1　トラブル発生時に自動的に取得できる資料

アプリケーションサーバで構築したシステムでは，論理サーバに異常が発生した場合に，自動的にトラブルシューティングに必要な情報を取得，収集できます。

ポイント

トラブル発生時に資料を自動で取得するためには，システムを構築する段階で必要な設定をしておく必要があります。トラブルシューティングの資料取得の設定については，「3.2　資料取得の設定の概要」，および「3.3　実行環境での設定」を参照してください。

障害検知時コマンドの実行とsnapshotログの収集によって，トラブルシューティングに必要な情報は，次の情報を除いてすべて自動収集するように設定できます。

OSの統計情報（Windowsの場合）

デフォルトの設定で収集されない情報については，次のように設定して収集します。

ユーザ作成の障害検知時コマンド内で，必要な情報を出力します。

1.の情報の出力先を，snapshotログの収集対象のパスに追加します。
snapshotログ取得の設定については，「3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）」，または「3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）」を参照してください。

注意

snapshotログで取得できる構成ソフトウェアのログのうち，次の表に示すログの取得については，このマニュアルでは説明していません。取得方法については，次の表の参照先マニュアルを参照してください。

表2-2　このマニュアルでログの取得方法を記載していない構成ソフトウェア

ログの種類 | 参照先マニュアル | 参照個所
Cosminexus Component ContainerのSOAPアプリケーション実行基盤のログ | Cosminexus アプリケーションサーバ SOAPアプリケーション開発の手引 | 14章
Cosminexus Web Services - Securityのログ | Cosminexus アプリケーションサーバ Webサービスセキュリティ　使用の手引 | 6章
Cosminexus TPBrokerのログ | TPBroker ユーザーズガイド

2.3.2　障害検知時コマンドによる資料取得

障害検知時コマンドは，Management Serverが論理サーバの障害を検知したときに，システムによって実行されるコマンドです。障害検知時コマンドを利用して，トラブル発生時のスレッドダンプやユーザダンプの取得などの取得処理を実行することで，トラブル発生時のタイムリーな資料を取得できるようになります。また，障害検知時コマンドを利用すると，次のどちらかのタイミングでsnapshotログを自動収集することもできます。収集するタイミングは設定によって決められます。

論理サーバにトラブルが発生した場合，障害検知時コマンドが実行されて，論理サーバの停止前にsnapshotログが収集されます。

J2EEサーバまたはバッチサーバにトラブルが発生した場合，障害検知時コマンドが実行されて，J2EEサーバまたはバッチサーバの再起動前にsnapshotログが収集されます。

障害検知時コマンドには，システム提供の障害検知時コマンドとユーザ作成の障害検知時コマンドの2種類があります。

システム提供の障害検知時コマンド

あらかじめアプリケーションサーバで定義されているコマンドです。システム提供の障害検知時コマンドでは，論理サーバにトラブルが発生した場合に，トラブルが発生した論理サーバのJavaVMのスレッドダンプや性能解析トレースなどを取得します。システム提供の障害検知時コマンドで取得した資料は，snapshotログとして収集できます。

デフォルトの設定では，論理サーバにトラブルが発生した場合にシステム提供の障害検知時コマンドが実行されて，トラブルが発生した論理サーバの停止前にsnapshotログが収集されます。

ユーザ作成の障害検知時コマンド

障害検知時コマンドはユーザが作成することもできます。資料取得に必要な任意の処理を記述したバッチファイルやシェルスクリプトを，障害検知時コマンドとして実行できます。

なお，ユーザ作成の障害検知時コマンドで取得した資料をsnapshotログとして収集するためには，その資料の取得先をsnapshotログの収集先として定義しておく必要があります。

システム提供の障害検知時コマンドの動作設定を変更する場合，またはユーザ作成の障害検知時コマンドを利用する場合に必要な設定については，「3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）」または「3.3.2　障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）」を参照してください。

ポイント

障害検知時コマンドは，システム構築時に必要な設定がされていない場合，実行されません。次の設定内容を確認してください。

mserver.properties（Management Server環境設定ファイル）のcom.cosminexus.mngsvr.sys_cmd.abnormal_end.enabledキーに「true」が設定されている場合，システムで提供されている障害検知時コマンドが実行されます。

mserver.properties（Management Server環境設定ファイル）のcom.cosminexus.mngsvr.usr_cmd.abnormal_end.enabledキーに「true」が設定されている場合，ユーザが作成した障害検知時コマンドが実行されます。

ここでは，それぞれで取得できる情報について説明します。

＜この項の構成＞

(1)　システムで提供されている障害検知時コマンドで取得できる情報

(2)　ユーザが作成した障害検知時コマンドで取得できる情報

(1)　システムで提供されている障害検知時コマンドで取得できる情報

システムで提供されている障害検知時コマンドで取得できる情報について，次の表に示します。障害検知時コマンドで取得できる情報は，障害の種類（システムダウン，またはハングアップ）および使用しているOSによって異なります。

なお，snapshotログでこれらの情報を取得するためには，adminagent.properties（運用管理エージェントプロパティファイル）に必要な設定がされていることが必要です。

障害検知時コマンドで取得できる情報を次に示します。

表2-3　障害検知時コマンドで取得できる情報

論理サーバ
OS
取得できる情報
J2EEアプリケーション
バッチアプリケーション

プロセスダウンを検出した場合
ハングアップを検出した場合

論理パフォーマンストレーサ
Windows
UNIX

バッファの内容を出力したPRFトレースファイル

－
○
○

論理J2EEサーバ※
Windows

性能解析トレースファイル

スレッドダンプ

性能解析トレースファイル

○
○

UNIX

JavaVMのスタックトレース情報

性能解析トレースファイル

スレッドダンプ

性能解析トレースファイル

○
○

論理SFOサーバ
Windows

性能解析トレースファイル

スレッドダンプ

性能解析トレースファイル

○
－

UNIX

JavaVMのスタックトレース情報

性能解析トレースファイル

スレッドダンプ

性能解析トレースファイル

○
－

論理Webサーバ
Windows
UNIX

性能解析トレースファイル

内部トレース

性能解析トレースファイル

○
－

ほかの論理サーバ
Windows
UNIX

性能解析トレースファイル

性能解析トレースファイル

○
－

（凡例）

J2EEアプリケーション：J2EEアプリケーションを実行するシステム

バッチアプリケーション：バッチアプリケーションを実行するシステム

－：該当しない

○：取得できる

注※　バッチサーバは論理J2EEサーバとして定義します。

トラブルが発生したJ2EEサーバ，SFOサーバまたはバッチサーバのスレッドダンプ
adminagent.properties（運用管理エージェントプロパティファイル）のadminagent.j2ee.sys_cmd.abnormal_end.threaddumpキーに「true」が設定されている場合に取得できます。

性能解析トレース
adminagent.properties（運用管理エージェントプロパティファイル）のadminagent.sys_cmd.abnormal_end.prftraceキーに「true」が設定されている場合に取得できます。

注意

トラブルが発生したJ2EEサーバまたはSFOサーバのプロセスが存在しないと判断された場合，スレッドダンプは出力されません。また，パフォーマンストレーサのプロセスが存在しないと判断された場合，性能解析トレースは出力されません。

(2)　ユーザが作成した障害検知時コマンドで取得できる情報

ユーザが作成した障害検知時コマンドとして，資料取得に必要な任意の処理を記述したバッチファイルまたはシェルスクリプトを実行できます。例えば，ユーザダンプまたはcoreダンプは，このコマンドの中でdrwtsn32コマンドまたはkillコマンドなどを実行して取得できます。障害検知時コマンドの作成方法については，「3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）」または「3.3.2　障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）」を参照してください。

なお，ユーザ作成の障害検知時コマンドは，adminagent.properties（運用管理エージェントプロパティファイル）のadminagent.<serverkind>.usr_cmd.abnormal_endキーに指定されているものが実行されます。

2.3.3　snapshotログの収集

システムの構成ソフトウェアがトラブル発生時にそのときの状態を出力したログを，snapshotログといいます。snapshotログには，各種構成ソフトウェアのログのほかに，スレッドダンプ，性能解析トレースなど，システム保守に必要な情報とアプリケーション保守に必要な情報が含まれます。アプリケーションサーバで構築したシステムでは，これらの情報をsnapshotログとして一括収集し，ZIP形式のログファイルとして取得できます。運用管理者は，snapshotログを収集・分析することで，トラブルに対処できます。

障害検知時コマンドの実行とsnapshotログの収集によって，トラブルシューティングに必要な資料は自動収集するように設定されています。デフォルトの設定で収集されない情報をsnapshotログとして収集したい場合には，その資料の取得先をsnapshotログの収集対象として定義してください。snapshotログの収集対象，出力先ディレクトリや面数などは，システム構築時に設定を変更できます。

ここでは，snapshotログの収集タイミング，収集できる資料，および収集の流れについて説明します。また，任意のタイミングで収集する方法として，運用管理コマンドを使用したsnapshotログの収集についても説明します。なお，snapshotログ収集の設定については，「3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）」，または「3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）」を参照してください。

＜この項の構成＞

(1)　snapshotログの収集タイミング

(2)　snapshotログとして収集できる資料

(3)　snapshotログ収集の流れ

(4)　運用管理コマンドを使用したsnapshotログの収集

(1)　snapshotログの収集タイミング

snapshotログは，自動または任意のタイミングで収集できます。snapshotログの収集のタイミングを次の表に示します。なお，収集できるのは，論理サーバが稼働しているホスト内のsnapshotログです。

表2-4　snapshotログの収集のタイミング

分類 | 収集のタイミング
自動的に収集する※1 | 論理サーバが障害時に自動停止される直前※2
運用管理ドメインで管理しているJ2EEサーバまたはバッチサーバが障害時に自動再起動される直前※2
J2EEサーバまたはバッチサーバを手動で一括再起動する直前
任意のタイミングで収集する | Management Serverの運用管理コマンド（mngsvrutil）でsnapshotログの収集を実行したとき（実行方法については，「(4)　運用管理コマンドを使用したsnapshotログの収集」を参照してください）

注※1

次に示すどちらのタイミングでsnapshotログを収集するかは，システム構築時に設定を変更できます。デフォルトの設定では，論理サーバの停止前にsnapshotログが収集されます。

・論理サーバの停止前

・J2EEサーバの再起動前

注※2

このタイミングでsnapshotログを収集する場合には，Management Serverによって障害検知時コマンドが実行されます。

参考

snapshotログは，次のタイミングでも収集できます。

運用管理ポータルの「論理サーバの起動／停止」にある［snapshotログ］画面で［収集］ボタンをクリックした時※1

snapshotlogコマンド実行時※2

注※1

収集できるのは，収集を実行したJ2EEサーバまたはバッチサーバ内のsnapshotログです。

注※2

Management Serverを使用しているかどうかに関係なく，コマンドは実行できます。

［snapshotログ］画面については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「11.10.5　J2EEサーバのsnapshotログの収集」を，snapshotlogコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「snapshotlog（snapshotログの収集）」を参照してください。

(2)　snapshotログとして収集できる資料

snapshotログとして収集できる資料について説明します。snapshotログには，システム保守に必要な情報とアプリケーション保守に必要な情報が含まれます。

トラブルシューティングに必要な資料は，資料を保守員へ送付するときのタイミングによって，一次送付資料と二次送付資料に分類されます。snapshotログでは，一次送付資料と二次送付資料を収集できます。

一次送付資料
メールの添付資料として送付できるファイルサイズの資料が該当します。メールなどで早急に保守員に送付できます。

二次送付資料
一次送付資料に加えて，ファイルサイズが比較的大きい資料が該当します。ファイルサイズが比較的大きい資料は資料の送付に時間が掛かるため，別途，保守員に送付する必要があります。

snapshotログとして収集する資料は，snapshotログ収集対象定義ファイルの設定によって変更できます。例えば，ユーザ作成の障害検知時コマンドで出力した情報を収集したい場合には，設定を変更すれば収集対象に加えられます。snapshotログ収集対象定義ファイルはシステム構築時に設定します。

実際の運用環境での収集対象は，次のファイルで確認できます。

snapshotlog.conf
一次送付資料として取得する内容が定義されています。
snapshotlog.confの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.conf

UNIXの場合
/opt/Cosminexus/manager/config/snapshotlog.conf

snapshotlog.2.conf
二次送付資料として取得する内容が定義されています。
snapshotlog.2.confの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.2.conf

UNIXの場合
/opt/Cosminexus/manager/config/snapshotlog.2.conf

ただし，adminagent.properties（運用管理エージェントプロパティファイル）の指定内容によっては，収集できる情報が異なる場合があります。

デフォルトの設定の場合，トラブル発生時に自動的に取得されるsnapshotログには，次の情報が含まれます。

一次送付資料

snapshotログの一次送付資料の収集対象として定義されているディレクトリ下の情報※1

J2EEサーバおよびSFOサーバのスレッドダンプ※2

インストール情報

OSの状態ログ

二次送付資料

性能解析トレース※2

snapshotログの二次送付資料の収集対象として定義されているディレクトリ下の情報※1

インストール情報

OSの状態ログ

注※1　snapshotログの収集対象については，「付録A　snapshotログの収集対象一覧」を参照してください。

注※2　システムで提供されている障害検知時コマンドで，スレッドダンプおよび性能解析トレースを出力する設定にしている場合に収集できます。

参考

snapshotlogコマンドで収集できるsnapshotログと，Management Serverの運用管理コマンド（mngsvrutil）などで収集できるsnapshotログでは，デフォルトの状態で収集できるファイルが異なります。Management Serverの運用管理コマンド（mngsvrutil）などで収集できるsnapshotログは，デフォルトの状態でインストール情報やOSの状態・ログなどを収集できますが，snapshotlogコマンドでインストール情報やOSの状態・ログなどを収集するためには，コマンド実行時に指定するsnapshotログ収集対象定義ファイルを編集して，snapshotログの収集先を追加する必要があります。

デフォルトの状態で収集できる情報と収集できない情報の例を次に示します。

●デフォルトの状態で収集できる情報

デフォルトの状態で収集できる情報の例を次に示します。

システム保守に必要な情報

システム保守に必要な情報として，次に示す構成ソフトウェアの定義ファイルおよびログファイルが収集されます。

Cosminexus Component Container※

Cosminexus Component Transaction Monitor

Cosminexus Developer's Kit for Java

Cosminexus Performance Tracer

Cosminexus TPBroker

Cosminexus Web Services - Security

Hitachi Web Server

このほか，日立トレース共通ライブラリのログ，およびプログラムプロダクト情報（UNIXの場合）も収集します。

注※　SOAPアプリケーション実行基盤の情報も含みます。

アプリケーション保守に必要な情報

アプリケーション保守に必要な情報として，Cosminexus Component Containerのメッセージログおよびユーザログを収集します。

なお，デフォルトの状態では，構成ソフトウェアのインストール時にデフォルトで作成されたディレクトリがsnapshotログの収集対象として定義されています。ログの出力先を変更している場合は収集先も変更するようにしてください。

●デフォルトの状態では収集できない情報

次に示す情報は，デフォルトの状態で運用している場合は収集されません。必要に応じて，取得するように設定してください。

Windowsの場合

Cosminexus Component Container関連

<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥import下すべて

<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥rars下すべて

<Cosminexusのインストールディレクトリ>¥CC¥server¥public下すべて

EAR/JARファイル（デプロイ/インポートできなかった場合）

Microsoft IIS関連

Microsoft IISと連携している場合，次の資料を取得します。

C:¥WINNT¥system32¥LogFiles¥W3SVC1（C:の部分にはシステムドライブを指定します）

OS関連

システムモニタ関連の資料一式（4.13参照）

イベントログ（アプリケーション，システム）

OSの稼働資料
winmsd起動画面から［操作］－［テキストファイルとして保存］メニューで資料採取します（5分から10分掛かる場合があります）。

UNIXの場合

Cosminexus Component Container関連

/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/import下すべて

/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/rars下すべて

/opt/Cosminexus/CC/server/public下すべて

EAR/JARファイル（デプロイ/インポートできなかった場合）

OS関連

OSの稼働資料

(3)　snapshotログ収集の流れ

論理サーバに異常が発生すると，Management Serverから運用管理エージェントに対してsnapshotログ収集のサービス要求が実行されます。snapshotログ収集時に実行される処理の流れを次に示します。なお，設定によって，実行される処理は異なります。

システム提供の障害検知時コマンドの実行

ユーザ作成の障害検知時コマンドの実行

snapshotログ（一次送付資料）の収集

snapshotログ（二次送付資料）の収集

マシンの動作環境や，障害の発生状況（想定外の障害が発生した場合など）によっては，snapshotログの収集に時間が掛かることがあります。このため，これらの処理に対して，それぞれタイムアウトが設定できます。

なお，snapshotログの収集に対するタイムアウトは，想定外の障害発生によってsnapshotログの収集に時間が掛かり過ぎる場合に，論理サーバの再起動を優先しなくてはならないような状況が見込まれるときなどに設定してください。snapshotログの収集時にタイムアウトが実行されると，収集処理は強制的に中断され，トラブルシューティングに必要な情報が取得できなくなります。

(4)　運用管理コマンドを使用したsnapshotログの収集

snapshotログは，自動実行されるほか，運用管理コマンド（mngsvrutil）を使用して任意のタイミングで収集できます。

なお，取得できる情報の種類は，トラブル発生時に自動的に収集されるsnapshotログと同じです。「(2)　snapshotログとして収集できる資料」を参照してください。

ログの出力先については，adminagent.propertiesファイル（運用管理エージェントプロパティファイル）のadminagent.snapshotlog.log_dirキーの値を参照してください。デフォルトの出力先は次のディレクトリです。

Windowsの場合
<Managerのログ出力ディレクトリ>¥snapshot

UNIXの場合
<Managerのログ出力ディレクトリ>/snapshot

snapshotログを収集するには，運用管理コマンド（mngsvrutil）にサブコマンド「collect」を指定して実行します。-tオプションで指定したホスト内のsnapshotログが収集できます。

コマンドの実行形式と実行例を次に示します。この例では，一次送付ファイルと二次送付ファイルの両方を収集します。<n>には，一次送付資料または二次送付資料のどちらを収集するかを指定します。

実行形式

mngsvrutil -m <Management Serverのホスト名>［:<ポート番号>］ -u <管理ユーザID> -p <管理パスワード> -t <ホスト名> -k host collect snapshot <n>

実行例

mngsvrutil -m mnghost -u user01 -p pw1 -t host01 -k host collect snapshot 1
mngsvrutil -m mnghost -u user01 -p pw1 -t host01 -k host collect snapshot 2

2.3.4　取得した情報の格納先

snapshotログの収集によって自動で取得された情報は，adminagent.properties（運用管理エージェントプロパティファイル）のadminagent.snapshotlog.log_dirキーで指定したディレクトリに次の名称で格納されています。

一次送付資料として収集したファイル
snapshot-<ホスト名※1>-log-<yyyyMMddHHmmss※2>.zip

二次送付資料として収集したファイル
snapshot-<ホスト名※1>-log-<yyyyMMddHHmmss※2>.2.zip

注※1　論理サーバを指定して収集した場合は，論理サーバ名になります。

注※2　yyyy：西暦　MM：月　dd：日　HH：時　mm：分　ss：秒

なお，出力先ディレクトリのデフォルトは，次のとおりです。

Windowsの場合
<Managerのログ出力ディレクトリ>¥snapshot

UNIXの場合
<Managerのログ出力ディレクトリ>/snapshot

参考

snapshotログとして収集しようとしたファイルの一覧，および実際に収集したファイルの一覧は，次のファイルで確認できます。これらのファイルは，アーカイブされたzipファイルに含まれています。

収集しようとしたファイルの一覧
snapshot-<ホスト名>-log-<yyyyMMddHHmmss※>/filelist_pre.txt
snapshot-<ホスト名>-log-<yyyyMMddHHmmss※>.2/filelist_pre.txt

実際に収集したファイルの一覧
snapshot-<ホスト名>-log-<yyyyMMddHHmmss※>/filelist_post.txt
snapshot-<ホスト名>-log-<yyyyMMddHHmmss※>.2/filelist_post.txt

注※　yyyy：西暦　MM：月　dd：日　HH：時　mm：分　ss：秒

2.4　取得が必要な資料の種類

この節では，アプリケーションサーバのシステムで想定されるトラブルの種別と，それに応じて取得が必要な資料について説明します。

トラブルシューティングに必要な資料は，発生したトラブルの種別によって異なります。例えば，エラーメッセージが出力されたのか，アプリケーションサーバのサーバプロセスが異常終了したのかによって，必要な資料は異なります。

また，トラブルの内容によっては保守員に連絡する必要があります。保守員とは，ご購入契約に基づくお問い合わせ窓口のことです。

保守員に連絡が必要なトラブル

出力されたエラーメッセージの対処に「保守員に連絡してください。」とある場合

トラブルの要因がわからない場合

エラーメッセージの内容に対処できない場合

保守員に連絡する場合には，次の内容をできるだけ正確に伝えてください。

エラーの発生時期

エラー発生の直前に実行した操作

エラー発生時の画面の動作

トラブル発生時に取得した資料

トラブルシューティングに必要な資料は，資料を保守員へ送付するときのタイミングによって，一次送付資料と二次送付資料に分類されます。

メールなどで早急に送付する資料（一次送付資料）
メールの添付資料として送付できるファイルサイズの資料が該当します。メールなどで早急に保守員に送付できます。
例えば，次の資料が一次送付資料として取得できます。

メッセージログ
J2EEサーバなどの稼働状態およびエラー情報が出力されます。

ユーザログ
アプリケーション中で出力される標準出力および標準エラー出力の情報が出力されます。

例外ログ
システムでトラブルが発生したときの例外情報が出力されます。

保守用ログ
システムでトラブルが発生したときの障害保守情報が出力されます。保守員が障害解析用に使用します。

別途送付する資料（二次送付資料）
ファイルサイズが比較的大きく，保守員への送付に時間が掛かるため，メール以外の方法などで別途送付する必要がある資料が該当します。なお，二次送付資料には，一次送付資料の内容が含まれます。
例えば，次の資料が二次送付資料として取得できます。

性能解析トレース
リクエストの一連の処理で出力されるトレース情報が出力されます。

メモリダンプ
プロセスのメモリイメージがダンプ出力されます。

＜この節の構成＞

2.4.1　トラブルの種別と取得が必要な資料

2.4.2　取得が必要な資料の一覧

2.4.3　取得方法および調査方法との対応

2.4.1　トラブルの種別と取得が必要な資料

アプリケーションサーバで想定されるトラブルには，次に示す種別があります。

エラーメッセージ出力
エラーメッセージが出力されます。

システムダウン
アプリケーションサーバのサーバプロセスが異常終了します。

ハングアップ（無応答）
アプリケーション呼び出しの応答が返らなくなります。

スローダウン
アプリケーション呼び出しの応答は返りますが，応答時間が長くなります。

トラブル種別ごとに取得する資料を，次に示します。

表2-5　トラブル種別ごとの取得資料一覧

項番 | 資料の種類 | トラブル種別
エラーメッセージ出力 | システムダウン | ハングアップ（無応答） | スローダウン
1 | メッセージログ※1 | ○ | ○ | ○ | ○
2 | ユーザログ※1 | ○ | ○ | ○ | ○
3 | 例外ログ※1 | ○ | ○ | ○ | ○
4 | 保守用ログ※1 | ○ | ○ | ○ | ○
5 | 性能解析トレース | ○ | ○ | ○ | ○
6 | JavaVMのスレッドダンプ | ○ | ○ | ○ | ○
7 | JavaVMのガーベージコレクションのログ | △ | ○ | ○ | ○
8 | メモリダンプ | － | ○ | ○ | ○
9 | 日立JavaVMログファイル※2 | － | ○ | ○ | ○
10 | エラーリポートファイル | － | ○ | － | －
11 | OSの状態・ログ | ○ | ○ | ○ | ○
12 | OSの統計情報 | △ | ○ | ○ | ○
13 | 定義情報 | ○ | ○ | ○ | ○
14 | 作業ディレクトリ | △ | △ | △ | △
15 | リソースの設定 | ○ | ○ | ○ | ○
16 | Webサーバのログ | ○ | ○ | ○ | ○
17 | JavaVMのスタックトレース※3 | － | ○ | － | －
18 | JavaVMの明示管理ヒープ機能のイベントログ※2 | － | ○ | ○ | ○

（凡例）

○：必須

△：取得するかどうかは，実際のエラーの内容によって異なる

－：取得しない

注※1

アプリケーションサーバの構成ソフトウェアが出力するログです。

注※2

JavaVM起動オプションを指定している場合に出力されます。取得するためのオプションについては，「4.10　日立固有のJavaVMログ（日立JavaVMログファイル）」を参照してください。また，オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

注※3

UNIXを使用している場合だけ出力されます。

2.4.2　取得が必要な資料の一覧

アプリケーションサーバで，トラブルシューティングに必要な資料の一覧を次の表に示します。また，それぞれの資料を保守員に送付する場合の送付タイミングについても示します。

表2-6　取得資料一覧

項番 | 資料の種類 | 説明 | 送付タイミング
1 | メッセージログ※1 | J2EEサーバなどの稼働状態およびエラー情報が出力されます。 | 一次／二次
2 | ユーザログ※1 | アプリケーション中で出力される標準出力および標準エラー出力の情報が出力されます。 | 一次
3 | 例外ログ※1 | システムでトラブルが発生したときの例外情報が出力されます。 | 一次
4 | 保守用ログ※1 | システムでトラブルが発生したときの障害保守情報が出力されます。保守員が障害解析用に使用します。 | 一次／二次
5 | 性能解析トレース | リクエストの一連の処理で出力されるトレース情報が出力されます。 | 二次
6 | JavaVMのスレッドダンプ | JavaVMの稼働情報やスレッドのスタック状態が出力されます。 | 一次
7 | JavaVMのガーベージコレクションのログ | JavaVMのガーベージコレクションの活動状態が出力されます。 | 一次
8 | メモリダンプ | プロセスのメモリイメージがダンプ出力されます。 | 二次
9 | 日立JavaVMログファイル※2 | Cosminexus Developer's Kit for Javaで提供される日立JavaVMの固有のログが出力されます。 | 一次
10 | エラーリポートファイル | JavaVMがダウンした場合に出力されるログファイルです。 | 一次
11 | OSの状態・ログ | OSの稼働情報の記録です。 | 一次／二次
12 | OSの統計情報 | OSの統計情報の記録です。 | 一次
13 | 定義情報 | アプリケーションサーバの各種設定の定義情報です。 | 一次
14 | 作業ディレクトリ | アプリケーションサーバ稼働時に作業ファイルが格納されているディレクトリです。 | 一次／二次
15 | リソースの設定 | アプリケーションサーバ上で使用するリソース（データソース，リソースアダプタ）の設定情報です。 | 二次
16 | Webサーバのログ | Hitachi Web Server，Microsoft IISのログです。 | 一次／二次
17 | JavaVMのスタックトレース※3 | JavaVMが異常終了した場合の原因究明に使用する情報です。 | 一次／二次
18 | JavaVMの明示管理ヒープ機能のイベントログ※2 | 明示管理ヒープ機能で発生するイベント（Explicitメモリブロックの初期化，Explicitメモリブロックへのオブジェクトの生成，Explicitメモリブロックの解放処理など）の情報が出力されます。 | 一次

（凡例）

一次：一次送付資料

二次：二次送付資料

注※1

アプリケーションサーバの構成ソフトウェアが出力するログです。

注※2

JavaVM起動オプションを指定している場合に出力されます。取得するためのオプションについては，「4.10　日立固有のJavaVMログ（日立JavaVMログファイル）」を参照してください。また，オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

注※3

UNIXを使用している場合だけ出力されます。

ログファイルは，各構成ソフトウェアの環境設定ファイルで指定したディレクトリに自動的に作成されます。ファイル名には，1～指定したログファイルの面数の通し番号が付きます。ログファイルのファイルサイズが一面当たりの最大サイズに達すると，次のログファイルに出力先を切り替えます。指定したログファイルの面数分のファイルに出力したあとは，ファイル名の番号が1のログファイルに再度ログを出力します。なお，ログファイルの1レコードの出力が途切れないようするために，ログファイルのファイルサイズが環境設定ファイルに指定したサイズより若干大きくなることがあります。1レコードの最大長は約4キロバイトです。

2.4.3　取得方法および調査方法との対応

ここでは，取得が必要な資料の取得方法と調査方法の参照先を示します。また，snapshotログとして取得できる情報の種類についても示します。

表2-7　取得が必要な資料の取得方法と調査方法の参照先

項番 | 資料の種類 | デフォルト設定のsnapshotログで取得可※1 | 参照先
個別の収集方法 | 調査方法
1 | メッセージログ | ○ | 4.3，4.4，4.5 | 5.2，5.3
2 | ユーザログ | ○
3 | 例外ログ | ○
4 | 保守用ログ | ○
5 | 性能解析トレース | ○ | 4.6 | 5.4，6.6
6 | JavaVMのスレッドダンプ | ○※2 | 4.7 | 5.5
7 | JavaVMのガーベージコレクションのログ | × | 4.8 | 5.6
8 | メモリダンプ | ×※2 | 4.9 | －※3
9 | 日立JavaVMログファイル※4 | × | 4.10 | 5.7
10 | エラーリポートファイル | × | 4.11 | 5.8
11 | OSの状態・ログ | ○ | 4.12 | 5.9
12 | OSの統計情報 | × | 4.13 | －※3
13 | 定義情報 | ○ | 4.14 | －※3
14 | 作業ディレクトリ | × | 4.15 | －※3
15 | リソースの設定 | × | 4.16 | －※3
16 | Webサーバのログ | × | 4.17 | －※3
17 | JavaVMのスタックトレース※3，※5 | × | 4.18 | 5.10
18 | JavaVMの明示管理ヒープ機能のイベントログ※4 | × | 4.19 | 5.11

（凡例）○：取得できる　×：取得できない

注※1

snapshotログの収集対象ディレクトリを追加すれば取得できます。

注※2

あらかじめ障害検知時コマンドなどによって出力されている場合だけ収集できます（snapshotログ収集時には，これらのダンプを出力するコマンドは実行されません）。

注※3

保守員が使用する資料です。

注※4

JavaVM起動オプションを指定している場合に出力されます。取得するためのオプションについては，「4.10　日立固有のJavaVMログ（日立JavaVMログファイル）」を参照してください。また，各オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

注※5

UNIXを使用している場合だけ出力されます。

2.5　トラブルへの対処と回復

この節では，次のようなトラブルが発生した場合の対処方法および回復方法について説明します。

構成ソフトウェアのプロセス（論理サーバ）が異常終了した場合

J2EEアプリケーションの強制停止に失敗した場合

データベースセッションフェイルオーバ機能を使用時にトラブルが発生した場合

メモリセッションフェイルオーバ機能を使用時にトラブルが発生した場合

データベースと接続中にトラブルが発生した場合

JPAアプリケーションでトラブルが発生した場合

JavaVMが異常終了した場合

OutOfMemoryError発生時に運用管理エージェントが強制終了した場合

JP1と連携したシステムでトラブルが発生した場合

1:1系切り替えシステムでトラブルが発生した場合

N:1リカバリシステムでトラブルが発生した場合

ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合

EJBクライアントでトラブルが発生した場合

＜この節の構成＞

2.5.1　構成ソフトウェアのプロセス（論理サーバ）が異常終了した場合

2.5.2　J2EEアプリケーションの強制停止に失敗した場合

2.5.3　データベースセッションフェイルオーバ機能でトラブルが発生した場合

2.5.4　メモリセッションフェイルオーバ機能でトラブルが発生した場合

2.5.5　JPAアプリケーションでトラブルが発生した場合

2.5.6　JavaVMが異常終了した場合

2.5.7　OutOfMemoryError発生時に運用管理エージェントが強制終了した場合

2.5.8　JP1と連携したシステムでトラブルが発生した場合

2.5.9　1:1系切り替えシステムでトラブルが発生した場合

2.5.10　N:1リカバリシステムでトラブルが発生した場合

2.5.11　ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合

2.5.12　EJBクライアントでトラブルが発生した場合

2.5.1　構成ソフトウェアのプロセス（論理サーバ）が異常終了した場合

ここでは，アプリケーションサーバの構成ソフトウェアのプロセスが異常終了したときに，システムを再起動する方法について説明します。

アプリケーションサーバで構築したシステムでは，アプリケーションサーバの構成ソフトウェアのプロセス（論理サーバ）が異常終了したとき，起動順序が設定されていればManagement Serverによって自動的に再起動されます。Management Serverでは，構成ソフトウェアのプロセスを論理サーバとして管理しています。

手動で再起動を実行する場合，異常終了した構成ソフトウェアの起動順序に依存関係があるときは，前提となる構成ソフトウェアが起動していることを確認してから再起動する必要があります。前提となる構成ソフトウェアは，システムの運用形態によって異なります。以降で，構成ソフトウェアの起動順序の依存関係，および構成ソフトウェアの再起動方法について説明します。

ポイント

CTMを利用したシステムでは，CTMによって，すぐに再起動すれば，クライアントにエラーが返却される前にシステムを回復するように設定できます。ただし，リクエストキューの最大登録数を超えた場合は，クライアントにエラーが返却されます。

＜この項の構成＞

(1)　構成ソフトウェアのプロセスの起動順序の依存関係

(2)　プロセスの再起動方法

(1)　構成ソフトウェアのプロセスの起動順序の依存関係

アプリケーションサーバで構築したシステムを構成する構成ソフトウェアの，プロセスの起動順序の依存関係について説明します。

以降は，J2EEサーバの動作モード別に，構成ソフトウェアのプロセスの起動順序の依存関係について説明します。

(a)　プロセスの依存関係

プロセスの依存関係を次の表に示します。

表2-8　プロセスの依存関係

プロセスの種類
前提プロセス

パフォーマンストレーサ
－

スマートエージェント※1，※2
－

CTMドメインマネジャ※1
スマートエージェント※1，※2

CORBAネーミングサービス
－

CTMデーモン※1

パフォーマンストレーサ

スマートエージェント

CTMドメインマネジャ

CORBAネーミングサービス

SFOサーバ

パフォーマンストレーサ

J2EEサーバ

パフォーマンストレーサ

スマートエージェント

CTMドメインマネジャ※3

CORBAネーミングサービス※4

CTMデーモン※3

Webサーバ
パフォーマンストレーサ

（凡例）

－：前提プロセスがない

注※1

CTMを使用する場合に起動するプロセスです。

注※2

トランザクションサービスを使用する場合に起動するプロセスです。

注※3

CTMを使用する場合に前提となるプロセスです。

注※4

CORBAネーミングサービスをアウトプロセスで使用する場合に起動するプロセスです。CORBAネーミングサービスをインプロセスで使用する場合は必要ありません。

(2)　プロセスの再起動方法

システムでプロセスが異常終了した場合のプロセスの再起動方法について説明します。

なお，CTMに関連するプロセスが異常終了して再起動できない場合は，次の手順で対処してください。

プロセスが再起動できない場合，出力されたエラーメッセージからトラブルの要因を調査する。

ctmrasgetコマンドを実行してCTMの実行環境のバックアップを取得する。

(a)　再起動の手順

プロセスの再起動（回復）手順を次の表に示します。

表2-9　プロセスの再起動（回復）手順

異常プロセス
開始コマンド
再起動（回復）手順

データベースサーバ
－
DBサーバを再起動してください。

OpenTP1
－
OpenTP1を再起動してください。

パフォーマンストレーサ
cprfstart
パフォーマンストレーサを再起動してください。

スマートエージェント※1，※2
osagent
スマートエージェントを再起動してください。

CTMドメインマネジャ※1
ctmdmstart
CTMドメインマネジャを再起動してください。

CORBAネーミングサービス
nameserv
次に示す手順で対処してください。なお，CTMを使用しない場合，手順1および手順4は不要です。

CTMデーモンの強制停止

J2EEサーバの強制停止

CORBAネーミングサービスの再起動

CTMデーモンの再起動

J2EEサーバ再起動

CTMデーモン※1
ctmstart
次に示す手順で対処してください。

CORBAネーミングサービスの強制停止

J2EEサーバの強制停止

CORBAネーミングサービスの再起動

CTMデーモンの再起動

J2EEサーバの再起動

CTMレギュレータ
－
CTMデーモンによって自動再起動されるため，再起動は不要です。

SFOサーバ※3
cjstartsv
SFOサーバを再起動してください。

J2EEサーバ
cjstartsv
J2EEサーバを再起動してください。

Webサーバ
－
Webサーバを再起動してください。

（凡例）

－：使用する製品によって開始コマンドが異なる，または該当する開始コマンドがない

注※1

CTMを使用する場合に起動するプロセスです。

注※2

トランザクションサービスを使用する場合に起動するプロセスです。

注※3

メモリセッションフェイルオーバ機能を使用する場合に起動するプロセスです。

2.5.2　J2EEアプリケーションの強制停止に失敗した場合

J2EEアプリケーションの強制停止に失敗した場合，J2EEサーバによって，次の情報が出力されます。

メッセージ
メッセージログに出力されます。メッセージログの出力先については，「4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）」を参照してください。

スタックトレース
例外ログとスレッドダンプに出力されます。例外ログの出力先については，「4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）」を参照してください。スレッドダンプについては，「5.5　JavaVMのスレッドダンプの内容」を参照してください。

なお，J2EEアプリケーションの強制停止では，内部でメソッドキャンセルが実行されています。メソッドキャンセル実行時に出力される障害情報については，「付録C　機能ごとに出力されるログ情報」を参照してください。

2.5.3　データベースセッションフェイルオーバ機能でトラブルが発生した場合

ここでは，データベースセッションフェイルオーバ機能にトラブルが発生した場合の対処方法として，次の2種類のトラブルへの対処について説明します。

J2EEサーバでトラブルが発生した場合

データベースでトラブルが発生した場合

＜この項の構成＞

(1)　J2EEサーバでトラブルが発生した場合

(2)　データベースでトラブルが発生した場合

(1)　J2EEサーバでトラブルが発生した場合

データベース上のデータへの変更を含む処理中に，J2EEサーバの障害でプロセスがダウンした場合，データベースのロールバックで障害前の状態に戻るため，システムの整合性が保たれます。J2EEサーバの障害を取り除き，Webアプリケーションを再開することでトラブルを回復できます。

J2EEサーバのホストがハングアップした場合や，ネットワークに障害が発生した場合，データベースの操作が中断されレコードの排他（グローバルセッション情報のロック）が未解放の状態となるときがあります。この場合，J2EEサーバが回復しWebアプリケーションを再開する前に，未解放の排他を解放する必要があります。

参考

未解放の排他の解放には，クライアントからデータベースへの無効接続を検出し，接続セッションを強制終了させるなどの方法があります。未解放の排他の解放について，HiRDBを使用する場合は，マニュアル「HiRDB UAP開発ガイド」のUAP処理時間監視機能に関する説明を参照してください。Oracleを使用する場合は，Oracleのマニュアルを参照してください。

(2)　データベースでトラブルが発生した場合

データベースで障害が発生した場合，データベースを回復すればロールバックで障害前の状態に戻るため，データベースセッションフェイルオーバ機能を使用したWebアプリケーションは業務を再開できます。Webアプリケーションの再起動は必要ありません。

そのほかのデータベース障害時の対応については，各データベースのマニュアルを参照してください。

2.5.4　メモリセッションフェイルオーバ機能でトラブルが発生した場合

ここでは，メモリセッションフェイルオーバ機能にトラブルが発生した場合の対処方法として，次の2種類のトラブルへの対処について説明します。

J2EEサーバまたはWebサーバでトラブルが発生した場合

SFOサーバでトラブルが発生した場合

＜この項の構成＞

(1)　J2EEサーバまたはWebサーバでトラブルが発生した場合

(2)　SFOサーバにトラブルが発生した場合

(3)　メモリセッションフェイルオーバ機能で出力されるログの確認

(1)　J2EEサーバまたはWebサーバでトラブルが発生した場合

J2EEサーバまたはWebサーバでトラブルが発生した場合は，「2.2.1　トラブルへの対処の手順」に示した手順に従って対処してから，J2EEサーバまたはWebサーバを起動してください。J2EEサーバまたはWebサーバの起動方法については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「9.3　日常運用の操作」を参照してください。

なお，トラブルによってJ2EEサーバが停止した場合は，トラブルが発生したJ2EEサーバに対してリクエストを送信していたWebサーバも再起動してください。再起動しないと，リダイレクタは，すでに無効になっている常設コネクションを使用し続けます。この結果，トラブルが発生したJ2EEサーバにリクエストを転送して通信タイムアウトが発生するまで待ち状態になり，通信タイムアウト後，リクエストはエラーとしてクライアントに返却されることになります。

通信タイムアウトについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.6　通信タイムアウト（Webサーバ連携）」，またはマニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.9　通信タイムアウト（インプロセスHTTPサーバ）」を参照してください。

(2)　SFOサーバにトラブルが発生した場合

SFOサーバにトラブルが発生した場合は，J2EEサーバにトラブルが発生した場合と同様に，必要な資料を取得してトラブルの要因を取り除いたあとで，SFOサーバを再起動します。

なお，SFOサーバを再起動すると，J2EEサーバからSFOサーバに再接続する処理が実行されます。このとき，J2EEサーバとSFOサーバ間では，初期化時と同様のネゴシエーション処理が実行されます。

ネゴシエーション処理では，冗長化されたJ2EEサーバ上のJ2EEアプリケーション間で次の情報が共通になっているかが確認されます。

Webアプリケーションのコンテキストルート名

HttpSession数の上限値

セッション情報の最大サイズ

グローバルセッションIDが使用するHTTP Cookieの名称

SFOサーバ内のロック待ちでのタイムアウト時間

冗長化されたJ2EEサーバ上のJ2EEアプリケーション間でこれらの情報が異なっている場合，そのWebアプリケーションはメモリセッションフェイルオーバ機能が無効のまま処理を続けますが，SFOサーバへの再接続を行いません。

この場合は，該当するJ2EEアプリケーションを一度停止して，J2EEアプリケーションのメモリセッションフェイルオーバについての設定を正しく設定し直してから，J2EEアプリケーションを再起動してください。

(3)　メモリセッションフェイルオーバ機能で出力されるログの確認

メモリセッションフェイルオーバ機能を使用している場合，メモリセッションフェイルオーバ機能を使用するJ2EEサーバ，およびSFOサーバでログが出力されます。トラブルが発生した場合に必要に応じて確認してください。

J2EEサーバでのログの出力レベルと出力される内容の対応を，次の表に示します。

表2-10　J2EEサーバでのログの出力レベルと出力される内容の対応

ログ出力レベル
出力される内容

Error

メモリセッションフェイルオーバ機能開始，終了についての情報

SFOサーバとの接続についての情報

SFOサーバでの障害発生についての情報

グローバルセッション情報のサイズ見積もり機能が有効であることを通知する情報

グローバルセッション情報のサイズ見積もり機能によるサイズ情報

Warning

グローバルセッション情報の引き継ぎ処理についての情報

無効なグローバルセッション（有効期限切れ）のリクエストによってグローバルセッションIDが見つからなかったことの通知

Information

ヘルスチェックスレッドのチェック結果

SFOサーバでのログの出力レベルと出力される内容の対応を，次の表に示します。

表2-11　SFOサーバでのログの出力レベルと出力される内容の対応

ログ出力レベル
出力される内容

Error

SFOサーバの起動・停止に関する情報

SFOサーバで発生した障害に関する情報

グローバルセッション数が最大値に対して「0%」，「20%」，「40%」，「60%」，「80％」または「100％」になったことの通知

SFOサーバで有効期限切れによって破棄されたグローバルセッションの数

Warning

SFOサーバで有効期限切れによって破棄されたグローバルセッションのグローバルセッションID

グローバルセッション数の最大値を超えて作成要求があったことの通知

無効なグローバルセッション（有効期限切れ）の取得要求があったことの通知

Information

SFOサーバで有効期限切れによって破棄されたグローバルセッションの詳細情報

2.5.5　JPAアプリケーションでトラブルが発生した場合

JPAを使用したアプリケーションでトラブルが発生した場合の解析手順について説明します。

ここでは，代表的な障害の例とその場合の障害原因の解析手順を説明します。

なお，Cosminexus JPAプロバイダが出力する各ログ間の情報は，時刻，スレッドID／プロセスID，およびPersistenceUnit名を基にして対応づけます。取得したログでの原因の特定ができない場合で，再現性があるときには，ログレベルを上げて資料を取得してください。

＜この項の構成＞

(1)　ユーザアプリケーションでの例外発生

(2)　性能面での障害発生

(3)　トラブルシューティングで使用する資料

(1)　ユーザアプリケーションでの例外発生

ユーザアプリケーションで例外が発生した場合のユーザが実施する解析手順を説明します。例外が発生するタイミングは，アプリケーションの起動時（デプロイを含む）またはアプリケーションの実行時が考えられます。それぞれのタイミングで例外が発生したときの解析手順について説明します。

●アプリケーション起動時の例外発生

アプリケーションの起動時に例外が発生した場合の解析手順を次に示します。

メッセージログを確認する。
メッセージログに出力されたメッセージを参照します。メッセージマニュアルを参照して，出力されたメッセージIDの対処方法を確認します。また，対策を検討します。

アプリケーションの定義を確認する。
メッセージログの内容に従って，アプリケーション内のアノテーションの定義情報，persistence.xml，O/Rマッピングファイルの設定内容を見直し，設定内容に問題がないかどうかを確認してください。設定内容の確認で原因が判明しない場合，出力されたメッセージの対処方法が保守員連絡となっている場合は，保守員に連絡してください。

●アプリケーション実行時の例外発生

アプリケーション実行時に例外が発生した場合の解析手順を次に示します。

メッセージログを確認する。
メッセージログに出力されたメッセージから障害の事象を確認します。メッセージマニュアルを参照して，障害の概要をつかんでください。

例外ログを確認する。
例外ログに出力されたスタックトレースから，例外が発生した個所を特定します。例外が発生した原因がアプリケーションの処理内容に問題があるかどうかを確認します。アプリケーションの処理に問題がある場合は，アプリケーションを修正してください。
メッセージログの対処方法が保守員連絡になっている場合，アプリケーションの処理に問題がない場合などの原因が判明しないときには，保守員に連絡してください。

参考

メッセージマニュアルとは次の4冊のマニュアルを指します。

Cosminexus アプリケーションサーバ メッセージ 1

Cosminexus アプリケーションサーバ メッセージ 2

Cosminexus アプリケーションサーバ メッセージ 3

Cosminexus アプリケーションサーバ メッセージ 4

(2)　性能面での障害発生

特定の処理に時間が掛かっているなど，性能面で障害が発生した場合の解析手順を説明します。性能面で問題が発生するタイミングは，アプリケーション起動時またはアプリケーションの実行時が考えられます。

アプリケーションの起動時に性能面で問題がある場合には，保守員に連絡してください。アプリケーションの実行時に性能面で問題がある場合には，次に示す手順で問題の個所を特定してください。

PRFトレースを確認する。
PRFトレースの内容から処理に時間が掛かっている個所を特定します。ユーザ実装個所とCosminexus JPAプロバイダのどちらに障害の原因があるかを特定します。ユーザ実装個所に問題がある場合にはアプリケーションを修正するなどの対処を実施してください。Cosminexus JPAプロバイダの内部処理で処理に時間が掛かっている場合には保守員に連絡してください。

稼働ログを確認する。
発行したSQLを確認したい場合には，稼働ログを確認します。
例えば，次に示す場合などに該当するかどうかは，発行しているSQLを参照することで確認できます。

継承戦略にJOINEDを利用したため，エンティティの読み込みでJOIN操作が多発している。

コレクションで管理しているエンティティを操作したため，その延長で各要素に対してSELECTが発生している。

なお，Cosminexus JPAプロバイダで出力される稼働ログについては，「付録C.2　Cosminexus JPAプロバイダの稼働ログ」を参照してください。

(3)　トラブルシューティングで使用する資料

システムで障害が発生した場合，Cosminexus JPAプロバイダで必要とするトラブルシューティングの資料と資料の取得元を次の表に示します。

表2-12　Cosminexus JPAプロバイダで必要とするトラブルシューティングの資料と資料の取得元

トラブルシューティング資料
取得元
資料のファイル名称

メッセージログ
snapshot(1次)
メッセージログ

例外ログ
snapshot(1次)
障害発生時の例外情報

Cosminexus JPAプロバイダの稼働ログ
snapshot(1次)
CJPAの稼働ログ

J2EEサーバの定義情報
snapshot(1次)

J2EEサーバ用オプション定義ファイル

J2EEサーバ用ユーザプロパティファイル

J2EEサーバ用セキュリティポリシーファイル

J2EEサーバの作業ディレクトリに含まれるアプリケーションの定義情報
persistence.xml
snapshot(2次)

EJBサーバ作業ディレクトリの内容

Webコンテナ作業ディレクトリの内容

O/Rマッピングファイル

EJB，WARの属性ファイル

DB ConnectorのConnector属性ファイル
snapshot(2次)
Webコンテナ作業ディレクトリの内容

DB Connectorのログ
snapshot(1次)
J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ

性能解析トレース
snapshot(1次)
PRFデーモンおよびPRFコマンドのログ

J2EEサーバのスレッドダンプ
スレッドダンプ取得コマンド

接続するデータベースのSQLトレース
（ただし，トレース情報を採取している場合だけ）

HiRDBの場合
SQLトレース

マニュアル「HiRDB SQLリファレンス」を参照してください。

Oracleの場合
SQLトレースinit.oraでsql_trace=trueと設定時に取得されるトレースファイル

Oracleのマニュアルを参照してください。

2.5.6　JavaVMが異常終了した場合

JavaVMで異常終了が発生した場合の対処方法と，異常終了が発生した場合に出力される情報について説明します。

＜この項の構成＞

(1)　異常終了時の対処方法

(2)　異常終了時に出力される情報

(1)　異常終了時の対処方法

UNIXの場合，異常終了時には，次の手順で対処してください。なお，Windowsの場合には，この対処は不要です。

異常終了が発生したマシン上でjavatraceコマンドを実行します。
javatrace.logファイルが出力されます。javatraceコマンドの実行方法については，「4.18　JavaVMのスタックトレース情報」を参照してください。

取得したjavatrace.logファイルを，エラーリポートファイル（hs_err_pid<プロセスID>.log）とあわせて保守員に送付します。
エラーリポートファイルの取得方法については，「4.11　JavaVM出力メッセージログ（標準出力またはエラーリポートファイル）」を参照してください。

snapcoreコマンド（AIXの場合）またはcar_tar_Zコマンド（HP-UX，Linux，Solarisの場合）を実行します。
JavaVMの実行ファイルやトラブル発生時にロードされていたライブラリ，およびcoreダンプが，pax形式（AIXの場合）またはtar＋compress形式のデータアーカイブファイルとして作成されます。

作成されたアーカイブファイルを，保守員に送付します。

(2)　異常終了時に出力される情報

JavaVMで次の異常終了が発生した場合に出力される情報について説明します。

JavaVM処理中にCヒープ不足が発生した場合

JavaVM処理中のCヒープ不足以外のOutOfMemoryErrorが発生した場合

内部論理エラーが発生した場合

(a)　JavaVM処理中にCヒープ不足が発生した場合

Cヒープが不足すると，次のようなメッセージに続いて，メモリの状態，Javaヒープ情報，およびスタックトレース情報が標準出力およびエラーリポートファイル（hs_err_pid<プロセスID>.log）に出力されます。そのあとで，JavaVMが強制終了されます。

Exception in thread <スレッド名称> java.lang.OutOfMemoryError:requested <メモリ確保要求サイズ> bytes [ for <内部調査用メッセージ>] .

出力された情報を確認して対処してください。

(b)　JavaVM処理中のCヒープ不足以外のOutOfMemoryErrorが発生した場合

J2EEサーバを起動するときのオプションとして-XX:+HitachiOutOfMemoryAbortを設定している場合，次の要因によってOutOfMemoryErrorが発生したときに，メッセージとメモリダンプを出力してJavaVMが強制終了します。出力された情報を確認して対処してください。

ただし，Windows Server 2008，Windows 7，またはWindows Vistaの場合，メモリダンプは出力されません。また，OutOfMemoryハンドリング機能が有効の場合（-XX:+HitachiOutOfMemoryHandlingを設定している場合），OutOfMemoryError発生の要因がJavaヒープ不足またはPermヒープ不足のときには，強制終了しないことがあります。

強制終了する要因

Javaヒープ不足

Permヒープ不足

J2SEクラスライブラリでのCヒープ不足

なお，JavaVM処理中にCヒープ不足になった場合は，このオプションの指定に関係なく強制終了します。

終了時には，次のメッセージと，メモリダンプが出力されます。

java.lang.OutOfMemoryError occurred.
JavaVM aborted because of specified -XX:+HitachiOutOfMemoryAbort options.

強制終了するタイミング

JavaVMが強制終了するタイミングは，オプションの設定によって異なります。

オプションとして-XX:+HitachiOutOfMemoryStackTraceが指定されている場合は，スタックトレースが出力されたあとで終了します。ただし，あらかじめjava.io.File.deleteOnExitメソッドやjava.lang.Runtime.addShutdownHookメソッドによってJavaVM終了時に実行する処理を登録していた場合も，それらは実行されないで強制終了します。

オプションとして-XX:+HitachiOutOfMemoryAbortThreadDumpが指定されている場合は，スレッドダンプを出力したあとで終了します。特に，「Javaヒープ不足」または「Permヒープ不足」の場合は，オプションとして-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProfも設定されているときには，クラス別統計情報付きスレッドダンプを出力したあとで終了します。

OutOfMemoryハンドリング機能が有効な場合の動作

J2EEサーバを起動するときのオプションとして-XX:+HitachiOutOfMemoryAbortに加えて-XX:+HitachiOutOfMemoryHandlingを設定すると，OutOfMemoryハンドリング機能が有効になります。この場合，JavaヒープまたはPermヒープ不足が発生した際に，OutOfMemoryのハンドリングによって強制終了するかどうかの判定処理が実行されます。判定処理の結果，次に示すOutOfMemoryErrorスロー条件のすべてに合致した場合は，強制終了が実行されません。

OutOfMemoryErrorスロー条件

Javaヒープ不足，またはPermヒープ不足が原因のOutOfMemoryである。

Webコンテナ上のWebアプリケーション（Servlet／JSP）が実行中のリクエスト処理，EJBクライアントアプリケーションから呼び出されたEnterprise Beanが実行中の処理，Message-driven Beanが実行中の処理，またはTimer Serviceから呼び出されたEnterprise Beanが実行中の処理で発生したOutOfMemoryである。

OutOfMemoryErrorスロー除外条件に該当しない。

OutOfMemoryErrorスロー除外条件

今回のOutOfMemoryが発生した時刻から過去1時間以内のJavaヒープ不足が原因のOutOfMemoryの発生回数と，Permヒープ不足が原因のOutOfMemoryの発生回数の合計値（今回のOutOfMemoryを含む）が，-XX:HitachiOutOfMemoryHandlingMaxThrowCountオプションに指定した値よりも大きい。

詳細は，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiOutOfMemoryHandling（OutOfMemoryハンドリングオプション）」を参照してください。

OutOfMemoryハンドリング機能が有効な場合，Javaヒープ不足，およびPermヒープ不足が原因のOutOfMemory発生時に，OutOfMemoryの発生頻度に関する情報が日立JavaVMログファイルに出力されます。

(c)　内部論理エラーが発生した場合

内部論理エラーが発生すると，エラーが発生したJavaVMの情報，調査用のエラーIDおよび問題が発生したスレッドを示すメッセージが，標準出力およびエラーリポートファイル（hs_err_pid<プロセスID>.log）に出力されます。出力された情報を保守員に送付してください。

2.5.7　OutOfMemoryError発生時に運用管理エージェントが強制終了した場合

運用管理エージェント稼働中にjava.lang.OutOfMemoryErrorが発生した場合，ログを出力して，運用管理エージェントは強制終了されます。ログは次の場所に出力されます。

Windowsの場合
<Managerのログ出力ディレクトリ>¥adminagent.javalog[nn].log

UNIXの場合
<Managerのログ出力ディレクトリ>/adminagent.javalog[nn].log
注　[nn]は0～99の番号を示します。

なお，運用管理エージェントの終了処理ですべての論理サーバを停止する設定をしている場合に，運用管理エージェントが強制終了しても論理サーバは停止しません。運用管理エージェントの終了処理で論理サーバを停止する設定は，adminagent.properties（運用管理エージェントプロパティファイル）のadminagent.finalization.stop_serversキーに「true」を設定します。

また，Cosminexusのアプリケーションサーバで提供しているJDK以外を使用している場合は，OutOfMemoryErrorの発生による運用管理エージェントの強制終了はしません。

OutOfMemoryErrorの発生によって運用管理エージェントが強制終了した場合は次の作業を実施してください。

adminagentuser.cfgの次のオプションの設定値を見直します。
次のオプションの設定値を見直してください。
add.jvm.arg=-Xmx

運用管理エージェントを再起動します。

2.5.8　JP1と連携したシステムでトラブルが発生した場合

JP1と連携したシステムでトラブルが発生した場合，次に示す対処を実施する必要があります。

＜この項の構成＞

(1)　JP1/IMと連携したシステムでのトラブルへの対処

(2)　JP1/AJSと連携したシステムでのトラブルへの対処

(1)　JP1/IMと連携したシステムでのトラブルへの対処

JP1/IMと連携したシステムで予想されるトラブルとその対処方法を次に示します。

表2-13　JP1/IMと連携したシステムで予想されるトラブルとその対処方法

トラブルの種類
対処方法

監視ツリーの自動生成時にトラブルが発生した
トラブルが発生したら，JP1/Baseのプラグインサービスログのファイルに出力されたCosminexusアダプタコマンドのメッセージを基にトラブルの発生要因を調査してください。JP1/Baseのプラグインサービスログのファイルの詳細については，マニュアル「JP1/Base 運用ガイド」を参照してください。

JP1イベントがJP1/IMに通知されない
アプリケーションサーバで構築したシステムからJP1/IMにJP1イベントが発行されているかどうか，運用管理エージェント・運用監視エージェント・Management Serverのログを確認してください。運用管理エージェント・運用監視エージェント・Management Serverのログの格納場所については，「4.3.1　Cosminexus Component Containerのログの取得」，または「4.4.1　Cosminexus Component Containerのログの取得（バッチアプリケーションを実行するシステム）」を参照してください。
運用管理エージェント・運用監視エージェント・Management Serverのログの内容に応じて，次の対処を実施してください。

JP1イベント発行のログが出力されていない場合，運用管理サーバ※でのJP1イベント発行の設定内容を確認してください。

JP1イベント発行のログが出力されている場合，JP1統合運用管理サーバでのJP1/Baseの構成定義の作成内容を確認してください。また，運用管理サーバ※およびJ2EEサーバでのJP1/Baseのイベントサービスの動作環境設定内容を確認してください。

運用管理サーバ※およびJP1統合運用管理サーバでの障害監視の設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「16.3.2　運用管理サーバの設定」を参照してください。

JP1/IM-Viewのモニタ起動操作を実行したあとWebブラウザが起動しない
モニタ起動コマンドをコピーしたディレクトリに格納されているmngsvrmonitor.logに出力されたメッセージを基にトラブルの発生要因を調査してください。

注※　アプリケーションサーバの運用管理サーバのことです。

(2)　JP1/AJSと連携したシステムでのトラブルへの対処

JP1/AJS連携による運用管理コマンド（mngsvrutil）の自動実行でエラーが発生した場合，JP1/AJS-Viewのジョブネットモニタウィンドウから，トラブルが発生したジョブの詳細情報を表示し，実行結果を確認してください。実行結果詳細に表示されたmngsvrutilコマンドのエラーメッセージを基にトラブルの発生要因を調査してください。JP1/AJS-Viewでの操作の詳細については，マニュアル「JP1/Automatic Job Management System 操作ガイド」を参照してください。

2.5.9　1:1系切り替えシステムでトラブルが発生した場合

1:1系切り替えシステムで，待機系のホストへの系切り替え処理がデータベースサーバの障害（サーバダウンやデッドロックなど）によってタイムアウトした場合の対処について，OSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

ログを取得してから，手動で待機系ホストをオンラインにしてください。

(a)　1:1系切り替えシステムのログの取得

1:1系切り替えシステムでトラブルが発生した場合，クラスタログを取得する必要があります。Windowsを標準パスにインストールした場合のクラスタログの出力先を次に示します。

C:¥WINDOWS¥cluster¥cluster.log

クラスタログには次の情報が出力されます。

クラスタサービスの稼働ログ

VBScriptの構文にエラーがあった場合のエラーメッセージ

汎用スクリプトのResource.LogInformationメソッド

その他のメッセージ

クラスタログの詳細については，Windowsのドキュメントを参照してください。

また，J2EEサーバが動作しない場合は，Cosminexus Component Containerのログも参照してください。

(b)　1:1系切り替えシステムの手動リカバリ

次の手順で，1:1系切り替えシステムを手動でリカバリしてください。

データベースを再起動するなどして，タイムアウトした原因を解消します。

待機系のホストの対象リソースをオンラインにします。

(2)　UNIXの場合

データベースを再起動するなどして，タイムアウトした原因を解消してください。

2.5.10　N:1リカバリシステムでトラブルが発生した場合

N:1リカバリシステムでトラブルが発生した場合のリカバリ手順について，OSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

N:1リカバリシステムで，待機系のホスト（リカバリ専用サーバ）でのリカバリ処理がデータベースサーバの障害（サーバダウンやデッドロックなど）によってタイムアウトした場合，ログを取得して，手動でリカバリを実行してください。リカバリ手順を次に示します。

N:1系切り替えシステムのログを取得します。
N:1リカバリシステムでトラブルが発生した場合，クラスタログを取得する必要があります。取得するログは，1:1系切り替えシステムでトラブルが発生した場合に取得するログと同じです。取得するログの詳細については，「2.5.9　1:1系切り替えシステムでトラブルが発生した場合」を参照してください。

N:1系切り替えシステムを手動でリカバリします。
次のどちらかの方法で，N:1リカバリシステムを手動でリカバリしてください。

待機系のホストの対象リソースをオンラインにする

J2EEサーバのトランザクション回復コマンド（cjstartrecover）を実行する

(a)　待機系のホストの対象リソースをオンラインにしてリカバリを実行する

待機系のホストの対象リソースをオンラインにしてリカバリを実行する手順について説明します。

データベースを再起動するなどして，タイムアウトした原因を解消します。

待機系のホストの対象リソースをオンラインにします。

(b)　J2EEサーバのトランザクション回復コマンド（cjstartrecover）を実行してリカバリを実行する

J2EEサーバのトランザクション回復コマンド（cjstartrecover）を実行してリカバリを実行する手順について説明します。

データベースを再起動するなどして，タイムアウトした原因を解消します。

待機系のホストの汎用スクリプトの「Dir_Name」に指定したパスにフォルダを作成します。
すでにフォルダが存在する場合は，削除してからフォルダを作成してください。

待機系のホストの汎用スクリプトがオンラインのときに，クラスタのログを参考に，cjstartrecoverを実行します。

リカバリに成功したら，「Dir_Name」に指定したパスに作成したフォルダを削除します。

cjstartrecoverコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstartrecover（J2EEサーバのトランザクション回復）」を参照してください。

(2)　UNIXの場合

N:1リカバリシステムで，待機系のホスト（リカバリ専用サーバ）でのリカバリ処理がデータベースサーバの障害（サーバダウンやデッドロックなど）によってタイムアウトした場合，次の手順に従って手動でリカバリを実行します。

データベースを再起動するなどして，タイムアウトした原因を解消します。

待機系のホストで，ダウンした実行系のホストに対応するmonbeginを実行します。

# monbegin サーバの識別名

下線部分には，serversファイルのオペランド「alias」に指定されている実行系のサーバの識別名を指定します。

待機系のホストで，ダウンした実行系のホストに対応するmonactを実行します。

# monact サーバの識別名

下線部分には，serversファイルのオペランド「alias」に指定されている実行系のサーバの識別名を指定します。
これによって，待機系のホスト（リカバリ専用サーバ）で，ダウンした実行系のホストで未決着だったトランザクションのリカバリ処理が実行されます。

参考

serversファイルの定義など，HAモニタでのサーバ対応の環境設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「21.5.4　HAモニタの環境設定」を参照してください。

2.5.11　ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合

ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合の対処は，1:1系切り替えシステムでトラブルが発生した場合と同じです。詳細については，「2.5.9　1:1系切り替えシステムでトラブルが発生した場合」を参照してください。

2.5.12　EJBクライアントでトラブルが発生した場合

グローバルトランザクションを使用しているEJBクライアントがダウンした場合，グローバルトランザクションをリカバリする必要があります。グローバルトランザクションのリカバリは，EJBクライアントを再起動することで実行できます。

グローバルトランザクションのリカバリの処理が完了したかどうかを確認する方法を次に示します。

アプリケーションサーバでcjlisttrnコマンドを実行して，トランザクションがアクティブな状態になっているかを確認します。cjlisttrnコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjlisttrn（稼働中のJ2EEサーバのトランザクション情報の表示）」を参照してください。

リソースアダプタを停止できるかどうかを確認してください。停止できる場合はグローバルトランザクションのリカバリ処理が完了しています。

アプリケーションサーバが正常停止できるかどうかを確認してください。正常停止できる場合はグローバルトランザクションのリカバリ処理が完了しています。

各リソースが提供するツール，コマンドなどを使用して確認してください。

また，複数のEJBクライアントが存在する場合に，どのEJBクライアントがグローバルトランザクションのリカバリに必要なのかを調査する手順を次に示します。

cjlisttrnコマンドを-pendingオプションを指定して実行して未決着のトランザクションを確認します。

実行形式

cjlisttrn [<サーバ名称>] -pending -bqual

実行例

cjlisttrn MyServer -pending -bqual

手順1.で確認した未決着のトランザクションから，次のすべての条件に当てはまるトランザクションがあるかどうかを確認します。

cjlisttrnコマンドを発行するたびに経過時間が増加している

ブランチの種類が「Sub」または「Sub(recovered)」である

グローバルトランザクションIDに，停止したEJBクライアントの起動時に出力されるKFCB40051-IメッセージのTmHashの値が含まれる

これらのすべての条件に当てはまるトランザクションが，グローバルトランザクションのリカバリに必要です。

2.6　トラブルシューティングに関連する留意事項

ここでは，トラブルシューティングに関連する留意事項について説明します。

＜この節の構成＞

2.6.1　EJBクライアントアプリケーションのシステムログに関する留意事項

2.6.2　CTM使用時の留意事項

2.6.3　PRF使用時の留意事項

2.6.1　EJBクライアントアプリケーションのシステムログに関する留意事項

ここでは，サブディレクトリ共有モードのEJBクライアントアプリケーションで出力されるシステムログを参照する場合，およびサブディレクトリ共有モードのEJBクライアントアプリケーションを運用する場合の留意事項について説明します。

ログファイル内で有効なデータは，ファイルの先頭からEOFまでです。
EJBクライアントアプリケーションのシステムログでは，ログファイルがラップアラウンドしたときにラップアラウンド以前のログのデータが削除されないで，先頭から順番に上書きされていきます。このため，ログファイルを参照するときには，EOF以降のデータは無視してください。EOF以降のデータは，ラップアラウンド以前のログファイルの無効なデータです。
有効なログファイルのデータの末尾は，次に示すデータになります。

EOF CRLF CRLF CRLF CRLF----------< End of Data >----------CRLF CRLF

EOFはトレースデータの終端を表す文字（0x1A）です。CRLFは，改行（0x0D，0x0A）を表します。
出力例を次に示します。なお，トレースの終端を表す文字は，［EOF］と表記します。

Windowsの場合

**** Windows XP 5.1               TZ=GMT+09:00                     xxxx/xx/xx xx:xx:xx.xxx
    yyyy/mm/dd hh:mm:ss.sss               pid      tid      message-id            message(LANG=ja)
0000 xxxx/xx/xx xx:xx:xx.xxx     HEJB       BE3F6FE9 015EE671 KDJEXXXXX-W           xxxxxxxxx
0001 xxxx/xx/xx xx:xx:xx.xxx     HEJB       BE3F6FE9 015EE671 KDJEYYYYY-I           yyyyyyyyy
0002 xxxx/xx/xx xx:xx:xx.xxx     HEJB       BE3F6FE9 015EE671 KDJEZZZZZ-I           zzzzzzzzz
[EOF]

----------< End of Data >----------

<<ラップアラウンド前の無効なデータ>>…
…

…

UNIXの場合

**** "OS名（OSバージョンなど含む）"               TZ=Asia/Tokyo                     xxxx/xx/xx xx:xx:xx.xxx
    yyyy/mm/dd hh:mm:ss.sss                      pid      tid      message-id            message(LANG=ja)
0000 xxxx/xx/xx xx:xx:xx.xxx     HEJB             BE3F6FE9 015EE671 KDJEXXXXX-W           xxxxxxxxx
0001 xxxx/xx/xx xx:xx:xx.xxx     HEJB             BE3F6FE9 015EE671 KDJEYYYYY-I           yyyyyyyyy
0002 xxxx/xx/xx xx:xx:xx.xxx     HEJB             BE3F6FE9 015EE671 KDJEZZZZZ-I           zzzzzzzzz
[EOF]

----------< End of Data >----------

<<ラップアラウンド前の無効なデータ>>…
…
…

EJBクライアントアプリケーションのプロセス起動時に，システムプロパティのejbserver.logger.channels.define.<チャネル名>.filenumキーで指定した面数のトレースファイルはすべて作成されます。このとき，トレースファイルは空白（0x20）で初期化されます。

ユーザログファイルの容量は，システムプロパティのejbserver.logger.channels.define.<チャネル名>.filesizeキーで指定した容量で固定です。指定したサイズのトレースファイルがプロセス起動時に作成されます。このため，ログが出力されるのに伴って，容量が増減することはありません。

ログファイルの容量または面数を変更する場合，該当するログファイルに出力しているプロセスをすべて停止して，ログファイルとmmapディレクトリ以下のログ管理ファイルを別のディレクトリへ移動，または削除する必要があります。

ログファイルの容量または面数を変更する場合以外では，ログファイル，およびログ管理ファイルを変更または削除しないでください。変更または削除した場合，以降のログが正しく出力されなくなるおそれがあります。

サブディレクトリ共有モードで動作するEJBクライアントアプリケーションがログを出力しているサブディレクトリを，cjcldellogコマンドで削除しないでください。削除した場合，以降のログが正しく出力されなくなるおそれがあります。

すでにサブディレクトリ専有モードで動作しているEJBクライアントアプリケーションがある環境でサブディレクトリ共有モードでEJBクライアントアプリケーションを開始する場合，システムプロパティのejbserver.client.ejb.logキーに，サブディレクトリ専有モードで動作しているEJBクライアントアプリケーションとは異なる値を指定してください。同じ値を指定した場合，サブディレクトリ専有モードで動作するEJBクライアントアプリケーションのサブディレクトリ数を正しく管理できません。
また，サブディレクトリ共有モードで動作しているEJBクライアントアプリケーションがある環境では，サブディレクトリ専有モードで開始するEJBクライアントアプリケーションで，システムプロパティのejbserver.client.ejb.logキーに"system"を指定しないでください。サブディレクトリ共有モードではejbserver.client.ejb.logキーのデフォルト値として"system"を使用するため，サブディレクトリ数が正しく管理できなくなります。

すでにアプリケーションサーバ 06-50よりも前のバージョンで構築した環境で，サブディレクトリ専有モードで動作させているEJBクライアントアプリケーションを，システムプロパティejbserver.client.ejb.logキーに"system"を指定した状態で06-50以降に移行した場合，サブディレクトリ専有モードのEJBクライアントアプリケーションとサブディレクトリ共有モードのEJBクライアントアプリケーションが混在することになります。この場合，次の図のような状態になります。

図2-5　サブディレクトリ専有モードで動作させているEJBクライアントアプリケーションがある環境にサブディレクトリ共有モードで動作するEJBクライアントアプリケーションを混在させた場合のディレクトリ構成

このように，混在した環境では，サブディレクトリ専有モードのEJBクライアントアプリケーションが作成できるサブディレクトリの数が，サブディレクトリ共有モードのEJBクライアントアプリケーションが使用するディレクトリの数（1個）分，少なくなります。なお，すでにdirectorynumで指定した数分のサブディレクトリが作成された状態で移行した場合は，サブディレクトリ専有モードで使用するサブディレクトリの数が減ることはありません。

cjclstartapコマンドはサブディレクトリ共有モードだけで使用してください。サブディレクトリ専有モードでcjclstartapコマンドを実行してEJBクライアントを起動した場合，EJBクライアント起動コマンドの稼働時の情報（cjclstartap[n].log）が正しく表示されません。

2.6.2　CTM使用時の留意事項

ここでは，CTM使用時の留意事項について説明します。CTMでは次のことに注意してください。

CTMの障害情報は，CTMドメイン単位にCTMSPOOL環境変数の下に取得されています。CTMデーモンおよびCTMドメインマネジャのダウンの場合には再開始時にも障害情報を取得するため，障害発生後に障害情報を退避してください。

2.6.3　PRF使用時の留意事項

ここでは，PRF使用時の留意事項について説明します。PRFでは次のことに注意してください。

PRFの障害情報は，PRFデーモン識別子単位にPRFSPOOL環境変数の下に取得されています。PRFデーモンのダウンの場合には再開始時にも障害情報を取得するため，障害発生後に障害情報を退避してください。

3.　トラブルシューティング（資料取得の設定）

アプリケーションサーバで構築したシステムでは，トラブル発生時に自動でトラブルシューティングに必要な情報を取得できます。トラブルシューティングに必要な資料には，運用開始前に準備が必要なものもあります。この章では，それぞれの資料取得の設定方法について説明します。

＜この章の構成＞

3.1　この章の構成

3.2　資料取得の設定の概要

3.3　実行環境での設定

3.1　この章の構成

トラブルシューティングに関する説明のうち，トラブルシューティングに必要な資料を取得するための設定について説明します。

トラブルシューティングに必要な資料は，デフォルトの設定で自動的に取得できますが，一部の資料は運用を開始する前に設定が必要です。また，デフォルトで設定されているログの出力先，サイズなどを変更することもできます。

トラブル発生時に取得する情報のうち，次に示す情報を取得するためには，運用を開始する前に設定が必要です。

日立固有のJavaVMログ（日立JavaVMログファイル）
このファイルには，JavaVMのガーベージコレクションのログも出力されます。

ユーザダンプ（Windowsの場合）

coreダンプ（UNIXの場合）

OSの統計情報（Windowsの場合）

これらの情報については，必要に応じてシステム構築時に取得するための設定をしてください。

この章の構成を次の表に示します。

表3-1　この章の構成（トラブルシューティング（資料取得の設定））

分類 | タイトル | 参照先
解説 | 資料取得の設定の概要 | 3.2
設定 | 実行環境での設定 | 3.3

なお，トラブルシューティングの概要，資料の出力方法および出力内容については，それぞれ次の個所を参照してください。

トラブルシューティングの概要と，資料を自動で出力する方法
「2.　トラブルシューティング（資料取得と対処の概要）」

収集する資料の出力先と，資料を個別に出力する方法
「4.　トラブルシューティング（資料の出力先と出力方法）」

資料に出力される内容
「5.　トラブルシューティング（資料の出力内容）」

3.2　資料取得の設定の概要

トラブルシューティングに必要な資料のうち，一部の資料は，運用を開始する前に資料取得のための設定をしておく必要があります。例えば，OSの統計情報，ユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合），JavaVMのガーベージコレクションのログなどは，事前に取得のための設定をしておかないと，取得できません。これらの資料はトラブルシューティングで必要となるため，取得することをお勧めします。

また，デフォルトの設定で取得できるようになっている資料については，特に設定は不要ですが，ログの出力先やサイズなどを変更したい場合には，簡易構築定義ファイルやユーザ定義ファイルを編集して，設定を変更してください。

トラブルシューティングに必要な資料と，事前設定または設定変更の対象となる資料との対応を次の表に示します。

表3-2　トラブルシューティングに必要な資料と，事前設定または設定変更の対象となる資料との対応

トラブルシューティングに必要な資料
事前設定または設定変更の対象となる資料

アプリケーションサーバのログ
メッセージログ

snapshotログ

Management Serverのログ

J2EEサーバのログ

バッチサーバのログ

SFOサーバのログ

Webサーバのログ

リダイレクタのログ

アプリケーションのユーザログ

インプロセスHTTPサーバのログ

Cosminexus Managerのログ

コンソールログ

リソースアダプタのログ

Cosminexus TPBrokerのトレースファイル

Cosminexus JMSプロバイダのログ

サーバ管理コマンドのログ

ユーザログ

例外ログ

保守用ログ

EJBクライアントアプリケーションのシステムログ
メッセージログ

システムログ※

アプリケーションのユーザログ

ユーザログ

例外ログ

保守用ログ

性能解析トレース
性能解析トレースファイル

JavaVMのスレッドダンプ
JavaVMの資料

JavaVMのガーベージコレクションのログ
JavaVMの資料

メモリダンプ

ユーザダンプ（Windowsの場合）

coreダンプ（UNIXの場合）

日立JavaVMログファイル
JavaVMの資料

エラーリポートファイル
－

OSの状態・ログ
－

OSの統計情報
OSの統計情報

定義情報
－

作業ディレクトリ
－

リソースの設定
－

Webサーバのログ
－

JavaVMのスタックトレース
－

明示管理ヒープ機能のイベントログ
JavaVMの資料

（凡例）－：事前設定，設定変更の対象となる資料なし

注

この表のほかに，事前設定または設定変更の対象となる資料に，稼働情報ファイルがあります。稼働情報ファイルは，機能ごとにサーバ性能，リソースの情報などの稼働情報を取得できるファイルで，システムの運用監視に利用できます。稼働情報ファイルはデフォルトで取得できます。

注※

EJBクライアントアプリケーションのシステムログについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.8　EJBクライアントアプリケーションのシステムログ出力」を参照してください。

この節では，アプリケーションを実行するシステムごとに，事前設定または設定変更の対象となる資料の種類と設定の概要について説明します。

＜この節の構成＞

3.2.1　資料取得の設定の概要（J2EEアプリケーションを実行するシステム）

3.2.2　資料取得の設定の概要（バッチアプリケーションを実行するシステム）

3.2.1　資料取得の設定の概要（J2EEアプリケーションを実行するシステム）

資料のデフォルトの設定（ログの出力先やサイズ）を変更する場合や，デフォルトで取得できない資料を取得する場合には，簡易構築定義ファイルやユーザ定義ファイルを編集して設定します。ここでは，J2EEアプリケーションを実行するシステムで，事前に資料（ログ）を取得するための設定が必要かどうかについて説明します。また，設定方法の概要についても説明します。

資料取得のための設定を次の表に示します。

表3-3　資料取得のための設定（J2EEアプリケーションを実行するシステム）

資料の種類
資料取得のための設定
設定の要否
参照先マニュアル
参照個所

snapshotログ
snapshotログの収集先，収集方法や収集のタイミングを変更する場合には，ユーザ定義ファイルを編集します。
△
このマニュアル
3.3.1，3.3.3

Management Serverのログ
mserver.properties（Management Server環境設定ファイル）で，ログの出力レベルや，ログファイルの面数などを設定します。
△
このマニュアル
3.3.5

性能解析トレースファイル
mserver.properties（Management Server環境設定ファイル）で，性能解析トレースファイルの面数を設定します。
また，簡易構築定義ファイルで，論理パフォーマンストレーサ（performance-tracer）の<configuration>タグ内に，パフォーマンストレーサのトレース取得レベルや，PFRトレースファイルの面数などを指定します。
△
このマニュアル
6.5

J2EEサーバのログ
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ログの出力レベル，サイズ，面数などを設定します。
また，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.systemlog.enabledで，システムログ出力の設定が有効になっている場合，J2EEサーバの起動，停止および異常終了のメッセージがイベントログ（UNIXの場合，syslog）に出力されます。
△
このマニュアル
3.3.6

SFOサーバのログ
簡易構築定義ファイルで，論理SFOサーバ（sfo-server）の<configuration>タグ内に，ログの出力レベル，サイズ，面数などを設定します。
△
このマニュアル
3.3.8

Webサーバのログ
簡易構築定義ファイルで，論理Webサーバ（web-server）の<configuration>タグ内に，Webサーバのログの出力レベル，出力先などを設定します。
△
このマニュアル
3.3.9

リダイレクタのログ
簡易構築定義ファイルで，論理Webサーバ（web-server）の<configuration>タグ内に，リダイレクタのログの出力レベル，サイズ，面数などを設定します。
また，mod_jk.confにログファイル名のプリフィックスを指定します。
△
このマニュアル
3.3.10

アプリケーションのユーザログ
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ロガーやハンドラの設定，ログの出力レベル，サイズ，面数などを設定します。また，server.policyで，セキュリティポリシーを設定します。
○
Cosminexus アプリケーションサーバ 機能解説 拡張編
12章

インプロセスHTTPサーバのログ
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，インプロセスHTTPサーバのログ出力の有無，ファイル面数などを設定します。また，アクセスログは，フォーマットを定義することで，出力形式をカスタマイズできます。
インプロセスHTTPサーバのアクセスログのカスタマイズについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.17.2　インプロセスHTTPサーバのアクセスログのカスタマイズ」を参照してください。
△
このマニュアル
3.3.11

稼働情報ファイル
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）または論理SFOサーバ（sfo-server）の<configuration>タグ内に，稼働情報ファイルの出力先や面数などを設定します。
△
Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編
3.3.3

Cosminexus Managerのログ
manager.cfgで統合ログの面数やサイズを指定します。
△
このマニュアル
3.3.12

コンソールログ
adminagent.propertiesでコンソールログの出力の有無，面数やサイズを設定します。
△
Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編
11.3

リソースアダプタのログ
サーバ管理コマンドを使用して，リソースアダプタ単位でのログ出力の有無を設定します。
また，簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ログの出力レベル，サイズ，面数を設定します。
△
このマニュアル
3.3.13

Cosminexus TPBrokerのトレースファイル
簡易構築定義ファイル（論理J2EEサーバ（j2ee-server）の<configuration>タグ内），サーバ管理コマンド用のusrconf.bat（UNIXの場合はusrconf）とusrconf.propertiesで，トレースファイルの出力先や面数などを設定します。
△
このマニュアル
3.3.14

Cosminexus JMSプロバイダのログ
commonconfig.propertiesまたはconfig.propertiesと，admin.propertiesで，CJMSPブローカーおよび管理コマンド（cjmsicmd）のログの出力レベル，面数，ログファイルサイズを設定します。
また，Connector属性ファイルで，CJMSPリソースアダプタのログの出力レベル，面数，ログファイルサイズを設定します。
△
このマニュアル
3.3.15

OSの統計情報
Windowsの場合，Windowsのシステムモニタでシステムリソースのパフォーマンスデータ取得の設定をします。
○
このマニュアル
3.3.16

ユーザダンプ
Windowsの場合，ワトソン博士または環境変数（CJMEMDUMP_PATH）で，ユーザダンプ取得の設定をします。
○
このマニュアル
3.3.17

coreダンプ
UNIXの場合，簡易構築定義ファイルやシェルコマンドで，coreファイル取得の設定をします。
○
このマニュアル
3.3.18

JavaVMの資料
簡易構築定義ファイルで，JavaVMのスレッドダンプ日立固有のJavaVMログ（日立JavaVMログファイル）の出力方法や出力内容などの設定をします。また，明示管理ヒープ機能のイベントログを出力するファイル名や，ログの出力レベルなどを設定します。
○
このマニュアル
3.3.19

サーバ管理コマンドのログ
サーバ管理コマンド用のusrconf.bat（UNIXの場合はusrconf）とusrconf.propertiesで，ログの出力レベルなどを設定できます。
△
Cosminexus アプリケーションサーバ システム構築・運用ガイド
8.8.1

（凡例）

○：資料を取得する場合には，設定が必要

△：デフォルトの資料取得の設定を変更する場合だけ，設定が必要

この表に示したログは，snapshotログで一括収集できます。ただし，Cosminexus TPBrokerのトレースファイルについては，収集できるものと収集できないものが混在しています。このほかにも，snapshotログのデフォルトの設定で取得できないログについては，取得のための設定をしたり，snapshotログの収集先に追加したりする必要があります。また，ユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合）については，固定のファイル名に対して収集します。障害発生時に収集するためには，ユーザ作成の障害検知時コマンドを利用する必要があります。

なお，次のログはログ出力先を変更できません。

セットアップ時に作成されるinstall.log，移行コマンドなどのログファイル

次のディレクトリに出力されるJavaのスレッドダンプファイル

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>

ログの種類やデフォルト値，チャネル名，取得できるログの詳細や取得方法については，「2.4　取得が必要な資料の種類」を参照してください。

3.2.2　資料取得の設定の概要（バッチアプリケーションを実行するシステム）

資料のデフォルトの設定（ログの出力先やサイズ）を変更する場合や，デフォルトで取得できない資料を取得する場合には，簡易構築定義ファイルやユーザ定義ファイルを編集して設定します。ここでは，バッチアプリケーションを実行するシステムで，事前に資料（ログ）を取得するための設定が必要かどうかについて説明します。また，設定方法の概要についても説明します。

資料取得のための設定を次の表に示します。

表3-4　資料取得のための設定（バッチアプリケーションを実行するシステム）

資料の種類
資料取得のための設定
設定の要否
参照先マニュアル
参照個所

snapshotログ
snapshotログの収集先，収集方法や収集のタイミングを変更する場合には，ユーザ定義ファイルを編集します。
△
このマニュアル
3.3.2，3.3.4

Management Serverのログ
mserver.properties（Management Server環境設定ファイル）で，ログの出力レベルや，ログファイルの面数などを設定します。
△
このマニュアル
3.3.5※

性能解析トレースファイル
mserver.properties（Management Server環境設定ファイル）で，性能解析トレースファイルの面数を設定します。
また，簡易構築定義ファイルで，論理パフォーマンストレーサ（performance-tracer）の<configuration>タグ内に，パフォーマンストレーサのトレース取得レベルや，PFRトレースファイルの面数などを指定します。
△
このマニュアル
6.5※

バッチサーバのログ
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ログの出力レベル，サイズ，面数などを設定します。
また，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.systemlog.enabledで，システムログ出力の設定が有効になっている場合，バッチサーバの起動，停止および異常終了のメッセージがイベントログ（UNIXの場合，syslog）に出力されます。
△
このマニュアル
3.3.7

アプリケーションのユーザログ
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ロガーやハンドラの設定，ログの出力レベル，サイズ，面数などを設定します。また，server.policyで，セキュリティポリシーを設定します。
○
Cosminexus アプリケーションサーバ 機能解説 拡張編
12章

稼働情報ファイル
簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，稼働情報ファイルの出力先や面数などを設定します。
△
Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編
3.3.3

Cosminexus Managerのログ
manager.cfgで統合ログの面数やサイズを指定します。
△
このマニュアル
3.3.12※

コンソールログ
adminagent.propertiesでコンソールログの出力の有無，面数やサイズを設定します。
△
Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編
11章※

リソースアダプタのログ
サーバ管理コマンドを使用して，リソースアダプタ単位でのログ出力の有無を設定します。
また，簡易構築定義ファイルで，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ログの出力レベル，サイズ，面数を設定します。
△
このマニュアル
3.3.13※

Cosminexus TPBrokerのトレースファイル
簡易構築定義ファイル（論理J2EEサーバ（j2ee-server）の<configuration>タグ内），サーバ管理コマンド用のusrconf.bat（UNIXの場合はusrconf）とusrconf.propertiesで，トレースファイルの出力先や面数などを設定します。
△
このマニュアル
3.3.14※

OSの統計情報
Windowsの場合，Windowsのシステムモニタでシステムリソースのパフォーマンスデータ取得の設定をします。
○
このマニュアル
3.3.16※

ユーザダンプ
Windowsの場合，ワトソン博士で，ユーザダンプ取得の設定をします。
○
このマニュアル
3.3.17※

coreダンプ
UNIXの場合，簡易構築定義ファイルやシェルコマンドで，coreファイル取得の設定をします。
○
このマニュアル
3.3.18※

JavaVMの資料
簡易構築定義ファイルで，JavaVMのスレッドダンプや日立固有のJavaVMログ（日立JavaVMログファイル）の出力方法や出力内容などの設定をします。また，明示管理ヒープ機能のイベントログを出力するファイル名や，ログの出力レベルなどを設定します。
○
このマニュアル
3.3.19※

サーバ管理コマンドのログ
サーバ管理コマンド用のusrconf.bat（UNIXの場合はusrconf）とusrconf.propertiesで，ログの出力レベルなどを設定できます。
△
Cosminexus アプリケーションサーバ システム構築・運用ガイド
8.8.1

（凡例）

○：資料を取得する場合には，設定が必要

△：デフォルトの資料取得の設定を変更する場合だけ，設定が必要

注※

J2EEサーバの場合と設定方法に差異はありません。参照先の記述の「J2EEサーバ」を「バッチサーバ」に置き換えてお読みください。

この表に示したログは，snapshotログで一括収集できます。ただし，Cosminexus TPBrokerのトレースファイルについては，収集できるものと収集できないものが混在しています。このほかにも，snapshotログのデフォルトの設定で取得できないログについては，取得のための設定をしたり，snapshotログの収集先に追加したりする必要があります。また，ユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合）については，固定のファイル名に対して収集します。障害発生時に収集するためには，ユーザ作成の障害検知時コマンドを利用する必要があります。

なお，次のログはログ出力先を変更できません。

セットアップ時に作成されるinstall.log，移行コマンドなどのログファイル

次のディレクトリに出力されるJavaのスレッドダンプファイル

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>

ログの種類やデフォルト値，チャネル名，取得できるログの詳細や取得方法については，「2.4　取得が必要な資料の種類」を参照してください。

3.3　実行環境での設定

トラブルシューティングに必要な資料のうち，運用を開始する前に設定が必要な資料や，デフォルトの設定を変更できる資料があります。この節では，各資料の設定方法について説明します。なお，事前設定または設定変更の対象となる資料については，「3.2　資料取得の設定の概要」を参照してください。

＜この節の構成＞

3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）

3.3.2　障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）

3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）

3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）

3.3.5　Management Serverのログ取得の設定

3.3.6　J2EEサーバのログ取得の設定

3.3.7　バッチサーバのログ取得の設定

3.3.8　SFOサーバのログ取得の設定

3.3.9　Webサーバのログ取得の設定

3.3.10　リダイレクタのログ取得の設定

3.3.11　インプロセスHTTPサーバのログ取得の設定

3.3.12　Cosminexus Managerのログ取得の設定

3.3.13　リソースアダプタのログ取得の設定

3.3.14　Cosminexus TPBrokerのログ取得の設定

3.3.15　Cosminexus JMSプロバイダのログ取得の設定

3.3.16　OSの統計情報取得の設定

3.3.17　ユーザダンプ取得の設定

3.3.18　coreダンプ取得の設定

3.3.19　JavaVMの資料取得の設定

3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）

ここでは，トラブルシューティングの資料を障害検知時コマンドで取得するための設定について説明します。障害検知時コマンドで取得した資料はsnapshotログとして収集できます。

障害検知時コマンドには，システムで提供しているコマンドとユーザが作成したコマンドの2種類があります。デフォルトの設定では，論理サーバにトラブルが発生した場合にシステム提供の障害検知時コマンドが実行されて，スレッドダンプや性能解析トレースなどが取得されます。また，トラブルが発生した論理サーバの停止前にsnapshotログが収集されます。システム提供の障害検知時コマンドで取得できる情報については，「2.3.2(1)　システムで提供されている障害検知時コマンドで取得できる情報」を参照してください。

システム提供の障害検知時コマンドの動作設定を変更する場合には，「(1)　Management Serverでの環境設定」および「(2)　運用管理エージェントでの環境設定」が必要です。また，ユーザ作成の障害検知時コマンドを利用する場合は，「(1)　Management Serverでの環境設定」，「(2)　運用管理エージェントでの環境設定」および「(3)　ユーザ作成の障害検知時コマンドのコマンドファイル作成」が必要です。それぞれの設定内容について，(1)～(3)で説明します。

注意

ユーザ作成の障害検知時コマンドで取得した資料をsnapshotログとして収集するためには，その資料の取得先をsnapshotログの収集先に追加する必要があります。snapshotログの収集先の追加については，「3.3.3(3)　snapshotログの収集先のカスタマイズ」を参照してください。

＜この項の構成＞

(1)　Management Serverでの環境設定

(2)　運用管理エージェントでの環境設定

(3)　ユーザ作成の障害検知時コマンドのコマンドファイル作成

(1)　Management Serverでの環境設定

mserver.properties（Management Server環境設定ファイル）で，障害検知時コマンドの動作を設定します。

次のキーで，障害検知時コマンドの動作を設定します。

キー
説明
設定の要否

システム
ユーザ

com.cosminexus.mngsvr.sys_cmd.abnormal_end.enabled
システム提供の障害検知時コマンドを利用するかどうかを指定します。デフォルトは，true（利用する）です。
△
－

com.cosminexus.mngsvr.usr_cmd.abnormal_end.enabled
ユーザ作成の障害検知時コマンドを利用するかどうかを指定します。デフォルトは，false（利用しない）です。
－
○

com.cosminexus.mngsvr.sys_cmd.abnormal_end.timeout
システム提供の障害検知時コマンドの終了を待つ時間を指定します。指定時間を経過してもコマンドが終了しない場合は，ユーザ回復処理を続行します。
△
－

com.cosminexus.mngsvr.usr_cmd.abnormal_end.timeout
ユーザ作成の障害検知時コマンドの終了を待つ時間を指定します。
－
△

com.cosminexus.mngsvr.snapshot.auto_collect.enabled
障害発生時，または一括再起動時にsnapshotログを取得するかどうかを指定します。デフォルトは，true（snapshotログを取得する）です。
△
△

com.cosminexus.mngsvr.snapshot.collect.point
snapshotログの収集タイミングとして，次のどちらかを指定します。

論理サーバの停止前

J2EEサーバの再起動前

デフォルトは，論理サーバの停止前です。
△
△

（凡例）

システム：システム提供の障害検知時コマンドでの設定の要否を示す

ユーザ：ユーザ作成の障害検知時コマンドでの設定の要否を示す

○：設定は必要

△：デフォルトの設定を変更する場合だけ必要

－：設定は不要

(2)　運用管理エージェントでの環境設定

adminagent.properties（運用管理エージェントプロパティファイル）で，障害検知時コマンドで取得する資料を設定します。

adminagent.propertiesの次のキーで，障害検知時コマンドで取得する資料の数や取得の有無，障害検知時コマンドのパスなどを設定します。なお，snapshotログの収集先を定義するためのsnapshotログ収集対象定義ファイルについては，「3.3.3(3)　snapshotログの収集先のカスタマイズ」を参照してください。

キー | 説明 | 設定の要否
システム | ユーザ
adminagent.snapshotlog.num_snapshots | 一次送付資料として収集する，論理サーバごとのsnapshotログファイルの数を指定します。 | △ | △
adminagent.snapshotlog.listfile.2.num_snapshots | 二次送付資料として収集する，論理サーバごとのsnapshotログファイルの数を指定します。 | △ | △
adminagent.j2ee.sys_cmd.abnormal_end.threaddump | システム提供の障害検知時コマンドで，スレッドダンプを取得するかどうかを指定します。 | △ | －
adminagent.sys_cmd.abnormal_end.prftrace | システム提供の障害検知時コマンドで，性能解析トレースファイルを取得するかどうかを指定します。 | △ | －
adminagent.<論理サーバの種類>.usr_cmd.abnormal_end | 論理サーバの種類ごとに，実行する障害検知時コマンドのパスを指定します。 | － | ○

（凡例）

システム：システム提供の障害検知時コマンドでの設定の要否を示す

ユーザ：ユーザ作成の障害検知時コマンドでの設定の要否を示す

○：設定は必要

△：デフォルトの設定を変更する場合だけ必要

－：設定は不要

(3)　ユーザ作成の障害検知時コマンドのコマンドファイル作成

ユーザ作成の障害検知時コマンドは，コマンドファイル（バッチファイルまたはシェルスクリプトファイル）に記述できます。このとき，次の表に示す環境変数をコマンドファイルに記述しておくことで，障害の発生した論理サーバの情報や障害に関する情報を利用してコマンドを実行できます。

表3-5　ユーザ作成の障害検知時コマンドのコマンドファイルに記述できる環境変数

環境変数 | 説明
COSMI_MNG_LSNAME | 障害の発生した論理サーバの論理サーバ名。なお，論理CTM内のネーミングサービスで障害が発生した場合は，論理CTMの論理サーバ名が設定されます。
COSMI_MNG_RSNAME | 障害の発生した論理サーバの実サーバ名。J2EEサーバまたはSFOサーバ以外の論理サーバの場合，論理サーバ名が設定されます。
COSMI_MNG_LSPID | 論理サーバのプロセスID。
COSMI_MNG_LSARGS | 論理サーバを起動したときのコマンドライン。
COSMI_MNG_TIME_SUSPENDED | ハングアップを検知した時刻。万国標準時（UTC）の1970年1月1日午前0時からの経過時間（単位：ms）。なお，無応答を検知しない場合，値は設定されません。
COSMI_MNG_TIME_TERMINATED | 異常停止（プロセスダウン）を検知した時刻。万国標準時（UTC）の1970年1月1日午前0時からの経過時間（単位：ms）。なお，ハングアップの場合，値は設定されません。
COSMI_MNG_WEB_SYSTEM | 障害が発生した論理サーバが所属するWebシステム。Smart Composer機能を使用しない場合，値は設定不要です。
COSMI_MNG_TIER | 障害が発生した論理サーバが所属する物理ティア。Smart Composer機能を使用しない場合，値は設定不要です。
COSMI_MNG_UNIT | 障害が発生した論理サーバが所属するサービスユニット。Smart Composer機能を使用しない場合，値は設定不要です。
COSMI_MNG_HWS | Hitachi Web Serverのインストールディレクトリ。

なお，障害検知コマンドとして実行するコマンドから出力される標準出力，標準エラー出力は，Management Serverでは取得しません。このため，コマンドの標準出力，標準エラー出力を取得する場合は，コマンドの中でファイルに出力する必要があります。

(a)　コマンドファイルの例

J2EEサーバの障害発生時にdrwtsn32コマンドまたはkillコマンドを実行してユーザダンプまたはcoreダンプを取得する場合の例を次に示します。

ユーザダンプの取得の例（Windowsの場合）

rem 障害がプロセスダウンかハングアップかを，プロセスダウンを検知した時刻から判断する。
if defined COSMI_MNG_TIME_TERMINATED goto END

rem 障害がハングアップであるため，ユーザダンプを取得する。
"C:¥WINDOWS¥system32¥drwtsn32.exe" -p %COSMI_MNG_LSPID%

:END

coreダンプの取得の例（UNIXの場合）

#!/bin/sh

# 障害がプロセスダウンかハングアップかを，プロセスダウンを検知した時刻から判断する。
if [ "$COSMI_MNG_TIME_TERMINATED" = "" ] ; then

# 障害がハングアップであるため，coreダンプを取得する。
/bin/kill -6 $COSMI_MNG_LSPID
fi

(b)　ユーザ作成の障害検知時コマンドの動作

論理CTMでは，グローバルCORBAネーミングサービスとCTMデーモンの二つのプロセスが起動，停止，監視されます。そのため，論理CTM内のグローバルCORBAネーミングサービスの障害を検知した場合とCTMデーモンの障害を検知した場合とでは，実行するコマンドが異なります。

グローバルCORBAネーミングサービスの障害を検出した場合
adminagent.naming.usr_cmd.abnormal_endキーで指定したコマンドが実行されます。

CTMデーモンの障害を検出した場合
adminagent.ctm.usr_cmd.abnormal_endキーで指定したコマンドが実行されます。

また，論理CTM内の二つのプロセス（CTMデーモン，グローバルCORBAネーミングサービス）のどちらのプロセスで障害を検知しても，Management Serverのログには，論理サーバ（CTM）の障害検知時コマンドの開始を通知するログが出力されます。

3.3.2　障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）

ここでは，トラブルシューティングの資料を障害検知時コマンドで取得するための設定について説明します。障害検知時コマンドで取得した資料はsnapshotログとして収集できます。

障害検知時コマンドには，システムで提供しているコマンドとユーザが作成したコマンドの2種類があります。デフォルトの設定では，論理サーバにトラブルが発生した場合にシステム提供の障害検知時コマンドが実行されて，スレッドダンプや性能解析トレースなどが取得されます。また，トラブルが発生した論理サーバの停止前にsnapshotログが収集されます。システム提供の障害検知時コマンドで取得できる情報については，「2.3.2(1)　システムで提供されている障害検知時コマンドで取得できる情報」を参照してください。

システム提供の障害検知時コマンドの動作設定を変更する場合には，Management Serverおよび運用管理エージェントでの環境設定が必要です。また，ユーザ作成の障害検知時コマンドを利用する場合は，Management Serverおよび運用管理エージェントでの環境設定と，ユーザ作成の障害検知時コマンドのコマンドファイル作成が必要です。それぞれの設定内容については，「3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）」を参照してください。その際に，「J2EEサーバ」を「バッチサーバ」に置き換えてお読みください。

注意

ユーザ作成の障害検知時コマンドで取得した資料をsnapshotログとして収集するためには，その資料の取得先をsnapshotログの収集先に追加する必要があります。snapshotログの収集先の追加については，「3.3.3(3)　snapshotログの収集先のカスタマイズ」を参照してください。

3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）

ここでは，snapshotログ収集のための設定について説明します。snapshotログとして収集するファイルの設定や，収集したsnapshotログの格納先などの設定を変更できます。

＜この項の構成＞

(1)　snapshotログを収集するタイミングごとに収集できる資料

(2)　snapshotログで収集できるファイル

(3)　snapshotログの収集先のカスタマイズ

(4)　snapshotログ収集のタイムアウトの設定

(1)　snapshotログを収集するタイミングごとに収集できる資料

snapshotログの収集方法を変更するための設定を収集タイミングごとに次の表に示します。

表3-6　snapshotログ収集を変更するための設定（J2EEアプリケーションを実行するシステムの場合）

分類
収集のタイミング
デフォルトの設定を変更するために必要な設定

自動的に収集する※
論理サーバが障害時に自動停止される直前

障害検知時コマンドの設定

snapshotログの収集先のカスタマイズ

snapshotログ収集のタイムアウトの設定

J2EEサーバが障害時に自動再起動される直前

J2EEサーバを手動で一括再起動する直前

snapshotログの収集先のカスタマイズ

任意のタイミングで収集する
Management Serverの運用管理コマンド（mngsvrutil）でsnapshotログの収集を実行したとき

注※　論理サーバの停止前，またはJ2EEサーバの再起動前のどちらのタイミングでsnapshotログを収集するかは，mserver.propertiesのcom.cosminexus.mngsvr.snapshot.collect.pointキーで変更できます。デフォルトの設定では，論理サーバの停止前にsnapshotログが収集されます。

次に，タイミングごとに収集できる資料について説明します。

(a)　自動的に収集する場合

次に示すどちらかのタイミングでsnapshotログを自動的に収集する場合には，Management Serverによって障害検知時コマンドが実行されて，スレッドダンプと性能解析トレースなどの資料が取得されます。

論理サーバが障害時に自動停止される直前（デフォルトの設定）

J2EEサーバが障害時に自動再起動される直前

障害検知時コマンドで取得された資料は，snapshotログとして収集できます。障害検知時コマンドの動作や設定の変更については，「3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）」を参照してください。

(b)　任意のタイミングで収集する場合

任意のタイミングでsnapshotログを収集する場合には，スレッドダンプファイルやユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合）が出力されているときだけ，snapshotログとして収集できます。任意のタイミングでsnapshotログを収集する際に，コマンドが実行されてスレッドダンプファイルやユーザダンプまたはcoreダンプが出力されることはありません。

Management Serverの運用管理コマンド（mngsvrutil）を実行して任意のタイミングでsnapshotログを収集する場合は，コマンド実行時に収集先の種別（種別1，種別2）を指定して収集できます。それ以外のタイミングでは，種別1と種別2それぞれの収集対象として定義されているファイルがすべて収集されます。

(2)　snapshotログで収集できるファイル

トラブルシューティングに必要な資料は，資料を保守員へ送付するときのタイミングによって，一次送付資料と二次送付資料に分類されます。snapshotログでは，一次送付資料と二次送付資料を収集できます。各資料については，「2.3.3(2)　snapshotログとして収集できる資料」を参照してください。

一次送付資料としてどのファイルを収集するかは，一次送付資料用のsnapshotログ収集対象定義ファイル（snapshotlog.conf）で指定します。mngsvrutilコマンドで引数snapshot 1を指定してsnapshotログを収集する場合は，snapshotlog.confに指定されているファイルが収集されます。二次送付資料としてどのファイルを収集するかは，二次送付資料用のsnapshotログ収集対象定義ファイル（snapshotlog.2.conf）で指定します。mngsvrutilコマンドで引数snapshot 2を指定してsnapshotログを収集する場合は，snapshotlog.confとsnapshotlog.2.confに指定されているファイルが収集されます。

デフォルトでsnapshotログの収集先として定義されていないファイルをsnapshotログとして収集したい場合には，そのファイルの出力先をsnapshotログ収集対象定義ファイルに追加してください。また，資料によっては，次のような設定も必要になります。

運用開始前の資料取得のための設定
運用開始前に，資料取得のための設定をしておく必要があります。

コマンドなどによる資料の取得
snapshotログとして収集する前に，コマンドを実行して収集対象の資料を取得しておく必要があります。資料の取得については，「4.　トラブルシューティング（資料の出力先と出力方法）」を参照してください。

（例）

ユーザダンプまたはcoreダンプは，運用開始前にワトソン博士もしくは環境変数（CJMEMDUMP_PATH）の設定またはcoreファイルのサイズの設定が必要です。運用開始前に取得のための設定をした上で，ユーザ作成の障害検知時コマンドを使用して障害発生時のユーザダンプまたはcoreダンプを取得し，そのユーザダンプまたはcoreダンプをsnapshotログとして収集することをお勧めします。

また，デフォルトのsnapshotログ収集対象定義ファイルには，ユーザダンプまたはcoreダンプのデフォルトの出力先が指定されています。ワトソン博士または環境変数（CJMEMDUMP_PATH）を設定した場合やOSをCドライブ以外に設定した場合にはsnapshotログの収集先を変更する必要があります。

運用開始前に実施する取得のための設定については，「3.3.17　ユーザダンプ取得の設定」，または「3.3.18　coreダンプ取得の設定」を参照してください。ユーザ作成の障害検知時コマンドについては，「3.3.1　障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）」を参照してください。

snapshotlog.confおよびsnapshotlog.2.confの指定については，「(3)　snapshotログの収集先のカスタマイズ」を参照してください。デフォルトの設定で一次送付資料および二次送付資料として収集できる資料については，「付録A　snapshotログの収集対象一覧」を参照してください。

(3)　snapshotログの収集先のカスタマイズ

snapshotログの収集先は，snapshotログ収集対象定義ファイルでカスタマイズできます。また，adminagent.propertiesでは，論理サーバごとのsnapshotログのファイル数を指定できます。ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「12.2　snapshotログ収集対象定義ファイル」を参照してください。

(a)　snapshotログの収集先の指定

snapshotログ収集対象定義ファイルを編集して，snapshotログの収集先を指定してください。snapshotログ収集対象定義ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.conf
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.2.conf

UNIXの場合
/opt/Cosminexus/manager/config/snapshotlog.conf
/opt/Cosminexus/manager/config/snapshotlog.2.conf

snapshotlog.confでは，一次送付資料として収集するファイルの格納ディレクトリを指定します。また，snapshotlog.2.confでは，二次送付資料として収集するファイルの格納ディレクトリを指定します。

snapshotログ収集対象定義ファイルでは，収集対象のパスに変数を使用できます。例えば，Cosminexusのインストールディレクトリを表す変数「${cosminexus.home}」を使用して，snapshotログ収集対象定義ファイルに「${cosminexus.home}/manager/log/.+」（ピリオド（.）は任意の文字，プラス（+）は1回以上を表します）と指定すると，<Cosminexusのインストールディレクトリ>¥manager¥log（Windowsの場合），または/opt/Cosminexus/manager/logディレクトリ（UNIXの場合）直下のファイルがすべて収集されます。なお，snapshotログ収集対象定義ファイルの変数の値には，ドル記号（$）を含めないでください。

(b)　snapshotログのファイル数の指定

論理サーバごとのsnapshotログファイルの数は，adminagent.propertiesの次のキーで変更できます。デフォルトの設定は10です。adminagent.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2　adminagent.properties（運用管理エージェントプロパティファイル）」を参照してください。

adminagent.snapshotlog.num_snapshots
一次送付資料として収集する，論理サーバごとのsnapshotログファイルの数を指定します。

adminagent.snapshotlog.listfile.2.num_snapshots
二次送付資料として収集する，論理サーバごとのsnapshotログファイルの数を指定します。

(c)　snapshotログの格納先の指定

snapshotログの収集によって自動で取得された情報の格納先は，adminagent.propertiesのadminagent.snapshotlog.log_dirキーで変更できます。デフォルトの設定では，次のディレクトリに格納されます。

Windowsの場合
<Managerのログ出力ディレクトリ>¥snapshot

UNIXの場合
<Managerのログ出力ディレクトリ>/snapshot

adminagent.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2　adminagent.properties（運用管理エージェントプロパティファイル）」を参照してください。

(4)　snapshotログ収集のタイムアウトの設定

snapshotログ収集時に実行する処理に対してタイムアウトを設定できます。タイムアウトは，mserver.propertiesで設定します。snapshotログ収集時に実行する処理とタイムアウトの設定を次の表に示します。

表3-7　snapshotログ収集時に実行する処理とタイムアウトの設定

処理
タイムアウトの設定（mserver.propertiesのキー）
説明

システム提供の障害検知時コマンドの実行
com.cosminexus.mngsvr.sys_cmd.abnormal_end.timeout
次に示すそれぞれの処理の終了を待つ時間です。

システム提供の障害検知時に実行したコマンド

性能解析トレースの収集

指定した時間を経過してもコマンド，または性能解析トレースの収集が終了しない場合は，実行したコマンド，または性能解析トレースの収集を無視して処理を続行します。

ユーザ作成の障害検知時コマンドの実行
com.cosminexus.mngsvr.usr_cmd.abnormal_end.timeout
ユーザ作成の障害検知時に実行したコマンドの終了を待つ時間です。指定した時間を経過してもコマンドが終了しない場合は，実行したコマンドを無視して処理を続行します。

snapshotログ（一次送付資料）の収集
com.cosminexus.mngsvr.snapshot.timeout
一次送付資料および二次送付資料の収集の終了を待つ時間です。指定した時間を経過しても収集が終了しない場合は，Management Serverから運用管理エージェントにsnapshotログ収集中止のサービス要求が実行され，Management ServerのログにKEOS20052-Eメッセージが出力されます。

snapshotログ（二次送付資料）の収集

mserver.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.7　mserver.properties（Management Server環境設定ファイル）」を参照してください。

3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）

ここでは，バッチサーバを使用している場合の，snapshotログ収集のための設定について説明します。snapshotログとして収集するファイルの設定や，収集したsnapshotログの格納先などの設定を変更できます。snapshotログの収集方法を変更するための設定を収集タイミングごとに次の表に示します。なお，このほかの説明については，J2EEサーバの場合と同じです。詳細は，「3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）」を参照してください。

表3-8　snapshotログ収集を変更するための設定（バッチアプリケーションを実行するシステムの場合）

分類
収集のタイミング
デフォルトの設定を変更するために必要な設定

自動的に収集する※
論理サーバが障害時に自動停止される直前

障害検知時コマンドの設定

snapshotログの収集先のカスタマイズ

snapshotログ収集のタイムアウトの設定

バッチサーバが障害時に自動再起動される直前

バッチサーバを手動で一括再起動する直前

snapshotログの収集先のカスタマイズ

任意のタイミングで収集する
Management Serverの運用管理コマンド（mngsvrutil）でsnapshotログの収集を実行したとき

注※　論理サーバの停止前，またはバッチサーバの再起動前のどちらのタイミングでsnapshotログを収集するかは，mserver.propertiesのcom.cosminexus.mngsvr.snapshot.collect.pointキーで変更できます。デフォルトの設定では，論理サーバの停止前にsnapshotログが収集されます。

3.3.5　Management Serverのログ取得の設定

ここでは，Management Serverが出力するログを取得するための設定について説明します。

Management Serverのログの出力先ディレクトリを次に示します。Management Serverの出力先はmanager.cfg（Managerログ設定ファイル）で変更できます。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥log

UNIXの場合
/opt/Cosminexus/manager/log

Management Serverのログの出力レベルや，ログファイルの面数などを変更する場合は，mserver.properties（Management Server環境設定ファイル）で，次のキーを指定します。

com.cosminexus.mngsvr.log.level
Management Serverのログの出力レベルを指定します。

com.cosminexus.mngsvr.log.rotate
Management Serverのログのファイル面数を指定します。

com.cosminexus.mngsvr.log.size
Management Serverのログのファイルサイズを指定します。

mserver.propertiesおよび各キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.7　mserver.properties（Management Server環境設定ファイル）」を参照してください。

3.3.6　J2EEサーバのログ取得の設定

ここでは，J2EEサーバのログ取得で設定できる項目について説明します。

J2EEサーバのログは，ログの出力先，ログサイズ，ログレベルを変更できます。変更できる項目と，項目に対応する簡易構築定義ファイルのパラメタを次の表に示します。

表3-9　J2EEサーバのログ取得の設定項目

項目
対応する簡易構築定義ファイルのパラメタ

ログの出力先
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejb.server.log.directory

ログサイズ

ログファイル面数

論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filenum

ログファイル1面当たりの最大サイズ

論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filesize

ログレベル
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.enabled.*

なお，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.systemlog.enabledパラメタでtrue（デフォルト値）を指定した場合，またはこのパラメタの指定を省略した場合は，J2EEサーバの起動，停止および異常終了のメッセージがイベントログ（UNIXの場合は，syslog）に出力されます。

注意事項（UNIXの場合）

J2EEサーバの起動，停止および異常終了のメッセージをsyslogに出力するためには，syslogの設定で，facility「daemon」に対するpriorityを「info」または「debug」に設定する必要があります。また，syslogのログ出力先およびログファイル名は，syslogの設定に依存します。

syslogおよびsyslogの設定に関する詳細については，OS付属のマニュアルで，syslogdまたはsyslog.confの説明を参照してください。

簡易構築定義ファイルに指定するパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6　簡易構築定義ファイル」を参照してください。

＜この項の構成＞

(1)　ログの出力先の変更

(2)　ログサイズの変更

(3)　ログレベルの変更

(1)　ログの出力先の変更

J2EEサーバのログの出力先を変更する場合は，簡易構築定義ファイルでログの出力先ディレクトリを指定します。

ログの出力先の変更

デフォルトのログ出力先を次に示します。

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名>¥logs

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名>/logs

なお，作業ディレクトリのデフォルトは，<Cosminexusのインストールディレクトリ>¥CC¥server¥public（Windowsの場合），または/opt/Cosminexus/CC/server/public（UNIXの場合）です。

作業ディレクトリおよびJ2EEサーバのログの出力先は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，次のパラメタを指定すると変更できます。

ejb.public.directory
J2EEサーバの作業ディレクトリのパスを指定します。

ejb.server.log.directory
J2EEサーバのログの出力先ディレクトリを指定します。

設定例（物理ティアの定義の場合）

Windowsの場合

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejb.server.log.directory</param-name>
   <param-value>C:¥CClogs¥server¥MyServer</param-value>
 </param>
 ：
</configuration>

UNIXの場合

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejb.server.log.directory</param-name>
   <param-value>/CClogs/server/MyServer</param-value>
 </param>
 ：
</configuration>

カレントディレクトリ

ログ出力先を相対パスで指定する場合のカレントディレクトリを次に示します。

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>

注意事項

ログの出力先を変更した場合は，J2EEサーバを起動する前に，変更後のログの出力先ディレクトリを作成しておいてください。
変更後のログの出力先ディレクトリがない場合は，J2EEサーバの起動時にKDJE40024-Eのメッセージが出力されて異常終了します。また，サーバ管理コマンドの実行時にKDJE37209-E，KDJE37210-E，KDJE37211-Eのメッセージが出力されて異常終了します。

同一ホスト内で複数のJ2EEサーバを起動させている場合は，ログ出力先が同じディレクトリにならないように，ディレクトリにサーバ名称を含めるなど，サーバごとにユニークなディレクトリ名になるようにしてください。なお，パラメタの値に同じディレクトリを指定した場合は，動作の保証はしません。

ログの出力先を変更して作業ディレクトリ以外にログを出力する場合，ログファイルはサーバのアンセットアップ時に削除されません。ログファイルを削除したい場合には，手動で削除してください。

簡易構築定義ファイルでログの出力先を設定していても，JavaVM起動パラメタでJavaVMの保守情報およびガーベージコレクションのログ出力先が設定されていると，JavaVM起動パラメタの設定が優先されますので，注意してください。
JavaVM起動パラメタは，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ

add.jvm.arg

<param-value>タグ

XX:HitachiJavaLog:<JavaVMの保守情報およびガーベージコレクションのログ出力先>

JavaVM起動パラメタを指定している場合は，JavaVMの保守情報およびガーベージコレクションのログ出力先に設定したディレクトリに，JavaVMの保守情報およびガーベージコレクションのログファイルが出力されます。

ログ出力先には，UNC名を含むパスは指定できません。

(2)　ログサイズの変更

J2EEサーバのログサイズを変更する場合は，簡易構築定義ファイルで，ログファイルの面数，およびログファイル1面当たりの最大サイズを設定します。

ログファイル面数の変更

J2EEサーバのログファイルの面数は，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.channels.define.<チャネル名>.filenumパラメタで指定します。

設定例（物理ティアの定義の場合）

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.channels.define.MessageLogFile.filenum</param-name>
   <param-value>3</param-value>
 </param>
 ：
</configuration>

ログファイル1面当たりの最大サイズの変更

J2EEサーバのログファイル1面当たりの最大サイズ（単位：バイト）は，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.channels.define.<チャネル名>.filesizeパラメタで指定します。

設定例（物理ティアの定義の場合）

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.channels.define.MessageLogFile.filesize</param-name>
   <param-value>2097152</param-value>
 </param>
 ：
</configuration>

(3)　ログレベルの変更

J2EEサーバのログレベルは，ログの重要度を表します。ログレベルには，「Error」，「Warning」，「Information」，「Debug」の四つがあります。ログレベルを設定すると，設定したレベルのログが出力されます。デフォルトでは，Errorレベルのログだけが取得されます。通常はデフォルトのまま利用してください。

ログレベルは，簡易構築定義ファイルの論理J2EEサーバの<configuration>タグ内に，ejbserver.logger.enabled.*パラメタで設定します。ejbserver.logger.enabled.*の<param-value>タグにはレベル名を，「Error」，「Warning」，「Information」，「Debug」の文字列で一つ，または複数設定します。複数設定する場合には，レベル名の文字列の間をコンマ（,）で区切ります。

設定例（物理ティアの定義の場合）

1.

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.enabled.*</param-name>
   <param-value>Error</param-value>
 </param>
 ：
</configuration>

2.

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.enabled.*</param-name>
   <param-value>Error,Warning</param-value>
 </param>
 ：
</configuration>

3.

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.enabled.*</param-name>
   <param-value>Error,Warning,Information</param-value>
 </param>
 ：
</configuration>

4.

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>ejbserver.logger.enabled.*</param-name>
   <param-value>Error,Warning,Information,Debug</param-value>
 </param>
 ：
</configuration>

注意事項

記述例の1.，2.，3.，4.の順に，取得できるログの件数が増加していきます。複数のログレベルを設定してログを取得すると，性能が劣化し，ログファイルの面の切り替えが頻繁に起こるようになります。

レベル名に「Error」，「Warning」，「Information」，「Debug」以外の文字列，または空の値を設定した場合は，KDJE90009-Wのメッセージが出力されます。Errorレベルのログは取得されます。

ログレベルの推奨設定

ログレベルの推奨設定を次に示します。

通常運用時
レベル名に「Error」を指定します。

通常運用時（verbose）
通常運用時よりも詳細な情報を取得する場合には，レベル名に「Error,Warning」を指定します。

テスト時
レベル名に「Error,Warning,Information」を指定します。

障害調査時
レベル名に「Error,Warning,Information,Debug」を指定します。

3.3.7　バッチサーバのログ取得の設定

バッチサーバのログは，ログの出力先，ログサイズ，ログレベルを変更できます。変更できる項目と，項目に対応する簡易構築定義ファイルのパラメタを次の表に示します。なお，これらのパラメタは，簡易構築定義ファイルの，バッチサーバ用のユーザプロパティに設定します。

表3-10　バッチサーバのログ取得の設定項目

項目
対応する簡易構築定義ファイルのパラメタ

ログの出力先
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejb.server.log.directory

ログサイズ

ログファイル面数

論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filenum

ログファイル1面当たりの最大サイズ

論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filesize

ログレベル
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejbserver.logger.enabled.*

なお，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.logger.systemlog.enabledパラメタでtrue（デフォルト値）を指定した場合，またはこのパラメタの指定を省略した場合は，バッチサーバの起動，停止および異常終了のメッセージがイベントログ（UNIXの場合は，syslog）に出力されます。

それぞれの設定項目の詳細については，「3.3.6　J2EEサーバのログ取得の設定」を参照してください。その際に，「J2EEサーバ」を「バッチサーバ」に置き換えてお読みください。

また，簡易構築定義ファイルに指定するパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6　簡易構築定義ファイル」を参照してください。

注意事項（UNIXの場合）

バッチサーバの起動，停止および異常終了のメッセージをsyslogに出力するためには，syslogの設定で，facility「daemon」に対するpriorityを「info」または「debug」に設定する必要があります。また，syslogのログ出力先およびログファイル名は，syslogの設定に依存します。

syslogおよびsyslogの設定に関する詳細については，OS付属のマニュアルで，syslogdまたはsyslog.confの説明を参照してください。

3.3.8　SFOサーバのログ取得の設定

ここでは，SFOサーバのログ取得で設定できる項目について説明します。

SFOサーバのログは，ログサイズ，ログレベルを変更できます。変更できる項目と，項目に対応する簡易構築定義ファイルのパラメタを次の表に示します。

表3-11　SFOサーバのログ取得の設定項目

項目
対応する簡易構築定義ファイルのパラメタ

ログサイズ

ログファイル面数

論理SFOサーバ（sfo-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filenum

ログファイル1面当たりの最大サイズ

論理SFOサーバ（sfo-server）の<configuration>タグ内のejbserver.logger.channels.define.<チャネル名>.filesize

ログレベル
論理SFOサーバ（sfo-server）の<configuration>タグ内のejbserver.logger.enabled.*

なお，論理SFOサーバ（sfo-server）の<configuration>タグ内に，ejbserver.logger.systemlog.enabledパラメタでtrue（デフォルト値）を指定した場合，またはこのパラメタの指定を省略した場合は，SFOサーバの起動，停止および異常終了のメッセージがイベントログ（UNIXの場合は，syslog）に出力されます。

注意事項（UNIXの場合）

SFOサーバの起動，停止および異常終了のメッセージをsyslogに出力するためには，syslogの設定で，facility「daemon」に対するpriorityを「info」または「debug」に設定する必要があります。また，syslogのログ出力先およびログファイル名は，syslogの設定に依存します。

syslogおよびsyslogの設定に関する詳細については，OS付属のマニュアルで，syslogdまたはsyslog.confの説明を参照してください。

簡易構築定義ファイルに指定するパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6　簡易構築定義ファイル」を参照してください。

＜この項の構成＞

(1)　ログサイズの変更

(2)　ログレベルの変更

(1)　ログサイズの変更

SFOサーバのログサイズを変更する場合は，簡易構築定義ファイルで，ログファイルの面数，およびログファイル1面当たりの最大サイズを設定します。設定方法は，J2EEサーバのログ取得の設定と同じです。詳細については，「3.3.6　J2EEサーバのログ取得の設定」を参照してください。

(2)　ログレベルの変更

SFOサーバのログレベルは，ログの重要度を表します。ログレベルには，「Error」，「Warning」，「Information」，「Debug」の四つがあります。ログレベルを設定すると，設定したレベルのログが出力されます。デフォルトでは，Errorレベルのログだけが取得されます。通常はデフォルトのまま利用してください。設定方法は，J2EEサーバのログ取得の設定と同じです。詳細については，「3.3.6　J2EEサーバのログ取得の設定」を参照してください。

3.3.9　Webサーバのログ取得の設定

ここでは，Webサーバのログ取得で設定できる項目について説明します。ログ取得の設定対象となるWebサーバは，Hitachi Web Serverです。

Webサーバが出力するログには，エラーログ，アクセスログ，リクエストログなどがあります。出力するログの詳細については，マニュアル「Hitachi Web Server」を参照してください。Webサーバの出力するログのうち，エラーログ，アクセスログおよびリクエストログは，出力先やログの出力方式などを簡易構築定義ファイルで変更できます。

Webサーバのログ取得で変更できる設定項目と，項目に対応する簡易構築定義ファイルのパラメタを次の表に示します。

表3-12　Webサーバのログ取得の設定項目

ログ | 項目 | 対応する簡易構築定義ファイルのパラメタ
エラーログ | 出力するエラーログのレベル | 論理Webサーバ（web-server）の<configuration>タグ内のLogLevel
エラーログの出力方式 | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdErrorMethod
エラーログの出力先ディレクトリ | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdErrorLogFileDir
アクセスログ | アクセスログの出力方式 | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdCustomMethod
アクセスログの出力先ディレクトリ | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdCustomLogFileDir
アクセスログ出力時のフォーマット | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdCustomlogFormat
リクエストログ | トレースの採取有無 | 論理Webサーバ（web-server）の<configuration>タグ内のHWSRequestLogLevel
リクエストログの出力方式 | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdRequestMethod
リクエストログの出力先ディレクトリ | 論理Webサーバ（web-server）の<configuration>タグ内のHttpsdRequestLogFileDir

また，エラーログ，アクセスログおよびリクエストログに出力する時刻ならびに時間の単位を，論理Webサーバ（web-server）の<configuration>タグ内のHWSLogTimeVerboseパラメタで指定できます。

注意事項

Management Serverを利用してWebサーバの動作確認をする場合に，動作確認用のログを通常のログ（アクセスログ）と別に出力するときには，簡易構築定義ファイルでの設定が必要です。論理Webサーバ（web-server）の<configuration>タグ内でSetByパラメタに「item」を指定して，AppendDirectivesパラメタとHttpsdCustomlogFormatパラメタを設定してください。

AppendDirectivesパラメタとHttpsdCustomlogFormatパラメタの設定例を次に示します。ここでは，動作確認用のログをラップアラウンド方式で取得する場合を例にして説明します。ログの出力方式に応じて，AppendDirectivesパラメタ内のCustomLogディレクティブの記述を変更してください。

AppendDirectivesパラメタの設定例

Windowsの場合

<param>
 <param-name>AppendDirectives</param-name>
 <param-value>
<![CDATA[
SetEnvIf Remote_Addr ^127¥.0¥.0¥.1$ Env_ManagerHealthCheck
CustomLog "|¥"¥"<Cosminexusのインストールディレクトリ>/httpsd/sbin/rotatelogs2.exe¥" ¥"<Cosminexusのインストールディレクトリ>/httpsd/servers/HWS_<論理Webサーバの実サーバ名>/logs/access_manager¥" 8192 5¥"" hws_std env=Env_ManagerHealthCheck
]]>
 </param-value>
</param>

UNIXの場合

<param>
 <param-name>AppendDirectives</param-name>
 <param-value>
<![CDATA[
SetEnvIf Remote_Addr ^127¥.0¥.0¥.1$ Env_ManagerHealthCheck
CustomLog "|/opt/hitachi/httpsd/sbin/rotatelogs2 ¥"/opt/hitachi/httpsd/servers/HWS_<論理Webサーバの実サーバ名>/logs/access_manager¥" 8192 5" hws_std env=Env_ManagerHealthCheck
]]>
 </param-value>
</param>

HttpsdCustomlogFormatパラメタの設定例

<param>
 <param-name>HttpsdCustomlogFormat</param-name>
 <param-value>hws_std env=!Env_ManagerHealthCheck</param-value>
</param>

3.3.10　リダイレクタのログ取得の設定

リダイレクタの出力するログは，出力先やログ出力レベルなどを変更できます。リダイレクタが出力するログは，メッセージログと保守用トレースログの二つに分けて出力されます。メッセージログには，障害発生時のログなどのメッセージが出力されます。保守用トレースログには，HTTPリクエストを受信し，レスポンスを送信するまでのトレース情報が出力されます。

保守用トレースログのログサイズは，見積もりの計算式に従い，障害発生時から障害を検知しログを収集するまで保持されるサイズにカスタマイズすることをお勧めします。

ここでは，次に示す実行環境ごとに，リダイレクタのログ取得で設定できる項目について説明します。

Smart Composer機能を使用する環境

Webリダイレクタ環境およびSmart Composer機能を使用しない環境

＜この項の構成＞

(1)　Smart Composer機能を使用する環境の場合

(2)　Webリダイレクタ環境またはSmart Composer機能を使用しない環境の場合

(3)　注意事項

(1)　Smart Composer機能を使用する環境の場合

Smart Composer機能（Management Server）を使用する環境では，簡易構築定義ファイルおよびmod_jk.confで，リダイレクタのログ取得の設定を変更できます。説明で使用するファイルの詳細，および各ファイルのキーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.　Smart Composer機能で使用するファイル」を参照してください。なお，UNIXの場合，設定を変更できるのは，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）を持つユーザです。

●変更した設定を有効にする方法

変更した設定を有効にする方法について，OSごとに説明します。

Windowsの場合

変更したリダイレクタのログ取得の設定を有効にするには，Hitachi Web Serverを再起動してください。

UNIXの場合

変更したリダイレクタのログ取得の設定を有効にする方法は，ファイルサイズまたはファイル面数の変更の有無によって異なります。

ファイルサイズまたはファイル面数を変更する場合

ファイルサイズまたはファイル面数を変更する場合に，変更したリダイレクタのログ取得の設定を有効にする方法を次に示します。

Hitachi Web Serverを停止します。

ログファイルおよび管理ファイルを移動または削除します。
メッセージログファイルの場合：メッセージログファイルおよびHNTRLibが使用する管理ファイル（<JkLogFilePrefixの設定値>.mm）を移動，または削除します。
保守用トレースログファイルの場合：保守用トレースログファイルおよびHNTRLibが使用する管理ファイル（<JkTrcaeLogFilePrefixの設定値>.mm）を移動，または削除します。

Hitachi Web Serverを再起動します。

なお，HNTRLibが使用する管理ファイルのデフォルトの格納場所は次のとおりです。

/opt/Cosminexus/CC/web/redirector/logs/mmap

ファイルサイズまたはファイル面数を変更しない場合

ファイルサイズまたはファイル面数を変更しない場合は，Hitachi Web Serverを再起動してください。

●変更できる設定項目

変更できる設定項目と，項目に対応する各ファイルの設定内容を次の表に示します。

表3-13　リダイレクタのログ取得の設定（簡易構築定義ファイル，mod_jk.conf）

項目 | 設定個所 | 設定内容
メッセージログ，保守用トレースログのログ出力レベル | 簡易構築定義ファイル | 論理Webサーバ（web-server）の<configuration>タグ内に，JkLogLevelパラメタで，リダイレクタのログの出力レベルを指定します。
メッセージログ出力先 | 論理Webサーバ（web-server）の<configuration>タグ内に，JkLogFileDirパラメタで，リダイレクタのログ出力先ディレクトリを指定します。
メッセージログファイルサイズ | 論理Webサーバ（web-server）の<configuration>タグ内に，JkLogFileSizeパラメタで，リダイレクタのログを出力するログファイルの1ファイル当たりのサイズを指定します。
メッセージログファイル面数 | 論理Webサーバ（web-server）の<configuration>タグ内に，JkLogFileNumパラメタで，リダイレクタのログを出力するログファイルの面数を指定します。
メッセージログファイル名のプリフィックス | mod_jk.conf | mod_jk.confで，JkLogFilePrefixキーにリダイレクタのログを出力するログファイル名のプリフィックスを指定します。
保守用トレースログ出力の有無 | 簡易構築定義ファイル | 論理Webサーバ（web-server）の<configuration>タグ内に，JkTraceLogパラメタで，リダイレクタの保守用トレースログを出力するかどうかを指定します。
保守用トレースログ出力先 | 論理Webサーバ（web-server）の<configuration>タグ内に，JkTraceLogFileDir※パラメタで，リダイレクタの保守用トレースログの出力先ディレクトリを指定します。
保守用トレースログファイルサイズ | 論理Webサーバ（web-server）の<configuration>タグ内に，JkTraceLogFileSizeパラメタで，リダイレクタの保守用トレースログを出力するログファイルの1ファイル当たりのサイズを指定します。
保守用トレースログファイル面数 | 論理Webサーバ（web-server）の<configuration>タグ内に，JkTraceLogFileNumパラメタで，リダイレクタの保守用トレースログを出力するログファイルの面数を指定します。
保守用トレースログファイル名のプリフィックス | mod_jk.conf | mod_jk.confで，JkTrcaeLogFilePrefix※キーにリダイレクタの保守用トレースログを出力するログファイル名のプリフィックスを指定します。

注※　保守用トレースログの出力先とプリフィックスには，同じ値を指定しないでください。同じ値を指定した場合は，リダイレクタが動作しません。

メッセージログ，および保守用トレースログのデフォルトの出力先

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs※

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

注※　新規インストール時には，logsディレクトリは存在しません。logsディレクトリは，Hitachi Web Serverの起動時に生成されます。

ログレベルのレベル名

ログレベルのレベル名には，重要度の高い順に「emerg」※，「error」，「info」，「debug」のどれかを指定できます。

emerg：通常運用時に指定します。常に出力する必要がある重要度の高いメッセージだけが出力されます。※

error：通常運用時に指定します。

info：テスト時に指定します。

debug：障害調査時に指定します。

ログレベルは，単独で指定してください（コンマ区切りで複数のログレベルを指定しないでください）。あるログレベルを指定すると，指定されたログレベルおよびそれよりも重要度の高いログが出力されます。

注※　Windowsの場合に指定できます。

ログサイズの見積もりの計算式

GETリクエスト，POSTリクエストの1HTTPアクセス当たりのログサイズは，次の計算式で見積もってください。

GETによる1HTTPアクセス当たりのログサイズ
= 1.75 +（平均レスポンスボディサイズ / 16）* 0.25

POSTによる1HTTPアクセス当たりのログサイズ
= 2.00 +（平均POSTデータサイズ / 16）* 0.5 +（平均レスポンスボディサイズ / 16）* 0.25

なお，単位はすべてキロバイト，除算結果の小数点以下の値はすべて切り捨てです。また，計算式ではリクエストURLとクエリー文字列の平均サイズは，それぞれ100バイトとしています。リクエストURLとクエリー文字列の平均サイズが100バイトを超えた場合は，計算式の最初の値に，超える分のサイズを加えて計算してください。

●注意事項

リダイレクタのログ取得を設定する場合の注意事項を次に示します。

ログファイル初期化処理の開始時および終了時には，メッセージログにそれぞれKDJE41029-I，KDJE41030-Iのメッセージが出力されます。Webサーバの起動時には，ログファイル初期化処理が正常に終了したことを確認するため，メッセージログにKDJE41029-I，KDJE41030-Iのメッセージが出力されていることを確認してください。

UNIXの場合，簡易構築定義ファイルに設定されたファイルサイズ，およびファイル面数のログファイルは，Webサーバとの連携の設定後の初回起動時に作成されます。ログファイルの作成は，ログファイルサイズおよびファイル面数に比例した処理時間が必要となります。ログファイルサイズを大きく設定した場合，またはファイル面数を増やした場合などは，ログファイルの作成処理に数分掛かる場合があります。

(2)　Webリダイレクタ環境またはSmart Composer機能を使用しない環境の場合

Webリダイレクタ環境，およびSmart Composer機能を使用しない環境では，使用するWebサーバによって，リダイレクタのログ取得の設定が異なります。なお，説明で使用するファイルおよびキーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。

(a)　Hitachi Web Serverの場合

Hitachi Web Serverを使用している場合は，mod_jk.confファイルでリダイレクタのログ取得の設定を変更できます。なお，UNIXの場合，設定を変更できるのは，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）を持つユーザです。

●変更した設定を有効にする方法

変更した設定を有効にする方法について，OSごとに説明します。

Windowsの場合

変更したリダイレクタのログ取得の設定を有効にするには，Hitachi Web Serverを再起動してください。

UNIXの場合

変更したリダイレクタのログ取得の設定を有効にする方法は，ファイルサイズまたはファイル面数の変更の有無によって異なります。

ファイルサイズまたはファイル面数を変更する場合

ファイルサイズまたはファイル面数を変更する場合に，変更したリダイレクタのログ取得の設定を有効にする方法を次に示します。

Hitachi Web Serverを停止します。

ログファイルおよび管理ファイルを移動または削除します。
メッセージログファイルの場合：メッセージログファイルおよびHNTRLibが使用する管理ファイル（<JkLogFilePrefixの設定値>.mm）を移動，または削除します。
保守用トレースログファイルの場合：保守用トレースログファイルおよびHNTRLibが使用する管理ファイル（<JkTrcaeLogFilePrefixの設定値>.mm）を移動，または削除します。

Hitachi Web Serverを再起動します。

なお，HNTRLibが使用する管理ファイルのデフォルトの格納場所は次のとおりです。

/opt/Cosminexus/CC/web/redirector/logs/mmap

ファイルサイズまたはファイル面数を変更しない場合

ファイルサイズまたはファイル面数を変更しない場合は，Hitachi Web Serverを再起動してください。

●変更できる設定項目

変更できる設定項目と，項目に対応するユーザ定義ファイルとキーを次の表に示します。

表3-14　Hitachi Web Serverでのリダイレクタのログ取得の設定項目

項目 | mod_jk.confのキー
メッセージログ，保守用トレースログのログ出力レベル | JkLogLevel
メッセージログ出力先 | JkLogFileDir
メッセージログファイルサイズ | JkLogFileSize
メッセージログファイル面数 | JkLogFileNum
メッセージログファイル名のプリフィックス | JkLogFilePrefix
保守用トレースログ出力の有無 | JkTraceLog
保守用トレースログ出力先 | JkTraceLogFileDir※
保守用トレースログファイルサイズ | JkTraceLogFileSize
保守用トレースログファイル面数 | JkTraceLogFileNum
保守用トレースログファイル名のプリフィックス | JkTrcaeLogFilePrefix※

注※　保守用トレースログの出力先とプリフィックスには，同じ値を指定しないでください。同じ値を指定した場合は，リダイレクタが動作しません。

メッセージログ，および保守用トレースログのデフォルトの出力先

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs※

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

注※　新規インストール時には，logsディレクトリは存在しません。logsディレクトリは，Hitachi Web Serverの起動時に生成されます。

ログレベルのレベル名

ログレベルのレベル名には，重要度の高い順に「emerg」※，「error」，「info」，「debug」のどれかを指定できます。

emerg：通常運用時に指定します。常に出力する必要がある重要度の高いメッセージだけが出力されます。※

error：通常運用時に指定します。

info：テスト時に指定します。

debug：障害調査時に指定します。

ログレベルは，単独で指定してください（コンマ区切りで複数のログレベルを指定しないでください）。あるログレベルを指定すると，指定されたログレベルおよびそれよりも重要度の高いログが出力されます。

注※　Windowsの場合に指定できます。

ログサイズの見積もりの計算式

GETリクエスト，POSTリクエストの1HTTPアクセス当たりのログサイズは，次の計算式で見積もってください。

GETによる1HTTPアクセス当たりのログサイズ
= 1.75 +（平均レスポンスボディサイズ / 16）* 0.25

POSTによる1HTTPアクセス当たりのログサイズ
= 2.00 +（平均POSTデータサイズ / 16）* 0.5 +（平均レスポンスボディサイズ / 16）* 0.25

なお，単位はすべてキロバイト，除算結果の小数点以下の値はすべて切り捨てです。また，計算式ではリクエストURLとクエリー文字列の平均サイズは，それぞれ100バイトとしています。リクエストURLとクエリー文字列の平均サイズが100バイトを超えた場合は，計算式の最初の値に，超える分のサイズを加えて計算してください。

(b)　Microsoft IISの場合

Microsoft IISを使用している場合は，isapi_redirect.confファイルでリダイレクタのログ取得の設定を変更できます。

注意事項

isapi_redirect.confファイルに設定されたファイルサイズ，およびファイル面数のログファイルは，Webサーバとの連携の設定後の初回リクエスト時に作成されます。ログファイルの作成は，ログファイルサイズおよびファイル面数に比例した処理時間が必要となります。ログファイルサイズを大きく設定した場合，またはファイル面数を増やした場合などは，ログファイルの作成処理に数分掛かる場合があります。

Webサーバとの連携の設定後およびログファイルの設定変更後の初回リクエストは，運用を開始する前に実施しておくことをお勧めします。

●変更した設定を有効にする方法

ファイルサイズまたはファイル面数を変更する場合に，変更したリダイレクタのログ取得の設定を有効にするための手順を次に示します。

Microsoft IISを停止します。

ログファイルおよび管理ファイルを移動または削除します。
メッセージログファイルの場合：メッセージログファイルおよびHNTRLibが使用する管理ファイル（<log_file_prefixの設定値>.mm）を移動，または削除します。
保守用トレースログファイルの場合：保守用トレースログファイルおよびHNTRLibが使用する管理ファイル（< trace_log_file_prefixの設定値>.mm）を移動，または削除します。
なお，HNTRLibが使用する管理ファイルのデフォルトの格納場所は次のとおりです。
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs¥mmap

Microsoft IISを起動します。

ファイルサイズおよびファイル面数を変更しない場合に，変更したリダイレクタのログ取得の設定を有効にするための手順を次に示します。

Microsoft IISを再起動するか，またはワーカプロセスのリサイクルを行います。
Microsoft IISの「インフォメーション サービス マネージャ」を使用して，ワーカプロセスのリサイクルができます。

●変更できる設定項目

変更できる設定項目と，項目に対応するユーザ定義ファイルとキーを次の表に示します。isapi_redirect.confについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2　isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル）」を参照してください。

表3-15　Microsoft IISでのリダイレクタのログ取得の設定項目

項目 | isapi_redirect.confのキー
メッセージログ，保守用トレースログのログ出力レベル | log_level
メッセージログ出力先 | log_file_dir
メッセージログファイルサイズ | log_file_size
メッセージログファイル面数 | log_file_num
メッセージログファイル名のプリフィックス | log_file_prefix
保守用トレースログ出力の有無 | trace_log
保守用トレースログ出力先 | trace_log_file_dir※
保守用トレースログファイルサイズ | trace_log_file_size
保守用トレースログファイル面数 | trace_log_file_num
保守用トレースログファイル名のプリフィックス | trace_log_file_prefix※

注※　保守用トレースログの出力先とプリフィックスには，同じ値を指定しないでください。同じ値を指定した場合は，リダイレクタが動作しません。

メッセージログ，および保守用トレースログのデフォルトの出力先

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs※

注※　新規インストール時には，logsディレクトリは存在しません。logsディレクトリは，初回リクエスト時に生成されます。

ログレベルのレベル名

ログレベルのレベル名には，重要度の高い順に「emerg」，「error」，「info」，「debug」のどれかを指定できます。

emerg：通常運用時に指定します。常に出力する必要がある重要度の高いメッセージだけが出力されます。

error：通常運用時に指定します。

info：テスト時に指定します。

debug：障害調査時に指定します。

ログレベルは，単独で指定してください（コンマ区切りで複数のログレベルを指定しないでください）。あるログレベルを指定すると，指定されたログレベルおよびそれよりも重要度の高いログが出力されます。

ログサイズの見積もりの計算式

GETリクエスト，POSTリクエストの1HTTPアクセス当たりのログサイズは，次の計算式で見積もってください。

GETによる1HTTPアクセス当たりのログサイズ
= 2.25 +（平均レスポンスボディサイズ / 16）* 0.25

POSTによる1HTTPアクセス当たりのログサイズ
= 2.50 +（平均POSTデータサイズ / 16）* 0.5 +（平均レスポンスボディサイズ / 16）* 0.25

なお，単位はすべてキロバイト，除算結果の小数点以下の値はすべて切り捨てです。また，計算式ではリクエストURLとクエリー文字列の平均サイズは，それぞれ100バイトとしています。リクエストURLとクエリー文字列の平均サイズが100バイトを超えた場合は，計算式の最初の値に，超える分のサイズを加えて計算してください。

(3)　注意事項

リダイレクタのログ取得を設定する場合の注意事項を次に示します。

ログファイル初期化処理の開始時および終了時には，メッセージログにそれぞれKDJE41029-I，KDJE41030-Iのメッセージが出力されます。Webサーバの起動時には，ログファイル初期化処理が正常に終了したことを確認するため，メッセージログにKDJE41029-I，KDJE41030-Iのメッセージが出力されていることを確認してください。

UNIXの場合，mod_jk.confファイルに設定されたファイルサイズ，およびファイル面数のログファイルは，Webサーバとの連携の設定後の初回起動時に作成されます。ログファイルの作成は，ログファイルサイズおよびファイル面数に比例した処理時間が必要となります。ログファイルサイズを大きく設定した場合，またはファイル面数を増やした場合などは，ログファイルの作成処理に数分掛かる場合があります。

3.3.11　インプロセスHTTPサーバのログ取得の設定

ここでは，インプロセスHTTPサーバのログ取得で設定できる項目について説明します。

インプロセスHTTPサーバでは，アプリケーション開発のサポート，運用時の性能解析，および障害発生時のトラブルシューティングのために，アクセスログ，性能解析トレース，スレッドトレース，および通信トレースを出力します。これらのファイルでは，ファイル面数やファイルサイズを簡易構築定義ファイルで変更できます。

インプロセスHTTPサーバのログ取得で変更できる設定項目と，項目に対応する簡易構築定義ファイルのパラメタを次の表に示します。

表3-16　インプロセスHTTPサーバのログ取得の設定項目

ログおよびトレース
項目
対応する簡易構築定義ファイルのパラメタ

アクセスログ
アクセスログの出力の有無
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.inprocess_http.enabled
（デフォルトではアクセスログが出力されます）

アクセスログのファイル名
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.inprocess_http.filename

アクセスログのファイルサイズ
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.inprocess_http.filesize

アクセスログのファイル面数
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.inprocess_http.filenum

アクセスログのフォーマット名
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.format_list※

アクセスログの出力形式
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.<フォーマット名>※

アクセスログ出力時のフォーマット
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.access_log.inprocess_http.usage_format※

性能解析トレース
－
ほかの性能解析トレースと同様に，日常的なシステム運用の作業で，cprfedコマンドを実行するときに取得条件などを指定します。性能解析トレースファイルの取得については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

スレッドトレース
スレッドトレースのファイル面数
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.thread_trace.inprocess_http.filenum

スレッドトレースのファイルサイズ
スレッドトレースのファイルサイズ＝（（（A+B）×32,786）＋32,914）バイト
A＝論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.connector.inprocess_http.max_connectionsパラメタの値
B＝論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.connector.inprocess_http.send_timeoutパラメタの値が0の場合0，0以外の場合1

通信トレース
通信トレースのファイル面数
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.logger.communication_trace.inprocess_http.filenum

通信トレースのファイルサイズ
通信トレースのファイルサイズ＝（（（A+B）×172,050）＋128）バイト
A＝論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.connector.inprocess_http.max_connectionsパラメタの値
B＝論理J2EEサーバ（j2ee-server）の<configuration>タグ内のwebserver.connector.inprocess_http.send_timeoutパラメタの値が0の場合は0，0以外の場合は1

（凡例）－：該当しない

注※　アクセスログでは，これらのキーでフォーマットを定義することで，ログの出力形式をカスタマイズできます。インプロセスHTTPサーバのアクセスログのカスタマイズについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.17.2　インプロセスHTTPサーバのアクセスログのカスタマイズ」を参照してください。

3.3.12　Cosminexus Managerのログ取得の設定

運用管理エージェント，運用監視エージェント，およびManagement Serverのログには，個別に取得する以外に，統合ログとしてまとめて取得できるものがあります。統合ログとして取得できるのは，統合メッセージログファイル，統合トレースログファイル，コマンド保守ログファイルです。なお，統合ログとして取得できるログの詳細については，「4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）」を参照してください。

ここでは，統合ログの設定の変更について説明します。統合ログは，manager.cfgで設定します。manager.cfgの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥manager.cfg

UNIXの場合
/opt/Cosminexus/manager/config/manager.cfg

統合ログの設定を変更する場合には，manager.cfgで次のキーを設定してください。

com.cosminexus.manager.log.dir
統合ログの出力先を指定します。なお，デフォルトの設定では，次の場所に出力されます。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥log

UNIXの場合
/opt/Cosminexus/manager/log

com.cosminexus.manager.messagelog.size
統合メッセージログファイルの1ファイル当たりの最大サイズを指定します。

com.cosminexus.manager.messagelog.fnum
統合メッセージログファイルの面数を指定します。

com.cosminexus.manager.tracelog.size
統合トレースログファイルの1ファイル当たりの最大サイズを指定します。

com.cosminexus.manager.tracelog.fnum
統合トレースログファイルの面数を指定します。

com.cosminexus.manager.cmdtracelog.size
コマンド保守ログファイルの1ファイル当たりの最大サイズを指定します。

com.cosminexus.manager.cmdtracelog.fnum
コマンド保守ログファイルの面数を指定します。

com.cosminexus.manager.log.compatible
運用管理エージェント，およびManagement Serverのログを個別で出力するかどうかを指定します。デフォルトの設定では，統合ログと同時に個別のログも出力されます。個別のログを出力しない場合には，falseを指定してください。

3.3.13　リソースアダプタのログ取得の設定

ここでは，リソースアダプタログを取得するための設定について説明します。リソースアダプタのログを取得するために必要な設定は次の二つです。

ログ出力の有無の設定
サーバ管理コマンドで，リソースアダプタ単位でのログ出力の有無を設定します。cjgetrarpropコマンドでConnector属性ファイルを取得し，<property>タグでLogEnabledにtrueを指定します。ファイル編集後に，cjsetrarpropコマンドで編集内容を反映させます。なお，リソースアダプタをデプロイする前にプロパティを定義する場合は，cjgetrespropコマンドとcjsetrespropコマンドを使用してください。
Connector属性ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「4.1　Connector属性ファイル」を参照してください。コマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」を参照してください。サーバ管理コマンドの操作については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「3.　サーバ管理コマンドの基本操作」を参照してください。

ログのサイズ，面数，ログレベルの設定
簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，次のパラメタで，リソースアダプタのログのサイズ，面数を設定します。

ejbserver.connector.logwriter.filesize
リソースアダプタのログファイル1面当たりの最大サイズ（単位：バイト）を指定します。

ejbserver.connector.logwriter.filenum
リソースアダプタのログファイルの面数を指定します。

また，J2EEサーバのログの出力レベル（ログレベル）がリソースアダプタのログレベルになります。J2EEサーバのログレベルの設定については，「3.3.6(3)　ログレベルの変更」を参照してください。

注意

CJMSPリソースアダプタの場合，ログサイズ，面数，ログレベルの設定方法が，ほかのリソースアダプタと異なります。詳細は，「3.3.15　Cosminexus JMSプロバイダのログ取得の設定」を参照してください。

3.3.14　Cosminexus TPBrokerのログ取得の設定

ここでは，Cosminexus TPBrokerのトレースファイルの出力先，ファイル数，エントリ数の変更について説明します。

Cosminexus TPBrokerのトレースファイルのデフォルトの出力先は次のとおりです。

J2EEサーバのトレース情報の場合

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥TPB¥logj

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>/logs/TPB/logj

サーバ管理コマンドのトレース情報の場合

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥TPB¥logj

UNIXの場合
/opt/Cosminexus/CC/admin/logs/TPB/logj

変更できる項目と，項目に対応する簡易構築定義ファイルのパラメタまたはユーザ定義ファイルとキーを次の表に示します。

表3-17　Cosminexus TPBrokerのログ取得の設定項目

項目
分類
対応する簡易構築定義ファイルのパラメタまたはユーザ定義ファイルとキー

トレースファイルの出力先
J2EEサーバ
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のejb.server.log.directory
または
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のvbroker.orb.htc.tracePath

サーバ管理コマンド
usrconf.bat（Windowsの場合），またはusrconf（UNIXの場合）のUSRCONF_JVM_ARGSキーの-Dejbserver.log.directoryオプション
または
サーバ管理コマンド用のusrconf.propertiesのvbroker.orb.htc.tracePathキー※

トレースファイルの面数
J2EEサーバ
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のvbroker.orb.htc.comt.fileCount

トレースファイルのエントリ数
J2EEサーバ
論理J2EEサーバ（j2ee-server）の<configuration>タグ内のvbroker.orb.htc.comt.entryCount

注※　サーバ管理コマンド用のusrconf.batファイル（Windowsの場合）またはusrconfファイル（UNIXの場合），およびusrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「8.8.1　リソースとJ2EEアプリケーションの設定の前に」を参照してください。サーバ管理コマンド用の各ファイルおよびキーの詳細については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「5.1　サーバ管理コマンドで使用するファイルの一覧」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「5.2　usrconf（サーバ管理コマンド用オプション定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「5.3　usrconf.bat（サーバ管理コマンド用オプション定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「5.4　usrconf.properties（サーバ管理コマンド用システムプロパティファイル）」

簡易構築定義ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6　簡易構築定義ファイル」を参照してください。

注意事項

トレースファイルの出力先を変更する場合は，変更後のトレースファイル出力先ディレクトリのサブディレクトリとしてcomtrcとmdltrcをあらかじめ作成しておく必要があります。出力先を変更すると，変更後のログ出力先ディレクトリ下のcomtrcとmdltrcにトレースファイルが出力されます。

簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内で，<param-name>にejb.server.log.directoryと，vbroker.orb.htc.tracePathの両方を設定した場合は，vbroker.orb.htc.tracePathの設定が優先されます。

usrconf.bat（Windowsの場合），またはusrconf（UNIXの場合）のUSRCONF_JVM_ARGSキーの-Dejbserver.log.directoryオプションと，サーバ管理コマンド用のusrconf.propertiesのvbroker.orb.htc.tracePathキーをどちらも設定した場合は，サーバ管理コマンド用のusrconf.propertiesのvbroker.orb.htc.tracePathキーの設定が優先されます。

Management Serverリモート管理機能から操作した場合，サーバ管理コマンドのログ出力先は変更できません。

3.3.15　Cosminexus JMSプロバイダのログ取得の設定

ここでは，Cosminexus JMSプロバイダで使用する，CJMSPブローカー，管理コマンド（cjmsicmd）およびCJMSPリソースアダプタのログの出力レベル，面数，ログファイルサイズなどを変更するための設定について説明します。

Cosminexus JMSプロバイダでは，次の3種類のログを出力します。

CJMSPブローカーのログ

管理コマンド（cjmsicmd）のログ

CJMSPリソースアダプタのログ

それぞれのデフォルトの出力先を次の表に示します。

表3-18　Cosminexus JMSプロバイダのログのデフォルトの出力先

ログの種類
デフォルトの出力先

CJMSPブローカーのログ

Windowsの場合

<CJMSP_HOME>※1¥var¥instances¥<instanceName>¥log

UNIXの場合

<CJMSP_HOME>※1/var/instances/<instanceName>/log

管理コマンド（cjmsicmd）のログ

Windowsの場合

<CJMSP_HOME>※1¥var¥admin¥log

UNIXの場合

<CJMSP_HOME>※1/var/admin/log

CJMSPリソースアダプタのログ

Windowsの場合

<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)> ※2¥cjms¥Cosminexus_JMS_Provider_RA

UNIXの場合

<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)> ※2/cjms/Cosminexus_JMS_Provider_RA

注※1

<CJMSP_HOME>は，次のディレクトリです。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥cjmsp

UNIXの場合

/opt/Cosminexus/CC/cjmsp

注※2

<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>は，J2EEサーバのオプション定義で指定したディレクトリです。デフォルトでは，次のディレクトリになります。

Windowsの場合

<ejb.public.directoryで指定したディレクトリ>¥ejb¥J2EEサーバ名¥logs

UNIXの場合

<ejb.public.directoryで指定したディレクトリ>/ejb/J2EEサーバ名/logs

なお，デフォルトの出力先がない場合，ログ出力時にディレクトリが作成されます。

＜この項の構成＞

(1)　CJMSPブローカーのログ取得の設定

(2)　管理コマンド（cjmsicmd）のログ取得の設定

(3)　CJMSPリソースアダプタのログ取得の設定

(1)　CJMSPブローカーのログ取得の設定

CJMSPブローカーでは，ログ取得の設定のうち，ログの出力レベル，面数，ファイルサイズを変更できます。

変更方法について次の表に示します。

表3-19　CJMSPブローカーのログ取得の設定の変更方法

項目
変更方法

ログの出力レベル
commonconfig.propertiesまたはconfig.propertiesの次のプロパティで指定します。

broker.logger.MessageLogFile.trace.level

面数
commonconfig.propertiesまたはconfig.propertiesの次のプロパティで指定します。

broker.logger.MessageLogFile.filenum

broker.logger.ExceptionLogFile.filenum

ファイルサイズ
commonconfig.propertiesまたはconfig.propertiesの次のプロパティで指定します。

broker.logger.MessageLogFile.filesize

broker.logger.ExceptionLogFile.filesize

注

CJMSPブローカーでは，ログの出力先の変更はできません。

ただし，<CJMSP_HOME>¥varディレクトリ（Windowsの場合）または<CJMSP_HOME>/varディレクトリ（UNIXの場合）は，cjmsbrokerコマンドの-varhomeオプションで設定できます。

なお，指定したディレクトリがない場合，デフォルトの設定が有効になります。

各プロパティの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「7.3　commonconfig.properties（CJMSPブローカー共通プロパティファイル）」，およびマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「7.4　config.properties（CJMSPブローカー個別プロパティファイル）」を参照してください。

(2)　管理コマンド（cjmsicmd）のログ取得の設定

管理コマンド（cjmsicmd）では，ログ取得の設定のうち，ログの出力レベル，出力先，面数，ファイルサイズを変更できます。

変更方法について次の表に示します。

表3-20　管理コマンド（cjmsicmd）のログ取得の設定の変更方法

項目
変更方法

ログの出力レベル
admin.propertiesの次のプロパティで指定します。

admin.logger.MessageLogFile.trace.level

出力先
admin.propertiesの次のプロパティで指定します。

admin.logger.MessageLogFile.filepath

admin.logger.ExceptionLogFile.filepath

面数
admin.propertiesの次のプロパティで指定します。

admin.logger.MessageLogFile.filenum

admin.logger.ExceptionLogFile.filenum

ファイルサイズ
admin.propertiesの次のプロパティで指定します。

admin.logger.MessageLogFile.filesize

admin.logger.ExceptionLogFile.filesize

なお，指定したディレクトリがない場合，デフォルトの設定が有効になります。

各プロパティの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「7.2　admin.properties（管理コマンドプロパティファイル）」を参照してください。

(3)　CJMSPリソースアダプタのログ取得の設定

CJMSPリソースアダプタでは，ログ取得の設定のうち，ログの出力レベル，面数，ファイルサイズを変更できます。

変更方法について次の表に示します。

表3-21　CJMSPリソースアダプタのログ取得の設定の変更方法

項目
変更方法

ログの出力レベル
Connector属性ファイルの<resourceadapter>下の<config-property>で，次のプロパティを指定します。

MsgLogLevel

面数
Connector属性ファイルの<resourceadapter>下の<config-property>で，次のプロパティを指定します。

MsgLogFileNum

ExpLogFileNum

ファイルサイズ
Connector属性ファイルの<resourceadapter>下の<config-property>で，次のプロパティを指定します。

MsgLogFileSize

ExpLogFileSize

Connector属性ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「4.1　Connector属性ファイル」を参照してください。

3.3.16　OSの統計情報取得の設定

ここでは，Windowsの場合に，OSの統計情報を取得するための設定について説明します。

Windowsのシステムモニタを使用して，システムリソースのパフォーマンスデータを取得できます。トラブル発生時またはトラブルの兆候が見られる場合には，Windowsのシステムモニタでパフォーマンスデータの取得を開始し，トラブル発生後にパフォーマンスデータのログを保存します。システムモニタの操作の詳細については，OS付属のマニュアルなどを参照してください。

次の表に示すシステムモニタのログを60秒間隔で採取します。なお，具体的な設定方法は，OS付属のマニュアルなどを確認してください。

表3-22　システムモニタの設定内容

パフォーマンスオブジェクト | インスタンス | 項目名 | 説明
processor | － | %Processor Time | CPU使用率 (非アイドル状態のスレッドを除く合計値)
%Privileged Time | CPU使用率(カーネルモード分)
%User Time | CPU使用率(ユーザモード分)
memory | － | Cache Bytes | ファイルシステム キャッシュが現在使用しているバイト数
Cache Faults/sec | 1秒間当たりのメモリの別の場所からの取り出しか，ディスクから取り出しの回数
Page Faults/sec | 1秒間当たりのページフォールトの数
Transition Faults/sec | 1秒間当たりのフォールトの数
process | _Total | Handle Count | 現在オープンしているハンドルの総数
Page Faults/sec | ページフォールトの発生率
Private Bytes | メモリ使用量(バイト)
Virtual Bytes | 仮想メモリ使用量(バイト)
Working Set Bytes | 実メモリ使用量(バイト)
cjstartsv | %Processor Time | CPU使用率 (非アイドル状態のスレッドを除く合計値)
%Privileged Time | CPU使用率(カーネルモード分)
%User Time | CPU使用率(ユーザモード分)
Page Faults/sec | ページフォールトの発生率
Thread Count | スレッド数
Private Bytes | メモリ使用量(バイト)
Virtual Bytes | 仮想メモリ使用量(バイト)
Working Set Bytes | 実メモリ使用量(バイト)

（凡例）－：該当しない

3.3.17　ユーザダンプ取得の設定

ここでは，Windowsの場合に，ユーザダンプを取得するための設定について説明します。

＜この項の構成＞

(1)　ワトソン博士を使用する場合（Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）およびWindows XPの場合）

(2)　cjstopsvコマンドを使用する場合（Windows Server 2008，Windows 7，またはWindows Vistaの場合）

(3)　mngsvrutilコマンドを使用する場合

(1)　ワトソン博士を使用する場合（Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）およびWindows XPの場合）

ワトソン博士を使用してユーザダンプを取得する場合は，ワトソン博士を使用できるように設定しておいてください。ワトソン博士のオプションとして「ダンプ シンボル テーブル」「すべてのスレッド コンテキストをダンプ」「クラッシュ ダンプ ファイルの作成」を設定します。ワトソン博士の使用方法についてはOS付属のマニュアルなどを確認してください。

また，プロセスがハングアップした場合にユーザダンプを取得するために，Microsoft社が提供しているuserdump.exeを入手しておきます。詳細はMicrosoft社のホームページなどを参照してください。

(2)　cjstopsvコマンドを使用する場合（Windows Server 2008，Windows 7，またはWindows Vistaの場合）

cjstopsvコマンドの-fdオプションを使用してユーザダンプを取得する場合は，環境変数「CJMEMDUMP_PATH」にユーザダンプの出力先ディレクトリを指定しておいてください。ユーザダンプのファイル名は，cjmemdump.dmpです。

環境変数「CJMEMDUMP_PATH」の設定例を次に示します。

環境変数「CJMEMDUMP_PATH」の設定例

set CJMEMDUMP_PATH=C:¥temp

この例の場合，C:¥tempの下にcjmemdump.dmpが作成されます。

なお，環境変数「CJMEMDUMP_PATH」を指定する場合には，次の点に注意してください。

保存先のディスクに十分な空き容量があることを確認してください。ユーザダンプのファイルサイズはJ2EEサーバの実メモリ所要量以上になります。

日本語などのマルチバイト文字を含むディレクトリを指定しないでください。ユーザダンプの出力に失敗する場合があります。

ユーザダンプの出力先ディレクトリには，存在するディレクトリを指定してください。

(3)　mngsvrutilコマンドを使用する場合

mngsvrutilコマンドのサブコマンドdumpを使用してユーザダンプを取得する場合は，プロセスがハングアップしたときにユーザダンプを取得するために，Microsoft社が提供しているuserdump.exeを入手しておきます。詳細はMicrosoft社のホームページなどを参照してください。

注意

入手したuserdump.exeが，Microsoft社の「User Mode Process Dumper Version 8.1」以降の場合，インストール後に次の内容を実施してください。

mngsvrutilコマンドでユーザダンプを取得する前の準備作業として，動作環境にuserdump.exeが存在するかを確認する。

userdump.exeが複数存在する場合は，Microsoft社が提供するuserdump.exeの格納先が先頭になるように，システム環境変数のPATHを変更する。

なお，システム環境変数で変更した内容を有効にするために，OSを再起動してください。

3.3.18　coreダンプ取得の設定

ここでは，UNIXの場合に，coreダンプを取得するための設定について説明します。

＜この項の構成＞

(1)　coreファイルのサイズの上限値の設定

(2)　coreファイルのファイル数の上限値の設定

(1)　coreファイルのサイズの上限値の設定

システムの動作環境によっては，coreファイルのサイズの上限値が0になっている場合があります。この場合，サーバプロセスの異常終了時にcoreダンプを取得できないため，あらかじめcoreファイルのサイズの上限値を無制限に設定しておく必要があります。coreファイルのサイズの上限値を無制限にするためには，簡易構築定義ファイルでJavaVM起動パラメタにオプションを指定するか，またはシェルコマンドを実行します。

なお，簡易構築定義ファイルでJavaVM起動パラメタに指定するメモリプールサイズが大きいほど，coreファイルのサイズも大きくなるため，十分な空きディスク容量を確保してください。

簡易構築定義ファイルでJavaVM起動パラメタにオプションを指定する場合
簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，JavaVM起動パラメタを定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ

add.jvm.arg

<param-value>タグ

-XX:+HitachiFullCore

指定例（物理ティアの定義の場合）

<configuration>
 <logical-server-type>j2ee-server</logical-server-type>
 <param>
   <param-name>add.jvm.arg</param-name>
   <param-value>-XX:+HitachiFullCore</param-value>
 </param>
 ：
</configuration>

シェルコマンドを実行する場合
シェルコマンドを実行して，coreファイルの上限値を無制限にしてください。

csh（Cシェル）の場合の実行例

limit coredumpsize unlimit

sh（標準シェル）の場合の実行例

ulimit -c unlimited

(2)　coreファイルのファイル数の上限値の設定

coreのファイル数の上限値は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.corefilenumパラメタで定義できます。ejb.server.corefilenumパラメタは，J2EEサーバの拡張パラメタで定義します。

cjstartsvプロセスの再起動時に「<作業ディレクトリ>/ejb/<サーバ名称>/」に出力されるcoreダンプファイルの合計が上限値を超えた場合，出力日時が古い順に削除されます。

3.3.19　JavaVMの資料取得の設定

ここでは，次に示すJavaVMの資料を取得するための設定について説明します。

JavaVMのスレッドダンプ

日立固有のJavaVMログ（日立JavaVMログファイル）

明示管理ヒープ機能のイベントログ

JavaVM起動オプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

なお，JavaVMのスレッドダンプは，デフォルトでは次のディレクトリ下に出力されます。

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>

日立固有のJavaVMログは，デフォルトでは次のディレクトリ下に出力されます。

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>/logs

出力先を変更したい場合は，JavaVMまたはJ2EEサーバ起動前に，簡易構築定義ファイルで論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで，ログ出力ディレクトリを変更しておく必要があります。

次に，JavaVMのスレッドダンプ，日立固有のJavaVMログ（日立JavaVMログファイル）および明示管理ヒープ機能のイベントログについて，それぞれの取得の設定を説明します。

＜この項の構成＞

(1)　JavaVMのスレッドダンプ取得の設定

(2)　日立固有のJavaVMログ取得の設定

(3)　明示管理ヒープ機能のイベントログ取得の設定

(1)　JavaVMのスレッドダンプ取得の設定

JavaVMのスレッドダンプを取得するための設定について説明します。

JavaVMのスレッドダンプに出力される内容は，簡易構築定義ファイルでJavaVM起動パラメタに指定しているJavaVM起動オプションによって異なります。JavaVM起動オプションは，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，JavaVM起動パラメタで定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ

add.jvm.arg

<param-value>タグ

<JavaVM起動オプション>

JavaVM起動オプションに指定するオプションを次の表に示します。なお，オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

表3-23　JavaVM起動オプションに指定するオプション（JavaVMのスレッドダンプ取得の設定）

オプション
説明

-XX:+HitachiThreadDump
拡張スレッドダンプを出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpToStdout
拡張スレッドダンプを標準出力に出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithHashCode
スレッド情報にスレッドのハッシュコードを出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithCpuTime
スレッド情報にスレッドを開始してからのユーザCPU時間，およびカーネルCPU時間を出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithBlockCount
スレッド情報にスレッドが処理をブロックした回数，および処理が待ち状態になった回数を出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiOutOfMemoryAbort
-XX:+HitachiOutOfMemoryAbortThreadDump
どちらも設定されている場合は，OutOfMemoryErrorによって強制終了した時に，スレッドダンプを出力します。ただし，J2SEクラスライブラリでCヒープ不足が発生した場合，およびJavaVMの処理中にCヒープ不足が発生した場合は，スレッドダンプを出力しません。

-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProf
OutOfMemoryErrorによって強制終了した時に出力されるスレッドダンプに，クラス別統計情報を出力します。デフォルトでは出力されません。

(2)　日立固有のJavaVMログ取得の設定

日立固有のJavaVMログを取得するための設定について説明します。

日立固有のJavaVMログとは，日立が標準のJavaVMに追加した拡張オプションを使用して取得できるログです。標準のJavaVMよりも，多くのトラブルシュート情報が取得できます。このログファイルを，日立JavaVMログファイルといいます。このファイルには，JavaVMのガーベージコレクションのログも出力されます。

日立JavaVMログファイルを取得するためには，簡易構築定義ファイルでJavaVM起動パラメタにJavaVM起動オプションを指定します。JavaVM起動オプションは，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，JavaVM起動パラメタで定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ

add.jvm.arg

<param-value>タグ

<JavaVM起動オプション>

JavaVM起動オプションに指定するオプションを次の表に示します。なお，オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

表3-24　JavaVM起動オプションに指定するオプション（日立固有のJavaVMログ取得の設定）

オプション
説明

-XX:+HitachiOutOfMemoryStackTrace
-XX:+HitachiVerboseGC
-XX:+HitachiOutOfMemoryHandling
-XX:+HitachiJavaClassLibTrace
次のオプションのうちどれかを指定している場合に，日立JavaVMログファイルを出力します。

-XX:+HitachiOutOfMemoryStackTraceを指定している場合は，例外情報とスタックトレースを日立JavaVMログファイルに出力します。なお，このオプションを指定すると，-XX:+HitachiOutOfMemorySizeおよび-XX:+HitachiOutOfMemoryCauseも同時に指定されます。

-XX:+HitachiVerboseGCを指定している場合は，ガーベージコレクションが発生したときに，拡張verbosegc情報を日立JavaVMログファイルに出力します。

-XX:+HitachiOutOfMemoryHandlingを指定している場合は，Javaヒープ不足またはPermヒープ不足が原因のOutOfMemory発生時に，OutOfMemoryの発生頻度に関する情報を日立JavaVMログファイルに出力します。

-XX:+HitachiJavaClassLibTraceを指定している場合は，クラスライブラリのスタックトレースを日立JavaVMログファイルに出力します。

必要に応じて，次の拡張オプションを指定して，日立JavaVMログファイルの出力方法や出力内容を設定してください。

日立JavaVMログファイルのファイルサイズやファイル数

拡張verbosegc機能オプション

OutOfMemoryError発生時の拡張機能オプション

クラスライブラリトレース機能オプション

ローカル変数情報出力機能オプション

スワップ領域の予約オプション　など

次に，JavaVMの保守情報（Javaヒープの情報）およびガーベージコレクションのログに拡張verbosegc情報を出力するための設定について説明します。次の表に示すオプションで，拡張verbosegc情報の出力を有効にして，拡張verbosegc情報の出力形式を指定してください。

表3-25　拡張verbosegc情報を出力するために指定するオプション

オプション | 説明
-XX:+HitachiVerboseGC | 拡張verbosegc情報を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintDate | 拡張verbosegc情報の各行に日付を出力します。
-XX:+HitachiVerboseGCCpuTime※ | ガーベージコレクションの開始から終了までの間で，ガーベージコレクションを実行したスレッドのCPU利用時間を出力します。CPU利用時間は，ユーザモードで費やしたCPU時間とカーネルモードで費やしたCPU時間に分けて出力されます。
-XX:HitachiVerboseGCIntervalTime=<時間間隔(秒)> | 拡張verbosegc情報の出力間隔を指定します。
-XX:+HitachiVerboseGCPrintCause | 拡張verbosegc情報に，ガーベージコレクションが発生した要因を出力します。
-XX:+HitachiOutputMilliTime | 拡張verbosegc情報の各行に日時（ミリ秒まで）を出力します。
-XX:+HitachiCommaVerboseGC | 拡張verbosegc情報をCSV形式で出力します。
-XX:+HitachiVerboseGCPrintTenuringDistribution | Survivor領域の年齢分布情報を出力します。出力形式や出力情報については，「8.11　Survivor領域の年齢分布情報出力機能」を参照してください。
-XX:+HitachiVerboseGCPrintJVMInternalMemory | JavaVM内部で管理しているヒープ情報を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintThreadCount | Javaスレッドの数を監視するために，Javaスレッドの数を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintDeleteOnExit | java.io.File.deleteOnExit()を呼び出したことによってJavaVMが確保した累積のヒープサイズとメソッドの呼び出し回数を，日立JavaVMログファイルに出力します。

注※

HP-UXの場合，このオプションは使用できません。オプションを指定しても無視されます。

拡張verbosegc情報から，そのサーバで必要とするJavaヒープ領域サイズ，Perm領域サイズなどを見積もるための情報を取得できます。

(3)　明示管理ヒープ機能のイベントログ取得の設定

ここでは，明示管理ヒープ機能のイベントログを取得するための設定について説明します。また，日立JavaVMログファイルとの関連についても説明します。

明示管理ヒープ機能のイベントログを取得するために必要な設定を次に示します。

ログ出力レベルの設定
目的に応じたログを出力するために，ログ出力レベルを設定します。「none」「normal」「verbose」「debug」の4段階で指定できます。J2EEサーバのデフォルトは「normal」です。「none」＜「normal」＜「vervose」＜「debug」の順でログが詳細になり，出力量も多くなります。
例えば，通常は「normal」を指定して運用し，障害が発生した場合には「verbose」を指定して詳細なログを取得する，といった運用ができます。

ログを出力するファイルについての設定
明示管理ヒープ機能のログは，ほかのJavaVMのログとは別のファイルに出力されます。想定する運用に応じて，出力先のファイル，ファイルのサイズ，およびファイルの個数を設定してください。

J2EEサーバまたはバッチサーバの場合，これらの設定は，簡易構築定義ファイルでJavaVM起動パラメタに指定しているJavaVM起動オプションによって設定できます。JavaVM起動オプションは，論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，JavaVM起動パラメタで定義します。JavaVM起動パラメタの指定内容を次に示します。

<param-name>タグ

add.jvm.arg

<param-value>タグ

<JavaVM起動オプション>

JavaVM起動オプションに指定するオプションを次の表に示します。なお，オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

表3-26　JavaVM起動オプションに指定するオプション（明示管理ヒープ機能のイベントログ取得の設定）

設定内容
オプション
説明

出力レベルの設定
-XX:HitachiExplicitMemoryLogLevel:＜文字列＞
ログ出力レベルを指定します。

none
明示管理ヒープ機能のイベントログが出力されません。

normal
通常運用の場合に指定します。Explicitヒープのサイズが大きく変化するイベントが発生した場合や，ガーベージコレクション発生時のExplicitヒープの状態が出力されます。

verbose
障害が発生した場合など，詳細なログが必要なときに指定します。

debug
verboseよりもさらに詳細なログが必要な場合に指定します。システムのパフォーマンスは低下します。

出力するファイルについての設定
-XX:HitachiExplicitMemoryJavaLog:＜文字列＞
イベントログを出力するファイルのファイル名を指定します。

-XX:HitachiExplicitMemoryJavaLogFileSize=<自然数>
1ファイル当たりの最大ファイルサイズを指定します。

-XX:HitachiExplicitMemoryJavaLogNumberOfFile=<自然数>
作成するログファイルの最大数を指定します。指定値を超えると，ラップアラウンドされ，ログは最初に作成したファイルに出力されます。

なお，明示管理ヒープ機能のイベントログは，日立JavaVMログファイルとは異なるファイルに出力されます。ただし，一部のオプションについては，日立JavaVMログファイルに設定した値が引き継がれます。

日立JavaVMログファイルの設定を引き継ぐ項目を次の表に示します。

表3-27　日立JavaVMログファイルの設定を引き継ぐ項目

オプション名 | 意味 | デフォルト値
-XX:+HitachiJavaLogNoMoreOutput | ログファイルの出力に失敗した場合の挙動を指定するオプションです。 | 有効
-XX:+HitachiOutputMilliTime | ログファイルに出力する時間の単位をミリ秒にするかどうかを指定するオプションです。 | 無効

日立固有のJavaVM拡張オプションの詳細は，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.2　日立固有のJavaVM拡張オプションの詳細」を参照してください。

4.　トラブルシューティング（資料の出力先と出力方法）

トラブルシューティングで使用する資料は，資料ごとに任意のタイミングで取得できます。この章では，各資料を個別に出力する方法と，各資料のデフォルトの出力先について説明します。

＜この章の構成＞

4.1　この章の構成

4.2　トラブルシューティングで使用する資料の種類（snapshotログを使用しない場合）

4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）

4.4　アプリケーションサーバのログ（バッチアプリケーションを実行するシステム）

4.5　EJBクライアントアプリケーションのシステムログ

4.6　性能解析トレース

4.7　JavaVMのスレッドダンプ

4.8　JavaVMのガーベージコレクションログ

4.9　メモリダンプ

4.10　日立固有のJavaVMログ（日立JavaVMログファイル）

4.11　JavaVM出力メッセージログ（標準出力またはエラーリポートファイル）

4.12　OSの状態情報とOSのログ

4.13　OSの統計情報

4.14　アプリケーションサーバの定義情報

4.15　J2EEサーバまたはバッチサーバの作業ディレクトリの内容

4.16　アプリケーションサーバのリソース設定情報

4.17　Webサーバログ

4.18　JavaVMのスタックトレース情報

4.19　明示管理ヒープ機能のイベントログ

4.1　この章の構成

トラブルシューティングに関する説明のうち，トラブルシューティングの資料の出力先と出力方法について説明します。

トラブルシューティングで使用する資料には，それぞれデフォルトの出力先があります。また，トラブルシューティングに必要な資料は，snapshotログを使用しないで，それぞれの情報を個別に取得できます。

この章の構成を次の表に示します。

表4-1　この章の構成（トラブルシューティングで使用する資料の出力先と出力方法）

分類 | タイトル | 参照先
解説 | トラブルシューティングで使用する資料の種類（snapshotログを使用しない場合） | 4.2
アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム） | 4.3
アプリケーションサーバのログ（バッチアプリケーションを実行するシステム） | 4.4
EJBクライアントアプリケーションのシステムログ | 4.5
性能解析トレース | 4.6
JavaVMのスレッドダンプ | 4.7
JavaVMのガーベージコレクションログ | 4.8
メモリダンプ | 4.9
日立固有のJavaVMログ（日立JavaVMログファイル） | 4.10
JavaVM出力メッセージログ（標準出力またはエラーリポートファイル） | 4.11
OSの状態情報とOSのログ | 4.12
OSの統計情報 | 4.13
アプリケーションサーバの定義情報 | 4.14
J2EEサーバまたはバッチサーバの作業ディレクトリの内容 | 4.15
アプリケーションサーバのリソース設定情報 | 4.16
Webサーバログ | 4.17
JavaVMのスタックトレース情報 | 4.18
明示管理ヒープ機能のイベントログ | 4.19

なお，トラブルシューティングの概要，資料を自動で出力する方法，資料の取得や出力に関する設定，および資料の出力内容については，それぞれ次の個所を参照してください。

トラブルシューティングの概要と，資料を自動で出力する方法
「2.　トラブルシューティング（資料取得と対処の概要）」

資料の取得や出力に関する設定
「3.　トラブルシューティング（資料取得の設定）」

資料に出力される内容
「5.　トラブルシューティング（資料の出力内容）」

4.2　トラブルシューティングで使用する資料の種類（snapshotログを使用しない場合）

アプリケーションサーバの構成ソフトウェアが出力するログなどの資料を，snapshotログを使用しないで個別に取得することもできます。この節では，トラブル発生時に必要な資料を個別に取得する場合の方法について説明します。snapshotログを使用した資料の取得については，「2.3.3　snapshotログの収集」を参照してください。

snapshotログを使用しない場合に，個別に取得する必要がある資料と参照先を次の表に示します。

表4-2　取得が必要な資料（snapshotログを使用しない場合）

取得する資料 | 参照先
アプリケーションサーバのログ（J2EEアプリケーションを実行するシステムの場合） | 4.3
アプリケーションサーバのログ（バッチアプリケーションを実行するシステムの場合） | 4.4
EJBクライアントアプリケーションのシステムログ※ | 4.5
性能解析トレース | 4.6
JavaVMのスレッドダンプ | 4.7
JavaVMのガーベージコレクションログ | 4.8
メモリダンプ | 4.9
日立固有のJavaVMログ（日立JavaVMログファイル） | 4.10
JavaVM出力メッセージログ（標準出力またはエラーリポートファイル） | 4.11
OSの状態情報とOSのログ | 4.12
OSの統計情報 | 4.13
アプリケーションサーバの定義情報 | 4.14
J2EEサーバまたはバッチサーバの作業ディレクトリの内容 | 4.15
アプリケーションサーバのリソース設定情報 | 4.16
Webサーバログ | 4.17
JavaVMのスタックトレース情報 | 4.18
明示管理ヒープ機能のイベントログ | 4.19

注※

EJBクライアントアプリケーションを実行するシステムの場合に取得してください。

4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）

この節では，J2EEアプリケーションを実行するシステムで，アプリケーションサーバの構成ソフトウェアが出力するログを手動で取得する方法について説明します。なお，snapshotログとしてアプリケーションサーバのログをすでに収集している場合は，ここで説明する操作は不要です。

ここでは，次のログの取得方法について説明します。

Cosminexus Component Containerのログ

Cosminexus Performance Tracerのログ

Cosminexus Component Transaction Monitorのログ

監査ログで出力するログ

アプリケーションのユーザログ

構築済み実行環境の切り替えで出力するログ

参考

Hitachi Web Serverのログの取得方法については，「4.17　Webサーバログ」で説明します。

＜この節の構成＞

4.3.1　Cosminexus Component Containerのログの取得

4.3.2　Cosminexus Performance Tracerのログの取得

4.3.3　Cosminexus Component Transaction Monitorのログの取得

4.3.4　監査ログで出力するログの取得

4.3.5　アプリケーションのユーザログの取得

4.3.6　構築済み実行環境の切り替えで出力するログの取得

4.3.1　Cosminexus Component Containerのログの取得

Cosminexus Component Containerのログの種類とログの出力先について説明します。Cosminexus Component Containerのログには，次の4種類のログがあります。

J2EEサーバ・リダイレクタ・サーバ管理コマンドのログ

運用管理エージェント・運用監視エージェント・Management Serverのログ

統合ユーザ管理のログ

Cosminexus JMSプロバイダのログ

それぞれのログの出力先について説明します。

注意

Web Redirectorを使用する場合は，リダイレクタのログの格納ディレクトリを示す「<Cosminexusのインストールディレクトリ>¥CC」を，「<Cosminexusのインストールディレクトリ>¥CCR」と読み替えてください。

＜この項の構成＞

(1)　J2EEサーバ・リダイレクタ・サーバ管理コマンドのログの取得

(2)　運用管理エージェント・運用監視エージェント・Management Serverのログの取得

(3)　統合ユーザ管理のログの取得

(4)　Cosminexus JMSプロバイダのログの取得

(5)　ログ以外に取得が必要な情報

(1)　J2EEサーバ・リダイレクタ・サーバ管理コマンドのログの取得

J2EEサーバ・リダイレクタ・サーバ管理コマンドのログの取得方法について説明します。

また，Cosminexus Component Containerでは，これらのログに加えて，移行コマンドのログが出力されます。インプロセスHTTPサーバを使用している場合はインプロセスHTTPサーバのログが，リソース枯渇監視機能を使用している場合はリソース枯渇監視ログが出力されます。

J2EEサーバおよびリダイレクタのログには，メッセージログ，ユーザログ，例外ログ，および保守用ログの4種類があります。なお，J2EEサーバでは，これらのログに加えて，起動，停止および異常終了時にイベントログまたはsyslogを出力します。

サーバ管理コマンドのログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

リソースアダプタのバージョンアップコマンド（cjrarupdate）のログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

インプロセスHTTPサーバのログには，アクセスログ，スレッドトレース，および通信トレースの3種類があります。

Cosminexus JPAプロバイダのログには，メッセージログ，例外ログ，稼働ログ，および保守ログがあります。メッセージログおよび例外ログについては，J2EEサーバの場合と同じです。

移行コマンドのログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

次にそれぞれのログについて説明します。

メッセージログ

J2EEサーバ，サーバ管理コマンド，移行コマンドなどの稼働状態が出力されます。各種サーバおよびコマンドの稼働監視の情報として使用します。

なお，Cosminexus JPAプロバイダの場合は，次の場合にも出力されます。

クラスのローディングおよびクエリ解析に失敗した場合

orm.xmlのタグでユーザが指定したアノテーションを無視する場合

persistence.xmlに指定するCosminexus JPA固有機能のプロパティに不正値が指定された場合

JTAトランザクションへの参加に失敗した場合

データベースの更新に失敗した場合

ユーザログ

アプリケーション中で出力される標準出力および標準エラー出力の情報が出力されます。アプリケーションの開発時の動作確認用に使用します。Solaris以外の場合，JavaVMのメモリ関連ログも含みます。

例外ログ

システムでトラブルが発生したときのCosminexus Component Containerの例外情報が出力されます。なお，例外ログは日常的な運用で監視する必要はありません。ログにメッセージが出力された場合に，例外情報を参照するときにご利用ください。

なお，Cosminexus JPAプロバイダの場合は，簡易構築定義ファイルの論理J2EEサーバのプロパティでcosminexus.jpa.exception.logging.sqlを指定すると，例外メッセージにSQL文（処理の延長で内部的に発行したSQLを含む）を含むこともできます。プロパティの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

保守用ログ

システムでトラブルが発生したときのCosminexus Component Containerの障害保守情報が出力されます。保守員がCosminexus Component Containerの障害解析用に使用します。

イベントログ（Windowsの場合）

J2EEサーバが起動，停止または異常終了したことを示す情報が出力されます。出力先はWindowsのイベントログの設定によって異なります。

なお，イベントログは，J2EEサーバの停止のしかたによっては，出力されません。次の場合は，正しくログが出力されないことがあります。

J2EEサーバが動作しているJavaVM自体に問題が発生した場合

J2EEサーバのプロセスをTerminateProcessによって外部から停止した場合

JavaVMの起動オプションとして-XX:+HitachiOutOfMemoryAbortオプションを指定している場合にメモリ不足によってJ2EEサーバが異常終了したとき
なお，-XX:+HitachiOutOfMemoryAbortオプションは，デフォルトで設定されているオプションです。

syslog（UNIXの場合）

J2EEサーバが起動，停止または異常終了したことを示す情報が出力されます。出力先はUNIXのsyslogの設定によって異なります。

なお，syslogは，J2EEサーバの停止のしかたによっては，出力されません。次の場合は，正しくログが出力されないことがあります。

J2EEサーバが動作しているJavaVM自体に問題が発生した場合

J2EEサーバのプロセスをSIGKILLシグナル（kill -9など）によって外部から停止した場合

JavaVMの起動オプションとして-XX:+HitachiOutOfMemoryAbortオプションを指定している場合にメモリ不足によってJ2EEサーバが異常終了したとき
-XX:+HitachiOutOfMemoryAbortオプションは，デフォルトで設定されているオプションです。

インプロセスHTTPサーバのログ

インプロセスHTTPサーバを使用している場合に，保守情報およびリクエストの処理結果が出力されます。保守情報は，保守員がCosminexus Component Containerの障害解析用に使用します。リクエストの処理結果はアクセスログとして，インプロセスHTTPサーバのパフォーマンス情報，セッショントラッキング情報などの分析に使用します。

Cosminexus JPAプロバイダのログ

Cosminexus JPAプロバイダでは，稼働情報（処理の延長で内部的に発行したSQLを含む）を出力します。稼働ログには，SQL，TRANSACTIONの2種類のカテゴリがあります。ログの出力レベルはカテゴリごとに指定できます。稼働ログの出力レベルには，Off，Information，およびDetailがあります。稼働ログは，InformationまたはDetailが指定されたときに出力されます。カテゴリごとの稼働ログの出力内容を次の表に示します。

表4-3　カテゴリごとの稼働ログの出力内容

カテゴリ
Informationレベルの出力内容
Detailレベルの出力内容

SQL※1

発行したSQLすべてが出力されます。
ユーザまたはCosminexus JPAプロバイダにかかわらず，発行したSQLが出力されます。

PreparedStatement#executeUpdate()の戻り値が出力されます。※2，※3

Informationレベルでの出力内容が出力されます。

？パラメタ（プレースホルダ）への設定値が出力されます。

TRANSACTION

JTAトランザクション利用時に，トランザクションマネージャにSynchronizationを登録したことを表すメッセージが出力されます。
EntityManagerがJTAトランザクションに参加したタイミングで出力されます。

JTAトランザクション利用時に，トランザクションマネージャからSynchronizationのafterCompletion()が呼ばれたことを表すメッセージが出力されます。
JTAトランザクションが決着されたタイミングで出力されます。

Informationレベルでの出力内容で，EntityTrasanctionのbegin()，commit()，rollback()が実行されたことを示すイベントメッセージが出力されます。
例外発生時には出力されません。

注※1

データベースへ発行するSQLおよびパラメタがログに出力されるため，ログの出力レベルの設定には注意してください。

注※2

UPDATE文を実行した場合は更新した行数になります。詳細については，Javadocの「java.sql.PreparedStatement」を参照してください。

SELECT文を実行した場合は，PreparedStatement#executeUpdate()を使用しないため出力されません。ただし，QueryインタフェースをネイティブクエリのSELECT文で生成して，Query#executeUpdate()を実行した場合はSELECT文も出力されます。

注※3

PreparedStatement#executeUpdate()を実行して例外が発生した場合は出力されません。

稼働ログは上記の表に記述したトランザクションのステータスや，永続化ユニット名などの情報が取得できない場合は小文字で，「unknown」と出力されます。

なお，Cosminexus JPAプロバイダで出力される稼働ログについては，「付録C.2　Cosminexus JPAプロバイダの稼働ログ」を参照してください。

リソース枯渇監視ログ

リソース枯渇監視機能を使用している場合に，監視対象のリソースについてのリソース枯渇監視情報が出力されます。リソースの使用率または使用数がしきい値を超えた場合の原因調査に使用します。

ログは，若い面番号の付いたログファイルから順に記録されます。一つのログファイルのサイズが1面当たりの最大サイズに達すると，ログは次の面番号の付いたログファイルに記録されます。最後のログファイル（面数の番号が付いたログファイル）のサイズが1面当たりの最大サイズに達すると，面の番号1のログファイルを空にし，そこへログを記録していきます。以降，ログファイルを空にしながら，面番号の順にログファイルへログを記録していきます。

ログの出力先のデフォルトを次の表に示します。Cosminexus Component Containerのログは，サーバ単位またはコマンド単位に取得できます。

ログの出力先に示す<作業ディレクトリ>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.public.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public（Windowsの場合），または/opt/Cosminexus/CC/server/public（UNIXの場合）です。

(a)　J2EEサーバおよびリダイレクタのログ

表4-4　J2EEサーバおよびリダイレクタのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メッセージログ
稼働ログ

Windowsの場合
<ejb.server.log.directory>※2¥cjmessage[n].log

UNIXの場合
<ejb.server.log.directory>※2/cjmessage[n].log

1MB×2
MessageLogFile

ログ稼働ログ※3

Windowsの場合
<ejb.server.log.directory>※2¥cjlogger.log

UNIXの場合
<ejb.server.log.directory>※2/cjlogger.log

1MB×2
－

リダイレクタのメッセージログ
ディレクトリ※4

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

4MB×5
－

ファイル名※4

Windowsの場合
isapi_redirect[n].log（Microsoft IIS）
hws_redirect[n].log（Hitachi Web Server）

UNIXの場合
hws_redirect[n].log（Hitachi Web Server）

J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ※5

Windowsの場合
（Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2¥connectors¥<リソースアダプタの表示名>[n].log
（Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory>※2¥connectors¥<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log

UNIXの場合
（Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/<リソースアダプタの表示名>[n].log
（Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log

1MB×2
－

J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ※5

Windowsの場合
（通常モード／Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2¥connectors¥<J2EEアプリケーション名>¥<リソースアダプタの表示名>[n].log
（テストモード／Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2¥connectors¥test#<J2EEアプリケーション名>¥<リソースアダプタの表示名>[n].log
（通常モード／Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory>※2¥connectors¥<J2EEアプリケーション名>¥<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log
（テストモード／Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory※2>¥connectors¥test#<J2EEアプリケーション名>¥<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log

UNIXの場合
（通常モード／Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/<J2EEアプリケーション名>/<リソースアダプタの表示名>[n].log
（テストモード／Connector 1.0仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/test#<J2EEアプリケーション名>/<リソースアダプタの表示名>[n].log
（通常モード／Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/<J2EEアプリケーション名>/<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log
（テストモード／Connector 1.5仕様のリソースアダプタ）
<ejb.server.log.directory>※2/connectors/test#<J2EEアプリケーション名>/<リソースアダプタの表示名>_<コネクション定義の並び順>_[n].log

1MB×2
－

ユーザログ
Webサーブレットログ※6

Windowsの場合
<ejb.server.log.directory>※2¥web_servlet[n].log

UNIXの場合
<ejb.server.log.directory>※2/web_servlet[n].log

4MB×4
WebServletLogFile

ユーザ出力ログ

Windowsの場合
<ejb.server.log.directory>※2¥user_out[n].log

UNIXの場合
<ejb.server.log.directory>※2/user_out[n].log

1MB×2
UserOutLogFile

ユーザエラーログ

Windowsの場合
<ejb.server.log.directory>※2¥user_err[n].log

UNIXの場合
<ejb.server.log.directory>※2/user_err[n].log

1MB×2
UserErrLogFile

JavaVMの保守情報およびガーベージコレクションのログ

Windowsの場合
<ejb.server.log.directory>※2¥javalog[nn].log

UNIXの場合
<ejb.server.log.directory>※2/javalog[nn].log

4MB×4
－

明示管理ヒープ機能のイベントログ

Windowsの場合
<ejb.server.log.directory>※2¥ehjavalog[nn].log

UNIXの場合
<ejb.server.log.directory>※2/ehjavalog[nn].log

4MB×4
－

例外ログ
障害発生時の例外情報

Windowsの場合
<ejb.server.log.directory>※2¥cjexception[n].log

UNIXの場合
<ejb.server.log.directory>※2/cjexception[n].log

1MB×2
ExceptionLogFile

保守用ログ
保守情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjmaintenance[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjmaintenance[n].log

16MB×4
MaintenanceLogFile

コンソールメッセージ

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjconsole[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjconsole[n].log

1MB×2
ConsoleLogFile

EJBコンテナの保守情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjejbcontainer[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjejbcontainer[n].log

1MB×2
EJBContainerLogFile

Webコンテナの保守情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjwebcontainer[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjwebcontainer[n].log

1MB×2
WebContainerLogFile

起動プロセス標準出力情報※7

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjstdout.log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjstdout.log

－
－

起動プロセス標準エラー情報※7

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjstderr.log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjstderr.log

－
－

終了プロセス情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cj_shutdown[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cj_shutdown[n].log

4KB×2※8
－

Webコンテナ保守用トレースログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_access[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_access[n].log

4MB×16
WebAccessLogFile

リダイレクタの保守用トレースログ
ディレクトリ※4

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs/

16MB×4
－

ファイル名※4

Windowsの場合
iis_rd_trace[n].log（Microsoft IIS）
hws_rd_trace[n].log（Hitachi Web Server）

UNIXの場合
hws_rd_trace[n].log（Hitachi Web Server）

J2EEサーバのRMI通信ログ

Windowsの場合
<ejb.server.log.directory>※2¥CC¥rmi¥cjrmi[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/rmi/cjrmi[n].log

1MB×4
－

イベントログ
J2EEサーバの起動，停止または異常終了を示すログ
Windowsのイベントビューアのアプリケーションログ※9
－
－

syslog
J2EEサーバの起動，停止または異常終了を示すログ
UNIXのsyslogの設定に依存します。※10
－
－

（凡例）　－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

注※1

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

ただし，リダイレクタでMicrosoft IISを使用する場合，またはEJBクライアントアプリケーションのサブディレクトリ共有モードを使用する場合は，最大面数が64になります。

また，[nn]の部分には，01～99の通し番号が付きます。

注※2

<ejb.server.log.directory>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logsです。

簡易構築定義ファイルのejb.server.log.directoryパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.14.2　J2EEサーバ用オプション定義を設定するパラメタ」およびマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.3　usrconf.cfg（J2EEサーバ用オプション定義ファイル）」を参照してください。

注※3

ファイル出力時にファイル容量をチェックします。チェック時に最大容量を超えた場合，cjlogger.logファイルの名称をバックアップファイルの名称（cjlogger_save.log）に変更します。

注※4

ディレクトリ，ファイル名は，isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル），またはmod_jk.conf（Hitachi Web Server用リダイレクタ動作定義ファイル）で設定できます。リダイレクタのログ取得の設定については，「3.3.10　リダイレクタのログ取得の設定」を参照してください。各ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。

リダイレクタのメッセージログに出力されるメッセージのうち，KDJE21000-Z～KDJE21999-Z（Zは変数で，E（エラーメッセージ），W（警告メッセージ），I（通知メッセージ）を示します）は，保守用のメッセージとなります。

注※5

リソースアダプタのログを取得するかどうかは，サーバ管理コマンドで指定されている内容に従います。また，リソースアダプタのログは，簡易構築定義ファイルでサイズおよび面数を変更できます。リソースアダプタのログ取得の設定については，「3.3.13　リソースアダプタのログ取得の設定」を参照してください。

注※6

サーブレット，JSPで発生した例外のスタックトレースについても出力されます。

注※7

起動プロセス情報だけを取得するログです。主にJ2EEサーバの起動または終了時に出力されるため，オンライン中に出力されることはほとんどありません。ファイルのサイズが上限に達したときは，<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs下（Windowsの場合），または<作業ディレクトリ>/ejb/<サーバ名称>/logs下（UNIXの場合）のcjstdout_save.logまたはcjstderr_save.logに退避されます。すでにcjstdout_save.logまたはcjstderr_save.logがあったときは，上書きされます。

注※8

サイズおよび面数は，変更できません。

注※9

ログファイルの出力先はWindowsのイベントログの設定によって異なります。

注※10

J2EEサーバの起動，停止および異常終了のメッセージをsyslogに出力するためには，syslogの設定で，facility「daemon」に対するpriorityを「info」または「debug」に設定する必要があります。syslogの設定に関する詳細については，OS付属のマニュアルを参照してください。

注意

WebサーバとしてHitachi Web Server（UNIX）を使用している場合，リダイレクタのログファイルは，Webサーバの起動時に，mod_jk.confで指定したファイルサイズで，指定した面数分，すべて作成されます。このとき，トレースファイルは空白（0x20）で初期化されます。デフォルトのファイルサイズと面数で運用している場合，ログの出力先に指定したディレクトリに，84メガバイトのディスク容量が必要になります。

WebサーバとしてMicrosoft IISを使用している場合，リダイレクタのログファイルは，Webサーバへの初回アクセス時に，isapi_redirect.confで指定したファイルサイズで，指定した面数分，すべて作成されます。このとき，トレースファイルは空白（0x20）で初期化されます。デフォルトのファイルサイズと面数で運用している場合，ログの出力先に指定したディレクトリに，84メガバイトのディスク容量が必要になります。

UNIXの場合，リダイレクタの保守用トレースログを取得する前に次のコマンドを実行してください。
/opt/hitachi/HNTRLib2/bin/hntr2sync <JkTraceLogFileDirの指定値>/<JkTraceLogFilePrefixの指定値>
なお，JkTraceLogFileDirおよびJkTraceLogFilePrefixはmod_jk.conf（Hitachi Web Server用リダイレクタ動作定義ファイル）に指定するキーです。

参考

セッションフェイルオーバ機能を使用している場合，セッションフェイルオーバについてのログは次の出力先に出力されます。

セッションフェイルオーバ機能のログ
セッションフェイルオーバ機能を使用しているJ2EEサーバのログとして出力されます。

SFOサーバのログ
メモリセッションフェイルオーバ機能を使用する場合，SFOサーバとして動作しているJ2EEサーバのログは，J2EEサーバと同じディレクトリに出力されます。また，SFOサーバ上で動作するSFOサーバアプリケーションのログも，SFOサーバアプリケーションが動作しているJ2EEサーバのログに出力されます。

(b)　サーバ管理コマンドのログ

表4-5　サーバ管理コマンドのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メッセージログ
稼働ログ※2，※3

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjmessage[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/cjmessage[n].log

1024KB×3
MessageLogFile

ログ稼働ログ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjlogger.log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/ cjlogger.log

1024KB×2
－

例外ログ
障害発生時の例外情報※2，※3

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjexception[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/cjexception[n].log

1024KB×6
ExceptionLogFile

保守用ログ
保守情報※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjmaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjmaintenance[n].log

1024KB×3
MaintenanceLogFile

コンソールメッセージ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjconsole[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjconsole[n].log

32KB×3
ConsoleLogFile

サーバ管理コマンドの保守情報※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjserveradmin[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjserveradmin[n].log

32KB×3
ServerAdminLogFile

（凡例）　－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。

注※1

ログファイル名の[n]の部分には，面の番号（1から各ログの最大面数まで）が付きます。

注※2

日立トレース共通ライブラリ形式の出力メッセージ（アプリケーション識別名）には，コマンド名が表示されます。

注※3

互換モードの場合，稼働ログと障害発生時の例外情報の出力先は標準モードと異なります。互換モードの場合の出力先とデフォルトのサイズ・面数は次のようになります。

表4-6　サーバ管理コマンドのログの出力先（互換モード）

内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥<コマンド名称>message[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/<コマンド名称>message[n].log

128KB×2

障害発生時の例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥<コマンド名称>exception[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/<コマンド名称>exception[n].log

256KB×2

注※

ログファイル名の[n]の部分には，面の番号（1から各ログの最大面数まで）が付きます。

サーバ管理コマンドのメッセージログに出力されるメッセージには，メッセージIDフィールドが空白で，メッセージテキストフィールドにメッセージID（KDJEnnnnn-Yなど）が含まれる場合があります。それらはサーバ側で発生したメッセージで，前後に出力されるメッセージの付加情報となります。

(c)　リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

表4-7　リソースアダプタバージョンアップコマンド（cjrarupdate）のログの出力先

分類
内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

メッセージログ
稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdatemessage[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdatemessage[n].log

1MB×2

例外ログ
障害発生時の例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdateexception[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdateexception[n].log

1MB×2

保守用ログ
保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdatemaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdatemaintenance[n].log

1MB×2

注※

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

(d)　インプロセスHTTPサーバのログ

表4-8　インプロセスHTTPサーバのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名
デフォルトのサイズ×面数

アクセスログ
インプロセスHTTPサーバの処理結果

Windowsの場合
<ejb.server.log.directory>※1¥http¥cjhttp_access.inprocess_http[n].log※2

UNIXの場合
<ejb.server.log.directory>※1/http/cjhttp_access.inprocess_http[n].log※2

4MB×16

スレッドトレース
スレッドトレースの情報

Windowsの場合
<ejb.server.log.directory>※1¥http¥maintenance¥thr¥cjhttp_thr.<時間情報>.inprocess_http.mm※3

UNIXの場合
<ejb.server.log.directory>※1/http/maintenance/thr/cjhttp_thr.<時間情報>.inprocess_http.mm※3

約3.2MB※4×16

通信トレース
通信トレースの情報

Windowsの場合
<ejb.server.log.directory>※1¥http¥maintenance¥comm¥cjhttp_comm.<時間情報>.inprocess_http.mm※3

UNIXの場合
<ejb.server.log.directory>※1/http/maintenance/comm/cjhttp_comm.<時間情報>.inprocess_http.mm※3

約16.6MB※4×16

注※1

<ejb.server.log.directory>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logsです。

簡易構築定義ファイルのejb.server.log.directoryパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.14.2　J2EEサーバ用オプション定義を設定するパラメタ」およびマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.3　usrconf.cfg（J2EEサーバ用オプション定義ファイル）」を参照してください。

注※2

[n]には，面の番号（1から面数（最大16）まで）が付きます。

注※3

<時間情報>には，ファイルを出力した日時が，「YYYYMMDDHHmmSSnnn」形式で表示されます。例えば，ファイルを出力した時間が，2005年1月20日10時50分30.158秒だった場合，ファイル名は「cjhttp_thr.20050120105030158.inprocess_http.mm」または「cjhttp_comm.20050120105030158.inprocess_http.mm」になります。

注※4

起動するたびに新規にトレースファイルが作成されます。面数が最大値（デフォルト値は16）を超えると，最も古い日時のファイルを再利用します。

ファイルサイズは次のように決定されます。

スレッドトレースのファイルサイズ＝(((A+B)×32786)＋32914)バイト

通信トレースのファイルサイズ＝(((A+B)×172050)＋128)バイト

A＝webserver.connector.inprocess_http.max_connectionsの値

B＝webserver.connector.inprocess_http.send_timeoutの値が0の場合0，0以外の場合1

注意

インプロセスHTTPサーバのスレッドトレースと通信トレースを取得する前に，次のコマンドを実行してください。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjtracesync [-thr|-comm] <サーバ名称>

UNIXの場合

/opt/Cosminexus/CC/admin/bin/cjtracesync [-thr|-comm] <サーバ名称>

cjtracesyncコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjtracesync（インプロセスHTTPサーバ用トレースファイルの同期）」を参照してください。

(e)　Cosminexus JPAプロバイダのログ

表4-9　Cosminexus JPAプロバイダのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名
デフォルトのサイズ×面数
チャネル名

稼働ログ
SQL

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logs¥cjpa¥cjpaoperation?.log

UNIXの場合
/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/logs/cjpa/cjpaoperation?.log

1024KB×2
JPAOperationLogFile

トランザクション

保守ログ
保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logs¥cjpa¥maintenance¥cjpamaintenance?.log

UNIXの場合
/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/logs/cjpa/maintenance/cjpamaintenance?.log

1024KB×2
JPAMaintenanceLogFile

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logs¥cjpa¥maintenance¥cjpadefinition?.log

UNIXの場合
/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/logs/cjpa/maintenance/cjpadefinition?.log

1024KB×2
－

（凡例）－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

(f)　移行コマンド（cjenvupdate）のログ

表4-10　移行コマンド（cjenvupdate）のログの出力先

分類
内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

メッセージログ
cjenvupdateコマンドの稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdatemessage[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdatemessage[n].log

4MB×4

例外ログ
cjenvupdateコマンドの例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdateexception[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdateexception[n].log

4MB×4

保守用ログ
cjenvupdateコマンドの保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdatemaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdatemaintenance[n].log

4MB×4

注※

[n]には，面の番号（1から面数（最大16）まで）が付きます。

(g)　リソース枯渇監視のログ

表4-11　リソース枯渇監視のログの出力先

監視対象
リソース
ログ取得場所およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メモリ

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjmemorywatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjmemorywatch[n].log

1MB×2
MemoryWatchLogFile

ファイルディスクリプタ

UNIXの場合※3
<ejb.server.log.directory>※2/watch/cjfiledescriptorwatch[n].log

1MB×2
FileDescriptorWatchLogFile

スレッド

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjthreadwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjthreadwatch[n].log

1MB×2
ThreadWatchLogFile

スレッドダンプ

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjthreaddumpwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjthreaddumpwatch[n].log

1MB×2
ThreaddumpWatchLogFile

HTTPリクエスト実行待ちキュー

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjrequestqueuewatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjrequestqueuewatch[n].log

1MB×2
RequestQueueWatchLogFile

HTTPセッション数

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjhttpsessionwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjhttpsessionwatch[n].log

1MB×2
HttpSessionWatchLogFile

コネクションプール

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjconnectionpoolwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjconnectionpoolwatch[n].log

1MB×2
ConnectionPoolWatchLogFile

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

注※1

[n]には，面の番号（1から面数（最大16）まで）が付きます。

注※2

<ejb.server.log.directory>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logsです。

簡易構築定義ファイルのejb.server.log.directoryパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.14.2　J2EEサーバ用オプション定義を設定するパラメタ」およびマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.3　usrconf.cfg（J2EEサーバ用オプション定義ファイル）」を参照してください。

注※3

Windowsの場合，またはAIXの場合は，ファイルディスクリプタを監視できません。

リソース枯渇監視ログファイルに出力される情報やログファイルの出力形式については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「4.3　リソース枯渇監視機能とリソース枯渇監視情報の出力」を参照してください。

(h)　ログの出力先を設定するユーザ定義ファイル

J2EEサーバ，リダイレクタ，およびサーバ管理コマンドのログの出力先を変更している場合は，次の表に示す，ログの出力先を設定するユーザ定義ファイルを参照して出力先を確認してください。なお，ログの出力先を変更した場合，変更後の出力先はsnapshotログの一括収集時に収集対象外となります。必要に応じてsnapshotログの収集先を変更してください。

表4-12　ログの出力先を設定するユーザ定義ファイル

分類
ユーザ定義ファイル

J2EEサーバ
簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に指定する，ejb.server.log.directoryパラメタ
デフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/logs」（UNIXの場合）です。

リダイレクタ

Hitachi Web Serverの場合

メッセージログ
簡易構築定義ファイルの論理Webサーバ（web-server）の<configuration>タグ内に指定する，JkLogFileDirパラメタ
デフォルトは，「logs」です。

保守用トレースログ
簡易構築定義ファイルの論理Webサーバ（web-server）の<configuration>タグ内に指定する，JkTraceLogFileDirパラメタ
デフォルトは，「logs」です。

Microsoft IISの場合

メッセージログ
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥isapi_redirect.confのlog_file_dirキー
キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

保守用トレースログ
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥isapi_redirect.confのtrace_log_file_dirキー
キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

サーバ管理コマンド
サーバ管理コマンドのusrconf.bat（Windowsの場合），またはusrconf（UNIXの場合）のejbserver.log.directoryキー
キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/admin/logs」（UNIXの場合）です。
Management Serverリモート管理機能から操作した場合は，サーバ管理コマンドのログ出力先は変更できません。

ログの出力先の変更方法など，トラブルシューティングの資料取得の設定については，「3.　トラブルシューティング（資料取得の設定）」を参照してください。

(2)　運用管理エージェント・運用監視エージェント・Management Serverのログの取得

ここでは，運用管理エージェント，運用監視エージェント，およびManagement Serverのログの出力先について説明します。

運用管理エージェント・運用監視エージェント・Management Serverのログには，個別に取得する以外に，統合ログとしてまとめて取得できるものがあります。統合ログには，次の種類があります。

統合メッセージログ
Managerのメッセージログが統合されて出力されます。

統合トレースログ
Managerのトレースログが統合されて出力されます。

コマンド保守ログ※
運用管理コマンド，Smart Composer機能で使用するコマンド，およびsnapshotlogコマンドのトレースログが統合されて出力されます。

注※　Smart Composer機能で使用するコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「8.　Smart Composer機能で使用するコマンド」を参照してください。

統合ログの出力先を次の表に示します。

表4-13　統合ログの出力先（Windowsの場合）

ファイル名 | 内容 | 出力先ディレクトリ | デフォルトのサイズ×面数
mngmessage[n]. ※1log | 統合メッセージログ | <Managerのログ出力ディレクトリ>¥message※2 | 256KB×4
mngtrace[n] ※1.log | 統合トレースログ | <Managerのログ出力ディレクトリ>¥trace※2 | 1MB×4
mngcmd[n] ※1.log | コマンド保守ログ | <Managerのログ出力ディレクトリ>¥maintenance※2 | 16MB×4

注※1

ログファイル名の[n]の部分には，面の番号（1から面数（最大64）まで）が付きます。

注※2

<Managerのログ出力ディレクトリ>は，manager.cfg（Managerログ設定ファイル）で指定されたディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥manager¥logです。manager.cfgの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.10　manager.cfg（Manager設定ファイル）」を参照してください。

表4-14　統合ログの出力先（UNIXの場合）

ファイル名 | 内容 | 出力先ディレクトリ | デフォルトのサイズ×面数
mngmessage[n] ※1.log | 統合メッセージログ | <Managerのログ出力ディレクトリ>/message※2 | 256KB×4
mngtrace[n] ※1.log | 統合トレースログ | <Managerのログ出力ディレクトリ>/trace※2 | 1MB×4
mngcmd[n] ※1.log | コマンド保守ログ | <Managerのログ出力ディレクトリ>/maintenance※2 | 16MB×4

注※1

ログファイル名の[n]の部分には，面の番号（1から面数（最大64）まで）が付きます。

注※2

<Managerのログ出力ディレクトリ>は，manager.cfg（Managerログ設定ファイル）で指定されたディレクトリを指します。デフォルト値は，/opt/Cosminexus/manager/logです。manager.cfgの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.10　manager.cfg（Manager設定ファイル）」を参照してください。

なお，統合ログに出力したログは，デフォルトでは個別のログとしても出力されます。

また，統合ログに出力した場合には個別に出力しない設定にできるログもあります。統合ログの出力に関する設定については，「3.3.12　Cosminexus Managerのログ取得の設定」を参照してください。

個別に取得する場合の運用管理エージェント，運用監視エージェント，およびManagement Serverのログの出力先，および統合メッセージログ・統合トレースログへの出力の有無を次の表に示します。

表4-15　運用管理エージェント，運用監視エージェント，およびManagement Serverのログを個別に取得する場合の出力先（Windowsの場合）

分類
ファイル名
内容
出力先ディレクトリ
デフォルトのサイズ×面数
統合メッセージログ／統合トレースログ

運用管理エージェント
adminagent.err.[1-16].log※1
運用管理エージェントの標準エラー出力
<Managerのログ出力ディレクトリ>
64KB×4
×

adminagent.out.[1-16].log※1
運用管理エージェントの標準出力
64KB×4
×

adminagent.err
運用管理エージェントの標準エラー出力コマンドライン
－
×

adminagent[1-16].log
運用管理エージェントのログ
64KB×4
○

adminagentctl.exe.[1-2].log
運用管理エージェントの起動・停止コマンドのログ
64KB×2
×

adminagent[n]※2.log
運用管理エージェントの保守ログ
<Managerのログ出力ディレクトリ>¥maintenance
16MB×4
×

mngrmi[n] ※2.log
運用管理エージェントが行うRMI処理での保守ログ
16MB×8
×

processConsole[n]※2.log
コンソールログ
<Managerのログ出力ディレクトリ>
64KB×4
×

adminagentsv.exe.[1-16]log※1
運用管理エージェントサービスのログ
64KB×2
×

adminagentsv.exe.out※1
運用管理エージェントサービスの標準出力
－
×

adminagentsv.exe.err※1
運用管理エージェントサービスの標準エラー出力
－
×

adminagent.javalog[01-04].log
運用管理エージェントの日立JavaVMログファイル
256KB×4
×

運用監視エージェント
mngagent-<ドメイン名>-<Agent名>.[n]※2.log※3

運用監視エージェントのログ・トレース

J2EEサーバ用システムJP1イベントおよびJ2EEサーバ用ユーザJP1イベントのログ※4

Managementイベント発行ログ※5

64KB×4
×

Management Server
mngsvr.exe.[1-2
].log
Management Serverサービスのログ
64KB×2
×

mngsvr.exe.err※1
Management Serverサービスの標準エラー出力
－
×

mngsvr.exe.out※1
Management Serverサービスの標準出力
－
×

mngsvrctl.exe.[1-2].log
Management Serverサービス起動・停止コマンドのログ
64KB×2
×

mngsvr[n]※2.log

Management Serverのログ

運用管理サーバ※6のシステムJP1イベントのログ※4

64KB×4
○

mngsvr[n]※2.log
Management Serverの保守ログ
<Managerのログ出力ディレクトリ>¥maintenance
16MB×2
×

（凡例）○：統合ログに出力される　×：統合ログには出力されない

[1-n]：1～nのログの面数の通し番号が付くことを示す　－：該当しない

注

<Managerのログ出力ディレクトリ>は，manager.cfg（Managerログ設定ファイル）で指定されたディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥manager¥log（Windowsの場合），または/opt/Cosminexus/manager/log（UNIXの場合）です。manager.cfgの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.10　manager.cfg（Manager設定ファイル）」を参照してください。

注※1

日立トレース共通ライブラリ形式以外の形式でログが出力されます。

注※2

ファイル名の[n]の部分には，1～指定したログの面数の通し番号が付きます。

注※3

運用監視エージェントのログ・トレースの出力先は変更できます。運用監視エージェントのログ・トレースの出力先を変更している場合は，mngagent.propertiesファイル（運用監視エージェントプロパティファイル）のmngagent.log.filenameキーの値を参照してください。

注※4

JP1と連携してアプリケーションサーバで構築したシステムを運用する場合に出力されます。

注※5

Managementイベントを使用している場合に出力されます。

注※6

アプリケーションサーバの運用管理サーバのことです。

表4-16　運用管理エージェント，運用監視エージェント，およびManagement Serverのログを個別に取得する場合の出力先（UNIXの場合）

分類
ファイル名
内容
出力先ディレクトリ
デフォルトのサイズ×面数
統合メッセージログ／統合トレースログ

運用管理エージェント
adminagent.err.[1-16].log※1
運用管理エージェントの標準エラー出力
<Managerのログ出力ディレクトリ>
64KB×4
×

adminagent.out.[1-16].log※1
運用管理エージェントの標準出力
64KB×4
×

adminagent.err
運用管理エージェントの標準エラー出力コマンドライン
－
×

adminagent[1-16].log
運用管理エージェントのログ
64KB×4
○

adminagentctl.[1-16].log
運用管理エージェントの起動・停止コマンドのログ
64KB×2
×

adminagent[n]※2.log
運用管理エージェントの保守ログ
<Managerのログ出力ディレクトリ>/maintenance
16MB×4
×

mngrmi[n] ※2.log
運用管理エージェントが行うRMI処理での保守ログ
16MB×8
×

processConsole[n]※2.log
コンソールログ
<Managerのログ出力ディレクトリ>
64KB×4
×

adminagent.javalog[01-04].log
運用管理エージェントの日立JavaVMログファイル
256KB×4
×

運用監視エージェント
mngagent-<ドメイン名>-<Agent名>.[n]※2.log※3

運用監視エージェントのログ・トレース

J2EEサーバ用システムJP1イベントおよびJ2EEサーバ用ユーザJP1イベントのログ※4

Managementイベント発行ログ※5

64KB×4
×

Management Server
mngsvrctlstart.[1-2].log
Management Server起動コマンド
64KB×2
×

mngsvrctlstop.[1-2].log
Management Server停止コマンド
64KB×2
×

mngsvrctlsetup.[1-2].log
Management Serverセットアップコマンド
64KB×2
×

mngsvr[n].log

Management Serverのログ

運用管理サーバ※6のシステムJP1イベントのログ※4

64KB×4
○

mngenvsetup.[1-2].log
mngenvsetupコマンドの実行ログ
<Managerのログ出力ディレクトリ>/maintenance
512KB×2
×

mngsvr[n]※2.log
Management Serverの保守ログ
<Managerのログ出力ディレクトリ>/maintenance
16MB×2
×

（凡例）○：統合ログに出力される　×：統合ログには出力されない

[1-n]：1～nのログの面数の通し番号が付くことを示す　－：該当しない

注※1

日立トレース共通ライブラリ形式以外の形式でログが出力されます。

注※2

ファイル名の[n]の部分には，1～指定したログの面数の通し番号が付きます。

注※3

運用監視エージェントのログ・トレースの出力先は変更できます。運用監視エージェントのログ・トレースの出力先を変更している場合は，mngagent.propertiesファイル（運用監視エージェントプロパティファイル）のmngagent.log.filenameキーの値を参照してください。

注※4

JP1と連携してアプリケーションサーバで構築したシステムを運用する場合に出力されます。

注※5

Managementイベントを使用している場合に出力されます。

注※6

アプリケーションサーバの運用管理サーバのことです。

注意

コンソールログには，運用管理エージェントが起動したサーバプロセスの標準出力，および標準エラー出力が出力されます。コンソールログについての注意事項を次に示します。

Windowsの場合，次のプロセスに対しては，コンソールログは出力されません。
論理パフォーマンストレーサ
論理Webサーバ
論理CTMドメインマネジャ
論理CTM
間接起動の論理ユーザサーバ
論理ユーザサーバの起動種別については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.20　論理ユーザサーバ定義ファイル」を参照してください。

コンソールログに出力する情報が一度に複数行出力された場合，コンソールログには1行にまとめて表示されることがあります。

コンソール情報に出力する情報の文字数が2039文字を超えてしまう場合，2039文字以降の情報は次の行に分割されて出力されます。

(3)　統合ユーザ管理のログの取得

統合ユーザ管理のトレースファイルは，ua.confファイル（統合ユーザ管理のコンフィグレーションファイル）のcom.cosminexus.admin.auth.trace.prefixオプションの設定に応じて出力されます。ua.confファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「14.3　ua.conf（統合ユーザ管理のコンフィグレーションファイル）」を参照してください。

(4)　Cosminexus JMSプロバイダのログの取得

Cosminexus JMSプロバイダのログの取得について説明します。Cosminexus JMSプロバイダで取得できるログの種類には，CJMSPブローカーのログ，管理コマンド（cjmsicmd）のログ，およびCJMSPリソースアダプタのログがあります。ログの出力先のデフォルトを次の表に示します。

表4-17　Cosminexus JMSプロバイダのログの出力先（デフォルト）

ログの種類
分類
デフォルトの出力先
デフォルトのサイズ×面数

CJMSPブローカーのログ
メッセージログ

Windowsの場合
<CJMSP_HOME>※1¥var¥instances¥<instanceName>¥log¥cjmsbroker_msg[n].log

UNIXの場合
<CJMSP_HOME>※1/var/instances/<instanceName>/log/cjmsbroker_msg[n].log

1MB×2

エラーログ

Windowsの場合
<CJMSP_HOME>※1¥var¥instances¥<instanceName>¥log¥cjmsbroker_err[n].log

UNIXの場合
<CJMSP_HOME>※1/var/instances/<instanceName>/log/cjmsbroker_err[n].log

1MB×2

管理コマンド（cjmsicmd）のログ※2
メッセージログ

Windowsの場合
<CJMSP_HOME>※1¥var¥admin¥log¥cjmsadmin_msg[n].log

UNIXの場合
<CJMSP_HOME>※1/var/admin/log/cjmsadmin_msg[n].log

1MB×2

エラーログ

Windowsの場合
<CJMSP_HOME>※1¥var¥admin¥log¥cjmsadmin_err[n].log

UNIXの場合
<CJMSP_HOME>※1/var/admin/log/cjmsadmin_err[n].log

1MB×2

CJMSPリソースアダプタのログ
メッセージログ

Windowsの場合
<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>※3¥cjms¥Cosminexus_JMS_Provider_RA¥cjmsra_msg[n].log

UNIXの場合
<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>※3/cjms/Cosminexus_JMS_Provider_RA/cjmsra_msg[n].log

1MB×2

エラーログ

Windowsの場合
<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>※3¥cjms¥Cosminexus_JMS_Provider_RA¥cjmsra_err[n].log

UNIXの場合
<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>※3/cjms/Cosminexus_JMS_Provider_RA/cjmsra_err[n].log

1MB×2

注

[n]には，面の番号（1から面数（最大16）まで）が付きます。

注※1

<CJMSP_HOME>は，次のディレクトリです。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥cjmsp

UNIXの場合

/opt/Cosminexus/CC/cjmsp

注※2

ログ出力の結果，指定した最大ファイルサイズになると，ログの出力先が次のファイルに切り替わります。ファイル数が指定した面数に達した場合，ラップアラウンドによって出力先が最初のファイルに切り替わり，元の情報は上書きされます。なお，ファイルは作成時にだけ初期化され，ラップアラウンドの際には初期化されません。ファイルサイズを拡張した場合は，拡張部分に対してだけ初期化されます。初期化とは，空白文字（0x20）をEOF（ファイルの最後）から指定したファイルサイズまでの領域に書き込むことです。既存のデータに影響はありません。

注※3

<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>は，J2EEサーバのオプション定義で指定したディレクトリです。デフォルトでは，次のディレクトリになります。

Windowsの場合

<ejb.public.directoryで指定したディレクトリ>¥ejb¥J2EEサーバ名¥logs

UNIXの場合

<ejb.public.directoryで指定したディレクトリ>/ejb/J2EEサーバ名/logs

(5)　ログ以外に取得が必要な情報

ここでは，ログ以外に取得する必要がある情報について説明します。

インプロセストランザクションサービスを使用している場合

インプロセストランザクションサービスを使用している場合，インプロセストランザクションサービスのステータスファイルを取得する必要があります。なお，ステータスファイルを二重化している場合は，予備のステータスファイルも取得してください。

ステータスファイルは，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejbserver.distributedtx.ots.status.directory1パラメタ，およびejbserver.distributedtx.ots.status.directory2パラメタ（二重化している場合）で指定したパスに格納されています。

4.3.2　Cosminexus Performance Tracerのログの取得

Cosminexus Performance Tracerのログの種類とログの出力先について説明します。

＜この項の構成＞

(1)　Cosminexus Performance Tracerのログの種類

(2)　Cosminexus Performance Tracerのログの出力先

(1)　Cosminexus Performance Tracerのログの種類

Cosminexus Performance Tracerでは，PRF識別子ごとにPRFデーモン，PRFコマンドのログを出力します。また，システムでトラブルが発生したときの保守員による障害解析用に，モジュールトレースおよび構造化例外発生ログも出力します。

(2)　Cosminexus Performance Tracerのログの出力先

Cosminexus Performance Tracerのログの出力先を次に示します。

表4-18　Cosminexus Performance Tracerのログの出力先

内容
出力先ディレクトリ

PRFデーモンおよびPRFコマンドのログ

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥log¥<PRF識別子>¥ctmlog[n]

UNIXの場合
$PRFSPOOL/log/<PRF識別子>/ctmlog[n]

モジュールトレース

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥utt¥umt

UNIXの場合
$PRFSPOOL/utt/umt

構造化例外発生ログ

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥oslttrc

UNIXの場合
$PRFSPOOL/oslttrc

保守情報

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>

UNIXの場合
$PRFSPOOL/

注　

[n]には「01」または「02」が表示されます。

4.3.3　Cosminexus Component Transaction Monitorのログの取得

ここでは，Cosminexus Component Transaction Monitorのログの出力先について説明します。

Cosminexus Component Transaction Monitorのログは「<環境変数CTMSPOOLの設定ディレクトリ>¥log」（Windowsの場合），または「$CTMSPOOL/log」（UNIXの場合）に出力されます。デフォルトでは，「<Cosminexusのインストールディレクトリ>¥CTM¥spool¥log」（Windowsの場合），または「/opt/Cosminexus/CTM/spool/log」（UNIXの場合）に出力されます。また，システムでトラブルが発生したときの保守員による障害解析用に，各種保守情報を環境変数CTMSPOOLの設定ディレクトリに出力します。ctmlogcatコマンドを実行することで出力メッセージを確認できます。

表4-19　Cosminexus Component Transaction Monitorのログの出力先

内容
出力先ディレクトリ

CTMデーモンおよびCTMコマンドのログ

Windowsの場合
<環境変数CTMSPOOLの設定ディレクトリ>¥log¥<CTMデーモン識別子>¥ctmlog[n]

UNIXの場合
$CTMSPOOL/log/<CTMデーモン識別子>/ctmlog[n]

保守情報

Windowsの場合
<環境変数CTMSPOOLの設定ディレクトリ>

UNIXの場合
$CTMSPOOL

4.3.4　監査ログで出力するログの取得

ここでは，監査ログの機能を使用した場合に出力されるログファイルについて説明します。

監査ログで出力するログの種類と出力先を次の表に示します。

表4-20　監査ログで出力するのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

メッセージログ
監査ログのメッセージログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥auditlog¥rasmessage[n].log

UNIXの場合
/opt/Cosminexus/auditlog/rasmessage[n].log

1MB×4

例外ログ
監査ログの例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥auditlog¥rasexception[n].log

UNIXの場合
/opt/Cosminexus/auditlog/rasexception[n].log

1MB×8

注※

ログファイル名の[n]の部分には，面の番号（1から面数（最大64）まで）が付きます。

4.3.5　アプリケーションのユーザログの取得

アプリケーションのユーザログは，日立トレース共通ライブラリ形式で出力するように設定している場合に取得できます。ユーザログには，次の2種類があります。

J2EEサーバ上で動作するJ2EEアプリケーション（J2EEコンポーネント）が出力するユーザログ

EJBクライアントアプリケーションが出力するユーザログ

＜この項の構成＞

(1)　J2EEアプリケーションのユーザログの取得

(2)　EJBクライアントアプリケーションのユーザログの取得

(1)　J2EEアプリケーションのユーザログの取得

J2EEアプリケーションのログの出力先については，次のディレクトリに，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にejbserver.application.userlog.CJLogHandler.<ハンドラ名>.pathパラメタで指定したプリフィックスを持つファイル名で出力されます。なお，<ハンドラ名>には，キーの値を区別するためのハンドラ名が指定されています。

Windowsの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>¥user¥（デフォルトは<J2EEサーバの作業ディレクトリ>¥ejb¥<J2EEサーバ名>¥logs¥user）

UNIXの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>/user/（デフォルトは<J2EEサーバの作業ディレクトリ>/ejb/<J2EEサーバ名>/logs/user）

なお，J2EEアプリケーションのユーザログ出力の設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.8　J2EEアプリケーションのユーザログ出力の設定」を参照してください。

(2)　EJBクライアントアプリケーションのユーザログの取得

EJBクライアントアプリケーションのユーザログの出力先については，次のディレクトリにEJBクライアントアプリケーションのシステムプロパティのejbserver.application.userlog.CJLogHandler.<ハンドラ名>.pathキーの値で指定したプリフィックスを持つファイル名で出力されます。なお，<ハンドラ名>には，キーの値を区別するためのハンドラ名が指定されています。

Windowsの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>¥user¥（デフォルトは<J2EEサーバの作業ディレクトリ>¥ejb¥<J2EEサーバ名>¥logs¥user）

UNIXの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>/user/（デフォルトは<J2EEサーバの作業ディレクトリ>/ejb/<J2EEサーバ名>/logs/user）

EJBクライアントアプリケーションでユーザログを出力するためのシステムプロパティの設定方法については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.10　EJBクライアントアプリケーションのユーザログ出力の設定（cjclstartapコマンドを使用する場合）」，またはマニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.11　EJBクライアントアプリケーションのユーザログ出力の実装と設定（vbjコマンドを使用する場合）」を参照してください。

4.3.6　構築済み実行環境の切り替えで出力するログの取得

構築済み実行環境をcosmienvコマンドで切り替えた場合に出力されるログファイルについて説明します。cosmienvコマンドで出力するログファイルは，コマンド実行時に指定する引数（機能）によって異なります。各ログファイルの出力先は「/opt/Cosminexus/env/log」です。ログファイルのファイルサイズは100キロバイト以内です。また，ファイル面数は2面です。コマンド実行時に指定する引数（機能）ごとのログファイルを次に示します。

引数に-sを指定した場合（退避機能の場合）
cosmienv_s[2].log

引数に-dを指定した場合（削除機能の場合）
cosmienv_d[2].log

引数に-rを指定した場合（回復機能の場合）
cosmienv_r[2].log

ログファイルの出力形式および出力項目については，「5.2　アプリケーションサーバのログの内容」を参照してください。

4.4　アプリケーションサーバのログ（バッチアプリケーションを実行するシステム）

この節では，バッチアプリケーションを実行するシステムで，アプリケーションサーバの構成ソフトウェアが出力するログを手動で取得する方法について説明します。なお，snapshotログとしてアプリケーションサーバのログをすでに収集している場合は，ここで説明する操作は不要です。

ここでは，次のログの取得方法について説明します。

Cosminexus Component Containerのログ

アプリケーションのユーザログ

また，バッチアプリケーションを実行するシステムでは，アプリケーションサーバの構成ソフトウェアが出力するログを手動で取得する場合，次のログも取得してください。

Cosminexus Performance Tracerのログ

監査ログで出力するログ

構築済み実行環境の切り替えで出力するログ

これらのログの取得方法については，「4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）」を参照してください。それぞれの参照先の詳細を次に示します。

Cosminexus Performance Tracerのログ
「4.3.2　Cosminexus Performance Tracerのログの取得」

監査ログで出力するログ
「4.3.4　監査ログで出力するログの取得」

構築済み実行環境の切り替えで出力するログ
「4.3.6　構築済み実行環境の切り替えで出力するログの取得」

＜この節の構成＞

4.4.1　Cosminexus Component Containerのログの取得（バッチアプリケーションを実行するシステム）

4.4.2　アプリケーションのユーザログの取得（バッチアプリケーションを実行するシステム）

4.4.1　Cosminexus Component Containerのログの取得（バッチアプリケーションを実行するシステム）

Cosminexus Component Containerのログの種類とログの出力先について説明します。Cosminexus Component Containerのログには，次の2種類のログがあります。

バッチサーバ・サーバ管理コマンド・バッチアプリケーションのログ

運用管理エージェント・運用監視エージェント・Management Serverのログ

それぞれのログの出力先について説明します。

＜この項の構成＞

(1)　バッチサーバ・サーバ管理コマンド・バッチアプリケーションのログの取得

(2)　運用管理エージェント・運用監視エージェント・Management Serverのログの取得

(3)　ログ以外に取得が必要な情報

(1)　バッチサーバ・サーバ管理コマンド・バッチアプリケーションのログの取得

バッチサーバ，サーバ管理コマンド，およびバッチアプリケーションのログの取得方法について説明します。

また，Cosminexus Component Containerでは，これらのログに加えて，移行コマンドのログが出力されます。また，リソース枯渇監視機能を使用している場合はリソース枯渇監視ログが出力されます。

バッチサーバのログには，メッセージログ，ユーザログ，例外ログ，および保守用ログの4種類があります。なお，バッチサーバでは，これらのログに加えて，起動，停止および異常終了時にイベントログまたはsyslogを出力します。

サーバ管理コマンドのログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

バッチアプリケーションのログは，メッセージログの1種類です。

リソースアダプタのバージョンアップコマンド（cjrarupdate）のログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

移行コマンドのログには，メッセージログ，例外ログ，および保守用ログの3種類があります。

次にそれぞれのログについて説明します。

メッセージログ

バッチサーバ，サーバ管理コマンド，移行コマンドなどの稼働状態が出力されます。各種サーバおよびコマンドの稼働監視の情報として使用します。

ユーザログ

アプリケーション中で出力される標準出力および標準エラー出力の情報が出力されます。アプリケーションの開発時の動作確認用に使用します。Solaris以外の場合，JavaVMのメモリ関連ログも含みます。

例外ログ

システムでトラブルが発生したときのCosminexus Component Containerの例外情報が出力されます。なお，例外ログは日常的な運用で監視する必要はありません。ログにメッセージが出力された場合に，例外情報を参照するときにご利用ください。

保守用ログ

システムでトラブルが発生したときのCosminexus Component Containerの障害保守情報が出力されます。保守員がCosminexus Component Containerの障害解析用に使用します。

イベントログ（Windowsの場合）

バッチサーバが起動，停止または異常終了したことを示す情報が出力されます。出力先はWindowsのイベントログの設定によって異なります。

なお，イベントログは，バッチサーバの停止のしかたによっては，出力されません。次の場合は，正しくログが出力されないことがあります。

バッチサーバが動作しているJavaVM自体に問題が発生した場合

バッチサーバのプロセスをTerminateProcessによって外部から停止した場合

JavaVMの起動オプションとして-XX:+HitachiOutOfMemoryAbortオプションを指定している場合にメモリ不足によってバッチサーバが異常終了したとき
なお，-XX:+HitachiOutOfMemoryAbortオプションは，デフォルトで設定されているオプションです。

syslog（UNIXの場合）

バッチサーバが起動，停止または異常終了したことを示す情報が出力されます。出力先はUNIXのsyslogの設定によって異なります。

なお，syslogは，バッチサーバの停止のしかたによっては，出力されません。次の場合は，正しくログが出力されないことがあります。

バッチサーバが動作しているJavaVM自体に問題が発生した場合

バッチサーバのプロセスをSIGKILLシグナル（kill -9など）によって外部から停止した場合

JavaVMの起動オプションとして-XX:+HitachiOutOfMemoryAbortオプションを指定している場合にメモリ不足によってバッチサーバが異常終了したとき
-XX:+HitachiOutOfMemoryAbortオプションは，デフォルトで設定されているオプションです。

リソース枯渇監視ログ

リソース枯渇監視機能を使用している場合に，監視対象のリソースについてのリソース枯渇監視情報が出力されます。リソースの使用率または使用数がしきい値を超えた場合の原因調査に使用します。

ログは，若い面番号の付いたログファイルから順に記録されます。一つのログファイルのサイズが1面当たりの最大サイズに達すると，ログは次の面番号の付いたログファイルに記録されます。最後のログファイル（面数の番号が付いたログファイル）のサイズが1面当たりの最大サイズに達すると，面の番号1のログファイルを空にし，そこへログを記録していきます。以降，ログファイルを空にしながら，面番号の順にログファイルへログを記録していきます。

ログの出力先のデフォルトを次の表に示します。Cosminexus Component Containerのログは，サーバ単位またはコマンド単位に取得できます。

ログの出力先に示す<作業ディレクトリ>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.public.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public（Windowsの場合），または/opt/Cosminexus/CC/server/public（UNIXの場合）です。

(a)　バッチサーバのログ

表4-21　バッチサーバのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メッセージログ
稼働ログ

Windowsの場合
<ejb.server.log.directory>※2¥cjmessage[n].log

UNIXの場合
<ejb.server.log.directory>※2/cjmessage[n].log

1MB×2
MessageLogFile

ログ稼働ログ

Windowsの場合
<ejb.server.log.directory>※2¥cjlogger.log

UNIXの場合
<ejb.server.log.directory>※2/cjlogger.log

－
MessageLogFile

バッチサーバにデプロイして使用するリソースアダプタの稼働ログ※3

Windowsの場合
<ejb.server.log.directory>※2¥connectors¥<リソースアダプタの表示名>[n].log

UNIXの場合
<ejb.server.log.directory>※2/connectors/<リソースアダプタの表示名>[n].log

1MB×2
－

ユーザログ
ユーザ出力ログ

Windowsの場合
<ejb.server.log.directory>※2¥user_out[n].log

UNIXの場合
<ejb.server.log.directory>※2/user_out[n].log

1MB×2
UserOutLogFile

ユーザエラーログ

Windowsの場合
<ejb.server.log.directory>※2¥user_err[n].log

UNIXの場合
<ejb.server.log.directory>※2/user_err[n].log

1MB×2
UserErrLogFile

JavaVMの保守情報およびガーベージコレクションのログ

Windowsの場合
<ejb.server.log.directory>※2¥javalog[nn].log

UNIXの場合
<ejb.server.log.directory>※2/javalog[nn].log

4MB×4
－

明示管理ヒープ機能のイベントログ

Windowsの場合
<ejb.server.log.directory>※2¥ehjavalog[nn].log

UNIXの場合
<ejb.server.log.directory>※2/ehjavalog[nn].log

4MB×4
－

例外ログ
障害発生時の例外情報

Windowsの場合
<ejb.server.log.directory>※2¥cjexception[n].log

UNIXの場合
<ejb.server.log.directory>※2/cjexception[n].log

1MB×2
ExceptionLogFile

保守用ログ
保守情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjmaintenance[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjmaintenance[n].log

16MB×4
MaintenanceLogFile

コンソールメッセージ

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjconsole[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjconsole[n].log

1MB×2
ConsoleLogFile

EJBコンテナの保守情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjejbcontainer[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjejbcontainer[n].log

1MB×2
EJBContainerLogFile

起動プロセス標準出力情報※4

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjstdout.log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjstdout.log

－
－

起動プロセス標準エラー情報※4

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cjstderr.log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cjstderr.log

－
－

終了プロセス情報

Windowsの場合
<ejb.server.log.directory>※2¥CC¥maintenance¥cj_shutdown[n].log

UNIXの場合
<ejb.server.log.directory>※2/CC/maintenance/cj_shutdown[n].log

4KB×2※5
－

イベントログ
バッチサーバの起動，停止または異常終了を示すログ
Windowsのイベントビューアのアプリケーションログ※6
－
－

syslog
バッチサーバの起動，停止または異常終了を示すログ
UNIXのsyslogの設定に依存します。※7
－
－

（凡例）　－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。

注※1

ログファイル名の[n]の部分には，面の番号（1から各ログの最大面数まで）が付きます。

また，[nn]の部分には，01～99の通し番号が付きます。

注※2

<ejb.server.log.directory>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logsです。

ejb.server.log.directoryパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「3.2　usrconf.cfg（バッチサーバ用オプション定義ファイル）」を参照してください。

注※3

リソースアダプタのログを取得するかどうかは，サーバ管理コマンドで指定されている内容に従います。また，リソースアダプタのログは，簡易構築定義ファイルでサイズおよび面数を変更できます。リソースアダプタのログ取得の設定については，「3.3.13　リソースアダプタのログ取得の設定」を参照してください。

注※4

起動プロセス情報だけを取得するログです。主にバッチサーバの起動または終了時に出力されるため，オンライン中に出力されることはほとんどありません。ファイルのサイズが上限に達したときは，<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs下（Windowsの場合），または<作業ディレクトリ>/ejb/<サーバ名称>/logs下（UNIXの場合）のcjstdout_save.logまたはcjstderr_save.logに退避されます。すでにcjstdout_save.logまたはcjstderr_save.logがあったときは，上書きされます。

注※5

サイズおよび面数は，変更できません。

注※6

ログファイルの出力先はWindowsのイベントログの設定によって異なります。

注※7

バッチサーバの起動，停止および異常終了のメッセージをsyslogに出力するためには，syslogの設定で，facility「daemon」に対するpriorityを「info」または「debug」に設定する必要があります。syslogの設定に関する詳細については，OS付属のマニュアルを参照してください。

(b)　サーバ管理コマンドのログ

表4-22　サーバ管理コマンドのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メッセージログ
稼働ログ※2，※3

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjmessage[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/cjmessage[n].log

1024KB×3
MessageLogFile

ログ稼働ログ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjlogger.log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/ cjlogger.log

1024KB×2
－

例外ログ
障害発生時の例外情報※2，※3

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥cjexception[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/cjexception[n].log

1024KB×6
ExceptionLogFile

保守用ログ
保守情報※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjmaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjmaintenance[n].log

1024KB×3
MaintenanceLogFile

コンソールメッセージ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjconsole[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjconsole[n].log

32KB×3
ConsoleLogFile

サーバ管理コマンドの保守情報※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥CC¥maintenance¥cjserveradmin[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/CC/maintenance/cjserveradmin[n].log

32KB×3
ServerAdminLogFile

（凡例）　－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

注※1

ログファイル名の[n]の部分には，面の番号（1から各ログの最大面数まで）が付きます。

注※2

日立トレース共通ライブラリ形式の出力メッセージ（アプリケーション識別名）には，コマンド名が表示されます。

注※3

互換モードの場合，稼働ログと障害発生時の例外情報の出力先は標準モードと異なります。互換モードの場合の出力先とデフォルトのサイズ・面数は次のようになります。

表4-23　サーバ管理コマンドのログの出力先（互換モード）

内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥<コマンド名称>message[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/<コマンド名称>message[n].log

128KB×2

障害発生時の例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs¥<コマンド名称>exception[n].log

UNIXの場合
/opt/Cosminexus/CC/admin/logs/<コマンド名称>exception[n].log

256KB×2

注※

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

サーバ管理コマンドのメッセージログに出力されるメッセージには，メッセージIDフィールドが空白で，メッセージテキストフィールドにメッセージID（KDJEnnnnn-Yなど）が含まれる場合があります。それらはサーバ側で発生したメッセージで，前後に出力されるメッセージの付加情報となります。

(c)　バッチアプリケーションのログ

表4-24　バッチアプリケーションのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数

メッセージログ
cjexecjobコマンド，cjkilljobコマンドおよびcjlistjobコマンドの稼働ログ

Windowsの場合
<batch.log.directory>※2¥cjmessage[n].log

UNIXの場合
<batch.log.directory>※2/cjmessage[n].log

1MB×2

注※1

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

注※2

<batch.log.directory>は，バッチアプリケーション用オプション定義ファイル（usrconf.cfgファイル）のbatch.log.directoryで指定されたディレクトリを指します。デフォルト値は，次のとおりです。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥batch¥logs

UNIXの場合

/opt/Cosminexus/CC/batch/logs

(d)　リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

表4-25　リソースアダプタバージョンアップコマンド（cjrarupdate）のログの出力先

分類
内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

メッセージログ
稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdatemessage[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdatemessage[n].log

1MB×2

例外ログ
障害発生時の例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdateexception[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdateexception[n].log

1MB×2

保守用ログ
保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjrarupdatemaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjrarupdatemaintenance[n].log

1MB×2

注※

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

(e)　移行コマンド（cjenvupdate）のログ

表4-26　移行コマンド（cjenvupdate）のログの出力先

分類
内容
ログ出力先およびログファイル名※
デフォルトのサイズ×面数

メッセージログ
cjenvupdateコマンドの稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdatemessage[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdatemessage[n].log

4MB×4

例外ログ
cjenvupdateコマンドの例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdateexception[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdateexception[n].log

4MB×4

保守用ログ
cjenvupdateコマンドの保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs¥cjenvupdatemaintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/logs/cjenvupdatemaintenance[n].log

4MB×4

注※

[n]には，面の番号（1から面数（最大16）まで）が付きます。

(f)　リソース枯渇監視のログ

表4-27　リソース枯渇監視のログの出力先

監視対象
リソース
ログ取得場所およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メモリ

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjmemorywatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjmemorywatch[n].log

1MB×2
MemoryWatchLogFile

ファイルディスクリプタ

UNIXの場合※3
<ejb.server.log.directory>※2/watch/cjfiledescriptorwatch[n].log

1MB×2
FileDescriptorWatchLogFile

スレッド

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjthreadwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjthreadwatch[n].log

1MB×2
ThreadWatchLogFile

スレッドダンプ

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjthreaddumpwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjthreaddumpwatch[n].log

1MB×2
ThreaddumpWatchLogFile

HTTPリクエスト実行待ちキュー

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjrequestqueuewatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjrequestqueuewatch[n].log

1MB×2
RequestQueueWatchLogFile

HTTPセッション数

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjhttpsessionwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjhttpsessionwatch[n].log

1MB×2
HttpSessionWatchLogFile

コネクションプール

Windowsの場合
<ejb.server.log.directory>※2¥watch¥cjconnectionpoolwatch[n].log

UNIXの場合
<ejb.server.log.directory>※2/watch/cjconnectionpoolwatch[n].log

1MB×2
ConnectionPoolWatchLogFile

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

注※1

[n]には，面の番号（1から面数（最大16）まで）が付きます。

注※2

<ejb.server.log.directory>は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリを指します。デフォルト値は，<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logsです。

ejb.server.log.directoryパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「3.2　usrconf.cfg（バッチサーバ用オプション定義ファイル）」を参照してください。

注※3

Windowsの場合，またはAIXの場合は，ファイルディスクリプタを監視できません。

リソース枯渇監視ログファイルに出力される情報やログファイルの出力形式については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「4.3　リソース枯渇監視機能とリソース枯渇監視情報の出力」を参照してください。

(g)　ログの出力先を設定するユーザ定義ファイル

バッチサーバおよびサーバ管理コマンドのログの出力先を変更している場合は，次の表に示す，ログの出力先を設定するユーザ定義ファイルを参照して出力先を確認してください。なお，ログの出力先を変更した場合，変更後の出力先はsnapshotログの一括収集時に収集対象外となります。必要に応じてsnapshotログの収集先を変更してください。

表4-28　ログの出力先を設定するユーザ定義ファイル

分類
ユーザ定義ファイルの指定個所

バッチサーバ
簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に指定する，ejb.server.log.directoryパラメタ。
デフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/logs」（UNIXの場合）です。

サーバ管理コマンド
サーバ管理コマンドのusrconf.bat（Windowsの場合），またはusrconf（UNIXの場合）のejbserver.log.directoryキー。
キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥admin¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/admin/logs」（UNIXの場合）です。
Management Serverリモート管理機能から操作した場合は，サーバ管理コマンドのログ出力先は変更できません。

ログの出力先の変更方法など，トラブルシューティングの資料取得の設定については，「3.　トラブルシューティング（資料取得の設定）」を参照してください。

(2)　運用管理エージェント・運用監視エージェント・Management Serverのログの取得

ここでは，運用管理エージェント，運用監視エージェント，およびManagement Serverのログの出力先について説明します。

運用管理エージェント・運用監視エージェント・Management Serverのログには，個別に取得する以外に，統合ログとしてまとめて取得できるものがあります。

運用管理エージェント・運用監視エージェント・Management Serverのログを統合ログとしてまとめて取得する場合，および個別に取得する場合の出力先については，「4.3.1(2)　運用管理エージェント・運用監視エージェント・Management Serverのログの取得」を参照してください。

(3)　ログ以外に取得が必要な情報

ログ以外に取得する必要がある情報については，「4.3.1(5)　ログ以外に取得が必要な情報」を参照してください。

4.4.2　アプリケーションのユーザログの取得（バッチアプリケーションを実行するシステム）

バッチアプリケーションのユーザログは，日立トレース共通ライブラリ形式で出力するように設定している場合に取得できます。

バッチアプリケーションのユーザログの出力先については，次のディレクトリに，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にejbserver.application.userlog.CJLogHandler.<ハンドラ名>.pathパラメタで指定したプリフィックスを持つファイル名で出力されます。なお，<ハンドラ名>には，キーの値を区別するためのハンドラ名が指定されています。

Windowsの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>¥user¥（デフォルトは<バッチサーバの作業ディレクトリ>¥ejb¥<バッチサーバ名>¥logs¥user）

UNIXの場合
<ログ出力先ルート（ejb.server.log.directoryの値）>/user/（デフォルトは<バッチサーバの作業ディレクトリ>/ejb/<バッチサーバ名>/logs/user）

なお，バッチアプリケーションのユーザログ出力の設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「2.3.5　バッチアプリケーションのログ出力」を参照してください。

4.5　EJBクライアントアプリケーションのシステムログ

EJBクライアントアプリケーションのシステムログの種類と出力先について説明します。

なお，EJBクライアントアプリケーションのシステムログを運用するときに留意することについては，「2.6.1　EJBクライアントアプリケーションのシステムログに関する留意事項」を参照してください。

注意

uCosminexus Clientを使用する場合は，EJBクライアントアプリケーションのログの格納ディレクトリを示す「<Cosminexusのインストールディレクトリ>¥CC」を，「<Cosminexusのインストールディレクトリ>¥CCL」と読み替えてください。

＜この節の構成＞

4.5.1　EJBクライアントアプリケーションのシステムログの種類

4.5.2　EJBクライアントアプリケーションのシステムログの出力先

4.5.1　EJBクライアントアプリケーションのシステムログの種類

EJBクライアントアプリケーションでは，EJBクライアントアプリケーションのプロセス単位にシステムログを出力します。EJBクライアントアプリケーションのシステムログの種類を次に示します。

表4-29　EJBクライアントアプリケーションのシステムログの種類

種類 | ログの内容 | ファイル名 | デフォルトのサイズ×面数 | チャネル名
メッセージログ | 稼働ログ | cjclmessage[n].log※1 | 1MB×2 | ClientMessageLogFile
cjclstartapコマンドの稼働ログ | cjclstartap[n].log※2 | 1MB×2 | －
cjcldellogコマンドの稼働ログ | cjcldellog.log | 1MB×2※3 | －
ユーザログ | ユーザ出力ログ | user_out[n].log※1 | 1MB×2 | UserOutLogFile
ユーザエラーログ | user_err[n].log※1 | 1MB×2 | UserErrLogFile
Javaログ | JavaVMの保守情報，ガーベージコレクションのログ | javalog[n].log※1 | 256KB×4 | －
例外ログ | 障害発生時の例外情報 | cjclexception[n].log※1 | 1MB×2 | ClientExceptionLogFile
保守用ログ※4 | 保守情報 | cjclmaintenance[n].log※1 | 1MB×2 | ClientMaintenanceLogFile
EJBコンテナの保守情報 | cjejbcontainer[n].log※1 | 1MB×2 | EJBContainerLogFile
起動プロセス標準出力情報 | cjstdout[n].log※2 | 1MB×2 | －
起動プロセス標準エラー情報 | cjstderr[n].log※2 | 1MB×2 | －
ログの稼働情報 | cjlogger.log | 1MB×2※3 | －

（凡例）　－：該当しない

注※1

ファイル名の[n]の部分には，1～指定したログの面数の通し番号が付きます。

注※2

ファイル名の[n]の部分には指定したログの面数の番号（1または2）が付きます。

注※3

cjcldellog.logのサイズが1MBを超えた場合，cjcldellog_save.logというバックアップファイル名称のログファイルになります。

注※4

このログは，保守員へ送付する場合に必要に応じて収集してください。

4.5.2　EJBクライアントアプリケーションのシステムログの出力先

EJBクライアントアプリケーションのシステムログは，次のキーに指定したディレクトリに出力されます。

Javaアプリケーション用オプション定義ファイル（usrconf.cfg）のejb.client.log.directoryキー，およびejb.client.ejb.logキーに指定したディレクトリ

システムプロパティのejbserver.client.log.directoryキーおよびejbserver.client.ejb.logキーに指定したディレクトリ

Javaアプリケーション用オプション定義ファイル（usrconf.cfg）とシステムプロパティの両方に異なる値が指定された場合，システムプロパティの設定が有効になります。

なお，システムプロパティで出力先を設定できるのは，次のログだけです。

稼働ログ（cjclmessage[n].log）

障害発生時の例外情報（cjclexception[n].log）

保守情報（cjclmaintenance[n].log）

ログの稼働情報（cjlogger.log）

cjcldellogコマンドの稼働ログ（cjcldellog.log）およびcjclstartapコマンドの稼働ログ（cjclstartap[n].log）は，「<Cosminexusのインストールディレクトリ>¥CC¥client¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/client/logs」（UNIXの場合）の直下に出力されます。

注意

サブディレクトリ専有モードでcjclstartapコマンドを実行した場合の動作は保証されません。

EJBクライアントアプリケーションの標準出力，および標準エラーの内容は，ログファイルには出力されません。ログファイルに出力する場合は，ユーザログ機能を使用するか，リダイレクトしてください。

EJBクライアントアプリケーションのシステムログの出力方法には，次の2種類のモードがあります。モードによって，出力先になるサブディレクトリの構成が異なります。これらのモードは，クラスパスの指定によって選択します。

サブディレクトリ共有モード
複数のプロセスのログを一つのディレクトリ（デフォルトはejbclディレクトリ）下に出力するモードです。なお，プロセス単位（アプリケーション単位）でログの出力先を別々にしたい場合，usrconf.cfgのejb.client.log.directoryキーにそれぞれの出力先ディレクトリを指定してください。

サブディレクトリ専有モード
それぞれのプロセスのログを，プロセス単位に作成されたサブディレクトリに別々に出力するモードです。
アプリケーションサーバの06-50よりも前のバージョンとの互換用に使用するモードです。
サブディレクトリ共有モードとサブディレクトリ専有モードの違いの詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.8.2　システムログの出力先のサブディレクトリ」を参照してください。

＜この項の構成＞

(1)　サブディレクトリ共有モードの場合

(2)　サブディレクトリ専有モードの場合

(1)　サブディレクトリ共有モードの場合

EJBクライアントアプリケーションのシステムログの出力先を次の図に示します。

図4-1　サブディレクトリ共有モードのEJBクライアントアプリケーションのシステムログの出力先（Javaアプリケーション用オプション定義ファイルで指定した場合）

図4-2　サブディレクトリ共有モードのEJBクライアントアプリケーションのシステムログの出力先（システムプロパティで指定した場合）

(2)　サブディレクトリ専有モードの場合

EJBクライアントアプリケーションのシステムログは，ejbserver.client.log.directoryキーに指定したディレクトリ下の，EJBクライアントアプリケーションのプロセス単位に作成されるサブディレクトリ下に格納されます。EJBクライアントアプリケーションのプロセス単位のサブディレクトリは，ejbserver.client.log.directoryキーに指定したディレクトリ下の，ejbserver.client.ejb.logキーに指定したディレクトリ下に作成されます。デフォルトでは，「<Cosminexusのインストールディレクトリ>¥CC¥client¥logs¥ejb」（Windowsの場合），または「/opt/Cosminexus/CC/client/logs/ejb」（UNIXの場合）の下にサブディレクトリが作成されます。

EJBクライアントアプリケーションのシステムログ出力先のサブディレクトリ名を次に示します。

表4-30　EJBクライアントアプリケーションのシステムログ出力先のサブディレクトリ名

コマンド名 | サブディレクトリ名
vbjコマンド | cjcl<日時>_<プロセスID>

注

<日時>には，EJBクライアントアプリケーションを開始した日時が「mddhhmmssmmm」の形式で表示されます。日時に表示される項目は次のとおりです。なお，月以外は10進数で表示されます。

m：月（16進数）　dd：日付　hh：時間　mm：分　ss：秒　mmm：ミリ秒

EJBクライアントアプリケーションのシステムログ出力先のディレクトリ構成例を次に示します。

図4-3　サブディレクトリ専有モードのEJBクライアントアプリケーションのシステムログの出力先

サブディレクトリは，次のように作成および運用されます。

EJBクライアントアプリケーション単位に作成するサブディレクトリは，上限値を設定できます。EJBクライアントアプリケーションが終了すると，サブディレクトリにclient_process_endという空のファイルが作成されます。上限値を超えた場合は，このファイルの作成時刻が古い順にサブディレクトリが削除されます。なお，サブディレクトリにログを出力しているEJBクライアントアプリケーションがどれも終了していない（client_process_endファイルが作成されていない）場合は，上限値を超えてサブディレクトリが作成されます。作成されたサブディレクトリがあとで上限値まで削除されることはありません。

ejbserver.client.log.directoryキーに指定したディレクトリ下の，ejbserver.client.ejb.logキーに指定したディレクトリ下にユーザ作成のサブディレクトリがある場合，EJBクライアントアプリケーション単位に作成するサブディレクトリと同様に，サブディレクトリとして数えられます。

EJBクライアントアプリケーションが異常終了すると，client_process_endファイルが作成されないことがあるため，異常終了したEJBクライアントアプリケーションのサブディレクトリは上限値を超えても削除されないことがあります。

一つのEJBクライアントアプリケーションを一つだけ起動する場合（同時実行しない場合）には，そのEJBクライアントアプリケーション固有のシステムログ出力先ディレクトリを作成して，常にそのディレクトリに出力する運用ができます。このサブディレクトリは，上限値の指定に関係なく，削除されません。

サブディレクトリを削除する場合，cjcldellogコマンドを使用すると，指定した更新日または更新時間より前に作成されたサブディレクトリを一括して削除できます。なお，cjcldellogコマンドは，Windowsの場合はWindowsのタスク，UNIXの場合はatコマンドまたはcrontabコマンドを利用して定期的に実行してください。

EJBクライアントアプリケーションのログ出力の設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.10　EJBクライアントアプリケーションのユーザログ出力の設定（cjclstartapコマンドを使用する場合）」，およびマニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.11　EJBクライアントアプリケーションのユーザログ出力の実装と設定（vbjコマンドを使用する場合）」を参照してください。

4.6　性能解析トレース

性能解析トレースの格納場所は次のとおりです。

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥utt¥prf¥<PRF識別子>

UNIXの場合
$PRFSPOOL/utt/prf/<PRF識別子>

性能解析トレースの収集方法については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。性能解析トレースには，セッショントレースも出力されている場合があります。

4.7　JavaVMのスレッドダンプ

ここでは，JavaVMのスレッドダンプを取得する方法について説明します。

JavaVMのスレッドダンプは，次の方法で取得できます。

運用管理コマンド（mngsvrutil）を使用して，J2EEサーバ，SFOサーバ，CORBAネーミングサービス，およびCTMのスレッドダンプを取得する。

個別のコマンドを使用して，J2EEサーバ，CORBAネーミングサービス，およびEJBクライアントアプリケーションのスレッドダンプを取得する。

日立固有のJavaVMのコマンドを使用して，クラス別統計情報またはExplicitヒープ詳細情報を拡張スレッドダンプに取得する。

それぞれの方法について次に説明します。

＜この節の構成＞

4.7.1　運用管理コマンドを使用する場合

4.7.2　個別のコマンドを使用する場合

4.7.3　日立固有のJavaVMのコマンドを使用する場合

4.7.4　スレッドダンプにクラス別統計情報を出力する場合の注意事項

4.7.1　運用管理コマンドを使用する場合

運用管理コマンド（mngsvrutil）を利用したJavaVMのスレッドダンプの取得は，mngsvrutilコマンドのサブコマンド「dump」の引数にserverを指定して実行します。

次のスレッドダンプを取得できます。

J2EEサーバ（クラスタを含む）

SFOサーバ

CORBAネーミングサービスおよびCTM

mngsvrutilコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「mngsvrutil（Management Serverの運用管理コマンド）」を参照してください。mngsvrutilコマンドのサブコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「7.3　mngsvrutilコマンドのサブコマンドの詳細」を参照してください。

実行形式，実行例，および出力先を次に示します。

実行形式

mngsvrutil -m <Management Serverのホスト名>［:<ポート番号>］ -u <管理ユーザID> -p <管理パスワード> -t <論理サーバ名> dump server

実行例

mngsvrutil -m mnghost -u user01 -p pw1 -t myserver dump server

出力先

J2EEサーバを対象にする場合

Windowsの場合
<作業ディレクトリ>※¥ejb¥<サーバ名称>¥javacore*.txt

UNIXの場合
<作業ディレクトリ>※/ejb/<サーバ名称>/javacore*.txt

注※　<作業ディレクトリ>は，J2EEサーバのユーザ定義（usrconf.cfgファイル中のejb.public.directory）で指定されたディレクトリを指します。デフォルト値は，次のとおりです。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public

UNIXの場合
/opt/Cosminexus/CC/server/public

SFOサーバを対象にする場合

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥ejb¥<サーバ名称>¥javacore*.txt

UNIXの場合
/opt/Cosminexus/CC/server/public/ejb/<サーバ名称>/javacore*.txt

CORBAネーミングサービスおよびCTMを対象にする場合

Windowsの場合
<Cosminexusのインストールディレクトリ>¥TPB¥logj¥javacore*.txt

UNIXの場合
/opt/Cosminexus/TPB/logj/javacore*.txt

4.7.2　個別のコマンドを使用する場合

スレッドダンプの出力のされ方は，指定しているJ2EEサーバを実行するJavaVMの起動オプションによって異なります。

-XX:+HitachiThreadDumpが設定されている場合，拡張スレッドダンプを取得できます。このオプションはデフォルトで設定されています。

-XX:+HitachiThreadDumpToStdoutが設定されている場合，スレッドダンプは標準出力にも出力されます。このオプションはデフォルトでは設定されていません。必要に応じて設定してください。

次に示す起動オプションが設定されている場合に，-XX:+HitachiOutOfMemoryAbortThreadDumpが設定されていると，OutOfMemoryErrorによって強制終了した時に，スレッドダンプが出力されます。

-XX:+HitachiOutOfMemoryAbort

-XX:+HitachiThreadDump

ただし，次の場合は除きます。

J2SEクラスライブラリでCヒープ不足が発生した場合

JavaVMの処理中にCヒープ不足が発生した場合

次に示す起動オプションが設定されている場合に，-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProfが設定されていると，OutOfMemoryErrorによって強制終了した時に，スレッドダンプにクラス別統計情報が出力されます。クラス別統計情報については，「8.3　クラス別統計機能」を参照してください。このオプション設定時に出力されるクラス別統計情報は，jheapprofコマンド実行時に取得する情報と同じです。

-XX:+HitachiOutOfMemoryAbort

-XX:+HitachiOutOfMemoryAbortThreadDump

-XX:+HitachiThreadDump

＜この項の構成＞

(1)　J2EEサーバのスレッドダンプの取得

(2)　CORBAネーミングサービスのスレッドダンプの取得

(3)　EJBクライアントアプリケーションのスレッドダンプの取得

(1)　J2EEサーバのスレッドダンプの取得

J2EEサーバプロセス(cjstartsv)が存在する場合，J2EEサーバのスレッドダンプは，cjdumpsvコマンドを実行して取得します。cjdumpsvコマンドの実行例を次に示します。時間の経過に応じた各スレッドの状態遷移を確認するため，複数回cjdumpsvコマンドを実行します。目安として3秒おきに10回程度実行します。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥server¥bin¥cjdumpsv <J2EEサーバ名>

UNIXの場合

/opt/Cosminexus/CC/server/bin/cjdumpsv <J2EEサーバ名>

cjdumpsvコマンドを実行すると，次に示すファイルにJavaVMのスレッドダンプが出力されます。

サーバ標準出力ログ

<作業ディレクトリ>¥ejb¥<サーバ名称>¥javacore<プロセス番号>.<コマンド実行日時>.txt（Windowsの場合）

<作業ディレクトリ>/ejb/<サーバ名称>/javacore<プロセス番号>.<コマンド実行日時>.txt（UNIXの場合）

サーバ標準出力ログのデフォルトの出力先は「<ejb.server.log.directory>¥CC¥maintenance¥cjstdout.log」（Windowsの場合），または「<ejb.server.log.directory>/CC/maintenance/cjstdout.log」（UNIXの場合）です。出力先を変更している場合は，「4.3　アプリケーションサーバのログ（J2EEアプリケーションを実行するシステム）」または「4.4　アプリケーションサーバのログ（バッチアプリケーションを実行するシステム）」を参照してください。なお，作業ディレクトリのデフォルトのディレクトリパスは「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」（Windowsの場合），または「/opt/Cosminexus/CC/server/public」（UNIXの場合）です。

また，javacore<プロセス番号>.<コマンド実行日時>.txtファイルの出力先は，環境変数JAVACOREDIRで変更できます。ただし，指定したディレクトリへの書き込みに失敗した場合は，デフォルトの出力先に出力されます。このディレクトリにも出力できなかった場合は，標準エラー出力にだけ出力されます。

cjdumpsvコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjdumpsv（J2EEサーバのスレッドダンプの取得）」を参照してください。

参考

スレッドダンプが出力されると，標準出力に，次のメッセージが出力され，javaプログラムの実行が継続されます。このメッセージは，-XX:+HitachiThreadDumpToStdoutの設定とは関係なく出力されます。

Writing Java core to <ファイル名（フルパス）>...OK

(2)　CORBAネーミングサービスのスレッドダンプの取得

Windowsの場合，CORBAネーミングサービスのプロセス（nameserv）が存在するときは，CORBAネーミングサービスを起動したコマンドプロンプトに対してCtrl+Breakキーを押します。時間の経過に応じた各スレッドの状態遷移を確認するため，複数回実行します。目安として3秒おきに10回程度実行します。なお，CORBAネーミングサービスをManagement Serverから監視している場合はスレッドダンプを取得できません。

UNIXの場合，CORBAネーミングサービスのプロセス（java）が存在するときは，killコマンドを実行してCORBAネーミングサービスのスレッドダンプを取得します。なお，CORBAネーミングサービスをManagement Serverから監視している場合はスレッドダンプを取得できません。

UNIXでのCORBAネーミングサービスのスレッドダンプの取得手順を次に示します。

CORBAネーミングサービスのプロセスIDを取得します。
CORBAネーミングサービスのプロセスIDの取得方法は，次の場合によって異なります。

javaプロセスがほかに起動していない場合

ps -ef | grep java

javaプロセスが複数起動している場合

CORBAネーミングサービスの起動用シェルスクリプトを使用すると，カレントワーキングディレクトリに生成されるnamesv_pidファイルにCORBAネーミングサービスのプロセスIDを出力できます。

CORBAネーミングサービスの起動用シェルスクリプトの例を次に示します。

#!/bin/sh
export VBROKER_ADM=/opt/Cosminexus/TPB/adm
export SHLIB_PATH="${SHLIB_PATH}:/opt/Cosminexus/TPB/lib"

# start name server process
exec /opt/Cosminexus/TPB/bin/nameserv ¥
-J-Dvbroker.agent.enableLocator=false ¥
-J-Djava.security.policy==/opt/Cosminexus/CC/server/sysconf/cli.policy ¥
-J-Dvbroker.se.iiop_tp.scm.iiop_tp.listener.port=900 &

# save background java process pid
echo $! > ./namesv_pid

取得したプロセスIDを指定して，killコマンドを実行します。

kill -3 `cat namesv_pid`

(3)　EJBクライアントアプリケーションのスレッドダンプの取得

EJBクライアントアプリケーションのスレッドダンプは，cjcldumpapコマンドを実行して取得します。

cjcldumpapコマンドを実行すると，cjclstartapコマンドを実行して起動したEJBクライアントアプリケーションのスレッドダンプが出力されます。また，特定のプロセスのスレッドダンプを出力することもできます。cjcldumpapコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjcldumpap（Javaアプリケーションのスレッドダンプの取得）」を参照してください。

cjcldumpapコマンドの実行形式，実行例，およびスレッドダンプの出力先を次に示します。

実行形式

cjclstartapコマンドを使用して起動したEJBクライアントアプリケーションのスレッドダンプを出力する場合

cjcldumpap

特定のプロセスのスレッドダンプを出力する場合

cjcldumpap ＜プロセスID＞

実行例

cjclstartapコマンドを使用して起動したEJBクライアントアプリケーションのスレッドダンプを出力する場合

cjcldumpap

特定のプロセスのスレッドダンプを出力する場合

cjcldumpap 3264

出力先

cjclstartapコマンドを実行しているカレントディレクトリ

4.7.3　日立固有のJavaVMのコマンドを使用する場合

日立固有のJavaVMのコマンドを使用すると，拡張スレッドダンプにクラス別統計情報やExplicitヒープ詳細情報を取得できます。

＜この項の構成＞

(1)　クラス別統計情報の拡張スレッドダンプへの取得

(2)　Explicitヒープ詳細情報の拡張スレッドダンプへの取得

(1)　クラス別統計情報の拡張スレッドダンプへの取得

クラス別統計情報を含む拡張スレッドダンプは，jheapprofコマンドを実行して取得します。クラス別統計情報は，クラス別統計機能で出力する情報で，ガーベージコレクションによるJavaオブジェクトの変化や，Javaオブジェクトの参照関係などを調査する場合に使用します。クラス別統計機能については，「8.3　クラス別統計機能」を，クラス別統計情報の出力方法については，「8.3.3　クラス別統計情報の出力」を参照してください。jheapprofコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「jheapprof（日立クラス別統計情報付き拡張スレッドダンプの出力）」を参照してください。

(2)　Explicitヒープ詳細情報の拡張スレッドダンプへの取得

Explicitヒープ詳細情報のうち，次の情報は明示管理ヒープ機能が有効な場合に，拡張スレッドダンプに必ず取得されます。

Explicitヒープ情報

Explicitメモリブロック情報

Explicitヒープ詳細情報のオブジェクト統計情報は，eheapprofコマンドを実行して拡張スレッドダンプに取得します。オブジェクト統計情報は，Explicitメモリブロック内の詳細情報です。明示管理ヒープ機能を使用するシステムのデバッグや障害解析に使用します。

明示管理ヒープ機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.　明示管理ヒープ機能を使用したフルガーベージコレクションの抑止」を参照してください。eheapprofコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「eheapprof（Explicitヒープ詳細情報付き拡張スレッドダンプの出力）」を参照してください。

実行形式

Windowsの場合

eheapprof [-f|-i] -p <プロセスID>

UNIXの場合

eheapprof [-f|-i] [-force] -p <プロセスID>

実行例

ここでは，プロセスIDが2463のJavaプロセスのクラス別統計情報を出力します。

-pオプションに，クラス別統計情報を出力したいJavaプロセスのプロセスIDを指定して，eheapprofコマンドを実行します。

% eheapprof -p 2463

eheapprofコマンドで-fオプションを省略している場合，次の確認メッセージが表示されます。

Windowsの場合

日立クラス別統計付き拡張スレッドダンプを出力するかどうかを確認するメッセージが次の形式で表示されます。

Force VM to output ExplicitHeapProf: ? (y/n)

UNIXの場合

プロセスIDを確認するメッセージが次の形式で表示されます。

send SIGQUIT to 2463: ? (y/n)

yを入力します。
日立クラス別統計付き拡張スレッドダンプを出力すると，実行中のjavaプログラムでは次のメッセージが出力されます。

Writing Java core to javacore2463.030806215140.txt... OK

実行中のjavaプログラムは，カレントディレクトリに日立クラス別統計付き拡張スレッドダンプ（javacore<プロセスID>.<日時>.txt）を作成し，プログラムを継続します。

4.7.4　スレッドダンプにクラス別統計情報を出力する場合の注意事項

JavaVMの起動オプションに-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProfが設定されていると，OutOfMemoryErrorによって強制終了した時に，スレッドダンプにクラス別統計情報が出力されます。

大量のヒープ（Javaヒープ，ExplicitヒープまたはPermヒープ）を使用している場合に，スレッドダンプにクラス別統計情報が出力されると時間が掛かります。このため，OutOfMemoryError発生時にJavaVMを即時に強制終了して回復させることができないことがあります。

注意

次のJavaVMの起動オプションが設定されていない場合，スレッドダンプにクラス別統計情報は出力されません。

-XX:+HitachiOutOfMemoryAbort

-XX:+HitachiOutOfMemoryAbortThreadDump

-XX:+HitachiThreadDump

4.8　JavaVMのガーベージコレクションログ

JavaVMのガーベージコレクションログは，JavaVMまたはJ2EEサーバ起動前にログ出力先が設定されている場合にだけ取得できます。

ガーベージコレクションログの出力先は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定します。

また，実行中のJavaプロセスでガーベージコレクションを発生させたい場合は，javagcコマンドを実行してください。javagcコマンドは，トラブル発生時の要因調査のほか，1トランザクション当たりのメモリ使用量の測定，メモリリークの調査，アプリケーションのデバッグなどの目的でも使用できます。

実行中のJavaプロセスを指定してガーベージコレクションを発生させる場合のjavagcコマンドの実行形式を次に示します。なお，これ以外に指定できるオプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「javagc（ガーベージコレクションの強制発生）」を参照してください。

実行形式

javagc -p ＜プロセスID＞

実行結果として，次のログが出力されます。なお，これは，オプションとして，-XX:+HitachiVerboseGCPrintCauseが指定されている場合の例です。

[VGC]<Wed Mar 17 00:42:30 2004>(Skip Full:0,Copy:0)[ Full GC 149K->149K(1984K),0.0786038
secs] [ DefNew::Eden:264K->0K(512K)] [ DefNew::Survivor:0K->63K(64K)] [ Tenured:
85K->149K(1408K)] [ Perm:1300K->1300K(1536K)] [ cause:JavaGC Command]

4.9　メモリダンプ

J2EEサーバまたはCORBAネーミングサービスを再起動する場合は，メモリダンプとして次のファイルを取得します。

ユーザダンプ（Windowsの場合）

J2EEサーバのメモリダンプ

CORBAネーミングサービスのメモリダンプ

これらのファイルは，システムでトラブルが発生したときに，保守員が障害を解析するために使用します。

＜この節の構成＞

4.9.1　ユーザダンプの取得（Windowsの場合）

4.9.2　J2EEサーバのメモリダンプの取得

4.9.3　CORBAネーミングサービスのメモリダンプの取得

4.9.1　ユーザダンプの取得（Windowsの場合）

＜この項の構成＞

(1)　Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）およびWindows XPの場合

(2)　Windows Server 2008，Windows 7，またはWindows Vistaの場合

(1)　Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）およびWindows XPの場合

プロセスダウンが発生した場合に次のファイルがあれば採取します。

<ワトソン博士のクラッシュダンプ出力先指定ディレクトリ>¥user.dmp

<ワトソン博士のクラッシュダンプ出力先指定ディレクトリ>は，ワトソン博士（drwtsn32）を実行してクラッシュダンプ欄のパスを確認してください。

プロセスのハングアップやスローダウンが発生した場合にユーザダンプを取得するときは，プロセスIDを確認してuserdump.exeコマンドを実行します。userdump.exeは，Microsoftによって提供されているコマンドです。

userdump.exe <プロセスID>

userdump.exeコマンドでユーザダンプを取得した場合，ユーザダンプはuserdump.exeを実行したカレントディレクトリに出力されます。

(2)　Windows Server 2008，Windows 7，またはWindows Vistaの場合

cjstopsvコマンドの-fdオプションを使用して次のファイルを取得します。

<ユーザダンプの出力先ディレクトリ>¥cjmemdump.dmp

<ユーザダンプの出力先ディレクトリ>は，環境変数CJMEMDUMP_PATHで指定しておいてください。

4.9.2　J2EEサーバのメモリダンプの取得

J2EEサーバのメモリダンプの取得について，OSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

J2EEサーバが稼働している場合（cjstartsvプロセスが存在する場合），タスクマネージャからcjstartsvのプロセスIDを取得します。userdump.exe <プロセスID>を実行し，メモリダンプ（user.dump）を採取します。

(2)　UNIXの場合

cjstartsvプロセスがダウンした場合，「<作業ディレクトリ>/ejb/<サーバ名称>」に出力されたcoreダンプを取得します。

coreダンプのファイル名は，cjstartsvプロセスの再起動時に「core.<出力日時※>」（AIX，HP-UX，Solarisの場合）または「core.<プロセスID>.<出力日時※>」（Linuxの場合）にリネームされます。cjstartsvプロセスの再起動時にcoreダンプが上書き保存されないため，障害発生時のcoreダンプを保存できます。

注※

出力日時は「YYMMDDhhmmss」の形式で出力されます。

YY：西暦（下2けた）　MM：月（2けた）　DD：日（2けた）

hh：時（24時間表記で2けた）　mm：分（2けた）　ss：秒（2けた）

なお，保存するcoreダンプは上限値を設定できます。Windowsの場合，cjstartsvプロセスの再起動時，およびjavacoreコマンド実行時に，出力日時が古い順に削除されます。UNIXの場合，「<作業ディレクトリ>/ejb/<サーバ名称>」に出力されるcoreダンプファイルの合計が上限値を超えたときに，出力日時が古い順に削除されます。上限値は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，J2EEサーバの拡張パラメタのejb.server.corefilenumで指定します。なお，ファイルの削除はcjstartsvプロセスの再起動時に実行されます。coreファイルのファイル数の上限値の設定については，「3.3.18　coreダンプ取得の設定」を参照してください。

coreダンプを取得したあとに，coreダンプからスタックトレース情報だけを取得する場合は，javatraceコマンドを実行してください。スタックトレース情報は，JavaVMの異常終了の原因を究明するために必要な情報です。スタックトレース情報の取得方法については，「4.18　JavaVMのスタックトレース情報」を参照してください。

coreダンプは次のような場合にも取得できます。それぞれの場合の取得方法について説明します。

cjstartsvプロセスが稼働している状態でcoreダンプを取得する場合
cjstartsvプロセス（J2EEサーバ）が稼働している状態でcoreダンプを取得する場合，cjstartsvプロセスのプロセスIDを確認して，killコマンドを実行します。killコマンドは次の形式で実行してください。なお，killコマンドを実行するとプロセスが終了するため，再起動する前にkillコマンドを実行することを推奨します。

kill -6 <cjstartsvのプロセスID>

実行中のJavaプロセスでcoreダンプとスレッドダンプを同時に取得する場合
実行中のJavaプロセスでcoreダンプとスレッドダンプを同時に取得する場合は，javacoreコマンドを実行してください。javacoreコマンドの実行形式を次に示します。なお，指定できるオプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「javacore（coreファイルの取得）」を参照してください。

javacore <-プロセスID>

上記の形式でコマンドを実行すると，次のメッセージが出力されます。

send SIGQUIT to 8662: ? (y/n)

「y」を入力すると，実行中のJavaプログラムのカレントディレクトリに，"javacore<プロセスID>.<出力日時>.core"（coreダンプ），および"javacore<プロセスID>.<出力日時>.txt"（スレッドダンプ）が出力されます。「n」を入力すると，coreダンプおよびスレッドダンプを取得しないでコマンドの実行を終了します。
coreダンプおよびスレッドダンプを取得すると，実行中のJavaプログラムには，次のメッセージが出力されます。なお，斜体の部分は実際には表示されません。

Now generating core file (javacore8662.030806215140.core)...
done

(coreダンプおよびスレッドダンプの出力終了)

Writing Java core to javacore8662.030806215140.txt... OK

4.9.3　CORBAネーミングサービスのメモリダンプの取得

CORBAネーミングサービスのメモリダンプの取得についてOSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

CORBAネーミングサービスが稼働している場合（CORBAネーミングサービスのプロセスが存在する場合），userdump.exe <プロセスID>を実行し，メモリダンプ（user.dump）を採取します。CORBAネーミングサービスのプロセスIDはあらかじめタスクマネージャで確認します。

(2)　UNIXの場合

CORBAネーミングサービスが稼働している場合（CORBAネーミングサービスのプロセスが存在する場合），CORBAネーミングサービスのプロセスIDを確認して，killコマンドを実行します。killコマンドは次の形式で実行してください。なお，killコマンドを実行するとプロセスが終了するため，再起動する前にkillコマンドを実行することを推奨します。

ps -ef | grep java
kill -6 <CORBAネーミングサービスのプロセスID>

4.10　日立固有のJavaVMログ（日立JavaVMログファイル）

日立固有のJavaVMログとは，日立が標準のJavaVMに追加した拡張オプションを使用して取得できるログです。標準のJavaVMよりも，多くのトラブルシュート情報が取得できます。日立固有のJavaVMログは，次のどれかのオプションを指定した場合に，ログファイルに出力されます。なお，このログファイルを，日立JavaVMログファイルといいます。

-XX:+HitachiOutOfMemoryStackTrace
なお，このオプションを指定した場合に同時に指定される，-XX:+HitachiOutOfMemorySizeおよび-XX:+HitachiOutOfMemoryCauseが指定された場合も，日立JavaVMログファイルが出力されます。

-XX:+HitachiVerboseGC

-XX:+HitachiOutOfMemoryHandling

-XX:+HitachiJavaClassLibTrace

このほか，出力内容や出力方法についても，オプションに指定しておく必要があります。JavaVMの資料取得の設定については，「3.3.19　JavaVMの資料取得の設定」を参照してください。

日立JavaVMログファイルは，-XX:HitachiJavaLog:＜パスおよびファイル名称＞オプションに指定した出力先に，指定したファイル名称で出力されます。指定を省略した場合は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.server.log.directoryパラメタで指定したディレクトリに，「javalogxx.log」という名称で出力されます。xxは01から始まる2けたの通番です。

参考

日立JavaVMログファイルの出力が設定されている場合に，JavaVM起動時にファイルを作成します。このため，JavaVM終了時までに日立固有のJavaVMログが何も出力されない場合には，何も情報がない日立JavaVMログファイルが残ります。

4.11　JavaVM出力メッセージログ（標準出力またはエラーリポートファイル）

ここでは，JavaVMが出力するメッセージログの取得について説明します。

JavaVMでクラッシュが発生した場合，JavaVMはデバッグ情報を標準出力とエラーリポートファイルに出力します。

エラーリポートファイルは，次の場合に出力されます。

JNIの中でシグナルが発生したとき

JavaVMでCヒープ不足が発生したとき

JavaVMで予期しないシグナルが発生したとき

JavaVMでInternal Error（内部論理エラー）が発生したとき

ただし，エラーリポートファイルの作成時にシグナルやメモリ不足が発生した場合，このファイルは作成されません。

＜この節の構成＞

4.11.1　Windowsの場合

4.11.2　UNIXの場合

4.11.1　Windowsの場合

エラーリポートファイルの出力先および出力ファイル名は次のとおりです。

<作業ディレクトリ>¥ejb¥<サーバ名>¥hs_err_pid<サーバプロセスのプロセスID>.log

参考

Cヒープが不足した場合，次の順序でメッセージ出力およびダンプ出力が実行されます。必要な情報を取得してください。

Cヒープ不足を示すメッセージログが，エラーリポートファイルおよび標準出力に出力されます。

1.の実行中にメモリ不足が発生した場合，簡易メッセージが標準出力に出力されます。

ワトソンログが起動され，ダンプ出力が実行されます。

4.11.2　UNIXの場合

エラーリポートファイルの出力先および出力ファイル名は次のとおりです。

<作業ディレクトリ>/ejb/<サーバ名>/hs_err_pid<サーバプロセスのプロセスID>.log

参考

Cヒープが不足した場合，次の順序でメッセージ出力およびcoreダンプの生成が実行されます。必要な情報を取得してください。

Cヒープ不足を示すメッセージログが，エラーリポートファイルおよび標準出力に出力されます。

1.の実行中にメモリ不足が発生した場合，簡易メッセージが標準出力に出力されます。

簡易メッセージの出力処理中にさらにメモリ不足が発生した場合，メッセージおよびエラーログファイルの出力処理を中止して，coreダンプを生成します。

4.12　OSの状態情報とOSのログ

トラブルシュート情報として必要なOSのログ情報を次に示します。

＜この節の構成＞

4.12.1　OSの状態情報の取得

4.12.2　OSのログの取得

4.12.1　OSの状態情報の取得

トラブルシュート情報として必要なOSの状態情報の取得について，OSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

OSの状態情報は，cjgetsysinfoコマンドを使用して取得できます。-fオプションを指定すると，OS状態出力ファイルに出力できます。

コマンドは，次の形式で実行します。

cjgetsysinfo -f <OS状態出力ファイルパス>

このコマンドによって，OSの次のコマンドを実行した場合と同じ情報が取得できます。

netstat -e
netstat -s
netstat -an
set

なお，cjgetsysinfoコマンドを実行しない場合に，トラブルシュート情報として取得する必要があるOSの状態情報を次に示します。各情報の取得はあらかじめディレクトリを作成し，そこにファイルを生成します。作成するディレクトリのパスは任意です。

表4-31　トラブルシュート情報として必要なOSの状態情報

情報の種類
デフォルトのファイル名

ネットワークの情報
プロトコルの統計情報と現在の TCP/IP ネットワーク接続の情報。次のコマンドで順次取得します。

netstat -e > netstat_e.txt
netstat -s > netstat_s.txt
netstat -an > netstat_an.txt

環境変数
現在設定されている環境変数。次のコマンドで取得します。

set >set.txt

(2)　UNIXの場合

OSの状態情報は，cjgetsysinfoコマンドを使用して取得できます。-fオプションを指定すると，OS状態出力ファイルに出力できます。

コマンドは，次の形式で実行します。

cjgetsysinfo -f <OS状態出力ファイルパス>

このコマンドによって，OSの次の表に示すコマンドを実行した場合と同じ情報が取得できます。

表4-32　 cjgetsysinfoコマンドの実行によって実行されるOSのコマンド

AIXの場合
HP-UXの場合
Linuxの場合
Solarisの場合

df -k

ps -elf

ps -A -m -o THREAD

vmstat -t 1 1

vmstat -s

lsps -s

netstat -i

netstat -m

netstat -an

iostat

svmon -P

svmon -G

sar -A 1

instfix -i

lslpp -hac

uname -a

env

set

ipcs -a

df -kt

top -s 1 -d 1

ps -efl

vmstat

vmstat -s

netstat -i

netstat -an

iostat

sar -A 1

swapinfo -a

kctune

swlist

swlist -l product

uname -a

env

set

ipcs -a

df

ps -eflm

vmstat

netstat -s

netstat -an

iostat※

top -b -n 1

sysctl -a

sar -A 1 1※

rpm -qa

rpm -qai

uname -a

env

set

ipcs

ipcs -t

ipcs -p

ipcs -c

ipcs -u

ipcs -l

df -k

ps -eflL

vmstat

vmstat -s

netstat -i

netstat -m

netstat -an

iostat

mpstat

swap -l

sar -A 1

sysdef

pkginfo

patchadd -p

uname -a

env

set

注※　sarコマンドおよびiostatコマンドを実行するためには，Linuxに含まれているsysstatパッケージをインストールする必要があります。

なお，cjgetsysinfoコマンドを実行しない場合に，トラブルシュート情報として取得する必要があるOSの状態を示す情報の取得方法（コマンド）を次に示します。

AIXの場合

df -k > df_k`date +"%y%m%d%H%M%S"`.txt
ps -efl > ps_efl`date +"%y%m%d%H%M%S"`.txt
ps -A -m -o THREAD > ps_AmoTHREAD`date +"%y%m%d%H%M%S"`.txt
vmstat -t 1 5 > vmstat`date +"%y%m%d%H%M%S"`.txt
vmstat -s > vmstat_s`date +"%y%m%d%H%M%S"`.txt
lsps -s > lsps_s`date +"%y%m%d%H%M%S"`.txt
netstat -i > netstat_i`date +"%y%m%d%H%M%S"`.txt
netstat -m > netstat_m`date +"%y%m%d%H%M%S"`.txt
netstat -an > netstat_an`date +"%y%m%d%H%M%S"`.txt
iostat 1 5 > iostat`date +"%y%m%d%H%M%S"`.txt
svmon -P > svmon_P`date +"%y%m%d%H%M%S"`.txt※1
svmon -G -i 1 5 > svmon_G`date +"%y%m%d%H%M%S"`.txt※1
sar -A 1 5 > sar_A`date +"%y%m%d%H%M%S"`.txt※1
/usr/samples/kernel/vmtune > vmtune`date +"%y%m%d%H%M%S"`.txt
instfix -i > instfix_i`date +"%y%m%d%H%M%S"`.txt
lslpp -hac >  lslpp_hac`date +"%y%m%d%H%M%S"`.txt
uname -a > uname_a`date +"%y%m%d%H%M%S"`.txt
env > env`date +"%y%m%d%H%M%S"`.txt
set > set`date +"%y%m%d%H%M%S"`.txt
ipcs -a > ipcs_a`date +"%y%m%d%H%M%S"`.txt

HP-UXの場合

df -kt > df_kt`date +"%y%m%d%H%M%S"`.txt
top -s 1 -d 10 -f top`date +"%y%m%d%H%M%S"`.txt
ps -efl > ps`date +"%y%m%d%H%M%S"`.txt
vmstat 1 5 > vmstat`date +"%y%m%d%H%M%S"`.txt
vmstat -s > vmstat_s`date +"%y%m%d%H%M%S"`.txt
netstat -i > netstat_i`date +"%y%m%d%H%M%S"`.txt
netstat -an > netstat_an`date +"%y%m%d%H%M%S"`.txt
iostat 1 5 > iostat`date +"%y%m%d%H%M%S"`.txt
sar -A 1 5 > sar_A`date +"%y%m%d%H%M%S"`.txt※1
swapinfo -a > swapinfo_a`date +"%y%m%d%H%M%S"`.txt※1
swlist > swlist`date +"%y%m%d%H%M%S"`.txt
swlist -l product > swlist_l_product`date +"%y%m%d%H%M%S"`.txt
uname -a > uname_a`date +"%y%m%d%H%M%S"`.txt
env > env`date +"%y%m%d%H%M%S"`.txt
set > set`date +"%y%m%d%H%M%S"`.txt
ipcs -a > ipcs_a`date +"%y%m%d%H%M%S"`.txt

Linuxの場合

df > df`date +"%y%m%d%H%M%S"`.txt
ps -eflm > ps`date +"%y%m%d%H%M%S"`.txt
vmstat 1 5 > vmstat`date +"%y%m%d%H%M%S"`.txt
netstat -s > netstat_s`date +"%y%m%d%H%M%S"`.txt
netstat -an > netstat_an`date +"%y%m%d%H%M%S"`.txt
iostat 1 5 > iostat`date +"%y%m%d%H%M%S"`.txt※2
top n 5 > top`date +"%y%m%d%H%M%S"`.txt
sar -A 1 5 > sar`date +"%y%m%d%H%M%S"`.txt※2
sysctl -a > sysctl`date +"%y%m%d%H%M%S"`.txt
rpm -qa > rpm_qa`date +"%y%m%d%H%M%S"`.txt
rpm -qai > rpm_qai`date +"%y%m%d%H%M%S"`.txt
uname -a > uname_a`date +"%y%m%d%H%M%S"`.txt
env > env`date +"%y%m%d%H%M%S"`.txt
set > set`date +"%y%m%d%H%M%S"`.txt
ipcs > ipcs`date +"%y%m%d%H%M%S"`.txt
ipcs -t > ipcs_t`date +"%y%m%d%H%M%S"`.txt
ipcs -p > ipcs_p`date +"%y%m%d%H%M%S"`.txt
ipcs -c > ipcs_c`date +"%y%m%d%H%M%S"`.txt
ipcs -u > ipcs_u`date +"%y%m%d%H%M%S"`.txt
ipcs -l > ipcs_l`date +"%y%m%d%H%M%S"`.txt

Solarisの場合

df -k        > df`date +"%y%m%d%H%M%S"`.txt
ps -eflL     > ps_eflL`date +"%y%m%d%H%M%S"`.txt
vmstat 1 5   > vmstat`date +"%y%m%d%H%M%S"`.txt
vmstat -s    > vmstat_s`date +"%y%m%d%H%M%S"`.txt
netstat -i   > netstat_i`date +"%y%m%d%H%M%S"`.txt
netstat -m   > netstat_m`date +"%y%m%d%H%M%S"`.txt
netstat -an   > netstat_an`date +"%y%m%d%H%M%S"`.txt
iostat 1 5   > iostat`date +"%y%m%d%H%M%S"`.txt
mpstat 1 5   > mpstat`date +"%y%m%d%H%M%S"`.txt
swap -l      > swap_l`date +"%y%m%d%H%M%S"`.txt※1
sar -A 1 5   > sar_A`date +"%y%m%d%H%M%S"`.txt
sysdef       > sysdef`date +"%y%m%d%H%M%S"`.txt※1
pkginfo      > pkginfo`date +"%y%m%d%H%M%S"`.txt
patchadd -p  > patchadd_p`date +"%y%m%d%H%M%S"`.txt※1
uname -a     > uname_a`date +"%y%m%d%H%M%S"`.txt
env          > env`date +"%y%m%d%H%M%S"`.txt
set          > set`date +"%y%m%d%H%M%S"`.txt

注※1

コマンドの実行にはroot権限が必要です。

注※2

sarコマンドおよびiostatコマンドを実行するためには，Linuxに含まれているsysstatパッケージをインストールする必要があります。

4.12.2　OSのログの取得

トラブルシュート情報として必要なOSのログの取得について，OSごとに説明します。

＜この項の構成＞

(1)　Windowsの場合

(2)　UNIXの場合

(1)　Windowsの場合

トラブルシュート情報として必要なOSのログを次に示します。

表4-33　トラブルシュート情報として必要なOSのログ情報

情報の種類
デフォルトのファイル名

イベントログ
イベントビューアを開き，アプリケーションとシステムのログを保存します。

ワトソンログ
次のディレクトリに格納されます。
C:¥Documents and Settings¥All Users¥Documents¥DrWatson¥drwtsn32.log

注

「C:」はOSがインストールされているドライブ名です。

なお，ワトソンログの出力先はワトソン博士の設定画面で確認してください。

(2)　UNIXの場合

トラブルシュート情報として必要なOSのログ（syslog）の格納場所を次に示します。

AIXの場合

/var/adm/ras下すべて

HP-UXの場合

/var/adm/syslog下すべて

Linuxの場合

/var/log下すべて

Solarisの場合

dmesg > dmesg`date +"%y%m%d%H%M%S"`.txt

（dmesgコマンドの実行結果を任意のファイルに格納します）

4.13　OSの統計情報

OSの統計情報の取得について，OSごとに説明します。

＜この節の構成＞

4.13.1　Windowsの場合

4.13.2　UNIXの場合

4.13.1　Windowsの場合

障害発生後のパフォーマンスログを保存しておきます。「パフォーマンス」の操作の詳細については，OS付属のマニュアルなどを参照してください。

ポイント

OSの統計情報は，あらかじめ，OS付属の「パフォーマンス」でパフォーマンスログの取得を開始している場合にだけ取得できます。

J2EEサーバ実行中に次のシステムモニタのログを60秒間隔で採取します。具体的な設定方法は，OS付属のマニュアルなどを確認してください。

表4-34　システムモニタの設定

パフォーマンスオブジェクト | インスタンス | 項目名 | 説明
processor | － | %Processor Time | CPU使用率（非アイドル状態のスレッドを除く合計値）。
%Privileged Time | CPU使用率（カーネルモード分）。
%User Time | CPU使用率（ユーザモード分）。
memory | － | Cache Bytes | ファイルシステム キャッシュが現在使用しているバイト数。
Cache Faults/sec | 1秒間当たりのメモリの別の場所からの取り出しか，ディスクから取り出しの回数。
Page Faults/sec | 1秒間当たりのページフォールトの数。
Transition Faults/sec | 1秒間当たりのフォールトの数。
process | _Total | Handle Count | 現在オープンしているハンドルの総数。
Page Faults/sec | ページフォールトの発生率。
Private Bytes | メモリ使用量（バイト）。
Virtual Bytes | 仮想メモリ使用量（バイト）。
Working Set Bytes | 実メモリ使用量（バイト）。
cjstartsv | %Processor Time | CPU使用率（非アイドル状態のスレッドを除く合計値）。
%Privileged Time | CPU使用率（カーネルモード分）。
%User Time | CPU使用率（ユーザモード分）。
Page Faults/sec | ページフォールトの発生率。
Thread Count | スレッド数。
Private Bytes | メモリ使用量（バイト）。
Virtual Bytes | 仮想メモリ使用量（バイト）。
Working Set Bytes | 実メモリ使用量（バイト）。

（凡例）　－：該当しない

4.13.2　UNIXの場合

アプリケーションサーバ起動中に次に示すコマンドを実行して，OSの統計情報を取得します。60秒間隔で取得することを推奨しますが，ディスク容量に応じて取得間隔を決めてください。なお，取得間隔を長くすると，OSの統計情報の取得による性能劣化を少なくできますが，OSの統計情報の精度が悪化することがあります。

AIXの場合

ps -efl
ps -A -m -o THREAD
vmstat -t
vmstat -s
lsps -s
svmon -P <cjstartsv，cjstartwebのプロセスID>※1
svmon -G ※1
sar -A 1※1

HP-UXの場合

ps -efl
top -d 1 -f {ファイル名}
vmstat -t
vmstat -s
swapinfo -a※1
sar -A 1※1

Linuxの場合

ps -eflm
top n 1
vmstat
sar -A 1 1※2

Solarisの場合

ps -eflL
swap -l※1
vmstat
sar -A 1

注※1

コマンドの実行にはroot権限が必要です。

注※2

sarコマンドを実行するためには，Linuxに含まれているsysstatパッケージをインストールする必要があります。

4.14　アプリケーションサーバの定義情報

アプリケーションサーバの定義を取得します。この情報を使用して，障害が発生したときに設定されていた定義内容を確認します。

Cosminexus Component Containerに関する定義情報

次のディレクトリ下に格納されているファイル一式を取得します。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥server¥usrconf¥ejb¥<サーバ名称>

UNIXの場合

/opt/Cosminexus/CC/server/usrconf/ejb/<サーバ名称>

トラブルシューティング用に保存するファイルからは，パスワードなどの公開できない情報を削除することをお勧めします。

4.15　J2EEサーバまたはバッチサーバの作業ディレクトリの内容

システムでトラブルが発生した場合に，保守員による原因究明のため作業ディレクトリを調査に使用する場合があります。作業ディレクトリは，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に，ejb.public.directoryパラメタで指定したディレクトリです。なお，作業ディレクトリのデフォルトのディレクトリパスは「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」（Windowsの場合），または「/opt/Cosminexus/CC/server/public」（UNIXの場合）です。

設定を確認した上で，トラブルが発生した場合に保存しておいてください。

4.16　アプリケーションサーバのリソース設定情報

コネクションプールの設定などリソースの設定を確認するために，リソースの設定情報を取得します。設定情報の格納場所は次のとおりです。

Windowsの場合

<作業ディレクトリ>¥ejb¥<サーバ名称>¥import

<作業ディレクトリ>¥ejb¥<サーバ名称>¥rars

UNIXの場合

<作業ディレクトリ>/ejb/<サーバ名称>/import

<作業ディレクトリ>/ejb/<サーバ名称>/rars

4.17　Webサーバログ

システムで使用しているWebサーバ（Hitachi Web ServerまたはMicrosoft IIS）のログを取得します。

Hitachi Web Serverの場合
ログの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥httpsd¥logs

UNIXの場合
/opt/hitachi/httpsd/logs（デフォルト）

Microsoft IISの場合
ログの格納場所を次に示します。
C:¥WINNT¥system32¥LogFiles¥W3SVC1（C:の部分にはシステムドライブを指定します）

4.18　JavaVMのスタックトレース情報

UNIXでは，JavaVMが異常終了してcoreダンプが出力された場合，異常終了した原因の究明に必要な情報（スタックトレース情報）を，javatraceコマンドで取得できます。javatraceコマンドでは，出力されたcoreダンプから，スタックトレース情報を取得します。javatraceコマンドは，「/opt/Cosminexus/jdk/jre/bin」にインストールされています。

javatraceコマンドの実行形式を次に示します。

javatrace coreダンプのファイル名称 coreダンプを生成した実行ファイルの名称

JavaVMが異常終了して，「core」というファイル名称でcoreダンプが作成されているときにこのコマンドを実行すると，実行結果として，カレントディレクトリ下に「javatrace.log」というファイルが出力されます。このファイルは保守員に送付してください。

実行例

JavaVMが異常終了してcoreダンプが作成されたときに出力されるメッセージの例を，次に示します。

 ：
# You can get further information from javatrace.log file generated
# by using javatrace command.
# usage: javatrace core-file-name loadmodule-name [out-file-name] [-l(library-name)...]
# Please use javatrace command as follows and submit a bug report
# to Hitachi with javatrace.log file:
# [/opt/Cosminexus/jdk/jre/bin/javatrace core /opt/Cosminexus/CC/server/bin/cjstartsv]
#

メッセージ内に表示されるjavatraceコマンドの文字列を実行します。この例の場合は，「/opt/Cosminexus/jdk/jre/bin/javatrace core /opt/Cosminexus/CC/server/bin/cjstartsv」を実行してください。実行結果として，カレントディレクトリに「javatrace.log」というファイルが出力されます。

なお，OSによっては実際に出力されるcoreダンプのファイル名が「core.プロセスID」になる場合があります。その場合は，実際に出力されたcoreダンプのファイル名をjavatraceの引数に指定してください。

4.19　明示管理ヒープ機能のイベントログ

明示管理ヒープ機能が出力するイベントログは，JavaVM起動オプションである-XX:HitachiExplicitMemoryJavaLogオプションで指定したファイルに出力されます。また，出力される内容は，-XX:HitachiExplicitMemoryLogLevelオプションに指定したログ出力レベルによって異なります。

これらのオプションの設定方法については，「3.3.19(3)　明示管理ヒープ機能のイベントログ取得の設定」を参照してください。

JavaVM起動オプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.　JavaVM起動オプション」を参照してください。

5.　トラブルシューティング（資料の出力内容）

この章では，トラブルシューティングで使用する資料の出力内容について説明します。

＜この章の構成＞

5.1　この章の構成

5.2　アプリケーションサーバのログの内容

5.3　EJBクライアントアプリケーションのログの内容

5.4　性能解析トレースの内容

5.5　JavaVMのスレッドダンプの内容

5.6　JavaVMのガーベージコレクションログの内容

5.7　日立固有のJavaVMログの内容（日立JavaVMログファイル）

5.8　JavaVMが出力するメッセージログの内容（標準出力およびエラーリポートファイル）

5.9　OSの状態情報およびOSのログの内容

5.10　JavaVMスタックトレース情報の内容

5.11　明示管理ヒープ機能のイベントログの内容

5.1　この章の構成

トラブルシューティングに関する説明のうち，トラブルシューティングの資料の出力内容について説明します。

取得した資料に出力される内容を基に，トラブルの原因を判別してください。なお，「2.3　資料の取得」で取得した資料のうち，OSの統計情報については，ご使用のOS付属のマニュアルなどを参照してください。また，メモリダンプは，保守員が確認する情報なので，ここでは説明しません。

注意

Windows Server 2008，Windows 7，またはWindows Vistaを使用している場合，次の点に注意してください。

ログやPRFトレースに出力する内容にUnicodeの補助文字が含まれている場合，その文字は正しく出力されません。ただし，それ以外の出力内容や，アプリケーションの動作に問題はありません。Unicodeの補助文字は，Internet Explorerなどのクライアントから送信されたリクエストに含まれることがあります。

この章の構成を次の表に示します。

表5-1　この章の構成（トラブルシューティングで使用する資料の出力内容）

分類 | タイトル | 参照先
解説 | アプリケーションサーバのログの内容 | 5.2
EJBクライアントアプリケーションのログの内容 | 5.3
性能解析トレースの内容 | 5.4
JavaVMのスレッドダンプの内容 | 5.5
JavaVMのガーベージコレクションログの内容 | 5.6
日立固有のJavaVMログの内容（日立JavaVMログファイル） | 5.7
JavaVMが出力するメッセージログの内容（標準出力およびエラーリポートファイル） | 5.8
OSの状態情報およびOSのログの内容 | 5.9
JavaVMスタックトレース情報の内容 | 5.10
明示管理ヒープ機能のイベントログの内容 | 5.11

なお，トラブルシューティングの概要，資料の出力方法，および資料の取得や出力に関する設定については，それぞれ次の個所を参照してください。

トラブルシューティングの概要と，資料を自動で出力する方法
「2.　トラブルシューティング（資料取得と対処の概要）」

資料の取得や出力に関する設定
「3.　トラブルシューティング（資料取得の設定）」

資料のデフォルトでの出力先と，資料を個別に出力する方法
「4.　トラブルシューティング（資料の出力先と出力方法）」

5.2　アプリケーションサーバのログの内容

この節では，アプリケーションサーバのログの調査方法について説明します。

アプリケーションサーバのログのメッセージログ・ユーザログを調査することでエラーの発生原因を調べることができます。また，プロセス障害などの場合も，処理の進行具合や障害の兆候を確認できます。

アプリケーションサーバのログのうち，EJBクライアントアプリケーションのシステムログを参照する場合の留意事項については，「2.6.1　EJBクライアントアプリケーションのシステムログに関する留意事項」を参照してください。

ここでは，次のログの出力形式と出力項目について説明します。

日立トレース共通ライブラリ形式のログ

インプロセスHTTPサーバのアクセスログ

イベントログ

syslog

監査ログで出力するログ

構築済み実行環境の切り替えで出力するログ

Cosminexus JPAプロバイダで出力するログ

Cosminexus JMSプロバイダで出力するログ

また，アプリケーションサーバのログの種別には，次の三つがあります。

日立トレース共通ライブラリ形式（シングルプロセス）

日立トレース共通ライブラリ形式（マルチプロセス）

独自形式

出力されるログと対応するログの種別を，ログの取得対象ごとに示します。

表5-2　 J2EEサーバおよびリダイレクタのログ種別

分類
内容
種別

メッセージログ
稼働ログ
日立トレース共通ライブラリ形式（シングルプロセス）

ログ稼働ログ
日立トレース共通ライブラリ形式（シングルプロセス）

リダイレクタのメッセージログ

WindowsでHitachi Web Serverを使用する場合
日立トレース共通ライブラリ形式（シングルプロセス）

WindowsでMicrosoft IISを使用する場合またはUNIXの場合
日立トレース共通ライブラリ形式（マルチプロセス）

J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ
日立トレース共通ライブラリ形式（シングルプロセス）

J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ
日立トレース共通ライブラリ形式（シングルプロセス）

ユーザログ
Webサーブレットログ
日立トレース共通ライブラリ形式（シングルプロセス）

ユーザ出力ログ
日立トレース共通ライブラリ形式（シングルプロセス）

ユーザエラーログ
日立トレース共通ライブラリ形式（シングルプロセス）

JavaVMの保守情報およびガーベージコレクションのログ
日立トレース共通ライブラリ形式（シングルプロセス）

明示管理ヒープ機能のイベントログ
日立トレース共通ライブラリ形式（シングルプロセス）

例外ログ
障害発生時の例外情報
日立トレース共通ライブラリ形式（シングルプロセス）

保守用ログ
保守情報
日立トレース共通ライブラリ形式（シングルプロセス）

コンソールメッセージ
日立トレース共通ライブラリ形式（シングルプロセス）

EJBコンテナの保守情報
日立トレース共通ライブラリ形式（シングルプロセス）

Webコンテナの保守情報
日立トレース共通ライブラリ形式（シングルプロセス）

起動プロセス標準出力情報
日立トレース共通ライブラリ形式（シングルプロセス）

起動プロセス標準エラー情報
日立トレース共通ライブラリ形式（シングルプロセス）

終了プロセス情報
日立トレース共通ライブラリ形式（シングルプロセス）

リダイレクタの保守用トレースログ

WindowsでHitachi Web Serverを使用する場合
日立トレース共通ライブラリ形式（シングルプロセス）

WindowsでMicrosoft IISを使用する場合またはUNIXの場合
日立トレース共通ライブラリ形式（マルチプロセス）

イベントログ
J2EEサーバの起動，停止または異常終了を示すログ
日立トレース共通ライブラリ形式（シングルプロセス）

syslog
J2EEサーバの起動，停止または異常終了を示すログ
日立トレース共通ライブラリ形式（シングルプロセス）

表5-3　サーバ管理コマンドのログ

分類 | 内容 | 種別
メッセージログ | 稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
ログ稼働ログ | 独自形式
例外ログ | 障害発生時の例外情報 | 日立トレース共通ライブラリ形式（マルチプロセス）
保守用ログ | 保守情報 | 日立トレース共通ライブラリ形式（マルチプロセス）
コンソールメッセージ | 日立トレース共通ライブラリ形式（マルチプロセス）
サーバ管理コマンドの保守情報 | 日立トレース共通ライブラリ形式（マルチプロセス）

表5-4　リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

分類 | 内容 | 種別
メッセージログ | 稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
例外ログ | 障害発生時の例外情報 | 日立トレース共通ライブラリ形式（マルチプロセス）
保守用ログ | 保守情報 | 日立トレース共通ライブラリ形式（マルチプロセス）

表5-5　インプロセスHTTPサーバのログ

分類 | 内容 | 種別
アクセスログ | インプロセスHTTPサーバの処理結果 | 独自形式
スレッドトレース | スレッドトレースの情報 | 独自形式
通信トレース | 通信トレースの情報 | 独自形式

表5-6　移行コマンド（cjenvupdate）のログ

分類 | 内容 | 種別
メッセージログ | cjenvupdateコマンドの稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
例外ログ | cjenvupdateコマンドの例外情報 | 日立トレース共通ライブラリ形式（マルチプロセス）
保守用ログ | cjenvupdateコマンドの保守情報 | 日立トレース共通ライブラリ形式（マルチプロセス）

表5-7　リソース枯渇監視のログ

監視対象
リソース
種別

メモリ
日立トレース共通ライブラリ形式（シングルプロセス）

ファイルディスクリプタ
日立トレース共通ライブラリ形式（シングルプロセス）

スレッド
日立トレース共通ライブラリ形式（シングルプロセス）

スレッドダンプ
日立トレース共通ライブラリ形式（シングルプロセス）

HTTPリクエスト実行待ちキュー
日立トレース共通ライブラリ形式（シングルプロセス）

HTTPセッション数
日立トレース共通ライブラリ形式（シングルプロセス）

コネクションプール
日立トレース共通ライブラリ形式（シングルプロセス）

表5-8　運用管理エージェント・運用監視エージェント・Management Serverのログ

分類
内容
種別

統合ログ
統合メッセージログ
日立トレース共通ライブラリ形式（マルチプロセス）

統合トレースログ
日立トレース共通ライブラリ形式（マルチプロセス）

コマンド保守ログ
日立トレース共通ライブラリ形式（マルチプロセス）

運用管理エージェント
運用管理エージェントの標準エラー出力
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントの標準出力
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントの標準エラー出力コマンドライン
独自形式

運用管理エージェントのログ
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントの起動・停止コマンドのログ
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントの保守ログ
日立トレース共通ライブラリ形式（シングルプロセス）

コンソールログ
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントサービスのログ
日立トレース共通ライブラリ形式（シングルプロセス）

運用管理エージェントサービスの標準出力
独自形式

運用管理エージェントサービスの標準エラー出力
独自形式

運用監視エージェント
運用監視エージェントのログ・トレース
J2EEサーバ用システムJP1イベントおよびJ2EEサーバ用ユーザJP1イベントのログ
Managementイベント発行ログ
日立トレース共通ライブラリ形式（シングルプロセス）

Management Server
Management Serverサービスのログ
日立トレース共通ライブラリ形式（シングルプロセス）

Management Serverサービスの標準エラー出力
独自形式

Management Serverサービスの標準出力
独自形式

Management Serverサービス起動・停止コマンド
日立トレース共通ライブラリ形式（シングルプロセス）

Management Serverのログ
運用管理サーバ※のシステムJP1イベントのログ
日立トレース共通ライブラリ形式（シングルプロセス）

mngenvsetupコマンドの実行ログ
日立トレース共通ライブラリ形式（シングルプロセス）

Management Serverの保守ログ
日立トレース共通ライブラリ形式（シングルプロセス）

注※　アプリケーションサーバの運用管理サーバのことです。

表5-9　Cosminexus Performance Tracerのログ

内容 | 種別
PRFデーモンおよびPRFコマンドのログ | 独自形式
モジュールトレース | 独自形式
構造化例外発生ログ | 独自形式
保守情報 | 独自形式

表5-10　 Cosminexus Component Transaction Monitorのログ

内容 | 種別
CTMデーモンおよびCTMコマンドのログ | 独自形式
保守情報 | 独自形式

表5-11　監査ログで出力するログ

分類 | 内容 | 種別
メッセージログ | 監査ログのメッセージログ | 日立トレース共通ライブラリ形式（マルチプロセス）
例外ログ | 監査ログの例外情報 | 日立トレース共通ライブラリ形式（マルチプロセス）

表5-12　構築済み実行環境の切り替えで出力するログ

内容 | 種別
cosmienvコマンドのログ | 独自形式

表5-13　Cosminexus JPAプロバイダで出力するログ

内容 | 種別
稼働ログ | 日立トレース共通ライブラリ形式（シングルプロセス）
保守用ログ | 日立トレース共通ライブラリ形式（シングルプロセス）

なお，Cosminexus JPAプロバイダで出力される稼働ログについては，「付録C.2　Cosminexus JPAプロバイダの稼働ログ」を参照してください。

表5-14　Cosminexus JMSプロバイダで出力するログ

分類 | 内容 | 種別
メッセージログ | CJMSPブローカーのメッセージログ | 日立トレース共通ライブラリ形式（シングルプロセス）
管理コマンド（cjmsicmdコマンド）のメッセージログ | 日立トレース共通ライブラリ形式（マルチプロセス）
CJMSPリソースアダプタのメッセージログ | 日立トレース共通ライブラリ形式（シングルプロセス）
例外ログ | CJMSPブローカーの例外ログ | 日立トレース共通ライブラリ形式（シングルプロセス）
管理コマンド（cjmsicmdコマンド）の例外ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
CJMSPリソースアダプタの例外ログ | 日立トレース共通ライブラリ形式（シングルプロセス）

＜この節の構成＞

5.2.1　日立トレース共通ライブラリ形式のログの出力形式と出力項目

5.2.2　日立トレース共通ライブラリ形式のログを参照する場合の注意

5.2.3　インプロセスHTTPサーバのアクセスログの出力形式と出力項目

5.2.4　イベントログの出力形式と出力項目（Windowsの場合）

5.2.5　syslogの出力形式と出力項目（UNIXの場合）

5.2.6　構築済み実行環境の切り替えで出力するログの出力形式と出力項目（UNIXの場合）

5.2.1　日立トレース共通ライブラリ形式のログの出力形式と出力項目

日立トレース共通ライブラリ形式のログの出力形式と出力項目について説明します。

アプリケーションサーバのログは，日立トレース共通ライブラリ形式で出力されます。

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(1)　出力形式

日立トレース共通ライブラリ形式のログの出力形式を次に示します。

番号　日付　時刻　AP名　pid tid メッセージID　種別　メッセージテキスト　CRLF

(2)　出力項目

日立トレース共通ライブラリ形式のログの出力項目を次に示します。

表5-15　日立トレース共通ライブラリ形式のログの出力項目

項目名 | 説明
番号 | トレースレコードの通番を示す4けたの番号が出力されます。
日付 | トレースの取得日付が「yyyy/mm/dd」の形式で出力されます。
時刻 | トレースの取得時刻が「hh:mm:ss.sss」の形式で出力されます。
AP名 | プログラムを示す文字列が出力されます。
pid | プロセスIDが出力されます。
tid | スレッドIDが出力されます。
メッセージID | メッセージIDが「XXXXnnnnn-Y」の形式で出力されます。
種別 | トレース出力の契機となったイベント種別が出力されます。
メッセージテキスト | メッセージテキストが出力されます。付加情報が付くこともあります。
CRLF | レコードの終端符号（0x0D，0x0A）が出力されます。

ログファイルの編集表示について

日立トレース共通ライブラリ形式のログをMicrosoft Excelで表示して，フィルタリングや並べ替えの機能を利用すると，トラブルの発生要因の調査を効率良く進められるようになります。

Microsoft Excelを利用した日立トレース共通ライブラリ形式のログの表示例を次に示します。

図5-1　Microsoft Excelを利用した日立トレース共通ライブラリ形式のログの表示例

参考

区切るデータの形式として，「スペースによって右または左にそろえられた固定長フィールドデータ」を選択してください。

［データのプレビュー］ボックスで不要な矢印を削除してください。

各列の［表示形式］に［文字列］を指定してください。

5.2.2　日立トレース共通ライブラリ形式のログを参照する場合の注意

日立トレース共通ライブラリ形式のログを使用する場合の注意事項について説明します。

＜この項の構成＞

(1)　マルチプロセス・シングルプロセス共通の注意事項

(2)　マルチプロセスの日立トレース共通ライブラリ参照時の注意事項

(1)　マルチプロセス・シングルプロセス共通の注意事項

マルチプロセス・シングルプロセス共通の注意事項について説明します。

出力されたログファイルを編集しないでください。

テキストエディタの機能などを使用して，ファイルロックをしないでください。

出力されたログファイルにアクセス権限を手動で設定する場合は，適切なアクセス権を与えてください。

出力されたログファイルの更新時刻を変更しないでください。

トレース出力中に，ログファイルを削除したり，ファイル名を変更したりしないでください。ログファイルの削除，またはファイル名の変更は，すべてのトレース出力プロセスを停止してから実行してください。

(2)　マルチプロセスの日立トレース共通ライブラリ参照時の注意事項

マルチプロセスに対応した日立トレース共通ライブラリ形式のログファイルを参照する場合の注意事項を次に示します。

メッセージ末尾の改行コードは，使用しているOSに関係なくCRLFです。

ログファイルのファイルサイズ，面数，およびモードオプションの変更を有効にするために，ログファイルを削除する必要がある場合があります。ログファイルの削除は，すべてのトレース出力プロセスを停止してから実行してください。

出力したログファイル内で有効なデータは，ファイルの先頭から最初のEOFまでです。ログファイルを参照するときには，最初のEOF以降のデータは無視してください。EOF以降のデータは，ラップアラウンド以前のログファイルの無効なデータです。有効なログファイルのデータの末尾は，次に示すデータになります。

EOF CRLF CRLF CRLF CRLF----------< End of Data >----------CRLF CRLF

EOFはトレースデータの終端を表す文字（0x1A）です。CRLFは，改行（0x0D，0x0A）を表します。

トレースが出力されても，ログファイルの更新時刻が更新されない場合があります。そのため，ファイルの更新時刻を基にトレースが出力されたかどうかを判断することはできません。

5.2.3　インプロセスHTTPサーバのアクセスログの出力形式と出力項目

インプロセスHTTPサーバのアクセスログの出力形式と出力項目について説明します。

アクセスログには，インプロセスHTTPサーバのリクエストの処理結果が出力されます。また，アクセスログの出力形式には，デフォルトで出力されるデフォルトフォーマットと拡張フォーマットがあります。インプロセスHTTPサーバのアクセスログのカスタマイズについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.17.2　インプロセスHTTPサーバのアクセスログのカスタマイズ」を参照してください。

出力形式は次のとおりです。

デフォルトフォーマット

クライアントのホスト名　-　認証ユーザ名　アクセス時刻　リクエストライン　ステータスコード　送信バイト数

拡張フォーマット

クライアントのホスト名　-　認証ユーザ名　アクセス時刻　リクエストライン　ステータスコード　送信バイト数　Refererヘッダの内容　User-Agentヘッダの内容

それぞれの項目の内容を次の表に示します。

表5-16　アクセスログの出力項目

項番 | 項目名 | 説明
1 | クライアントのホスト名 | クライアントのホスト名が表示されます。ホスト名が設定されていない場合はIPアドレスが表示されます。
2 | 認証ユーザ名 | ベーシックユーザ認証名，またはフォーム認証ユーザ名が表示されます。フォームユーザ認証名および，フォームユーザ認証名が設定されていない場合はハイフン（-）が表示されます。
3 | アクセス時刻 | インプロセスHTTPサーバがクライアントのリクエストに応答した時間が表示されます。
4 | リクエストライン | リクエストラインが表示されます。
5 | ステータスコード | 最終ステータスコードが表示されます。ただし内部でリダイレクトされた値は出力しません。
6 | 送信バイト数 | HTTPヘッダを除く送信バイト数が表示されます。0バイトのときはハイフン（-）が表示されます。
7 | Refererヘッダの内容 | 遷移する前のWebページのURLが表示されます。
8 | User-Agentヘッダの内容 | Webクライアント（ブラウザ名やブラウザのバージョンなど）の情報が含まれたヘッダが表示されます。

なお，アクセスログには，クライアントのIPアドレス，J2EEサーバのIPアドレス，リクエストメソッド，クライアントからのリクエスト処理に掛かった時間などの項目を任意で追加できます。

アクセスログの出力例を次に示します。

デフォルトフォーマットの場合

10.20.30.40 - user1 [18/Jan/2005:13:06:10 +0900] "GET / HTTP/1.0" 200 38
10.20.30.40 - user1 [18/Jan/2005:13:06:25 +0900] "GET /demo/ HTTP/1.0" 500 684

拡張フォーマットの場合

10.20.30.40 - user1 [18/Jan/2005:13:06:10 +0900] "GET / HTTP/1.0" 200 38 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
10.20.30.40 - user1 [18/Jan/2005:13:06:25 +0900] "GET /demo/ HTTP/1.0" 500 684 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"

5.2.4　イベントログの出力形式と出力項目（Windowsの場合）

イベントログの出力形式と出力項目について説明します。

イベントログは，J2EEサーバの起動，停止および異常終了時に出力されるログです。出力形式は次のとおりです。

ID文字列　[pid]:　メッセージテキスト

出力項目を次に示します。

表5-17　イベントログの出力項目

項目名 | 説明
ID文字列 | アプリケーションを示す文字列として，「HEJB」が出力されます。
pid | プロセスIDが出力されます。
メッセージテキスト | メッセージテキストが出力されます。

5.2.5　syslogの出力形式と出力項目（UNIXの場合）

syslogの出力形式と出力項目について説明します。

syslogは，J2EEサーバの起動，停止および異常終了時に出力されるログです。出力形式は次のとおりです。

日付　時刻　ホスト名　ID文字列　[pid]:メッセージテキスト

出力項目を次に示します。

表5-18　syslogの出力項目

項目名 | 説明
日付 | メッセージを出力した日付です。
時刻 | メッセージを出力した時刻です。
ホスト名 | ホスト名を示す文字列が出力されます。
pid | プロセスIDが出力されます。
ID文字列 | アプリケーションを示す文字列として，「HEJB」が出力されます。
メッセージテキスト | メッセージテキストが出力されます。

5.2.6　構築済み実行環境の切り替えで出力するログの出力形式と出力項目（UNIXの場合）

構築済み実行環境をcosmienvコマンドで切り替えた場合に出力される，ログファイルの出力形式および出力項目について説明します。

cosmienvコマンド実行時に出力されるログファイルには，cosmienv_s[2].log，cosmienv_d[2].log，およびcosmienv_r[2].logがあります。これらのファイルの出力形式および出力項目はすべて同じです。

cosmienvコマンド実行時に出力されるログファイルの出力形式は次のとおりです。

YYYY/MM/DD HH:MM:SS 製品の形名 製品名 VVRRSS START
YYYY/MM/DD HH:MM:SS 構成ソフトウェアの形名 START 起動時のコマンドと引数
[YYYY/MM/DD HH:MM:SS 構成ソフトウェアの保守情報]
YYYY/MM/DD HH:MM:SS 構成ソフトウェアの形名 END 構成ソフトウェアの戻り値
：
YYYY/MM/DD HH:MM:SS 製品の形名 製品名 VVRRSS END cosmienvコマンドの戻り値

cosmienvコマンドのログの出力項目を次に示します。

表5-19　cosmienvコマンドのログの出力項目

項目名
説明

YYYY/MM/DD
cosmienvコマンドを実行した日付が出力されます。

HH:MM:SS
cosmienvコマンドを実行した時刻が出力されます。

製品の形名
退避，回復，または削除の対象とした実行環境の形名が出力されます。

製品名
退避，回復，または削除の対象とした実行環境の製品名が出力されます。

VVRRSS
退避，回復，または削除の対象とした実行環境の製品のバージョン情報が出力されます。

構成ソフトウェアの形名
退避，回復，または削除の対象とした実行環境の製品に含まれる構成ソフトウェアの形名が出力されます。
構成ソフトウェアの情報は，製品に含まれる構成ソフトウェアの数分出力されます。

起動時のコマンドと引数
内部処理（構成ソフトウェアの処理）を起動したコマンドと，引数が出力されます。

構成ソフトウェアの保守情報
内部処理（構成ソフトウェアの処理）実行時の保守情報が出力されます。

構成ソフトウェアの戻り値※
内部処理（構成ソフトウェアの処理）の実行結果が出力されます。

cosmienvコマンドの戻り値※
cosmienvコマンドの実行結果が出力されます。

注※　構成ソフトウェアおよびcosmienvコマンドの戻り値については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cosmienv（構築済み実行環境の退避，回復，削除，一覧出力）」を参照してください。

退避機能を実行した場合の出力例を次に示します。この例では，退避機能実行時に，構成ソフトウェアの処理でディスク容量不足を検出しています。

2007/05/20 14:37:22 P-1M43-7K71 uCosminexus Application Server Enterprise 07-50 START
2007/05/20 14:37:22 P-1M3Z-7151 START 2007/05/20 14:37:22 P-1M43-7K71 uCosminexus Application Server Enterprise 07-50 START
2007/05/20 14:37:22 P-1M3Z-7151 START cosmippenv -s -P/home/CosmiBackup/UCAPSE001 -ZCosmiInside
2007/05/20 14:37:24 P-1M3Z-7151 END 0
2007/05/20 14:37:47 P-1M41-E171 START cosmippenv -s -P/home/CosmiBackup/UCAPSE001 -ZCosmiInside
2007/05/20 14:37:52 httpsd tar: tape write error: No space left on device
2007/05/20 14:37:53 P-1M41-E171 END 128
2007/05/20 14:37:54 P-1M43-7K71 uCosminexus Application Server Enterprise 07-50 END 143

5.3　EJBクライアントアプリケーションのログの内容

ここでは，EJBクライアントアプリケーションのログの種別について説明します。ログの種別の詳細，それぞれのログの出力形式と出力項目，および参照する場合の注意事項については，「5.2　アプリケーションサーバのログの内容」を参照してください。

EJBクライアントアプリケーションのログの種別を次に示します。

表5-20　EJBクライアントアプリケーションのログの種別

種類 | 内容 | 種別
メッセージログ | 稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
cjclstartapコマンドの稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
cjcldellogコマンドの稼働ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
ユーザログ | ユーザ出力ログ | 日立トレース共通ライブラリ形式（マルチプロセス）
ユーザエラーログ | 日立トレース共通ライブラリ形式（マルチプロセス）
Javaログ | JavaVMの保守情報，ガーベージコレクションのログ | 独自形式
例外ログ | 障害発生時の例外情報 | 日立トレース共通ライブラリ形式（マルチプロセス）

5.4　性能解析トレースの内容

性能解析トレースを調査することで，リクエストごとに処理進ちょくやボトルネックになっている処理を解析できます。また，セッショントレースを調査すると，セッションのライフサイクルが確認できます。

これらを基にして，トラブルが発生した個所を特定したり，ボトルネックになっている個所に適切に対処したりできます。必要に応じて確認してください。

性能解析トレースの出力内容については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

5.5　JavaVMのスレッドダンプの内容

JavaVMのスレッドダンプを調査すると，システムのデッドロックなどのjavaプログラムレベルでのトラブル要因の調査が容易になります。

出力される情報の種類は，J2EEサーバの起動時に指定しているオプションによって異なります。JavaVMの資料取得の設定については，「3.3.19　JavaVMの資料取得の設定」を参照してください。

＜この節の構成＞

(1)　スレッドダンプ情報の構成

(2)　スレッドダンプと性能解析トレースファイルとの対応

(3)　Explicitヒープ詳細情報の出力内容

(1)　スレッドダンプ情報の構成

JavaVMのスレッドダンプ情報の構成を次の表に示します。

表5-21　スレッドダンプ情報の構成

出力情報
内容

ヘッダ
日付，JavaVMバージョン情報，起動コマンドラインを出力します。

システム設定
次の情報を出力します。

JDKの実行環境のインストール場所を表すJavaホームパス

JDKを構成するライブラリのインストールディレクトリを表すJava DLLパス

システムクラスパス

Javaコマンドオプション

動作環境
次の情報を出力します。

ホスト名

OSバージョン

CPU情報

リソース情報（UNIXの場合）

メモリ情報（Windowsの場合）
現在のメモリ使用量および各未使用サイズ情報を出力します。

Javaヒープ情報
Javaヒープの各世代のメモリ使用状況を出力します。

JavaVM内部メモリマップ情報
JavaVM自身の確保しているメモリの領域情報を出力します。

JavaVM内部メモリサイズ情報
JavaVM自身の確保しているメモリのサイズ情報を出力します。

アプリケーション環境
次の情報を出力します。

シグナルハンドラ

環境変数

ライブラリ情報
ローディングされているライブラリの情報を出力します。

スレッド情報
<スレッド1>
:
<スレッドn>
スレッドごとにスレッド情報を出力します。

Javaモニタダンプ
Javaモニタオブジェクトの一覧を表示します。

Rawモニタダンプ※1
Java内部で使われるモニタ情報の一覧を出力します。Row monitorが使用された場合だけ出力されます。

JNIグローバル参照情報※2
JavaVMが保持しているJNIのグローバル参照の数を出力します。

Explicitヒープ詳細情報
明示管理ヒープ機能使用時には，Javaプロセスのクラスごとに次の情報を出力します。

Explicitヒープ全体の利用状況

Explicitメモリブロックごとの利用状況

また，明示管理ヒープ機能使用時に，eheapprofコマンドを実行すると，Explicitメモリブロック内のオブジェクトの統計情報を出力します。

クラス別統計情報
jheapprofコマンドで指定したJavaプロセスのクラスごとに次の情報を出力します。

インスタンスがメンバとして持つインスタンスの合計サイズ，およびインスタンスの参照関係

staticメンバが持つインスタンスの合計サイズ

Tenured領域の増加原因となるオブジェクトのクラス，およびインスタンスの合計サイズ

フッタ
スレッドダンプが終了した時刻を表示します。

注※1

RawモニタダンプはJDKのバージョンがJDK 5.0の場合に出力されます。

注※2

JNIグローバル参照情報はJDKのバージョンがJDK 6の場合に出力されます。

JavaVMのスレッドダンプ情報の詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiThreadDump（拡張スレッドダンプ情報出力オプション）」を参照してください。なお，クラス別統計情報については，「8.3　クラス別統計機能」を参照してください。Explicitヒープ詳細情報については，「(3)　Explicitヒープ詳細情報の出力内容」を参照してください。

(2)　スレッドダンプと性能解析トレースファイルとの対応

J2EEアプリケーションやバッチアプリケーションでスローダウンやハングアップが発生した時に，スレッドダンプと性能解析トレースを対応づけることで，問題が発生した個所を調査できます。

スレッドダンプと性能解析トレースファイルの対応づけには，スレッドダンプに出力されたスレッド情報のnativeID（OSレベルのスレッドID）と性能解析トレースファイルに出力されたスレッドIDを使用します。スレッドダンプから対応する性能解析トレースファイルを特定する手順について説明します。

スレッドダンプ，および性能解析トレースファイルを収集します。
スレッドダンプの収集方法については，「4.7　JavaVMのスレッドダンプ」を参照してください。性能解析トレースファイルの収集方法については，「6.3.1　性能解析トレースファイルの収集方法」を参照してください。

使用するスレッドダンプ，および性能解析トレースファイルを選びます。
スレッドダンプと性能解析トレースファイルが出力された時刻を基に，調査に使用するスレッドダンプ，および性能解析トレースファイルを選びます。出力された時刻は，次の情報を参考にしてください。

スレッドダンプ

ファイル名，およびファイルの末尾に出力される時刻

ファイルの末尾に出力される時刻の例を次に示します。

　：
　：
Full thread dump completed.   Fri Jul 21 19:22:47 2006

性能解析トレースファイル

「Time」および「Time(msec/usec/nsec)」

性能解析トレースファイルの「Time」および「Time(msec/usec/nsec)」の例を次の図に示します。

スレッドダンプの「nid」（16進数）または「jid」（16進数）を10進数に変換します。

Windows，AIX，HP-UXおよびSolarisの場合
スレッドダンプの「nid」（16進数）を10進数に変換します。

　：
　：
"VBJ ThreadPool Worker" daemon prio=5 jid=0x00054f93 tid=0x04cef380 nid=0x1124 in Object.wait() [0x0632f000..0x0632fd18]
 stack=[0x06330000..0x062f5000..0x062f1000..0x062f0000]
 [user cpu time=0ms, kernel cpu time=15ms] [blocked count=1, waited count=29]
at java.lang.Object.wait(Native Method)
　：
　：

1124（16進数）＝4388（10進数）

Linuxの場合
スレッドダンプの「jid」（16進数）を10進数に変換します。

　：
　：
"main" prio=1 jid=0x00006d75 tid=0x00201d70 nid=0x1e51 waiting on condition [0x00000000..0xbfe80488]  stack=[0xbfe87000..0xbfc8c000..0xbfc88000..0xbfc87000]   [user cpu time=1320ms, kernel cpu time=4280ms] [blocked count=5, waited count=4]
　：
　：

6d75（16進数）＝28021（10進数）

性能解析トレースファイルの「Thread（hashcode）」の値（10進数）が手順3.で10進数に変換した値と一致する行を探して，トレース情報を特定します。

Windows，AIX，HP-UXおよびSolarisの場合
Thread（スレッドID）の値が，10進数に変換した値と一致する行を探します。

Linuxの場合
hashcode（ハッシュコード）の値が，10進数に変換した値と一致する行を探します。

(3)　Explicitヒープ詳細情報の出力内容

Explicitヒープ詳細情報には，Explicitヒープ情報およびExplicitメモリブロック情報が出力されます。Explicitメモリブロック情報は，Explicitメモリブロックが一つ以上ある場合に，その個数分出力されます。Explicitメモリブロック情報には，Explicitメモリブロック内のオブジェクト統計情報も出力されます。

Explicitヒープ詳細情報の出力形式，出力項目および出力例を次に示します。

出力形式

eheapprofコマンドを実行しているかどうかによって出力形式が異なります。

eheapprofコマンドを実行している場合

Explicit Heap Status
--------------------
max <EH_MAX>, total <EH_TOTAL>, used <EH_USED>, garbage <EH_GARB> (<EH_PER1> used/max, <EH_PER2> ¥
used/total, <EH_PER3> garbage/used), <EM_NUMS> spaces exist

Explicit Memories(<EM_MGR_PTR>)
...
 "<EM_NAME>" eid=<EID>(<EM_PTR>)/<EM_TYPE>, total <EM_TOTAL>, used <EM_USED>, garbage <EM_GARB> ¥
(<EM_PER1> used/total, <EM_PER2> garbage/used, <FL_BLOCKS> blocks) <EM_STAT>
   deployed objects
   ________________Size__Instances__Class________________
                <ISIZE>     <INUM> <CNAME>
                ...
                <AISIZE>    <AINUM> total
...

注　出力形式で使用している記号については，「5.11.2(3)　イベントログの出力形式の説明で使用する記号」を参照してください。

eheapprofコマンドを実行していない場合

Explicit Heap Status
--------------------
max <EH_MAX>, total <EH_TOTAL>, used <EH_USED>, garbage <EH_GARB> (<EH_PER1> used/max, <EH_PER2> ¥
used/total, <EH_PER3> garbage/used), <EM_NUMS> spaces exist

Explicit Memories(<EM_MGR_PTR>)
...
 "<EM_NAME>" eid=<EID>(<EM_PTR>)/<EM_TYPE>, total <EM_TOTAL>, used <EM_USED>, garbage <EM_GARB> ¥
(<EM_PER1> used/total, <EM_PER2> garbage/used, <FL_BLOCKS> blocks) <EM_STAT>
...

注　出力形式で使用している記号については，「5.11.2(3)　イベントログの出力形式の説明で使用する記号」を参照してください。

出力項目

出力形式で示した各項目について説明します。

表5-22　出力項目（Explicitヒープ詳細情報）

分類
出力項目
出力内容
意味

Explicitヒープ情報
<EH_MAX>
<const>K
Explicitヒープの最大サイズが出力されます。単位はキロバイトです。

<EH_TOTAL>
<const>K
確保済みExplicitヒープサイズが出力されます。単位はキロバイトです。

<EH_USED>
<const>K
利用済みExplicitヒープサイズが出力されます。単位はキロバイトです。

<EH_GARB>
<const>K
Explicitヒープの内部状態が出力されます。

<EH_PER1>
<decimal>%
Explicitヒープ利用率（<EH_USED>/<EH_MAX>）が%表記で出力されます。

<EH_PER2>
<decimal>%
Explicitヒープ利用率（<EH_USED>/<EH_TOTAL>）が%表記で出力されます。

<EH_PER3>
<decimal>%
Explicitヒープの内部状態が出力されます。

<EM_NUMS>
<const>
有効なExplicitメモリブロックの数が出力されます。

<EM_MGR_PTR>
<ptr>
Explicitヒープ制御のための内部情報があるメモリアドレスが出力されます。障害調査時などに利用します。

Explicitメモリブロック情報
<EM_NAME>
<letters>
Explicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。
Explicitメモリブロックの初期化とほぼ同時に出力された場合や，JavaVMが内部で生成したExplicitメモリブロックの場合は，"NULL"が出力されることがあります。

<EID>
<const>
ExplicitメモリブロックのIDが出力されます。

<EM_PTR>
<ptr>
Explicitメモリブロック内部構造があるメモリアドレスが出力されます。障害調査時などに利用します。

<EM_TYPE>
R|B|A
Explicitの種別が出力されます。Rは，アプリケーションサーバの内部で利用されているExplicitメモリブロックを示します。Bは，アプリケーションが利用しているExplicitメモリブロックを示します。Aは，自動配置設定ファイルを使って指定したExplicitメモリブロックを示します。

<EM_TOTAL>
<const>K
Explicitメモリブロックのメモリ確保済みサイズが出力されます。単位はキロバイトです。

<EM_USED>
<const>K
Explicitメモリブロックの利用済みサイズが出力されます。単位はキロバイトです。

<EM_GARB>
<const>K
Explicitメモリブロックの内部状態が出力されます。単位はキロバイトです。

<EM_PER1>
<decimal>%
Explicitメモリブロック利用率（<EM_USED>/<EM_TOTAL>）が%表記で出力されます。

<EM_PER2>
<decimal>%
Explicitメモリブロックの内部状態が出力されます。

<FL_BLOCKS>
<const>
常に0が出力されます。

<EM_STAT>
Enable|Disable
Explicitメモリブロックのサブ状態が出力されます。

オブジェクト統計情報※
<ISIZE>
<const>
あるクラスをインスタンス化したオブジェクトのExplicitメモリブロック内のサイズが出力されます。

<INUM>
<const>
あるクラスをインスタンス化したオブジェクトのExplicitメモリブロック内の個数が出力されます。

<CNAME>
<letters>
<ISIZE>および<INUM>が示すクラスの完全クラス名が出力されます。

<AISIZE>
<const>
Explicitメモリブロック内の全オブジェクトの合計サイズが出力されます。

<AINUM>
<const>
Explicitメモリブロック内の全オブジェクトの個数が出力されます。

注　出力内容で使用している記号については，「5.11.2(3)　イベントログの出力形式の説明で使用する記号」を参照してください。

注※　オブジェクト統計情報は，eheapprofコマンドを実行している場合に出力されます。なお，オブジェクト統計情報には，実際に作成したサイズ，個数よりも多く，int型配列を示す"［I"が出力されることがあります。この場合，"［I"は，Explicitメモリブロック内で使用されていないオブジェクトを示します。Explicitメモリブロック内で使用されていないオブジェクトは，JavaVMの内部処理でint型配列化されます。

出力例

eheapprofコマンドを実行しているかどうかによって出力形式が異なります。

eheapprofコマンドを実行している場合

Explicit Heap Status
--------------------
max 31415926K, total 162816K, used 150528K, garbage 10004K (0.0% used/max, 91.1% used/total, 6.6% garbage/used), 3 spaces exist

Explicit Memories(0x12345678)

 "EJBMgrData" eid=1(0x02f25610)/R, total 54272K, used 50176K, garbage 0K (91.2% used/total, 0.0% garbage/used, 0 blocks)
   deployed objects
   ________________Size__Instances__Class________________
               35234568      10648 java.util.HashMap
                5678900      10668 [Ljava.util.HashMap$Entry;
                4456788       7436 java.util.HashMap$Entry
                4321000        200 java.util.WeakHashMap
                1234568        190 [Ljava.util.WeakHashMap$Entry
                 454400          4 java.util.WeakHashMap$Entry
               51380224      29146 total

 "VJBStored" eid=3(0x02f25910)/B, total 54272K, used 50176K, garbage 10004K (90.7% used/total, 19.9% garbage/used, 5 blocks)
   deployed objects
   ________________Size__Instances__Class________________
               35234568      10648 java.util.HashMap
                5678900      10668 [Ljava.util.HashMap$Entry;
                4456788       7436 java.util.HashMap$Entry
                4321000        200 java.util.WeakHashMap
                1234568        190 [Ljava.util.WeakHashMap$Entry
                 454400          4 java.util.WeakHashMap$Entry
               51380224      29146 total

 "ExplicitMemory-2" eid=2(0x02f25700)/B, total 54272K, used 50176K,  garbage 0K (91.1% used/total, 0.0% garbage/used, 0 blocks)
   deployed objects
   ________________Size__Instances__Class________________
               35234568      10648 java.util.HashMap
                5678900      10668 [Ljava.util.HashMap$Entry;
                4456788       7436 java.util.HashMap$Entry
                4321000        200 java.util.WeakHashMap
                1234568        190 [Ljava.util.WeakHashMap$Entry
                 454400          4 java.util.WeakHashMap$Entry
               51380224      29146 total

eheapprofコマンドを実行していない場合

Explicit Heap Status
--------------------
max 31415926K, total 213971K, used 205369K, garbage 1234K (1.1% used/max, 96.2% used/total, 0.0% garbage/used), 3 spaces exist

Explicit Memories(0x12345678)

 "EJBMgrData" eid=1(0x02f25610)/R, total 154272K, used 150176K, garbage 1234K (97.0% used/total, 1.2% garbage/used, 0 blocks) Enable

 "VJBStored" eid=3(0x02f25910)/B, total 54272K, used 50176K, garbage 0K (90.9% used/total, 0.0% garbage/used, 2 blocks) Enable

 "ExplicitMemory-2" eid=2(0x02f25700)/R, total 5427K, used 5017K, garbage 0K (92.1% used/total, 0.0% garbage/used, 0 blocks) Enable

5.6　JavaVMのガーベージコレクションログの内容

ガーベージコレクションのログは，日立JavaVMログファイルに出力されます。

詳細については，「5.7　日立固有のJavaVMログの内容（日立JavaVMログファイル）」を参照してください。

5.7　日立固有のJavaVMログの内容（日立JavaVMログファイル）

日立JavaVMログファイルは，日立が標準のJavaVMに追加した拡張オプションを使用して出力されます。このログを取得するためには，対象のJ2EEサーバを起動するときに必要なオプションを指定しておく必要があります。

＜この節の構成＞

5.7.1　日立JavaVMログファイルを出力するオプション

5.7.2　拡張verbosegc情報の取得

5.7.1　日立JavaVMログファイルを出力するオプション

日立JavaVMログファイルを出力するオプションを次に示します。

-XX:+HitachiOutOfMemoryStackTrace
OutOfMemoryError発生時にスタックトレースを出力するオプションです。なお，このオプションを指定した場合に同時に指定される，-XX:+HitachiOutOfMemorySizeおよび-XX:+HitachiOutOfMemoryCauseが指定された場合も，日立JavaVMログファイルが出力されます。

-XX:+HitachiVerboseGC
ガーベージコレクションが発生した時の拡張verbosegc情報を出力するオプションです。拡張verbosegc情報の取得については，「5.7.2　拡張verbosegc情報の取得」を参照してください。

-XX:+HitachiJavaClassLibTrace
System.gc()，System.exit()，Runtime.exit()，またはRuntime.halt()のどれかのAPIを実行したときに，これらのAPIの呼び出しトレースを出力するオプションです。
なお，-XX:HitachiJavaClassLibTraceLineSizeオプションを指定している場合，出力されるトレースは，指定した文字数（バイト数）以内で出力されます。1行の文字数が指定した値を超える場合は，「at」以降の文字列の前半部分が削除されて，指定した文字数分出力されます。

それぞれのオプションを指定した場合の出力内容の詳細については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiOutOfMemoryStackTrace（スタックトレース出力オプション）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiVerboseGC（拡張verbosegc情報出力オプション）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiJavaClassLibTrace（クラスライブラリのスタックトレース出力オプション）」

5.7.2　拡張verbosegc情報の取得

J2EEサーバのusrconf.cfgファイルに，次の表に示すオプションを指定すると，拡張verbosegc情報を取得できます。拡張verbosegc情報からは，そのサーバで必要とするJavaヒープ領域サイズ，Perm領域サイズなどを見積もるための情報が取得できます。なお，Javaログには，OutOfMemoryError発生時のスタックトレースも出力されます。

表5-23　拡張verbosegc情報の取得を指定するオプション

オプション
意味

-XX:+HitachiVerboseGC
拡張verbosegc情報を出力するかどうかを指定します。ガーベージコレクションの内部領域であるEden，Survivor，Tenured，Perm種別ごとに情報を出力します。デフォルトでは出力されません。-XX:+HitachiVerboseGCと指定すると拡張verbosegc情報が出力され，-XX:-HitachiVerboseGCと指定すると拡張verbosegc情報は出力されません。

-XX:+HitachiVerboseGCPrintDate
拡張verbosegc情報を出力するログの各行の先頭に，ログを出力した日付を表示するかどうかを指定します。

-XX:+HitachiVerboseGCCpuTime
ガーベージコレクションの開始から終了までの間で，ガーベージコレクションの実行スレッドのユーザモードおよびカーネルモードに費やされた時間だけを表示するか，ガーベージコレクションの開始から終了までの実時間を表示するかを指定します。
ただし，HP-UXを使用している場合，この機能は使用できません。オプションを指定しても無効になります。

-XX:HitachiVerboseGCIntervalTime=<時間間隔>
-XX:+HitachiVerboseGCに対する出力時間の間隔を数値（単位：秒）で指定します。時間間隔のデフォルト値は0（ガーベージコレクション発生のたびに出力）です。なお，時間間隔を指定すると，その時間間隔の間に発生したガーベージコレクション回数も表示されます。

-XX:+HitachiVerboseGCPrintCause
拡張verbosegc情報を出力するログに，ガーベージコレクションが発生した原因を表示するかどうかを指定します。

-XX:+HitachiCommaVerboseGC
拡張verbosegc情報を出力するログをCSV形式で出力するかどうかを指定します。CSV形式で出力する場合，拡張verbosegc情報の括弧「( )」「[ ]」「< >」や，区切り「:」はすべて省略され，数値または文字列が「,」で区切られて出力されます。

-XX:+HitachiVerboseGCPrintTenuringDistribution
Survivor領域の年齢分布情報を出力するかどうかを指定します。デフォルトでは出力されません。出力形式や出力情報については，「8.11　Survivor領域の年齢分布情報出力機能」を参照してください。

-XX:+HitachiVerboseGCPrintJVMInternalMemory
JavaVM内部で管理しているヒープ情報を日立JavaVMログファイルに出力するかどうかを指定します。

-XX:+HitachiVerboseGCPrintThreadCount
Javaスレッドの数を監視するために，Javaスレッドの数を日立JavaVMログファイルに出力するかどうかを指定します。

-XX:+HitachiVerboseGCPrintDeleteOnExit
java.io.File.deleteOnExit()を呼び出したことによってJavaVMが確保した累積のヒープサイズとメソッドの呼び出し回数を，日立JavaVMログファイルに出力するかどうかを指定します。

ログファイルの出力形式と出力例を次に示します。

出力形式

[id] <date> (Skip Full:full_count, Copy:copy_count) [gc_kind gc_info, gc_time secs][Eden: eden_info][Survivor: survivor_info][Tenured: tenured_info][Perm: perm_info] [cause:cause_info] [User: user_cpu secs] [Sys: system_cpu secs][IM: jvm_alloc_size, mmap_total_size, malloc_total_size][TC: thread_count][DOE: doe_alloc_size, called_count]

説明

id：日立JavaVMログファイル識別子
日立JavaVMログファイル識別子を次の表に示します。この識別子は，ログをログの内容（機能）ごとにフィルタリングして調査する場合に利用できます。

表5-24　日立JavaVMログファイル識別子

識別子 | ログの内容
CLT | クラスライブラリのスタックトレース
JMS | JITコンパイルを抑制したJITコンパイラスレッドに関する情報
OMH | OutOfMemoryの発生頻度に関する情報
OOM | OutOfMemoryError発生時の例外情報とスタックトレース
PTD | Survivor領域の年齢分布情報
VGC | 拡張verbosegc情報

date：日時

full_count：Full GCをスキップした回数（-XX:HitachiVerboseGCIntervalTimeを指定した場合だけ）

copy_count ：Copy GCをスキップした回数（-XX:HitachiVerboseGCIntervalTimeを指定した場合だけ）

gc_kind：ガーベージコレクション種別（Full GCまたはGC）

gc_info：ガーベージコレクション情報（ガーベージコレクション前の領域長 -> ガーベージコレクション後の領域長(領域サイズ)）
(例)　264K->0K(512K)

gc_time：ガーベージコレクション経過時間（単位：秒）

eden_info：Eden情報

survivor_info：Survivor情報

tenured_info：Tenured情報

perm_info：Perm情報

cause_info：ガーベージコレクションの原因

user_cpu secs：ガーベージコレクションスレッドがユーザモードに費やしたCPU時間（単位：秒）

system_cpu secs：ガーベージコレクションスレッドがカーネルモードに費やしたCPU時間（単位：秒）

jvm_alloc_size：JavaVM内部で管理している領域のうち，現在使用中の領域のサイズ（mmap_total_sizeとmalloc_total_sizeの合計サイズのうち，現在使用中の領域のサイズ）（-XX:+HitachiVerboseGCPrintJVMInternalMemoryを指定した場合だけ）

mmap_total_size：JavaVM内部で管理している領域のうち，mmap（Windowsの場合はVirtualAlloc）で割り当てたCヒープの総サイズ（-XX:+HitachiVerboseGCPrintJVMInternalMemoryを指定した場合だけ）

malloc_total_size：JavaVM内部で管理している領域のうち，mallocで割り当てたCヒープの総サイズ（-XX:+HitachiVerboseGCPrintJVMInternalMemoryを指定した場合だけ）

thread_count：Javaスレッドの数（-XX:+HitachiVerboseGCPrintThreadCountを指定した場合だけ）

doe_alloc_size：java.io.File.deleteOnExit()を呼び出して確保した累積のヒープサイズ（-XX:+HitachiVerboseGCPrintDeleteOnExitを指定した場合だけ）

called_count：java.io.File.deleteOnExit()の呼び出し回数（-XX:+HitachiVerboseGCPrintDeleteOnExitを指定した場合だけ）

出力例

-XX:+HitachiCommaVerboseGCオプションを指定した場合の出力例を次に示します。

VGC,Fri Jan 23 21:37:50 2004,11,41,0,GC,16886,16886,65088,0.0559806,
4094,0,4096,447,447,448,12345,16439,60544,1116,1116,4096,0,0.0312500, 0.0156250,729,928,0,509,2167,2054
VGC,Fri Jan 23 21:37:55 2004,6,24,0,Full GC,65082,65082,65088,0.4294532,
4094,4094,4096,447,447,448,60541,60541,60544,1116,1116,4096,0,0.0156250, 0.0312500,729,928,0,509,16,170

5.8　JavaVMが出力するメッセージログの内容（標準出力およびエラーリポートファイル）

JavaVMでクラッシュが発生した場合，JavaVMによってデバッグ情報が標準出力とエラーリポートファイルに出力されます。

エラーリポートファイルに出力されるのは，次の場合です。

JNIの中でのシグナルが発生したとき

JavaVMでCヒープ不足が発生したとき

JavaVMで予期しないシグナルが発生したとき

JavaVMでInternal Error（内部論理エラー）が発生したとき

ここでは，次の場合のメッセージログの出力内容について説明します。

表5-25　 JavaVMが出力するメッセージログ

メッセージの種類
出力先

JNIの中でのシグナルが発生した場合，またはJavaVMでのメッセージ※
標準出力
エラーリポートファイル

Cヒープが不足した場合のメッセージ※
標準出力
エラーリポートファイル

Internal Errorが発生した場合のメッセージ※
標準出力
エラーリポートファイル

スレッド作成に失敗した場合のメッセージ※
標準出力

注※　日立のJavaVM独自の出力先または出力内容があります。

なお，スレッド作成に失敗した場合のメッセージは，標準出力だけに出力されます。

＜この節の構成＞

5.8.1　シグナルが発生した場合

5.8.2　Cヒープが不足した場合

5.8.3　Internal Errorが発生した場合

5.8.4　スレッド作成に失敗した場合

5.8.1　シグナルが発生した場合

シグナルが発生した場合，次に示す項目がログ出力されます。出力内容には，日立のJavaVMとして拡張された内容が含まれます。

異常終了位置とシグナル種別※

カレントスレッド情報

シグナル情報の格納先アドレス※

シグナル情報

siginfo情報※（UNIXの場合）

レジスタ情報

スタックの先頭から格納されている情報

命令コード情報

スタックトレース

スレッド情報

VMの状態

メモリ情報※

Javaヒープの使用状況※

ライブラリ

コマンドおよびVMパラメタ※

環境変数

登録済みシグナルハンドラ

マシン情報※

システム名，CPU，実メモリ，およびVM情報

時間情報※

javatrace起動コマンドのコマンドライン※（UNIXの場合）

注※　日立で拡張された出力内容です。

それぞれの出力内容について説明します。

＜この項の構成＞

(1)　異常終了位置とシグナル種別

(2)　カレントスレッド情報

(3)　シグナル情報の格納先アドレス

(4)　シグナル情報

(5)　siginfo情報（UNIXの場合）

(6)　レジスタ情報

(7)　スタックの先頭から格納されている情報

(8)　命令コード情報

(9)　スタックトレース

(10)　スレッド情報

(11)　VMの状態

(12)　メモリ情報

(13)　Javaヒープの使用状況

(14)　ライブラリ

(15)　コマンドおよびVMパラメタ

(16)　環境変数

(17)　登録済みシグナルハンドラ

(18)　マシン情報

(19)　システム名，CPU，実メモリ，およびVM情報

(20)　時間情報

(21)　javatrace起動コマンドのコマンドライン（UNIXの場合）

(1)　異常終了位置とシグナル種別

異常終了時の状態に応じて，次のどちらかの内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

(a)　シグナルを検出した場合

JDKのバージョンごとの出力メッセージを次に示します。

JDK 6の場合の出力メッセージ

#
# A fatal error has been detected by the Java Runtime Environment:

JDK 5.0の場合の出力メッセージ

#
# An unexpected error has been detected by HotSpot Virtual Machine:

JDK 6の場合を例に，出力内容を示します。

シグナルを検出した場合の出力内容

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  <発生したシグナル名>　(<シグナル番号>) at pc=<PCアドレス>, pid=<プロセスID>, tid=<スレッドID>
#
# JRE version: <jreバージョン情報>
# Java VM: Java HotSpot(TM) <VM種別> (<Sunバージョン情報>-<日立バージョン情報>-<ビルド年月日> mixed mode<OS名>-<CPU種別>)
# Problematic frame:
# <種別コード>  [<シグナルが発生したライブラリ名>＋<オフセット>]
#

注　シグナルが発生した関数名が取り出せた場合，「<シグナルが発生したライブラリ名>＋<オフセット>」に続いて，その関数名とオフセットが表示されることがあります。

(b)　内部論理エラーが発生した場合

JDKのバージョンごとの出力内容を次に示します。

JDK 6の場合に内部論理エラーが発生したときの出力内容

#
#  Internal Error (0xe0000000), pid=<プロセスID>, tid=<スレッドID>
#  <内部論理エラー種別>: 内部論理エラーメッセージ
#
#  JRE version: 6.0
#  Java VM: Java HotSpot(TM) <VM種別> (<Sunバージョン情報>-<日立バージョン情報>-<ビルド年月日> mixed mode<OS名>-<CPU種別>)

注　Internal Errorには，ファイル名および行数の組み合わせ，またはInternal Errorのコードが出力されます。<内部論理エラー種別>には，発生した内部論理エラーの種類によって，"fatal error"，"guarantee(<論理式>) failed"，または"Error"のどれかが出力されます。

JDK 5.0の場合に内部論理エラーが発生したときの出力内容

#
#  Internal Error (5448524541440E4350500D8F※), pid=<プロセスID>, tid=<スレッドID>
#
# Java VM: Java HotSpot(TM) <VM種別> (<Sunバージョン情報>-<日立バージョン情報>-<ビルド年月日> mixed mode<OS名>-<CPU種別>)
#
# Error: 内部論理エラーメッセージ

注※　Internal Errorには，ファイル名，および行番号を16進数に変換した文字列が出力されます。

(2)　カレントスレッド情報

JDKのバージョンごとの出力内容を次に示します。

JDK 6の場合

スレッドの種類に応じて次の3種類の情報が出力されます。

Current thread (<アドレス>):  <スレッド名> "<スレッド名称>" [_<状態>, id=<スレッドID>, stack(<開始アドレス>,<終了アドレス>)]

または
Current thread (<アドレス>):  <スレッド名> [_id=<スレッドID>, stack(<開始アドレス>,<終了アドレス>)]

または
Current thread is native thread

JDK 5.0の場合

スレッドの種類に応じて次の3種類の情報が出力されます。

Current thread (<アドレス>):  <スレッド名> "<スレッド名称>" [_<状態>, id=<スレッドID>]

または
Current thread (<アドレス>):  <スレッド名> [_id=<スレッドID>]

または
Current thread is native thread

(3)　シグナル情報の格納先アドレス

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

siginfo address: <アドレス>, context address: <アドレス>

(4)　シグナル情報

次の内容が出力されます。

Windowsの場合

EXCEPTION_ACCESS_VIOLATION(読み込み違反)

siginfo: ExceptionCode=<シグナル番号>, reading address <アドレス>

EXCEPTION_ACCESS_VIOLATION(書き込み違反)

siginfo: ExceptionCode=<シグナル番号>, writing address <アドレス>

EXCEPTION_ACCESS_VIOLATION(その他)

siginfo: ExceptionCode=<シグナル番号>, ExceptionInformation=<付加情報>

EXCEPTION_ACCESS_VIOLATION以外

siginfo: ExceptionCode=<シグナル番号>, ExceptionInformation=<付加情報1> <付加情報2> ・・・

UNIXの場合（JDK 6を使用している場合）

siginfo:si_signo=<発生したシグナル名>, si_errno=<番号>, si_code=<番号>(<シグナル理由種別>), si_addr=<アドレス>

UNIXの場合（JDK 5.0を使用している場合）

siginfo:si_signo=<シグナル番号>, si_errno=<番号>, si_code=<番号>, si_addr=<アドレス>

(5)　siginfo情報（UNIXの場合）

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

siginfo structure dump (location: <siginfoのアドレス>)
<siginfoのアドレス> <siginfoのアドレス> <siginfoのアドレス> <siginfoのアドレス>
...
<siginfoのアドレス> <siginfoのアドレス> <siginfoのアドレス> <siginfoのアドレス>

注　<siginfoのアドレス>は16進数で出力されます。

(6)　レジスタ情報

次の内容が出力されます。ただし，内部論理エラーの場合は出力されません。

Registers:<レジスタ情報>
：

注　UNIXの場合，BSPレジスタの値がデバッガ（gdb）の値と異なって出力されます。これは，デバッガではBSPの指すバッキングストア領域の内容を出力しており，BSPの指す位置を修正しているためです。

(7)　スタックの先頭から格納されている情報

次の内容が出力されます。ただし，内部論理エラーの場合は出力されません。

Top of Stack: (sp=<スタックポインタのアドレス>)
<アドレス>:   <格納されている内容>
：

注　<格納されている内容>は16進数で出力されます。

(8)　命令コード情報

次の内容が出力されます。ただし，内部論理エラーの場合は出力されません。

Instructions: (pc=<プログラムカウンタのアドレス>)
<アドレス>:   <命令コード>
：

注　<命令コード>は16進数で出力されます。

(9)　スタックトレース

次の内容が出力されます。ただし，Current threadがJavaThread以外の場合は出力されません。

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
<スタックトレース>
：

(10)　スレッド情報

JDKのバージョンごとの出力内容を次に示します。

JDK 6の場合

Java Threads: ( => current thread )
 <アドレス>　JavaThread “<スレッド名称>“　[<状態>, id=<スレッドID>, stack(<開始アドレス>,<終了アドレス>)]
　  ：
=><アドレス>　JavaThread “<スレッド名称>“　[<状態>, id=<スレッドID>, stack(<開始アドレス>,<終了アドレス>)]
Other　Threads:
 <アドレス>　<スレッド名> [stack(<開始アドレス>,<終了アドレス>)] [id=<スレッドID>]
　  ：

JDK 5.0の場合

Java Threads: ( => current thread )
 <アドレス>　JavaThread “<スレッド名称>“　[<状態>, id=<スレッドID>]
　  ：
=><アドレス>　JavaThread “<スレッド名称>“　[<状態>, id=<スレッドID>]
Other　Threads:
 <アドレス>　<スレッド名> [id=<スレッドID>]
　  ：

(11)　VMの状態

次の内容が出力されます。

VM state:<現在の状態>

VM Mutex/Monitor currently owned by a thread: <mutexs/moniter>

注　この情報に続いて，ロック情報が出力される場合があります。

(12)　メモリ情報

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

Memory :
<メモリ確保関数>:address<開始アドレス> - <終了アドレス>(size:<サイズ>)
       ：

       Heap Size:<確保しているメモリサイズ>
       Alloc Size:<使用中のメモリサイズ>
       Free Size:<未使用のメモリサイズ>

<メモリ確保関数>は，mmap()またはmalloc()のどちらかです。アドレスは16進数で表示されます。

各種メモリサイズの単位はバイトです。

(13)　Javaヒープの使用状況

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

Heap
<Javaヒープ情報>

(14)　ライブラリ

次の内容に続いて，ローディングされているライブラリの一覧が出力されます。

Dynamic libraries:
<ライブラリ>
：

(15)　コマンドおよびVMパラメタ

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

Command : <コマンドライン>

Java Home Dir   : <JDK実行環境インストールディレクトリ>
Java DLL Dir    : <JDKのライブラリインストールディレクトリ>
Sys Classpath   : <システムクラスパス>
User Args       :
<コマンドオプション1>
<コマンドオプション2>
：

(16)　環境変数

次の内容が出力されます。

Environment Variables:
<環境変数=値>
：

(17)　登録済みシグナルハンドラ

次の内容が出力されます。

Signal Handlers:
<シグナル種別>：
[<シグナルハンドラアドレス>], sa_mask[0]=<シグナルマスク>, sa_flags=<特殊フラグ>
：
Changed Signal Handlers -
<シグナル種別>： [<シグナルハンドラアドレス>], sa_mask[0]=<シグナルマスク>, sa_flags=<特殊フラグ>
：

出力内容の意味は次のとおりです。

<シグナル種別>：/usr/include/sys/signal.hに定義されているシグナル名です。

<シグナルハンドラアドレス>：シグナルハンドラのアドレスが16進で出力された値です。「ライブラリ名＋オフセット」という形式で表示されることもあります。

<シグナルマスク>：sigaction()で取り出せる構造のsa_maskフィールド値が16進で出力された値です。

<特殊フラグ>：sigaction()で取り出せる構造のsa_flagsフィールド値が16進で出力された値です。

(18)　マシン情報

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

Host: <ホスト名>:<IPアドレス>

注　<IPアドレス>には複数のIPアドレスが表示されることがあります。

(19)　システム名，CPU，実メモリ，およびVM情報

次の内容が出力されます。

Windowsの場合

OS: <OSバージョン>

CPU: <利用可能CPU数>,<CPU種別>

Memory: <実メモリ情報>

vm_info: <VM情報>

UNIXの場合

OS: <OSバージョン>

[uname:<uname出力>]
[libc:<libcのバージョン番号>]
[rlimit:<リミット値>]
[load average:<ロードアベレージ>]
[/proc/meminfo:</proc/meminfoの内容>]

CPU: <利用可能CPU数>[,<CPU種別>]

Memory: <実メモリ情報>

vm_info: <VM情報>

(20)　時間情報

JDKのバージョンごとの出力内容を次に示します。

JDK 6の場合

time: <実行日付>

elapsed time: <実行時間> seconds

JDK 5.0の場合※

Local Time = <実行日付>

Elapsed Time = <実行時間>

注

JDK 6およびJDK 5.0の実行日付の例を次に示します。

例：「Wed Aug 25 14:55:04 2004」

注※

この内容は，日立のJavaVMで拡張された出力内容です。

(21)　javatrace起動コマンドのコマンドライン（UNIXの場合）

次の内容が出力されます。この内容は，日立のJavaVMで拡張された出力内容です。

# You can get further information from javatrace.log file generated
# by using javatrace command.
# usage: javatrace core-file-name loadmodule-name [out-file-name] [-l(library-name)...]
# Please use javatrace command as follows and submit a bug report
# to Hitachi with javatrace.log file:
#[<インストールディレクトリ>/jre/bin/javatrace <coreファイル>  <ロードモジュール>]

5.8.2　Cヒープが不足した場合

Cヒープが不足した場合，次の順序でメッセージ出力およびダンプ出力，またはcoreダンプの生成が実行されます。

Cヒープ不足を示すメッセージログが，エラーリポートファイルおよび標準出力に出力されます。

1.の実行中にメモリ不足が発生した場合，簡易メッセージが標準出力に出力されます。

Windowsの場合，ワトソンログが起動され，ダンプ出力が実行されます。UNIXの場合，簡易メッセージの出力処理中にさらにメモリ不足が発生したときに，メッセージおよびエラーログファイルの出力処理を中止して，coreダンプを生成します。

それぞれの出力形式を次に示します。

＜この項の構成＞

(1)　Cヒープ不足を示すメッセージログの出力内容

(2)　メモリ不足を示すメッセージの出力内容

(3)　ワトソンログが正しく出力されたかどうかを示すメッセージの出力内容（Windowsの場合）

(4)　coreダンプの生成を示すメッセージの出力内容

(1)　Cヒープ不足を示すメッセージログの出力内容

Cヒープ不足を示すメッセージログの出力形式を次に示します。この形式は，エラーリポートファイルと標準出力で共通です。

Windowsの場合

Exception in thread <ThreadName> java.lang.OutOfMemoryError:requested <n> bytes [ for <message>].

Memory Status
-------------
      Memory in use   :使用率%
      Physical memory :空きメモリサイズ /総メモリサイズ free
      Virtual memory  :空きメモリサイズ/総メモリサイズ free
      Paging file     :空き容量/総容量 free

Heap Status
-----------
<Javaヒープ情報>
-----------
Stack Trace
-----------
<スタックトレース>
Insufficient memory for malloc. JVM generates core file.
-----------

AIX，HP-UX，またはLinuxの場合

Exception in thread <ThreadName> java.lang.OutOfMemoryError: requested <n> bytes [for <message>].

Memory Status
-------------
 maximum size of data segment
     soft(current) limit :getrlimit(RLIMIT_DATA)で取得したソフトリミット値 kbytes (16進数)
     hard limit          :getrlimit(RLIMIT_DATA)で取得したハードリミット値 kbytes (16進数)
 current end of the heap :sbrk(0)によって取得した値
 JVM allocation size by malloc :JavaVMが割り当てたメモリサイズ kbytes (16進数)
 malloc information
     total space in arena            :mallinfo.arenaの値
     number of ordinary blocks       :mallinfo.ordblksの値
     number of small blocks          :mallinfo.smblksの値
     number of holding blocks        :mallinfo.hblksの値
     space in holding block headers  :mallinfo.hblkhdの値
     space in small blocks in use    :mallinfo.usmblksの値
     space in free small blocks      :mallinfo.fsmblksの値
     space in ordinary blocks in use :mallinfo.uordblksの値
     space in free ordinary blocks   :mallinfo.fordblksの値
     cost of enabling keep option    :mallinfo.keepcostの値

Heap Status
-----------
<Javaヒープ情報>
-----------
Stack Trace
-----------
<スタックトレース>
-----------

Solarisの場合

Exception in thread <ThreadName> java.lang.OutOfMemoryError: requested <n> bytes [for <message>].

Heap Status
-----------
<Javaヒープ情報>
-----------
Stack Trace
-----------
<スタックトレース>
-----------

このようなメッセージが出力された場合は，Cヒープを減らすなど，適切な対策をしてください。

出力項目について次に示します。

表5-26　 Cヒープが不足した場合のメッセージログの出力項目

出力項目
説明

ThreadName
Thread#getName()メソッドで取り出せるスレッド名称が出力されます。

n
メモリ確保要求サイズが出力されます。

message
保守員による調査に必要な内部メッセージが出力されます。出力されない場合もあります。

Javaヒープ情報
Javaヒープの使用状況が出力されます。

スタックトレース
メモリ不足の発生したスレッドがJava コードを実行しているスレッドである場合に，スタックトレースが出力されます。
コンパイル処理のようなJavaVMの内部処理を実行するスレッドでメモリ不足が発生した場合には出力されません。

(2)　メモリ不足を示すメッセージの出力内容

Cヒープ不足を示すメッセージログが出力されている間にさらにメモリ不足が発生した場合は，処理の続行ができません。この場合は，次の形式の簡易メッセージが標準出力に出力されます。

java.lang.OutOfMemoryError:requested <n> bytes for <message>

出力項目について次に示します。

表5-27　メモリ不足が発生した場合の簡易メッセージの出力項目

出力項目 | 説明
n | メモリ確保要求サイズが出力されます。
message | 保守員による調査に必要な内部メッセージが出力されます。

(3)　ワトソンログが正しく出力されたかどうかを示すメッセージの出力内容（Windowsの場合）

簡易メッセージの出力後は，ワトソンログが起動され，ダンプ出力が実行されます。ただし，ワトソンログが正常に出力できない場合がありますので，標準出力に出力される処理結果のメッセージを確認してください。

次のメッセージは，ワトソンログの起動に失敗した場合に出力されます。

WatosonLog process generated.But couldn't generate dump file,because of resource shortage.

次のメッセージは，ワトソンログの起動後，ダンプ出力に失敗した場合に出力されます。

Couldn't generate dump file,because of resource shortage.

これらの処理に成功した場合は，次に示すメッセージが出力されます。ただし，この場合もワトソンログが正常にダンプ出力しない場合があります。このメッセージが出力された場合も，実際にダンプが出力されているかどうかを確認してください。

Although Dr.Watson process finished successfully,dump file isn't always generated.
Check your directory where dump file is stored.

(4)　coreダンプの生成を示すメッセージの出力内容

簡易メッセージの出力処理中にさらにメモリ不足が発生した場合，メッセージおよびエラーログファイルの出力処理を中止して，coreダンプを生成します。coreダンプが生成されると，次の形式のメッセージが標準出力に出力されます。

Can't create logs because of memory shortage.
Insufficient memory for malloc. JVM generates core file

5.8.3　Internal Errorが発生した場合

JavaVM内部の論理エラーであるInternal Errorが発生した場合，次の情報が出力されます。

異常終了位置とシグナル種別

カレントスレッド情報

シグナル情報の格納先アドレス※

スレッド情報

VMの状態

メモリ情報※

ヒープ情報※

ライブラリ

コマンド・VMパラメタ※

環境変数

登録済みシグナルハンドラ

マシン情報※

システム名，CPU，実メモリ，およびVM情報

時間情報

javatrace起動コマンドのコマンドライン※（UNIXの場合）

注※　日立で拡張された出力内容です。

それぞれの情報の出力形式については，「5.8.1　シグナルが発生した場合」を参照してください。

5.8.4　スレッド作成に失敗した場合

メモリ不足（OutOfMemoryError）などが発生して新しくスレッドを作成できなかった場合，その時点でのスレッド数が，標準出力に出力されます。ここには，作成に失敗したスレッド数も含まれます。

メモリ不足などによってスレッドの作成に失敗した場合の出力例を次に示します。

java.lang.OutOfMemoryError:unable to create new native thread.1200 threads exist.
…

JavaVM起動時にスレッド作成に失敗した場合の出力例を次に示します。

Error occurred during initialization of VM
Could not create thread for VM:VM Thread.5 threads exist.

ポイント

JDK 6を使用した場合と，JDK 5.0を使用した場合とでは，出力されるエラーメッセージの形式が異なります。

5.9　OSの状態情報およびOSのログの内容

取得したOSの状態・ログ情報で異常な傾向の有無を確認します。具体的な資料の見方についてはOS付属のマニュアルなどを参照してください。

5.10　JavaVMスタックトレース情報の内容

ここでは，スタックトレースに出力される情報のうち，日立のJavaVMで拡張された内容について説明します。

サーバやアプリケーションでトラブルが発生した場合，トラブル発生までのスタックトレースの内容を確認することで，トラブル発生の要因を調査できます。

スタックトレースは，次のどれかのタイミングで出力されます。

J2EEサーバまたはJ2EEアプリケーションで例外が発生した場合

バッチサーバまたはバッチアプリケーションで例外が発生した場合

JavaVMのスレッドダンプが出力された場合

日立のJavaVMでは，サーバを起動するときのオプションの指定によって，スタックトレースにJavaメソッドのローカル変数についての情報を出力できます。例外発生時にJavaメソッドに定義されていたローカル変数の情報は，トラブルの要因を分析するために有効です。

なお，ここで対象にするローカル変数とは，メソッドに渡される引数およびインスタンスメソッドでの呼び出しの対象になるオブジェクト（this）のことです。ローカル変数情報には，これらのローカル変数の変数名，型名，およびローカル変数の値が出力されます。なお，型名は，基本形名，クラス名（インタフェース名を含みます）または配列形名のことです。

スタックトレースにローカル変数情報を出力するためのオプションを，次の表に示します。JavaVMの資料取得の設定については，「3.3.19　JavaVMの資料取得の設定」を参照してください。

表5-28　スタックトレースにローカル変数情報を出力するためのオプション

起動オプション
スタックトレースを出力するタイミング
同時に指定できるオプション

-XX:+HitachiLocalsInThrowable
サーバまたはアプリケーション内で例外が発生したとき※

-XX:MaxJavaStackTraceDepth=<最大の深さ>

-XX:+HitachiLocalsSimpleFormat

-XX:+HitachiTrueTypeInLocals

-XX:HitachiCallToString=<適用範囲指定>

-XX:+HitachiLocalsInStackTrace
JavaVMのスレッドダンプを出力したとき

-XX:MaxJavaStackTraceDepth=<最大の深さ>

-XX:+HitachiLocalsSimpleFormat

-XX:+HitachiTrueTypeInLocals

注※　ただし，発生した例外が「java.lang.StackOverflowError」または「java.lang.OutOfMemoryError」の場合，スタックトレースにローカル変数は出力されません。

次に，それぞれのオプションを指定した場合に出力される内容について，例を基に説明します。それぞれのオプションを指定した時に出力される項目の詳細については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiLocalsInThrowable（例外発生時のローカル変数情報収集オプション）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiLocalsInStackTrace（スレッドダンプ出力時のローカル変数出力オプション）」

＜この節の構成＞

5.10.1　-XX:+HitachiLocalsInThrowableオプションが指定されている場合

5.10.2　-XX:+HitachiLocalsInStackTraceオプションが指定されている場合

5.10.1　-XX:+HitachiLocalsInThrowableオプションが指定されている場合

java.lang.Throwable.printStackTraceメソッドで出力されるスタックトレース情報の1スタックフレーム情報ごとに，そのスタックフレームに対応するメソッド内のローカル変数情報が挿入されて出力されます。

＜この項の構成＞

(1)　標準の形式および簡易出力フォーマットでの出力例

(2)　クラスまたは配列型の変数を文字列として出力する場合の出力例

(3)　クラスまたは配列型の変数の実際の型名を出力する場合の出力例

(1)　標準の形式および簡易出力フォーマットでの出力例

ローカル変数を出力するための機能として，-XX:+HitachiLocalsInThrowableオプションだけを指定している場合の出力例です。

Javaプログラムの例と，それに対するスタックトレース内のローカル変数情報の出力例を示します。

Javaプログラムの例1

class Example1 {
   public static void main(String[] args) {
       Example1 e1 = new Example1();
       Object obj = new Object();
       e1.method(1, 'Q', obj); // e1.methodメソッドを実行します（5行目）。
   }

   void method(int l1, char l2, Object l3) {
       float l4 = 4.0f;
       boolean l5 = true;
       double l6 = Double.MAX_VALUE;
       Object[] l7 = new Object[10];

       try {
         <例外発生!> // methodメソッドの処理内で例外が発生した場合の処理です（15行目）。
       } catch (Exception e) {
         e.printStackTrace(); // スタックトレース情報を出力します（17行目）。
       }
   }
}

出力例を次に示します。

この例は，Javaプログラムの例1の5行目で実行したe1.methodメソッドの処理内で例外が発生したときに，17行目のe.printStackTraceメソッドによって出力されるスタックトレース情報です。

図5-2　Javaプログラムの例1に対するローカル変数情報の出力例（-gオプションまたは-g:varsオプションを指定して作成されたclassファイルの場合）

出力内容について説明します。

スタックトレースを出力する処理を実行したメソッドの情報が出力されます。この例では，javaプログラム1の15行目で例外が発生したときのスタックトレース情報が出力されることを示しています。

ローカル変数情報として，インスタンスメソッドの呼び出しの対象になるオブジェクトについての情報が出力されます。この例の場合は，Javaプログラムの例1の3行目で作成したExample1クラスのオブジェクトのクラス名とアドレスが出力されます。

ローカル変数情報として，methodメソッドの引数として指定されたローカル変数の値についての情報が出力されます。変数名の後ろの[arg*]は，何番目のメソッド引数かを示す情報です。Javaプログラムの例1の5行目でe1.methodメソッドを実行したときに指定された値が出力されます。
なお，l1およびl2は基本型（int型およびchar型）の変数なので実際の値が出力されます。l3はjava.lang.Objectクラス型の変数なので，アドレスで出力されます。

ローカル変数情報として，methodメソッド内のローカル変数のうち，メソッド引数として指定した以外のローカル変数の値についての情報が出力されます。
なお，l4～l6は基本型（float型，boolean型およびdouble型）の変数なので実際の値が出力されます。l7はjava.lang.Objectクラス型の変数なので，アドレスで出力されます。

次に，-XX:+HitachiLocalsSimpleFormatオプションを指定した場合の，簡易出力フォーマットでの出力例を次に示します。なお，出力内容の説明は，標準の形式と同じです。

図5-3　-XX:+HitachiLocalsSimpleFormatオプションを指定した場合の出力例

また，javacコマンド実行時に，-gオプションまたは-g:varsオプションを指定しなかった場合，ローカル変数情報がないため，出力内容が次のように制限されます。これらは，nativeメソッドを実行した場合も同様です。

出力できるローカル変数が，メソッドに渡される引数とインスタンスメソッド呼び出し対象オブジェクト（this）だけになります。

メソッドに渡される引数は，変数名が出力されません。引数番号だけが出力されます。

nativeメソッドの場合，ローカル変数の値としてnativeメソッドを呼び出した時点での値が出力されます。nativeメソッドの実行結果を反映した出力結果にはなりません。

ローカル変数情報がない場合の，Javaプログラムの例1に対する出力例を次に示します。ここでは，簡易出力フォーマットでの出力例を示します。

図5-4　ローカル変数情報がない場合の出力例（簡易出力フォーマット）

図5-3に比べて，次の違いがあります。

メソッドに渡される引数（l1～l3）の変数名が出力されません。

メソッド呼び出し時点の値が出力されるため，メソッド内で設定されたローカル変数についての情報（l4～l7）が出力されません。

(2)　クラスまたは配列型の変数を文字列として出力する場合の出力例

出力するローカル変数がクラスまたは配列型の場合，アドレスだけの値表現ではトラブルシューティングに必要な情報が取得できない場合があります。このとき，-XX:HitachiCallToStringオプションの指定をしておくと，クラスまたは配列型の変数の値を文字列で取得できます。オプションには，適用範囲として，minimalまたはfullが指定できます。

-XX:HitachiCallToString=minimalオプションが指定されている場合は，java.langパッケージ内のクラスのうち，String，StringBuffer，Boolean，Byte，Character，Short，Integer，Long，Float，またはDoubleが対象になります。-XX:HitachiCallToString=fullオプションが指定されている場合は，すべてのクラスが対象になります。

次に，Javaプログラムの例と，-XX:HitachiCallToStringオプションが指定されている場合の出力例を示します。なお，ここでは簡易出力フォーマットで示します。

Javaプログラムの例2

class Example2 {
   public static void main(String[] args) {
       Example2 e2 = new Example2();
       e2.method();// e2.methodメソッドを実行します（4行目）。
   }

   void method() {
       String l1 = "local 1";
       StringBuffer l2 = new StringBuffer(l1);
       l2.append(" + local 2");
       Boolean l3 = new Boolean(false);
       Character l4 = new Character('X');
       Long l5 = new Long(Long.MIN_VALUE);
       Object l6 = new Thread();
       Object[] l7 = new Thread[10];

       try {
         <例外発生!> // methodメソッドの処理内で例外が発生した場合の処理です（18行目）。
       } catch (Exception e) {
         e.printStackTrace(); // スタックトレース情報を出力します（20行目）。
       }
   }

   public String toString() {
       return "I am an Example2 instance.";
   }
}

-XX:HitachiCallToString=minimalオプションを指定した場合の出力例を次に示します。

この例は，Javaプログラムの例1の4行目で実行したe2.methodメソッドの処理内で例外が発生したときに，20行目のe.printStackTraceメソッドによって出力されるスタックトレース情報です。

図5-5　-XX:HitachiCallToString=minimalオプションを指定した場合の出力例（簡易出力フォーマット）

出力内容について説明します。

クラス型のローカル変数のうち，文字列を出力する適用対象のクラスの型のローカル変数情報です。アドレスに続いて，文字列に変換した値が出力されます。

クラス型のローカル変数のうち，文字列を出力する適用対象外のクラスの型のローカル変数情報です。アドレスだけが出力されます。

次に，-XX:HitachiCallToString=fullオプションを指定した場合の出力例を次に示します。

図5-6　-XX:HitachiCallToString=fullオプションを指定した場合の出力例（簡易出力フォーマット）

図5-5に比べて，次の違いがあります。

minimalを指定した場合に適用対象外のクラスだったjava.lang.Objectクラスおよびjava.lang.Objectクラスの配列のローカル変数（l6およびl7）に対しても，文字列が出力されます。

ただし，次の場合は，文字列は出力されないで，アドレスだけが出力されます。

ローカル変数の値がnullだった場合

文字列で出力するときに再度例外が発生して，正常に値が得られなかった場合

注意

ローカル変数情報で出力するオブジェクトは，ほかのスレッドで並行して操作していることがあります。このため，このオプションを指定して出力した文字列は，実際に例外が発生したときのオブジェクトに対応する情報とは異なっているおそれがあります。

(3)　クラスまたは配列型の変数の実際の型名を出力する場合の出力例

出力するローカル変数がクラスまたは配列型の場合，変数の型名と実際に代入されている値の型名が異なる場合があります。例えば，クラスの継承関係やインタフェースの実装関係によっては，異なる型名の値が変数に代入されます。

この場合に，-XX:+HitachiTrueTypeInLocalsオプションの指定によって，クラスまたは配列型の変数に実際に代入されている値の型名を追記して取得できます。

取得した文字列は，値表現の末尾に半角スペース1文字分が追記され，( )で囲まれて出力されます。このとき，出力文字列長に制限はありません。

次に，-XX:+HitachiTrueTypeInLocalsオプションが指定されている場合の出力例を示します。ここでは簡易出力フォーマットで示します。実行するプログラムは，Javaプログラムの例2です。また，この例は，-XX:HitachiCallToString=minimalオプションが指定されている場合の例です。

図5-7　-XX:+HitachiTrueTypeInLocalsオプションを指定した場合の出力例（簡易出力フォーマット）

出力内容について説明します。

変数の型名はjava.lang.Objectクラスまたはjava.lang.Objectクラスの配列ですが，実際に代入されている値の型名はjava.lang.Threadクラスおよびjava.lang.Threadクラスの配列であることが出力されています。

なお，-XX:+HitachiTrueTypeInLocalsオプションは，-XX:HitachiCallToString=fullオプションとも同時に指定できます。

5.10.2　-XX:+HitachiLocalsInStackTraceオプションが指定されている場合

スレッドダンプ内のスタックトレース情報の1スタックフレーム情報ごとに，そのスタックフレームに対応するメソッド内のローカル変数情報が挿入されて，出力されます。

出力形式および出力内容は，-XX:+HitachiLocalsInThrowableが指定されている場合に標準出力に出力される内容と同じです。

ただし，-XX:+HitachiLocalsInStackTraceオプションでは，次のオプションの指定は無効になります。

-XX:HitachiCallToStringオプション

Javaプログラムの例と，それに対するスタックトレース内のローカル変数情報の出力例を示します。

Javaプログラムの例3

class Example3 {
   public static void main(String[] args) {
       Example3 e3 = new Example3();
       e3.method();
   }

   synchronized void method() {
       int l1 = 1;
       float l2 = 2.0f;
       String l3 = "local 3";
       Character l4 = new Character('X');
       Object l5 = new Thread();
       Object[] l6 = new Thread[10];

       <ここでスレッドダンプ出力!>
   }
}

出力例を次に示します。この例は，次の場合の例です。

-gオプションまたは-g:varsオプションを指定して作成されたclassファイルである

-XX:+HitachiLocalSimpleFormatオプションを指定している

-XX:+HitachiTrueTypeInLocalsオプションを指定している

図5-8　Javaプログラムの例3に対するローカル変数情報の出力例

5.11　明示管理ヒープ機能のイベントログの内容

この節では，明示管理ヒープ機能のイベントログの内容について説明します。

明示管理ヒープ機能のイベントログは，ガーベージコレクション発生，Explicitメモリブロックの初期化・解放・拡張，Explicitメモリブロックへのオブジェクトの移動など，明示管理ヒープ機能に関連するイベントが発生したタイミングで出力されます。出力される内容は，JavaVM起動オプションで指定したログ出力レベルの設定によって異なります。

明示管理ヒープ機能のイベントログは，次の用途で使用できます。

Explicitヒープのチューニング

明示管理ヒープ機能を実装したアプリケーションのデバッグ

稼働情報の収集

イベントログを参照すると，Explicitヒープのサイズの変化，Explicitメモリブロックの数，Javaヒープの各領域サイズの変化などがわかります。なお，イベントログは，テキストファイルとして出力されます。

＜この節の構成＞

5.11.1　明示管理ヒープ機能のイベントログの出力契機

5.11.2　明示管理ヒープ機能のイベントログの確認方法

5.11.3　出力レベルがnormalの場合に出力される内容

5.11.4　出力レベルがverboseの場合に出力される内容

5.11.5　出力レベルがdebugの場合に出力される内容

5.11.1　明示管理ヒープ機能のイベントログの出力契機

ここでは，明示管理ヒープ機能のイベントログの出力契機について説明します。設定しているログ出力レベルに応じて，契機となるイベントは異なります。

ログ出力レベルには，normal，verbose，debugの3種類があります。なお，verboseを指定した場合，normalで出力される内容に加えて，verboseに対応する内容が出力されます。debugを指定した場合，verboseで出力される内容に加えて，debugに対応する内容が出力されます。

ログ出力レベルと出力契機となるイベントの対応を次の表に示します。イベントに対応して出力される接頭語についてもあわせて示します。各イベントで出力される内容については，参照先を参照してください。

表5-29　ログ出力レベルと出力契機となるイベントの対応

ログ出力レベル | 出力契機となるイベント | 接頭語※ | 参照先
normal | ガーベージコレクション発生（Explicitヒープの利用状況出力） | ENS | 5.11.3(1)
Explicitメモリブロック解放処理 | ENS | 5.11.3(2)
Explicitメモリブロック解放処理時のJavaヒープあふれ | ENS | 5.11.3(3)
Explicitメモリブロックの自動解放処理 | ENS | 5.11.3(4)
Explicitメモリブロックの自動解放処理時のJavaヒープあふれ | ENS | 5.11.3(5)
明示管理ヒープ自動配置設定ファイルオープンエラー | ENA | 5.11.3(6)
明示管理ヒープ自動配置設定ファイルパースエラー | ENA | 5.11.3(7)
明示管理ヒープ自動配置エラー | ENA | 5.11.3(8)
verbose | Explicitメモリブロックの初期化 | EVO | 5.11.4(1)
Explicitメモリブロックの初期化失敗 | EVO | 5.11.4(2)
Explicitメモリブロックのサブ状態のDisable化 | EVO | 5.11.4(3)
Explicitメモリブロックへのオブジェクト生成 | EVS | 5.11.4(4)
Explicitメモリブロックへの移動（詳細情報出力） | EVS | 5.11.4(5)
Explicitメモリブロック解放処理（詳細情報出力） | EVS | 5.11.4(6)
ファイナライザによるExplicitメモリブロックの解放予約 | EVO | 5.11.4(7)
明示管理ヒープへの自動配置 | EVA | 5.11.4(8)
debug | Explicitメモリブロック解放によるJavaヒープへのオブジェクトの移動 | EDO | 5.11.5(1)
Explicitメモリブロックの初期化（詳細情報出力） | EDO | 5.11.5(2)
Explicitメモリブロックの自動解放処理の詳細（詳細情報出力） | EDO | 5.11.5(3)

注※

接頭語は，ログ行の最初に出力する「[」と「]」で囲まれたアルファベット（3文字）です。

各イベントの詳細は，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」を参照してください。

5.11.2　明示管理ヒープ機能のイベントログの確認方法

ここでは，明示管理ヒープ機能が出力するイベントログの参照方法について説明します。

＜この項の構成＞

(1)　出力契機の確認方法

(2)　ログの接頭語を使用した調査方法

(3)　イベントログの出力形式の説明で使用する記号

(1)　出力契機の確認方法

ログ出力の契機となったイベントは，[cause:<CAUSE>]の形式で出力されます。この項目を確認することで，契機となったイベントを確認できます。

<CAUSE>に出力される文字列の意味を次の表に示します。

表5-30　<CAUSE>に出力される文字列の意味

<CAUSE> | 意味
GC | コピーガーベージコレクション発生
Full GC | フルガーベージコレクション発生
Reclaim | Explicitメモリブロック解放処理
Reclaiming | Explicitメモリブロック解放処理中のJavaヒープあふれ
New | Explicitメモリブロックへのオブジェクト生成
Migrate | Explicitメモリブロックの自動解放処理
Migrating | Explicitメモリブロックの自動解放処理時のJavaヒープあふれ

ただし，一部のログでは，<CAUSE>が出力されません。

(2)　ログの接頭語を使用した調査方法

[ENS]，[EVO]などのログの接頭語は，ログをフィルタリングして調査するために利用できます。

明示管理ヒープ機能の接頭語の意味は次のとおりです。

1文字目の"E"は，明示管理ヒープ機能のログであることを示します。

2文字目は，ログ出力レベルを示します。normalレベルの場合は「N」，verboseレベルの場合は「V」，debugレベルの場合は「D」が出力されます。

3文字目は，ExplicitヒープまたはJavaヒープのメモリサイズが変化するかどうかを示します。「S」の場合はメモリサイズが変化します。「O」の場合は変化しません。「O」の場合，ログには発生したイベントの名称も出力されます。また，「A」の場合は明示管理ヒープ自動配置設定ファイルのログであることを示します。

例えば，各ヒープサイズの変化を調査したい場合に「S」でフィルタリングしたり，発生したイベントを調査したい場合に「O」でフィルタリングしたりできます。

(3)　イベントログの出力形式の説明で使用する記号

出力形式の説明で使用する記号を次の表に示します。

表5-31　出力形式の説明で使用する記号

記号
使用例
意味

*
X*
左辺を0回以上繰り返します。
使用例の場合，Xを0回以上繰り返すことを意味します。

?
X?
左辺を1回以上繰り返します。
使用例の場合，Xを1回以上繰り返すことを意味します。

{n,m}
X{1,5}
左辺をn回以上m回以下繰り返します。
使用例の場合，Xを1回以上5回以下繰り返すことを意味します。

{
{ABC}*
"{"と"}"で囲まれた範囲を"*"，"?"，"{n,m}"の左辺の参照単位にします。
使用例の場合，"ABC"を0回以上繰り返すことを意味します。

}

¥
なし
マニュアル上では見やすさのために改行した個所を示します。
実際の出力内容に改行は入りません。

|
X|Y
左辺または右辺を表します。
使用例の場合，XまたはYを意味します。

.
なし
任意の文字を示します。

...
X|Y...
この行の前方直近の同一インデントの行から，この行前の行までを1回以上繰り返します。
使用例の場合，XまたはYの行を1回以上繰り返すことを意味します。

また，出力形式の説明では，数値などを表5-31で示した記号に表5-32で示す記号を組み合わせて表します。

数値などを表すときに使用する記号を次の表に示します。

表5-32　数値などを表すときに使用する記号

記号 | 定義 | 意味
<digit> | 0|1|2|3|4|5|6|7|8|9 | 0～9を表します。
<hex> | <digit>|a|b|c|d|e|f | 16進数を表します。
<const> | <const><digit>|<digit> | 正の自然数を表します。
<decimal> | <const>.<digit> | 正の整数（小数点第1位まで）を表します。
<ptr64> | 0x<hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex><hex> | 64ビットポインタ値を表します。
<ptr32> | 0x<hex><hex><hex><hex><hex><hex><hex><hex> | 32ビットポインタ値を表します。
<ptr> | <ptr64>|<ptr32> | ポインタ値を表します。
<letters> | .? | 任意の文字または任意の文字列を表します。

注　この表で示す記号は，"*"，"?"または"|"の左辺または右辺の参照単位になります。例えば，「<digit>|<hex>」と表記されている場合は，0～9の数値，または16進数であることを意味します。

5.11.3　出力レベルがnormalの場合に出力される内容

ここでは，ログ出力レベルにnormalを指定した場合に出力される内容をイベントごとに説明します。

normalは，通常運用時に指定するログ出力レベルです。

＜この項の構成＞

(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）

(2)　Explicitメモリブロック解放処理

(3)　Explicitメモリブロック解放処理時のJavaヒープあふれ

(4)　Explicitメモリブロックの自動解放処理

(5)　Explicitメモリブロックの自動解放処理時のJavaヒープあふれ

(6)　明示管理ヒープ自動配置設定ファイルオープンエラー

(7)　明示管理ヒープ自動配置設定ファイルパースエラー

(8)　明示管理ヒープ自動配置エラー

(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）

ガーベージコレクション発生時に，Explicitヒープの利用状況が出力されます。

このログは，JavaヒープからExplicitヒープに移動するオブジェクトがない場合にも出力されます。Explicitヒープに移動するオブジェクトがない場合，<EH_USED_BF>と<EH_USED_AF>は同じ値になります。

(a)　出力の契機

ガーベージコレクションの終了です。

(b)　出力形式

[ENS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EH_TOTAL>/<EH_MAX>)][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>][cause:<CAUSE>][CF: <CF_CNT>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-33　出力項目（ガーベージコレクション発生（Explicitヒープ利用状況出力））

出力項目
出力内容
意味

<ctime>
<letters>
ガーベージコレクションの発生日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED_BF>
<const>K
ガーベージコレクションが実行される前のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_USED_AF>
<const>K
ガーベージコレクションが実行されたあとのExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_TOTAL>
<const>K
ガーベージコレクションが実行されたあとのExplicitヒープの確保済みメモリサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープ最大サイズが出力されます。単位はキロバイトです。

<AC_NUM>
<const>
ガーベージコレクション実行後にサブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
ガーベージコレクション実行後にサブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<CAUSE>
GC|Full GC
契機となったガーベージコレクションの種類が出力されます。
"GC"はコピーガーベージコレクション，"Full GC"はフルガーベージコレクションを示します。

<CF_CNT>
<const>
前回のガーベージコレクションが発生してから今回のガーベージコレクションが発生するまでの間にExplicitメモリブロックの初期化に失敗した回数が出力されます。

(d)　出力例

出力例を示します。

[ENS]<Thu Oct 21 14:55:50 2007>[EH: 150528K->162816K(162816K/1048576K)][E/F/D: 200/0/0][cause:GC][CF: 0]

この出力例では次の内容が確認できます。

出力契機は2007年10月21日(木)14時55分50秒に発生したコピーガーベージコレクションです。

ガーベージコレクションでExplicitヒープへの移動が発生して，Explicitヒープの利用済みサイズが150,528Kから162,816Kに変化しました。

ガーベージコレクション発生後のExplicitヒープの確保済みサイズは162,816Kです。Explicitヒープの最大サイズは1,048,576Kです。

ガーベージコレクション発生後，サブ状態がEnableであるExplicitメモリブロックは200個あります。

(2)　Explicitメモリブロック解放処理

Explicitメモリブロックの解放処理終了後に，ExplicitヒープおよびJavaヒープの利用状況が出力されます。

(a)　出力の契機

Explicitメモリブロックの解放処理です。

Explicitメモリブロックの解放は，ガーベージコレクション直後に発生します。このため，ここで示すログは，「(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）」で示したログのあとに出力されます。

(b)　出力形式

[ENS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EM_TOTAL>/<EH_MAX>), <ELAPSED> secs][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>]¥
[DefNew::Eden: <ED_USED_BF>-><ED_USED_AF>(<ED_TOTAL>)][DefNew::Survivor: <SV_USED_BF>-><SV_USED_AF>(<SV_TOTAL>)]¥
[Tenured: <TN_USED_BF>-><TN_USED_AF>(<TN_TOTAL>)][cause:<CAUSE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-34　出力項目（Explicitメモリブロック解放処理）

出力項目
出力内容
意味

<ctime>
<letters>
Explicitメモリブロック解放処理の発生日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED_BF>
<const>K
Explicitメモリブロック解放処理前のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_USED_AF>
<const>K
Explicitメモリブロック解放処理後のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_TOTAL>
<const>K
Explicitメモリブロック解放処理後のExplicitヒープの確保済みサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープ最大サイズが出力されます。単位はキロバイトです。

<ELAPSED>
<time>
Explicitメモリブロックの解放処理に掛かった時間が出力されます。単位は秒です。

<AC_NUM>
<const>
Explicitメモリブロック解放処理実行後にサブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
Explicitメモリブロック解放処理実行後にサブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<ED_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のEden領域の利用済みサイズが出力されます。単位はキロバイトです。

<ED_USED_AF>
<const>K
Explicitメモリブロック解放処理実行後のEden領域の利用済みサイズが出力されます。単位はキロバイトです。

<ED_TOTAL>
<const>K
Explicitメモリブロック解放処理実行後のEden領域の確保済みサイズが出力されます。単位はキロバイトです。

<SV_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のSurvivor領域の利用済みサイズが出力されます。単位はキロバイトです。

<SV_USED_AF>
<const>K
Explicitメモリブロック解放処理実行後のSurvivor領域の利用済みサイズが出力されます。単位はキロバイトです。

<SV_TOTAL>
<const>K
Explicitメモリブロック解放処理実行後のSurvivor領域の確保済みサイズが出力されます。単位はキロバイトです。

<TN_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のTenured領域の利用済みサイズが出力されます。単位はキロバイトです。

<TN_USED_AF>
<const>K
Explicitメモリブロック解放処理実行後のTenured領域の利用済みサイズが出力されます。単位はキロバイトです。

<TN_TOTAL>
<const>K
Explicitメモリブロック解放処理実行後のTenured領域の確保済みサイズが出力されます。単位はキロバイトです。

<CAUSE>
Reclaim
"Reclaim"と出力されます。Explicitメモリブロックの解放処理によって出力されたログであることを示します。

(d)　出力例

出力例を示します。

[ENS]<Tue Jul 24 01:23:51 2007>[EH: 150528K->149528K(162816K/1048576K), 0.1129602 secs][E/F/D: 523/0/0]¥
[DefNew::Eden: 0K->0K(243600K)][DefNew::Survivor: 0K->0K(17400K)][Tenured: 103400K->103400K(556800K)][cause:Reclaim]

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に発生したExplicitメモリブロック解放処理です。

Explicitメモリブロックの解放処理によって，Explicitヒープ利用済みサイズが150,528Kから149,528Kに減少しました。

Explicitメモリブロック解放処理後のExplicitヒープの確保済みサイズは162,816Kです。Explicitヒープの最大サイズは1,048,576Kです。

Explicitメモリブロックの解放処理には，0.1129602秒掛かりました。

Explicitメモリブロック解放処理後，サブ状態がEnableであるExplicitメモリブロックは523個あります。

Explicitメモリブロック解放処理によるJavaヒープの各領域の変化はありません。つまり，Javaヒープに移動したオブジェクトはありません。

(3)　Explicitメモリブロック解放処理時のJavaヒープあふれ

Explicitメモリブロックの解放処理時にJavaヒープへのオブジェクトの移動が発生し，Javaヒープがあふれた場合に出力されます。あふれた時点でのExplicitヒープおよびJavaヒープの利用状況が出力されます。

(a)　出力の契機

Explicitメモリブロックの解放処理時にExplicitヒープからJavaヒープへのオブジェクトの移動が発生し，Javaヒープがあふれた場合です。

(b)　出力形式

[ENS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EM_TOTAL>/<EH_MAX>), <ELAPSED> secs][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>]¥
[DefNew::Eden: <ED_USED_BF>-><ED_USED_AF>(<ED_TOTAL>)][DefNew::Survivor: <SV_USED_BF>-><SV_USED_AF>(<SV_TOTAL>)]¥
[Tenured: <TN_USED_BF>-><TN_USED_AF>(<TN_TOTAL>)][cause:<CAUSE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-35　出力項目（Explicitメモリブロック解放処理時のJavaヒープあふれ）

出力項目
出力内容
意味

<ctime>
<letters>
Explicitメモリブロック解放処理の発生日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED_BF>
<const>K
Explicitメモリブロック解放処理前のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_USED_AF>
<const>K
JavaヒープがあふれたあとのExplicitヒープの利用済みサイズが出力されます。Javaヒープがあふれた場合は，Explicitメモリブロックの解放処理が実行されないため，必ず<EH_USED_BF>と同じ値になります。単位はキロバイトです。

<EH_TOTAL>
<const>K
JavaヒープがあふれたあとのExplicitヒープの確保済みサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープ最大サイズが出力されます。単位はキロバイトです。

<ELAPSED>
<time>
Explicitメモリブロック解放処理開始から，Javaヒープがあふれるまでの時間が出力されます。単位は秒です。

<AC_NUM>
<const>
Javaヒープがあふれたあとでサブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
Javaヒープがあふれたあとでサブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<ED_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のEden領域の利用済みサイズが出力されます。単位はキロバイトです。

<ED_USED_AF>
<const>K
JavaヒープがあふれたあとのEden領域の利用済みサイズが出力されます。単位はキロバイトです。

<ED_TOTAL>
<const>K
JavaヒープがあふれたあとのEden領域の確保済みサイズが出力されます。単位はキロバイトです。

<SV_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のSurvivor領域の利用済みサイズが出力されます。単位はキロバイトです。

<SV_USED_AF>
<const>K
JavaヒープがあふれたあとのSurvivor領域の利用済みサイズが出力されます。単位はキロバイトです。

<SV_TOTAL>
<const>K
JavaヒープがあふれたあとのSurvivor領域の確保済みサイズが出力されます。単位はキロバイトです。

<TN_USED_BF>
<const>K
Explicitメモリブロック解放処理実行前のTenured領域の利用済みサイズが出力されます。単位はキロバイトです。

<TN_USED_AF>
<const>K
JavaヒープがあふれたあとのTenured領域の利用済みサイズが出力されます。単位はキロバイトです。

<TN_TOTAL>
<const>K
JavaヒープがあふれたあとのTenured領域の確保済みサイズが出力されます。単位はキロバイトです。

<CAUSE>
Reclaiming
"Reclaiming"と出力されます。Explicitメモリブロックの解放処理時のJavaヒープあふれによって出力されたログであることを示します。

(d)　出力例

出力例を示します。

[ENS]<Tue Jul 24 01:23:51 2007>[EH: 706728K->706728K(706728K/1048576K), 0.1129602 secs][E/F/D: 523/0/0]¥
[DefNew::Eden: 0K->243600K(243600K)][DefNew::Survivor: 0K->17400K(17400K)][Tenured: 278000K->556800K(556800K)][cause:Reclaiming]
[ENS]<Tue Jul 24 01:23:51 2007>[EH: 706728K->706728K(706728K/1048576K)][E/F/D: 523/0/0][cause:Full GC][CF: 0]
[ENS]<Tue Jul 24 01:23:53 2007>[EH: 706728K->148528K(148528K/1048576K), 0.0123405 secs][E/F/D: 521/0/0]¥
[DefNew::Eden: 0K->0K(243600K)][DefNew::Survivor: 0K->0K(17400K)][Tenured: 551800K->552800K(556800K)][cause:Reclaim]

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に発生したExplicitメモリブロック解放処理でのJavaヒープあふれです。

Explicitメモリブロックの解放処理開始からJavaヒープがあふれるまでに，0.1129602秒掛かりました。

Javaヒープがあふれたあとでサブ状態がEnableであるExplicitメモリブロックは523個あります。

Explicitメモリブロックの解放処理によって，5,398,00KがJavaヒープに移動したため，Javaヒープがあふれました。

また，出力例の3行目の[ENS]以降の出力内容は，Explicitメモリブロックの解放処理によって出力されたログです。Javaヒープあふれによって出力されたログのあとには，必ずExplicitメモリブロック解放処理によってログが出力されます。この例では，次の内容が出力されています。

2007年7月24日(火)1時23分53秒にExplicitメモリブロックの解放処理を再開して，このログを出力しました。

再開したExplicitメモリブロックの解放処理によって，Explicitヒープの利用済みサイズが706,728Kから148,528Kに減少しました。

再開したExplicitメモリブロックの解放処理を実行したあとでのExplicitヒープの確保済みサイズは148,528Kです。Explicitヒープの最大サイズは1,048,576Kです。

再開したExplicitメモリブロックの解放処理には0.0123405秒掛かりました。

再開したExplicitメモリブロック解放処理後，サブ状態がEnableであるExplicitメモリブロックは521個あります。

再開したExplicitメモリブロックの解放処理によって，JavaヒープのTenured領域の使用サイズが，551,800Kから552,800Kに増加しました。

(4)　Explicitメモリブロックの自動解放処理

Explicitメモリブロックの自動解放自動予約または自動解放明示予約から，Explicitメモリブロックの自動解放処理までの，ExplicitヒープおよびExplicitメモリブロックの利用状況が出力されます。

(a)　出力の契機

Explicitメモリブロックの自動解放自動予約，自動解放明示予約，およびExplicitメモリブロックの自動解放処理が起きた場合です。

(b)　出力形式

[ENS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EH_TOTAL>/<EH_MAX>), <ELAPSED> secs][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>]¥
[DefNew::Eden: <ED_USED_BF>-><ED_USED_AF>(<ED_TOTAL>)][DefNew::Survivor: <SV_USED_BF>-><SV_USED_AF>(<SV_TOTAL>)]¥
[Tenured: <TN_USED_BF>-><TN_USED_AF>(<TN_TOTAL>)][target:<EH_MIG_TRG>/<EH_MIG_DED>/<EH_MIG_LIV>][cause:<CAUSE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-36　出力項目（Explicitメモリブロックの自動解放処理）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | Explicitメモリブロックの自動解放自動予約が発生した日時を示します。拡張verboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。
<EH_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前のExplicitヒープ利用済みサイズが出力されます。単位はキロバイトです。
<EH_USED_AF> | <const>K | Explicitメモリブロックの自動解放処理後のExplicitヒープ利用済みサイズが出力されます。単位はキロバイトです。
<EH_TOTAL> | <const>K | Explicitメモリブロックの自動解放処理後の確保済みExplicitヒープサイズが出力されます。単位はキロバイトです。
<EH_MAX> | <const>K | Explicitヒープ最大サイズが出力されます。単位はキロバイトです。
<ELAPSED> | <time> | Explicitメモリブロックの自動解放自動予約の処理の開始から，自動解放処理終了までの時間が出力されます。単位は秒です。
<AC_NUM> | <const> | Explicitメモリブロックの自動解放処理後の，サブ状態がEnableである有効なExplicitメモリブロックの数が出力されます。
<FL_NUM> | <const> | 常に0が出力されます。
<DA_NUM> | <const> | Explicitメモリブロックの自動解放処理後の，サブ状態がDisableであるExplicitメモリブロックの数が出力されます。
<ED_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前の，Eden領域利用済みサイズが出力されます。単位はキロバイトです。
<ED_USED_AF> | <const>K | Explicitメモリブロックの自動解放処理後の，Eden領域利用済みサイズが出力されます。単位はキロバイトです。
<ED_TOTAL> | <const>K | Explicitメモリブロックの自動解放処理後の，Eden領域確保済みサイズが出力されます。単位はキロバイトです。
<SV_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前の，Survivor領域利用済みサイズが出力されます。単位はキロバイトです。
<SV_USED_AF> | <const>K | Explicitメモリブロックの自動解放処理後の，Survivor領域利用済みサイズが出力されます。単位はキロバイトです。
<SV_TOTAL> | <const>K | Explicitメモリブロックの自動解放処理後の，Survivor領域確保済みサイズが出力されます。単位はキロバイトです。
<TN_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前の，Tenured領域利用済みサイズが出力されます。単位はキロバイトです。
<TN_USED_AF> | <const>K | Explicitメモリブロックの自動解放処理後の，Tenured領域利用済みサイズが出力されます。単位はキロバイトです。
<TN_TOTAL> | <const>K | Explicitメモリブロックの自動解放処理後の，Tenured領域確保済みサイズが出力されます。単位はキロバイトです。
<EH_MIG_TRG> | <const>K | Explicitメモリブロックの自動解放処理をしたExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。
<EH_MIG_DED> | <const>K | Explicitメモリブロックの自動解放処理をしたことによって減少した，Explicitヒープの利用済みサイズが出力されます。単位はキロバイトです。
<EH_MIG_LIV> | <const>K | Explicitメモリブロックの自動解放処理をしても減少しなかった，Explicitヒープの利用済みサイズが出力されます。単位はキロバイトです。
<CAUSE> | Migrate | "Migrate"が出力されます。Explicitメモリブロックの自動解放処理によって出力されたログであることを示します。

(d)　出力例

出力例を示します。

[ENS]<Tue Jul 14 02:31:22 2009>[EH: 256512K->256128K(256256K/1048576K), 0.1124626 secs][E/F/D: 423/0/0]¥
[DefNew::Eden: 0K->0K(243600K)][DefNew::Survivor: 0K->0K(17400K)][Tenured: 103400K->103400K(556800K)][target:584K/384K/200K]¥
[cause:Migrate]

この出力例では次の内容が確認できます。

出力契機は2009年7月14日（火）2時31分22秒に発生したガーベージコレクションでのExplicitメモリブロックの自動解放処理です。

自動解放処理によってExplicitヒープの利用済みサイズが256,512Kから256,128Kに変化しました。

自動解放処理後のExplicitヒープの確保済みサイズは256,256K，最大サイズは1,048,576Kです。

自動解放処理に，0.1124626秒掛かりました。

自動解放処理後の，サブ状態がEnableであるExplicitメモリブロックは423個です。

自動解放処理によって，Explicitヒープの利用済みサイズのうち584Kに対して自動解放が行われました。減少したサイズは384K，減少しなかったサイズは200Kでした。

Explicitメモリブロックの自動解放処理による，Javaヒープ各領域の変化はありませんでした。

(5)　Explicitメモリブロックの自動解放処理時のJavaヒープあふれ

Explicitメモリブロックの自動解放処理時には，Javaヒープへのオブジェクトの移動が発生します。このとき，Javaヒープがあふれた場合には，その時点でのExplicitヒープおよびJavaヒープの利用状況が出力されます。

Javaヒープがあふれた場合とは，Javaヒープへのオブジェクト移動時にJavaヒープに空き領域がなかった場合を指します。詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.　明示管理ヒープ機能を使用したフルガーベージコレクションの抑止」を参照してください。

(a)　出力の契機

Explicitメモリブロックの自動解放処理中に，Explicitヒープ領域の空き領域が不足すると，Javaヒープへのオブジェクトの移動が発生します。このとき，Javaヒープがあふれた場合です。

(b)　出力形式

[ENS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EH_TOTAL>/<EH_MAX>), <ELAPSED> secs][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>]¥
[DefNew::Eden: <ED_USED_BF>-><ED_USED_AF>(<ED_TOTAL>)][DefNew::Survivor: <SV_USED_BF>-><SV_USED_AF>(<SV_TOTAL>)]¥
[Tenured: <TN_USED_BF>-><TN_USED_AF>(<TN_TOTAL>)][target:<EH_MIG_TRG>/<EH_MIG_DED>/<EH_MIG_LIV>][cause:<CAUSE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-37　出力項目（Explicitメモリブロックの自動解放処理時のJavaヒープあふれ）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | Explicitメモリブロックの自動解放処理が発生した日時を示します。拡張verboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。
<EH_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前のExplicitヒープ利用済みサイズが出力されます。単位はキロバイトです。
<EH_USED_AF> | <const>K | JavaヒープがあふれたあとのExplicitヒープ利用済みサイズが出力されます。単位はキロバイトです。
<EH_TOTAL> | <const>K | Javaヒープがあふれたあとの確保済みExplicitヒープサイズが出力されます。単位はキロバイトです。
<EH_MAX> | <const>K | Explicitヒープ最大サイズが出力されます。単位はキロバイトです。
<ELAPSED> | <time> | Explicitメモリブロックの自動解放処理開始から，Javaヒープがあふれるまでの時間が出力されます。単位は秒です。
<AC_NUM> | <const> | Explicitメモリブロックの自動解放処理後の，サブ状態がEnableであるExplicitメモリブロックの数が出力されます。
<FL_NUM> | <const> | 常に0が出力されます。
<DA_NUM> | <const> | Javaヒープがあふれたあとの，サブ状態がDisableであるExplicitメモリブロックの数が出力されます。
<ED_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前の，Eden領域利用済みサイズが出力されます。単位はキロバイトです。
<ED_USED_AF> | <const>K | JavaヒープがあふれたあとのEden領域利用済みサイズが出力されます。単位はキロバイトです。
<ED_TOTAL> | <const>K | JavaヒープがあふれたあとのEden領域確保済みサイズが出力されます。単位はキロバイトです。
<SV_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前のSurvivor領域利用済みサイズが出力されます。単位はキロバイトです。
<SV_USED_AF> | <const>K | JavaヒープがあふれたあとのSurvivor領域利用済みサイズが出力されます。単位はキロバイトです。
<SV_TOTAL> | <const>K | JavaヒープがあふれたあとのSurvivor領域確保済みサイズが出力されます。単位はキロバイトです。
<TN_USED_BF> | <const>K | Explicitメモリブロックの自動解放処理前のTenured領域利用済みサイズが出力されます。単位はキロバイトです。
<TN_USED_AF> | <const>K | JavaヒープがあふれたあとのTenured領域利用済みサイズが出力されます。単位はキロバイトです。
<TN_TOTAL> | <const>K | JavaヒープがあふれたあとのTenured領域確保済みサイズが出力されます。単位はキロバイトです。
<EH_MIG_TRG> | <const>K | Explicitメモリブロックの自動解放処理をしたExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。
<EH_MIG_DED> | <const>K | Javaヒープがあふれる前までにExplicitメモリブロックの自動解放処理によって減少した，Explicitヒープの利用済みサイズが出力されます。単位はキロバイトです。常にOKが出力されます。
<EH_MIG_LIV> | <const>K | Javaヒープがあふれる前までにExplicitメモリブロックの自動解放処理によって減少しなかった，Explicitヒープの利用済みサイズが出力されます。単位はキロバイトです。Javaヒープあふれの発生原因となったオブジェクトのサイズは含みません。
<CAUSE> | Migrating | "Migrating"が出力されます。Explicitメモリブロックの自動解放処理時のJavaヒープあふれによって出力されたログであることを示します。

(d)　出力例

出力例を示します。

[ENS]<Tue Jul 14 02:31:22 2009>[EH: 706728K->706728K(706728K/706728K), 0.1129602 secs][E/F/D: 522/0/1]¥
[DefNew::Eden: 0K->243600K(243600K)][DefNew::Survivor: 0K->17400K(17400K)][Tenured: 278000K->556800K(556800K)]¥
[target:372000K/0K/339800K][cause:Migrating]

この出力例では次の内容が確認できます。

出力契機は2009年7月14日(火)2時31分22秒に発生したガーベージコレクションでのExplicitメモリブロックの自動解放処理時のJavaヒープあふれです。

自動解放処理によってExplicitヒープの利用済みサイズが706,728Kから変化ありません。

自動解放処理後のExplicitヒープの確保済みサイズは706,728K，最大サイズは706,728Kです。

自動解放処理に，0.1129602秒掛かりました。

自動解放処理後の，サブ状態がEnableであるExplicitメモリブロックは522個です。サブ状態がDisableであるExplicitメモリブロックは1個です。

自動解放処理によって，Explicitヒープの利用済みサイズのうち372,000Kに対して自動解放が実行されました。Javaヒープあふれの時点までに339,800Kが減少しませんでした。

自動解放処理時のJavaヒープあふれによって，Javaヒープの利用済みサイズが各領域の上限に到達しました。

(6)　明示管理ヒープ自動配置設定ファイルオープンエラー

明示管理ヒープ自動配置設定ファイルのオープンや読み込みに失敗した場合，エラーメッセージが出力されます。

(a)　出力の契機

明示管理ヒープ自動配置設定ファイルのオープンや読み込みに失敗した場合です。例えば，ファイルが存在しない場合，ファイルの読み込み権限がない場合，ファイル読み込み中に予期しないIOエラーが発生した場合があります。

(b)　出力形式

[ENA]<ctime> failed to open file. [file=<FILENAME>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-38　出力項目（明示管理ヒープ自動配置設定ファイルオープンエラー）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | 明示管理ヒープ自動配置設定ファイルのオープンに失敗した日時を示します。拡張VerboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力します。
<FILENAME> | <letters> | ファイルのオープンに失敗した自動配置設定ファイルの名前が出力されます（ディレクトリ名を含みません）。

(d)　出力例

出力例を示します。

[ENA]<Tue Jul 24 01:23:51 2007> failed to open file. [file=usrexmem.cfg]

この出力例では次の内容が確認できます。

2007年7月24日(火)1時23分51秒に，明示管理ヒープ自動配置設定ファイルのオープンに失敗しました。

(7)　明示管理ヒープ自動配置設定ファイルパースエラー

明示管理ヒープ自動配置設定ファイルのパースに失敗した行がある場合，エラーメッセージが出力されます。

(a)　出力の契機

明示管理ヒープ自動配置設定ファイルのパースに失敗した行がある場合です。ファイルの複数行で記述フォーマットエラーがある場合，複数回ログ出力されます。

(b)　出力形式

[ENA]<ctime> parsed error line. [file=<FILENAME> line=<LINENO>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-39　出力項目（明示管理ヒープ自動配置設定ファイルパースエラー）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | 明示管理ヒープ機能自動配置設定ファイルのパースに失敗した日時を示します。拡張verboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。
<FILENAME> | <letters> | ファイルのパースに失敗した自動配置設定ファイルの名前が出力されます（ディレクトリ名を含みません）。
<LINENO> | <const> | パースに失敗した行数が出力されます。

(d)　出力例

出力例を示します。

[ENA]<Tue Jul 24 01:23:51 2007> parsed error line. [file=usrexmem.cfg line=25]

この出力例では次の内容が確認できます。

2007年7月24日(火)1時23分51秒に，明示管理ヒープ機能自動配置設定ファイルのパースに25行目で失敗しました。

(8)　明示管理ヒープ自動配置エラー

明示管理ヒープ機能によって指定したクラスが，明示管理ヒープへの自動配置に失敗した場合，エラーメッセージが出力されます。

(a)　出力の契機

明示管理ヒープ機能によって指定したクラスが，明示管理ヒープへの自動配置に失敗した場合です。

(b)　出力形式

[ENA]<ctime> creation <CLASS_LIST> class's object in explicit memory is failed. [target=<CLASS_METHOD> ¥
detail=<MESSAGE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-40　出力項目（明示管理ヒープ自動配置エラー）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | 明示管理ヒープ上への自動配置に失敗した日時を示します。拡張VerboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。
<CLASS_LIST> | <letters> | 明示管理ヒープ上への自動配置しようとしたオブジェクトの完全限定クラス名のリストが出力されます。リストが空の場合があります。
<CLASS_METHOD> | <letters> | 明示管理ヒープ上への自動配置に失敗したクラスの完全限定名が出力されます。より詳細な失敗個所を示すメソッド名も出力されることがあります。
<MESSAGE> | <letters> | 明示管理ヒープ上への自動配置に失敗した原因を示す詳細メッセージが出力されます。

(d)　出力例

出力例を示します。

[ENA]<Tue Jul 24 01:23:51 2007> creation java.util.HashMap, java.util.LinkedList ¥
class's object in explicit memory is failed. [target=com.sample.MainClass.main ¥
detail=Invalid class file format. (max_stack = 65536, max = 65535, min = 0)]

この出力例では次の内容が確認できます。

2007年7月24日(火)1時23分51秒に，明示管理ヒープ機能がクラスjp.co.sample.Mainの明示管理ヒープ上への自動配置に失敗しました。

5.11.4　出力レベルがverboseの場合に出力される内容

ここでは，ログ出力レベルにverboseを指定した場合に出力される内容をイベントごとに説明します。verboseは，障害解析などに必要な詳細情報を出力するためのログ出力レベルです。

補足

verboseでは，normalで出力する内容に加えて，normalでは出力しない詳細なログを出力します。ログ出力のオーバーヘッドが掛かるため，通常運用時に指定するとスループットが低下するおそれがあります。

＜この項の構成＞

(1)　Explicitメモリブロックの初期化

(2)　Explicitメモリブロックの初期化失敗

(3)　Explicitメモリブロックのサブ状態のDisable化

(4)　Explicitメモリブロックへのオブジェクト生成

(5)　Explicitメモリブロックへの移動（詳細情報出力）

(6)　Explicitメモリブロック解放処理（詳細情報出力）

(7)　ファイナライザによるExplicitメモリブロックの解放予約

(8)　明示管理ヒープへの自動配置

(1)　Explicitメモリブロックの初期化

新たにExplicitメモリブロックを初期化した場合に，初期化したExplicitメモリブロックの名称，ID，およびExplicitメモリブロックの種類を出力します。

(a)　出力の契機

Explicitメモリブロックの初期化です。

(b)　出力形式

[EVO]<ctime>[Created]["<EM_NAME>" eid=<EID>(<EM_PTR>)/<EM_TYPE>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-41　出力項目（Explicitメモリブロックの初期化）

出力項目
出力内容
意味

<ctime>
<letters>
Explicitメモリブロックを初期化した日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EM_NAME>
<letters>
初期化したExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
初期化したExplicitメモリブロックのIDが出力されます。

<EM_PTR>
<ptr>
Explicitメモリブロックの内部状態を示す値が出力されます。

<EM_TYPE>
R|B
初期化したExplicitメモリブロックの種類が出力されます。
Rは，アプリケーションサーバの内部で利用されているExplicitメモリブロックを示します。Bは，ExplicitメモリブロックのJavaVM内部での種別を示します。

(d)　出力例

出力例を示します。

[EVO]<Tue Jul 24 01:23:51 2007>[Created]["BasicExplicitMemory-2" eid=2(0x1234568)/B]

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に実行されたExplicitメモリブロックの初期化です。

初期化されたExplicitメモリブロックの名称は「BasicExplicitMemory-2」です。

(2)　Explicitメモリブロックの初期化失敗

Explicitメモリブロックの初期化時に，Explicitメモリブロックの初期化が失敗した場合に出力されます。失敗の原因はExplicitメモリブロックの最大数に達したことです。その時点のExplicitメモリブロックの数と，初期化に失敗したJavaプログラム上のスタックトレースが出力されます。

なお，このログは複数行にわたって出力されます。また，Javaプログラムの実行とは非同期に出力されます。このため，各行の間に別のログが出力されることがあります。ただし，1行の中にほかのログが出力されることはありません。

(a)　出力の契機

Explicitメモリブロックの上限に達して，Explicitメモリブロックの初期化に失敗した場合です。

(b)　出力形式

[EVO]<ctime>[Creation failed][EH: <EH_USED>(<EH_GARB>)/<EH_TOTAL>/<EH_MAX>][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>][Thread: <TH_PTR>]
[EVO][Thread: <TH_PTR>] at <FRAME><SOURCE>
…

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-42　出力項目（Explicitメモリブロックの初期化失敗）

出力項目
出力内容
意味

<ctime>
<letters>
Explicitメモリブロックを初期化が失敗した日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED>
<const>K
Explicitメモリブロック初期化失敗時のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_GARB>
<const>K
Explicitヒープの内部状態が出力されます。

<EH_TOTAL>
<const>K
Explicitメモリブロック初期化失敗時のExplicitヒープの確保済みサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープ最大サイズが出力されます。単位はキロバイトです。

<AC_NUM>
<const>
Explicitメモリブロック初期化失敗時にサブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
Explicitメモリブロック初期化失敗時にサブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<TH_PTR>
<ptr>
Explicitメモリブロックの初期化に失敗したスレッドのスレッドIDが出力されます。スレッドダンプに出力されるtidと同一です。

<FRAME>
<letters>.<letters>
Explicitメモリブロック初期化失敗時のスタックトレース中の1フレームが出力されます。完全クラス名とメソッド名が"."で区切られて出力されます。

<SOURCE>
(<letters>:<const>)|(Native Method)|(Unknown Source)
<FRAME>で出力されたメソッドが記述されているソースファイル名と，スタックトレースと一致する行番号が出力されます。ファイル名と行番号は":"で区切られて出力されます。
ネイティブメソッドの場合は，"(Native Method)"と出力されます。ソースファイル名が取得できない場合は，"(Unknown Source)"と出力されます。

(d)　出力例

出力例を示します。

[EVO]<Tue Jul 24 01:23:51 2007>[Creation failed][EH: 12000K(0K)/15000K/30000K][E/F/D: 65535/0/0][Thread: 0x00035a60]
[EVO][Thread: 0x00035a60] at ExplicitMemory.registerExplicitMemory(Native Method)
[EVO][Thread: 0x00035a60] at BasicExplicitMemory.<init>(Unknown Source)
[EVO][Thread: 0x00035a60] at AllocTest.test(AllocTest.java:64)
[EVO][Thread: 0x00035a60] at java.lang.Thread.run(Thread.java:2312)

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に発生したExplicitメモリブロックの初期化失敗です。最大数である65535個のExplicitメモリブロックがすでに存在しているため，新たなExplicitメモリブロックの初期化に失敗しました。

AllocTest.javaの64行目で，BasicExplicitMemoryクラスのコンストラクタを実行して，Explicitメモリブロックの初期化を試みています。

(3)　Explicitメモリブロックのサブ状態のDisable化

Explicitメモリブロックのサブ状態がDisableに変更になった場合に，その時点でのExplicitヒープの利用状況と，サブ状態がDisableに変更されたExplicitメモリブロックの情報が出力されます。このログは，複数行にわたって，Javaプログラムの実行と非同期に出力されます。このため，各行の間に別なログが出力されることがあります。ただし，1行中にほかのログが出力されることはありません。

(a)　出力の契機

Explicitメモリブロックのサブ状態がDisableになり，そのExplicitメモリブロックにオブジェクトを配置できなくなった場合です。

(b)　出力形式

[EVO]<ctime>[Alloc failed(Disable)][EH: <EH_USED>(<EH_GARB>)/<EH_TOTAL>/<EH_MAX>][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>][cause:<CAUSE>]¥
["<EM_NAME>" eid=<EID>/<EM_TYPE>: <EM_USED>(<EM_GARB>)/<EM_TOTAL>][Thread: <TH_PTR>]
[EVO][Thread: <TH_PTR>] at <FRAME><SOURCE>
…

注　下線部分はNewの場合にだけ出力されます。

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-43　出力項目（Explicitメモリブロックのサブ状態のDisable化）

出力項目
出力内容
意味

<ctime>
<letters>
<EID>が示すExplicitメモリブロックのサブ状態がDisableになった日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED>
<const>K
<EID>が示すExplicitメモリブロックのサブ状態がDisableになったときのExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_GARB>
<const>K
Explicitヒープの内部状態を示す値が出力されます。

<EH_TOTAL>
<const>K
<EID>が示すExplicitメモリブロックのサブ状態がDisableになったときのExplicitヒープの確保済みサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープ最大サイズが出力されます。単位はキロバイトです。

<AC_NUM>
<const>
<EID>が示すExplicitメモリブロックのサブ状態がDisableになったあとで，サブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
<EID>が示すExplicitメモリブロックのサブ状態がDisableになったあとで，サブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<CAUSE>
New|GC|Full GC
サブ状態がDisableになった原因の処理が出力されます。
出力内容と原因の対応は次のとおりです。

"New"
newInstance()などによるExplicitヒープへのオブジェクト直接生成が原因です。

"GC"
コピーガーベージコレクションによるExplicitヒープへのオブジェクト移動が原因です。

"Full GC"
フルガーベージコレクションによるExplicitヒープへのオブジェクト移動が原因です。

<EM_NAME>
<letters>
サブ状態がDisableになったExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
サブ状態がDisableになったExplicitメモリブロックのIDが出力されます。

<EM_TYPE>
R|B|A
サブ状態がDisableになったExplicitメモリブロックの種類が出力されます。
Rは，アプリケーションサーバの内部で利用されているExplicitメモリブロックを示します。Bは，ExplicitメモリブロックのJavaVM内部での種別を示します。Aは，自動配置設定ファイルを使って指定したExplicitメモリブロックを示します。

<EM_USED>
<const>K
サブ状態がDisableになったExplicitメモリブロックの利用済みサイズが出力されます。単位はキロバイトです。

<EM_GARB>
<const>K
Explicitメモリブロックの内部状態を示す値が出力されます。

<EM_TOTAL>
<const>K
サブ状態がDisableになったExplicitメモリブロックの確保済みサイズが出力されます。単位はキロバイトです。

<TH_PTR>
<ptr>
サブ状態がDisableになった原因である，Explicitヒープへのオブジェクト生成を実行したスレッドのスレッドIDが出力されます。スレッドダンプに出力されるtidと同一です。
この項目は，<CAUSE>が"New"の場合だけに出力されます。

<FRAME>
<letters>.<letters>
Explicitヒープへのオブジェクト直接生成によってサブ状態がDisableになった場合に，オブジェクト直接生成で出力されたスタックトレース中の1フレームが出力されます。
完全クラス名とメソッド名が"."で区切られて出力されます。
この項目は，<CAUSE>が"New"の場合だけに出力されます。

<SOURCE>
(<letters>:<const>)|(Native Method)|(Unknown Source)
<FRAME>で出力されたメソッドが記述されているソースファイル名と，スタックトレースと一致する行番号が出力されます。ファイル名と行番号は":"で区切られて出力されます。
ネイティブメソッドの場合は，"(Native Method)"と出力されます。
ソースファイル名が取得できない場合は，"(Unknown Source)"と出力されます。
この項目は，<CAUSE>が"New"の場合だけに出力されます。

(d)　出力例

出力例を示します。

[EVO]<Tue Jul 24 01:23:51 2007>[Alloc failed(Disable)][EH: 12000K(1258K)/15000K/30000K][E/F/D: 321/0/1][cause:GC]¥
["ReferenceExplicitMemory-3" eid=3/R: 108K(20K)/108K]

この出力例では次の内容が確認できます。

出力契機は，2007年7月24日(火)1時23分51秒にExplicitメモリブロックのサブ状態がDisableになったことです。

Explicitヒープは，12000Kが利用済み，15000Kが確保済みです。

Explicitヒープの最大サイズは30000Kです。

Explicitヒープ全体で有効なExplicitメモリブロックは322個です。このうち，サブ状態がEnableのものは321個，Disableのものは1個あります。

サブ状態がDisableになった原因の処理は，ガーベージコレクション発生時のExplicitメモリブロックへのオブジェクトの移動です。

サブ状態がDisableになったのは，IDが"3"，名称が"ReferenceExplicitMemory-3"のExplicitメモリブロックです。

"ReferenceExplicitMemory-3"では，108kのメモリを利用済みです。

(4)　Explicitメモリブロックへのオブジェクト生成

ExplicitMemory.newInstance()などを使用してExplicitメモリブロックに直接オブジェクトを生成した場合に出力されます。

(a)　出力の契機

Explicitメモリブロックにオブジェクトが生成された時です。

(b)　出力形式

[EVS]<ctime>[EH: <EH_USED_BF>-><EH_USED_AF>(<EH_TOTAL>/<EH_MAX>)][E/F/D: <AC_NUM>/<FL_NUM>/<DA_NUM>][cause:<CAUSE>]¥
["<EM_NAME>" eid=<EID>/<EM_TYPE>: <EM_USED_BF>-><EM_USED_AF>(<EM_TOTAL>)]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-44　出力項目（Explicitメモリブロックへのオブジェクト生成）

出力項目
出力内容
意味

<ctime>
<letters>
Explicitメモリブロックにオブジェクトが生成された日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EH_USED_BF>
<const>K
オブジェクト生成前のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_USED_AF>
<const>K
オブジェクト生成後のExplicitヒープの利用済みサイズが出力されます。単位はキロバイトです。

<EH_TOTAL>
<const>K
オブジェクト生成後のExplicitヒープの確保済みサイズが出力されます。単位はキロバイトです。

<EH_MAX>
<const>K
Explicitヒープの最大サイズが出力されます。単位はキロバイトです。

<AC_NUM>
<const>
オブジェクト生成後にサブ状態がEnableであるExplicitメモリブロックの数が出力されます。

<FL_NUM>
<const>
常に0が出力されます。

<DA_NUM>
<const>
オブジェクト生成後にサブ状態がDisableであるExplicitメモリブロックの数が出力されます。

<CAUSE>
New
必ず"New"と出力されます。
Explicitメモリブロックへのオブジェクトへの移動がJavaプログラムから実行されたことを示します。

<EM_NAME>
<letters>
オブジェクトを生成したExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
オブジェクトを生成したExplicitメモリブロックのIDが出力されます。

<EM_TYPE>
R|B|A
オブジェクトを生成したExplicitメモリブロックの種類が出力されます。
Rは，アプリケーションサーバの内部で利用されているExplicitメモリブロックを示します。Bは，ExplicitメモリブロックのJavaVM内部での種別を示します。Aは，自動配置設定ファイルを使って指定したExplicitメモリブロックを示します。

<EM_USED_BF>
<const>K
オブジェクト生成前の生成先Explicitメモリブロックの利用済みサイズが出力されます。単位はキロバイトです。

<EM_USED_AF>
<const>K
オブジェクト生成後の生成先Explicitメモリブロックの利用済みサイズが出力されます。単位はキロバイトです。

<EM_TOTAL>
<const>K
オブジェクト生成後の生成先Explicitメモリブロックの確保済みサイズが出力されます。単位はキロバイトです。

(d)　出力例

出力例を示します。

[EVS]<Thu Oct 21 14:55:50 2007>[EH: 150528K->150529K(150532K/1048576K)][E/F/D: 200/0/0][cause:New]["BEM" eid=2/B: 30K->31K(32K)]

この出力例では次の内容が確認できます。

出力契機は，2007年10月21日(木)14時55分50秒に実行された，Explicitメモリブロックへのオブジェクトの生成です。

Explicitヒープにオブジェクトが生成されたため，Explicitヒープの利用済みサイズが150528Kから150529Kに変化しました。

Explicitヒープへのオブジェクト生成後のExplicitヒープの確保済みサイズは150532Kです。最大サイズは1048576Kです。

Explicitヒープへのオブジェクト生成後に，サブ状態がEnableであるExplicitメモリブロックの数は200個です。

"BEM"という名称のメモリブロックの利用済みサイズが，30Kから31Kに変化しました。オブジェクト生成後のBEMの確保済みサイズは32Kです。

(5)　Explicitメモリブロックへの移動（詳細情報出力）

Explicitメモリブロックにオブジェクトが移動する場合の詳細な情報が出力されます。「5.11.3(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）」で示した出力内容に加えて，移動先になったExplicitメモリブロックすべての利用状況が出力されます。

(a)　出力の契機

ガーベージコレクション発生による，Explicitメモリブロックへのオブジェクトの移動です。

(b)　出力形式

<ガーベージコレクション発生時のExplicitヒープ利用状況>※
[EVS]{["<EM_NAME>" eid=<EID>/<EM_TYPE>: <EM_USED_BF>-><EM_USED_AF>(<EM_TOTAL>)]}{1,5}
...

注　Explicitメモリブロックの情報が5個出力されるごとに改行されます。

注※　出力項目については，「5.11.3(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）」を参照してください。

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-45　出力項目（Explicitメモリブロックへの移動（詳細情報出力））

出力項目
出力内容
意味

ガーベージコレクション発生時のExplicitヒープ利用状況
「5.11.3(1)　ガーベージコレクション発生（Explicitヒープ利用状況出力）」を参照してください。

<EM_NAME>
<letters>
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックのIDが出力されます。

<EM_TYPE>
R|A
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックの種別が出力されます。
RまたはAが出力されます。Rは，ExplicitメモリブロックのJavaVM内部での種別を示します。Aは，自動配置設定ファイルを使って指定したExplicitメモリブロックを示します。

<EM_USED_BF>
<const>K
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックの，ガーベージコレクション発生前の利用済みサイズが出力されます。単位はキロバイトです。

<EM_USED_AF>
<const>K
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックの，ガーベージコレクション発生後の利用済みサイズが出力されます。単位はキロバイトです。

<EM_TOTAL>
<const>K
ガーベージコレクション発生時にオブジェクト移動先となったExplicitメモリブロックの，ガーベージコレクション発生後の確保済みサイズが出力されます。単位はキロバイトです。

(d)　出力例

出力例を示します。

[ENS]<Thu Oct 21 14:55:50 2007>[EH: 150528K->162816K(162816K/1048576K)][E/F/D: 200/0/0][cause:GC][CF: 0]
[EVS]["REM2" eid=2/R: 0K->88K(128K)]["REM3" eid=3/R: 30K->230K(256K)]["REM6" eid=6/R: 30K->2030K(2048K)]¥
["Session1" eid=8/R: 30K->2530K(2548K)]["Session2" eid=10/R: 30K->2530K(2548K)]
[EVS]["Session3" eid=12/R: 30K->5030K(5048K)]

この出力例では次の内容が確認できます。

出力契機は2007年10月21日(木)14時55分50秒に発生したガーベージコレクションでの，Explicitヒープへのオブジェクトの移動です。

Explicitヒープの利用済みサイズが，150528Kから162816Kに変化しました。

ガーベージコレクション実行後のExplicitヒープの確保済みサイズは162816Kです。最大サイズは1048576Kです。

ガーベージコレクション実行後に，サブ状態がEnableであるExplicitメモリブロックは200個あります。

ガーベージコレクションの種類はコピーガーベージコレクションです。

移動先になったExplicitメモリブロックは5個以上あります。このため，5個分出力されたところで1回改行されています。

Explicitヒープへの2288K(162816K-150528K)移動の内訳は次のとおりです。

Explicitメモリブロック"REM2"(eid=2)に88K移動。

Explicitメモリブロック"REM3"(eid=3)に200K移動。

Explicitメモリブロック"REM6"(eid=6)に2000K移動。

Explicitメモリブロック"Session1"(eid=8)に2500K移動。

Explicitメモリブロック"Session2"(eid=10)に2500K移動。

Explicitメモリブロック"Session3"(eid=12)に5000K移動。

なお，移動先は，すべてアプリケーションサーバの内部で利用されているExplicitメモリブロックです。

(6)　Explicitメモリブロック解放処理（詳細情報出力）

Explicitメモリブロックの解放処理が起こった場合の詳細な情報が出力されます。「5.11.3(2) Explicitメモリブロック解放処理」で示した出力内容に加えて，解放したすべてのExplicitメモリブロックの情報が出力されます。

Explicitメモリブロックの解放時にJavaヒープがあふれた場合は，あふれる前に解放したExplicitメモリブロックの情報が追加されて出力されます。ただし，「5.11.3(3) Explicitメモリブロック解放処理時のJavaヒープあふれ」で示した出力内容には，ここで説明する情報は追加出力されません。

(a)　出力の契機

Explicitメモリブロックの解放処理です。

(b)　出力形式

<Explicitメモリブロック解放処理>※
[EVS]{["<EM_NAME>" eid=<EID>/<EM_TYPE>: <EM_TOTAL>]}{1,5}
...

注　Explicitメモリブロックの情報が5個出力されるごとに改行されます。

注※　出力項目については，「5.11.3(2) Explicitメモリブロック解放処理」を参照してください。

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-46　出力項目（Explicitメモリブロック解放処理（詳細情報出力））

出力項目
出力内容
意味

Explicitメモリブロックの解放処理で出力される情報
「5.11.3(2) Explicitメモリブロック解放処理」を参照してください。

<EM_NAME>
<letters>
解放したExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
解放したExplicitメモリブロックのIDが出力されます。

<EM_TYPE>
R|B|A
解放したExplicitメモリブロックの種別が出力されます。
Rは，アプリケーションサーバの内部で利用されているExplicitメモリブロックを示します。Bは，ExplicitメモリブロックのJavaVM内部での種別を示します。Aは，自動配置設定ファイルを使って指定したExplicitメモリブロックを示します。

<EM_TOTAL>
<const>K
解放したExplicitメモリブロックによって確保済みだったメモリサイズ（解放処理によって解放されたメモリサイズ）が出力されます。単位はキロバイトです。

(d)　出力例

出力例を示します。

[ENS]<Tue Jul 24 01:23:51 2007>[EH: 150528K->149528K(162816K/1048576K), 0.1129602 secs][E/F/D: 523/0/0]¥
[DefNew::Eden: 0K->0K(243600K)][DefNew::Survivor: 0K->0K(17400K)][Tenured: 103400K->103400K(556800K)][cause:Reclaim]
[EVS]["REM2" eid=3/R: 300K]["BEM3" eid=5/B: 300K]["BEM1" eid=7/B: 400K]

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に発生したExplicitメモリブロックの解放処理です。

Explicitメモリブロックの解放処理によって，Explicitヒープの利用済みサイズが150528Kから149528Kに減少しました。

Explicitメモリブロック解放処理後のExplicitヒープの確保済みサイズは162816Kです。最大サイズは1048576Kです。

Explicitメモリブロックの解放処理には，0.1129602秒掛かりました。

Explicitメモリブロック解放処理後，サブ状態がEnableであるExplicitメモリブロックは523個あります。

Explicitメモリブロックの解放処理によって，Javaヒープの各領域のメモリサイズは変化していません。つまり，Javaヒープへのオブジェクトの移動はありませんでした。

解放処理の対象になったのは，次のExplicitメモリブロックです。

確保済みのメモリサイズが300KだったExplicitメモリブロック"REM2"(eid=3)

確保済みのメモリサイズが300KだったExplicitメモリブロック"BEM3"(eid=5)

確保済みのメモリサイズが400KだったExplicitメモリブロック"BEM1"(eid=7)

なお，REM2は，アプリケーションサーバの内部で利用されていたExplicitメモリブロックです。BEM3とBEM1は，アプリケーションが利用していたExplicitメモリブロックです。

(7)　ファイナライザによるExplicitメモリブロックの解放予約

ExplicitMemoryインスタンスへの参照切れによって，ExplicitMemoryクラスのfinalizeメソッドで対応するExplicitメモリブロックが解放予約された場合に出力されます。

(a)　出力の契機

ExplicitMemory.finalize()メソッドによってExplicitメモリブロックの解放が予約された場合です。

(b)　出力形式

[EVO]<ctime>[Finalized]["<EM_NAME>" eid=<EID>/<EM_TYPE>: <EM_TOTAL>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-47　出力項目（ファイナライザによるExplicitメモリブロックの解放予約）

出力項目
出力内容
意味

<ctime>
<letters>
解放が予約された日時を示します。拡張verbosegc情報と同じ形式で出力されます。
-XX:+HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。

<EM_NAME>
<letters>
解放予約したExplicitメモリブロックの名称が出力されます。
Explicitメモリブロックの名称に多バイト文字が含まれている場合，出力内容は不定です（通常は文字化けして出力されます）。

<EID>
<const>
解放予約したExplicitメモリブロックのIDが出力されます。

<EM_TYPE>
B
解放予約したExplicitメモリブロックの種別が出力されます。
Bは，ExplicitメモリブロックのJavaVM内部での種別を示します。アプリケーションサーバのバージョンが08-50より前の場合は，アプリケーションが利用しているExplicitメモリブロックを示します。

<EM_TOTAL>
<const>K
解放を予約したExplicitメモリブロックによって確保済みサイズ（解放処理によって解放されるメモリサイズ）が出力されます。単位はキロバイトです。

(d)　出力例

出力例を示します。

[EVO]<Tue Jul 24 01:23:51 2007>[Finalized]["REM1" eid=3/R: 512K]

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒にExplicitメモリブロック"REM1"(eid=3)が解放予約されたことです。解放予約は，finalize()によって実行されました。

(8)　明示管理ヒープへの自動配置

指定したクラスが明示管理ヒープ上への自動配置に成功した場合，ログメッセージが出力されます。

(a)　出力の契機

指定したクラスが明示管理ヒープ上への自動配置に成功した場合です。

(b)　出力形式

[EVA]<ctime> creation in explicit memory is succeeded. [class=<CLASSNAME>]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-48　出力項目（明示管理ヒープへの自動配置）

出力項目 | 出力内容 | 意味
<ctime> | <letters> | 指定したクラスが明示管理ヒープ上への自動配置に成功した日時を示します。拡張VerboseGC機能で出力しているものと同一の時刻形式で出力されます。HitachiOutputMilliTimeオプションが設定されている場合は，ミリ秒単位まで出力されます。
<CLASSNAME> | <letters> | 明示管理ヒープへの自動配置に成功したクラスの完全修飾クラス名が出力されます。

(d)　出力例

出力例を示します。

[EVA]<Tue Jul 24 01:23:51 2007> creation in explicit memory is succeeded. [class=jp.co.sample.Main]

この出力例では次の内容が確認できます。

2007年7月24日(火)1時23分51秒に，明示管理ヒープ機能がクラスjp.co.sample.Mainを明示管理ヒープ上への自動配置に成功した場合です。

5.11.5　出力レベルがdebugの場合に出力される内容

ここでは，ログ出力レベルにdebugを指定した場合に出力される内容をイベントごとに説明します。

補足

debugは，デバッグなどを実施する場合に，verboseで出力する内容よりもさらに詳細な情報が必要なときに使用します。debugで出力するログには，出力するためにフルガーベージコレクション実行時以上のオーバーヘッドが必要なログもあります。

＜この項の構成＞

(1)　Explicitメモリブロック解放によるJavaヒープへのオブジェクトの移動

(2)　Explicitメモリブロックの初期化（詳細情報出力）

(3)　Explicitメモリブロックの自動解放処理の詳細（詳細情報出力）

(1)　Explicitメモリブロック解放によるJavaヒープへのオブジェクトの移動

Explicitメモリブロックを解放する場合に，Explicitメモリブロック内のオブジェクトが解放対象のExplicitメモリブロック以外から参照されているとき，そのオブジェクトはJavaヒープに移動します。このログでは，Javaヒープに移動したオブジェクトとその参照元のオブジェクトの情報が出力されます。

(a)　出力の契機

Explicitメモリブロックの解放処理で，Javaヒープへのオブジェクトの移動が発生した場合です。

(b)　出力形式

[EDO][eid=<EID>: Reference to <REFED_NAME>(<REFED_PTR>), total <R_SIZE>]
[EDO]   <REF_NAME>(<REF_PTR>)<REF_GEN>

注　解放対象のExplicitメモリブロック以外から参照されているオブジェクトごとに出力されます。

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-49　出力項目（Explicitメモリブロック解放によるJavaヒープへのオブジェクト移動）

出力項目 | 出力内容 | 意味
<EID> | <const> | Explicitメモリブロック解放処理時に，解放対象のExplicitヒープ以外から参照されているオブジェクトを含むExplicitメモリブロックのIDが出力されます。
<REFED_NAME> | <letters> | Explicitメモリブロック解放処理時に，解放対象のExplicitヒープ以外のオブジェクト(<REF_NAME>(<REF_PTR>)で示すオブジェクト)から参照されているオブジェクトの完全クラス名が出力されます。
<REFED_PTR> | <ptr> | <REFED_NAME>が示すオブジェクトのJavaヒープへの移動前のメモリアドレスが出力されます。
<R_SIZE> | <const>K | <REF_NAME>(<REF_PTR>)から参照されていることによって，Javaヒープに移動することになるオブジェクトの総サイズが出力されます。<REF_NAME>(<REF_PTR>)から間接参照している，解放対象Explicitメモリブロック内のオブジェクトも含めた値になります※。単位はキロバイトです。
<REF_NAME> | <letters>|JVM | <REFED_NAME>(<REFED_PTR>)を参照しているオブジェクトの完全クラス名が出力されます。ただし，参照元がスタックやJavaVM内部の場合は，"JVM"と出力されます。
<REF_PTR> | <ptr> | <REF_NAME>が示すオブジェクト，スタックまたはJavaVM内部のメモリアドレスが出力されます。
<REF_GEN> | (eid=<EID>)|(DefNew)|(Tenured)|(Perm)|(JVM) | <REF_NAME>(<REF_PTR>)の属する領域または世代の名称が出力されます。Explicitメモリブロックの場合はExplicitメモリブロックのIDが出力されます。スタックやJavaVM内部から参照されている場合は"JVM"と出力されます。

注※　次に示す「補足」も参照してください。

補足

Javaヒープに移動するオブジェクトへの参照経路が複数ある場合について説明します。

ここでは，次の図を例にして説明します。

図5-9　Javaヒープに移動するオブジェクトへの参照経路が複数ある例

Javaヒープに移動するオブジェクトが複数のオブジェクトから参照されている場合の出力

Javaヒープに移動するオブジェクトは，複数のオブジェクトから参照されていることがあります。図の場合，オブジェクトBに対して，A→B，E→Bの2種類の参照経路があります。

この場合，ログには，A→B，E→Bの参照についての情報が別々に出力されます。

複数のオブジェクトから間接参照されている場合の<R_SIZE>の算出

<R_SIZE>には，<REF_NAME>(<REF_PTR>)から間接参照している，解放対象Explicitメモリブロック内のオブジェクトも含めた値が出力されます。ただし，Javaヒープに移動するオブジェクトが複数のオブジェクトから間接参照されている場合は，算出方法が異なります。

図の場合，オブジェクトDは，次の3種類の経路で間接参照されています。

A→B→D

E→B→D

E→F→D

複数の経路で参照される場合，最初に算出される参照関係の<R_SIZE>にオブジェクトのサイズが計上されます。例えば，A→B，E→B，E→Fの順で参照関係が出力される場合，オブジェクトDのサイズは，A→Bの<R_SIZE>に計上されます。この場合の各参照関係の<R_SIZE>の出力は次のようになります。

A→B
オブジェクトBとオブジェクトDのサイズの合計で4Kになります。

E→B
オブジェクトBのサイズである2Kになります。

E→F
オブジェクトFのサイズである1Kになります。

(d)　出力例

出力例を示します。

[EDO][eid=5: Reference to java.lang.HashMap$Entry(0x1234568), total 125K]
[EDO]   java.util.HashMap$KeyIterator(0x1134428)(eid=1)
[EDO][eid=5: Reference to ClassA(0x1234580), total 19250K]
[EDO]   ClassV(0x1234468)(Tenured)
[EDO][eid=5: Reference to ClassZ(0x1234680), total 12K]
[EDO]   ClassU(0x1233468)(DefNew)
[EDO][eid=9: Reference to JP.co.Hitachi.soft.jvm.BBB(0x1034428), total 1250K]
[EDO]   JVM(0x23456780)(JVM)

この出力例では次の内容が確認できます。

eid=5のExplicitメモリブロック内にあるjava.lang.HashMap$Entryのオブジェクトは，解放対象ではないeid=1のExplicitメモリブロック内のjava.util.HashMap$KeyIteratorのオブジェクトから参照されています。このため，125キロバイトのオブジェクトがJavaヒープに移動しました。

eid=5のExplicitメモリブロック内にあるClassAのオブジェクトは，Tenured領域内のClassVのオブジェクトから参照されています。このため，19250キロバイトのオブジェクトがJavaヒープに移動しました。

eid=5のExplicitメモリブロック内にあるClassZのオブジェクトは，New領域内のClassUのオブジェクトから参照されています。このため，12キロバイトのオブジェクトがJavaヒープに移動しました。

eid=9のExplicitメモリブロック内にあるJP.co.Hitachi.soft.jvm.BBBのオブジェクトは，スタックまたはJavaVM内部から参照されています。このため，1250KbyteのオブジェクトがJavaヒープに移動しました。

(2)　Explicitメモリブロックの初期化（詳細情報出力）

新たにExplicitメモリブロックを初期化した場合の詳細な情報が出力されます。「5.11.4(1)　Explicitメモリブロックの初期化」で示した出力内容に加えて，初期化処理を実行したJavaプログラムのスタックトレースが出力されます。このログは，複数行にわたって，Javaプログラムの実行と非同期に出力されます。このため，各行の間に別なログが出力されることがあります。ただし，1行中にほかのログが出力されることはありません。

(a)　出力の契機

Explicitメモリブロックの初期化です。

(b)　出力形式

<Explicitメモリブロックの初期化の情報（verbose）>※[Thread: <TH_PTR>]
[EDO][Thread: <TH_PTR>] at <FRAME><SOURCE>
...

注※　出力項目については，「5.11.4(1)　Explicitメモリブロックの初期化」を参照してください。

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-50　出力項目（Explicitメモリブロックの初期化（詳細情報出力））

出力項目
出力内容
意味

Explicitメモリブロックの初期化時の情報（vervose）
「5.11.4(1) Explicitメモリブロックの初期化」を参照してください。

<TH_PTR>
<ptr>
Explicitメモリブロックを初期化したスレッドのスレッドIDが出力されます。スレッドダンプに出力されるtidと同一です。

<FRAME>
<letters>.<letters>
Explicitメモリブロック初期化時のスタックトレース中の1フレームが出力されます。完全クラス名とメソッド名が"."で区切られて出力されます。

<SOURCE>
(<letters>:<const>)|(Native Method)|(Unknown Source)
<FRAME>で出力されたメソッドが記述されているソースファイル名と，スタックトレースと一致する行番号が出力されます。ファイル名と行番号は":"で区切られて出力されます。
ネイティブメソッドの場合は，"(Native Method)"と出力されます。
ソースファイル名が取得できない場合は，"(Unknown Source)"と出力されます。

(d)　出力例

出力例を示します。

[EVO]<Tue Jul 24 01:23:51 2007>[Created]["BasicExplicitMemory-2" eid=2(0x1234568)/B][Thread: 0x00035a60]
[EDO][Thread: 0x00035a60] at ExplicitMemory.registerExplicitMemory(Native Method)
[EDO][Thread: 0x00035a60] at BasicExplicitMemory.<init>(Unknown Source)
[EDO][Thread: 0x00035a60] at AllocTest.test(AllocTest.java:64)
[EDO][Thread: 0x00035a60] at java.lang.Thread.run(Thread.java:2312)

この出力例では次の内容が確認できます。

出力契機は2007年7月24日(火)1時23分51秒に実行したメモリブロックの初期化です。Explicitメモリブロックの名称は"BasicExplicitMemory-2"です。ExplicitメモリブロックのIDはeid=2です。

AllocTest.javaの64行目でBasicExplicitMemoryクラスのコンストラクタを実行して，Explicitメモリブロックの初期化を試みています。

(3)　Explicitメモリブロックの自動解放処理の詳細（詳細情報出力）

Explicitメモリブロックの自動解放処理が起こった場合の詳細情報を出力します。「5.11.3(4)　Explicitメモリブロックの自動解放処理」で示した出力内容に加えて，自動解放処理を実施したExplicitメモリブロックのEID情報を出力します。Explicitメモリブロックの自動解放処理は，オブジェクトの移動が発生しない自動解放処理，多対1の自動解放処理，および1対1の自動解放処理が実行されることがあります。このため，オブジェクトの移動が発生しなかったEID，多対1のEID，および1対1のEIDの情報を出力します。

(a)　出力の契機

Explicitメモリブロックの自動解放処理が起こった場合です。

(b)　出力形式

[EDO][migrate:(<EID_DEL>{,<EID_DEL>}*|)/(<EID_MBF>{,<EID_MBF>}*-><EID_MAF>|)/(<EID_MIG>{,<EID_MIG>}*|)]

(c)　出力項目

「(b)　出力形式」で示した各項目について説明します。

表5-51　出力項目（Explicitメモリブロックの自動解放処理の詳細（詳細情報出力））

出力項目 | 出力内容 | 意味
<EID_DEL> | <const> | Explicitメモリブロックの自動解放処理によって解放されるExplicitメモリブロックのうち，オブジェクトの移動が発生しなかったExplicitメモリブロックのEIDを出力します。
<EID_MBF> | <const> | Explicitメモリブロックの自動解放処理によって解放されるExplicitメモリブロックのうち，多対1の自動解放が起こったExplicitメモリブロックの自動解放予約される前のEIDを出力します。
<EID_MAF> | <const> | Explicitメモリブロックの自動解放処理によって生成されるExplicitメモリブロックのうち，多対1の自動解放によって生成されたExplicitメモリブロックのEIDを出力します。
<EID_MIG> | <const> | Explicitメモリブロックの自動解放処理によって解放されるExplicitメモリブロックのうち，1対1の自動解放が起こったExplicitメモリブロックのEIDを出力します。

(d)　出力例

出力例を示します。

[EVS]<Tue Jul 14 02:31:22 2009>[EH: 256512K->256128K(256256K/1048576K), 0.1124626 secs][E/F/D: 423/0/0][target:584K/384K/200K]¥
[cause:Migrate]
[EDO][migrate:()/(2,4,6,9->10)/(1,8)]

この出力例では次の内容が確認できます。

2009年7月14日（火）2時31分22秒に発生した，ガーベージコレクションでのExplicitメモリブロックの自動解放処理です。

自動解放処理が発生したことによって，Explicitヒープの利用済みサイズが256,512Kから256,128Kに変化ています。

自動解放処理後のExplicitヒープの確保済みサイズは256,256K，最大サイズは1,048,576Kとなっています。

自動解放処理に0.1124626秒掛かっています。

自動解放処理後のサブ状態がEnableであるExplicitメモリブロック数は423です。

Explicitヒープの利用済みサイズ584Kに対して自動解放処理を実行しました。

ID（2，4，6，9）のExplicitメモリブロックがID（10）のExplicitメモリブロックに移動しています。

ID（1，8）のExplicitメモリブロックが，同じID（1，8）に移動しています。

6.　性能解析トレースを使用したシステムの性能解析

性能解析トレースは，クライアントからのリクエストを処理するときに，アプリケーションサーバの各機能が出力する性能解析情報（トレース情報）を収集する機能です。この情報を基に，システム性能およびボトルネックを分析できます。この章では，性能解析トレースを使用して，システムの性能を解析する方法について説明します。なお，性能解析トレースによって性能解析情報が取得されるポイント（トレース取得ポイント）や，情報の取得範囲（PRFトレース取得レベル）については，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

＜この章の構成＞

6.1　この章の構成

6.2　性能解析トレースの概要

6.3　性能解析トレースファイル

6.4　性能解析トレースのルートアプリケーション情報取得のための実装

6.5　実行環境での設定

6.6　性能解析トレースファイルを使用した処理性能の解析作業

6.1　この章の構成

性能解析トレースを利用すると，システムを構成する各種ソフトウェアの稼働状況やリクエストの処理過程で各サーバが出力したトレース情報などを監視して，システム全体の処理性能を確認できます。処理性能を監視すると，システムのボトルネックの調査や，パフォーマンスチューニングを実施する必要があるかどうかの判断ができるようになります。

この章の構成を次の表に示します。

表6-1　この章の構成（性能解析トレース）

分類 | タイトル | 参照先
解説 | 性能解析トレースの概要 | 6.2
性能解析トレースファイル | 6.3
実装 | 性能解析トレースのルートアプリケーション情報取得のための実装 | 6.4
設定 | 実行環境での設定 | 6.5
運用 | 性能解析トレースファイルを使用した処理性能の解析作業 | 6.6

注　「注意事項」について，この機能固有の説明はありません。

なお，性能解析トレースによって性能解析情報が取得されるポイント（トレース取得ポイント）や，情報の取得範囲（PRFトレース取得レベル）については，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

6.2　性能解析トレースの概要

アプリケーションサーバの各機能は，リクエストを処理する過程で，性能解析情報をバッファに出力します。このバッファの情報は，一定間隔ごとにPRFデーモンというパフォーマンストレーサのデーモンによってそれぞれのホスト上のファイル（PRFトレースファイル）に出力されます。このファイルには，クライアントから送信されたリクエストが，データベースなどのEISで処理されて，その処理結果がクライアントに返却されるまでのトレース情報が出力されます。また，セッションのライフサイクルを判断するための情報もこのファイルに出力されます。

この節では，アプリケーションサーバの各機能が出力する性能解析情報を使用して，アプリケーションサーバで構築したシステムの処理性能を解析する機能について説明します。この機能を，性能解析トレースといいます。

＜この節の構成＞

6.2.1　性能解析トレースのトレース情報収集の概要

6.2.2　性能解析トレースの仕組み

6.2.3　性能解析トレースの構成

6.2.4　トレース情報の取得によるトラブルシュート

6.2.1　性能解析トレースのトレース情報収集の概要

性能解析トレースは，クライアントからデータベースなどのEISに至るまで，およびその処理結果がクライアントに返却されるまでのリクエストの一連の処理で出力されるトレース情報を基に，システムの性能を検証する機能です。システムのボトルネックを解析したり，障害が発生した場合にリクエストの処理がどこまで到達したかを調べてトラブルシュートの効率向上を図ったり，セッションやグローバルセッション情報のライフサイクルを把握したりできます。

アプリケーションサーバで構築したシステムでは，処理性能の解析に，Cosminexus Performance Tracerという構成ソフトウェアを使用します。

性能解析トレースのトレース情報収集の概要を，次の図に示します。

図6-1　性能解析トレースのトレース情報収集の概要

WebクライアントまたはEJBクライアントからリクエストが送信された場合に，Webサーバ，J2EEサーバおよびCTMでは，決まった処理のポイントでトレース情報をバッファに出力します。出力した情報は，一定量たまるとパフォーマンストレーサ（PRFデーモン）によって，トレースファイル（PRFトレースファイル）に出力されます。トレースが出力されるポイントを，トレース取得ポイントといいます。パフォーマンストレーサには，トレース取得レベル（標準または詳細）を設定できます。パフォーマンストレーサに設定するトレース取得レベルをPRFトレース取得レベルといいます。

Management Serverを利用して運用している場合，各ホストに出力されたトレースファイルの内容は，Management Serverの運用管理コマンド（mngsvrutil）で，管理サーバに一括収集できます。なお，PRFデーモンが出力したPRFトレースファイルは，バイナリ形式のファイルです。Management Serverでは，運用管理エージェントに指示を出し，PRFトレースファイルをテキスト（CSV）形式のファイルに編集して，それを圧縮（ZIP形式）したものを収集します。Management Serverで収集できるのは，運用管理ドメイン内のホストで出力されたPRFトレースです。

なお，テキスト形式に編集したトレースファイルを性能解析トレースファイルといいます。

運用管理者は，収集した性能解析トレースファイルを基に，運用管理ドメイン内全体の性能解析およびボトルネックの分析ができるようになります。

運用管理コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「mngsvrutil（Management Serverの運用管理コマンド）」を参照してください。また，性能解析トレースの運用については，「6.6　性能解析トレースファイルを使用した処理性能の解析作業」を参照してください。

6.2.2　性能解析トレースの仕組み

性能解析トレースでは，システム内部のイベント単位で，複数のノードおよびプロセス間にわたるトレース情報を取得できます。これによって，一連の処理の中で，どの処理がボトルネックになっているかをトレースできます。

イベント単位でトレースを取得するために，性能解析トレースでは，イベント単位の一連の処理に一貫したキーを設定して管理します。イベント内のトレース取得ポイントで出力するトレースには，キーの情報が付加されます。これによって，一連の処理がトレースできます。

図6-2　性能解析トレースによるトレース出力の概要

なお，トレースを出力するリダイレクタ，Webコンテナなどを，機能レイヤといいます。性能解析トレースでは，次の機能レイヤの入り口と出口でトレース情報を出力します。必要に応じて，各機能レイヤ内の処理のうち，性能に影響を与える処理ごとにも，トレース情報を出力します。アプリケーションの実行環境と該当する機能レイヤを次の表に示します。

表6-2　アプリケーションの実行環境と該当する機能レイヤ

機能レイヤ | アプリケーションの実行環境
J2EEアプリケーションの実行環境 | バッチアプリケーションの実行環境
CTM | ○ | －
リダイレクタ | ○ | －
Webコンテナ | ○ | －
EJBコンテナ | ○ | －
Timer Service | ○ | －
JNDI | ○ | ○
JTA | ○ | ○
JCAコンテナ | ○ | ○
DB Connector | ○ | ○
RMI（通信処理）※1 | ○ | ○
OTS | ○ | ○
標準出力/標準エラー出力/ユーザログ | ○ | ○
DI | ○ | －
バッチアプリケーション実行機能 | － | ○※2
JPA | ○ | －
Cosminexus JPAプロバイダ | ○ | －
TP1インバウンド連携機能 | ○ | －
Cosminexus JMSプロバイダ | ○ | －
JavaMail | ○ | －

（凡例）○：該当する　－：該当しない

注※1

RMI（通信処理）の機能レイヤについては，トレース情報の取得を抑止することができます。その場合，トレース取得レベルに「抑止」を設定します。設定方法については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprfstart（PRFデーモンの開始）」，またはマニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprflevel（PRFトレース取得レベルの表示と変更）」を参照してください。

注※2

トレース情報は，バッチアプリケーションの実行直前（mainメソッドを呼ぶ直前），およびバッチアプリケーション終了直後に出力されます。cjexecjobコマンドおよびcjkilljobコマンドの実行では出力されません。

また，性能解析トレースでは，これらの機能レイヤのほかに，J2EEサーバの開始処理，終了処理，トランザクションタイムアウト発生時，およびセッションの生成／破棄でもトレースを出力します。

なお，トレース情報の内容には，トレース情報を取得したプロセスID，取得ポイントを示すイベントID，トレース取得年月日やトレース情報を取得したクライアントアプリケーションのIPアドレスなどの情報が含まれます。

参考

これらの機能レイヤのほか，Application Serverの構成ソフトウェアおよび関連プログラムでも，次の機能レイヤでPRFトレースが取得できます。

Cosminexus Web Services - Base

uCosminexus TP1 Connector

TP1/Client/J

TP1/MQ Access

Cosminexus RM

HCSCサーバ

uCosminexus Service Adapter for Object Access

uCosminexus Service Coordinator Interactive Workflow

uCosminexus Service Adapter for Flat Files

uCosminexus Service Adapter for Message Queue

uCosminexus Service Adapter

トレース情報のキー情報は，次の要素で構成されています。

キー情報の構成

キー情報を取得したプロセスID

キー情報を取得したプロセスが起動しているホストのIPアドレス

PRFトレースのI／Oプロセス（PRFデーモン）単位で割り当てられる通信番号
なお，PRFデーモンが起動していない場合は，通信番号として時刻が返却されます。ただし，この場合，通信番号の一意性を保てないおそれがあるので，PRFデーモンは必ず起動してください。

PRFトレースには，次の2種類のキー情報が付与されます。

ルートアプリケーション情報
各イベントで一連の処理の先頭になるプロセスで取得した情報です。

J2EEアプリケーションの場合
リダイレクタまたはEJBクライアントで取得した情報になります。

バッチアプリケーションの場合
バッチアプリケーションの実行直前に取得した情報になります。

クライアントアプリケーション情報
J2EEアプリケーションの場合，次に示すEnterprise Beanを呼び出す処理単位で設定される情報です。

WebコンテナからEJBコンテナの呼び出し

EJBクライアントからEJBコンテナの呼び出し

EJBコンテナからEJBコンテナの呼び出し

なお，バッチアプリケーションの場合は，バッチアプリケーションの実行直前に設定される情報になります。

6.2.3　性能解析トレースの構成

性能解析トレースは，次のプログラムで構成されています。

PRFトレース出力ライブラリ
アプリケーションサーバの各機能レイヤに組み込まれています。各機能レイヤが出力したPRFトレースを，共用メモリに作成されたバッファに出力します。

PRFデーモン
バッファに出力されたPRFトレースを，一定量たまったらファイルに出力する，I／Oプロセスです。PRFトレースを取得するホストごとに，一つ以上起動します。一つのホストに一つ配置することをお勧めします。
PRFトレース出力ライブラリとPRFデーモンの関係を次の図に示します。

図6-3　PRFトレース出力ライブラリとPRFデーモンの関係

PRFトレース出力ライブラリによってトレースが出力されるバッファ領域は，PRFデーモン起動時に作成されます。バッファ領域は，共用メモリに作成されます。ただし，前回PRFデーモンを起動した時に作成したバッファ領域が残っている場合は，その領域を再利用します。バッファ領域が削除されないで残っているのは，前回起動したPRFデーモンが異常終了した場合です。

PRFデーモンが正常終了した場合，バッファ領域内のバッファデータはPRFトレースファイルに出力され，バッファ領域は削除されます。

バッファ領域が不足すると，KFCT26999-Wのメッセージが出力されて，PRFトレースが完全に出力されない場合があります。そのため，このメッセージが出力される場合は，バッファサイズのチューニングをしてください。

6.2.4　トレース情報の取得によるトラブルシュート

トレース情報を利用したトラブルシュートについて説明します。

性能解析トレースに出力される情報を取得することで，トラブルシュートとして次のように使用できます。

J2EEアプリケーションのトランザクションがタイムアウトした場合やリダイレクタでのレスポンス受信時にタイムアウトが発生した場合，性能解析トレースに出力されるルートアプリケーション情報を使用して，タイムアウトしたトランザクションやリクエストを特定できます。

データベースとの接続中にトラブルが発生した場合，性能解析トレースに出力されるコネクションIDを利用して，トラブルが発生したコネクションを特定できます。

6.3　性能解析トレースファイル

各機能レイヤのトレース情報は，バイナリ形式でPRFトレースファイルに出力されます。システムの処理性能を解析する際は，PRFトレースファイルをテキスト形式（CSV形式）に変換したファイル（性能解析トレースファイル）を使用します。この節では，性能解析トレースファイルの収集方法，および収集したファイルの出力先について説明します。性能解析トレースファイルは，Management Serverの運用管理コマンドを使用して収集します。

システムの運用作業では，性能解析トレースファイルの出力情報を基に，システムの処理性能やボトルネックを解析できます。システムの処理性能を解析する方法については，「6.6　性能解析トレースファイルを使用した処理性能の解析作業」を参照してください。

この節では，性能解析トレースファイルの収集方法，出力先や出力情報について説明します。

＜この節の構成＞

6.3.1　性能解析トレースファイルの収集方法

6.3.2　性能解析トレースファイルの出力先と出力情報

6.3.1　性能解析トレースファイルの収集方法

性能解析トレースファイルを収集する場合，Management Serverの運用管理コマンド（mngsvrutil）を使用します。mngsvrutilコマンドには，サブコマンド「collect」を指定します。性能解析トレースファイルの収集時，トレース情報の収集対象を選択します。運用管理コマンドを使用した場合のトレース情報の収集対象を次に示します。

運用管理ドメイン内のホスト上で動作しているすべてのパフォーマンストレーサ

特定のホスト上で動作しているすべてのパフォーマンストレーサ

特定のパフォーマンストレーサ

それぞれの場合の実行形式と実行例を次に示します。

運用管理ドメイン内のホスト上で動作しているすべてのパフォーマンストレーサを対象にする場合

実行形式

mngsvrutil -m <Management Serverのホスト名>［:<ポート番号>］ -u <管理ユーザID> -p <管理パスワード> collect allPrfTraces

実行例

mngsvrutil -m mnghost -u user01 -p pw1 collect allPrfTraces

特定のホスト上で動作しているすべてのパフォーマンストレーサを対象にする場合

実行形式

mngsvrutil -m <Management Serverのホスト名>［:<ポート番号>］ -u <管理ユーザID> -p <管理パスワード> -t <ホスト名> -k host collect prfTrace

実行例

mngsvrutil -m mnghost -u user01 -p pw1 -t host01 -k host collect prfTrace

特定のパフォーマンストレーサを対象にする場合

実行形式

mngsvrutil -m <Management Serverのホスト名>［:<ポート番号>］ -u <管理ユーザID> -p <管理パスワード> -t <論理パフォーマンストレーサ名> -k logicalServer collect prfTrace

実行例

mngsvrutil -m mnghost -u user01 -p pw1 -t ID01 -k logicalServer collect prfTrace

6.3.2　性能解析トレースファイルの出力先と出力情報

収集した性能解析トレースファイルの出力先と出力情報について説明します。

＜この項の構成＞

(1)　性能解析トレースファイルの出力先

(2)　性能解析トレースファイルの出力情報

(1)　性能解析トレースファイルの出力先

Windowsの場合
<Managerのログ出力ディレクトリ>¥prf

UNIXの場合
<Managerのログ出力ディレクトリ>/prf

なお，性能解析トレースファイルは，トレース情報の収集対象別に次の表に示すファイル名で出力されます。

表6-3　性能解析トレースファイルのファイル名

トレース情報の収集対象 | ファイル名
運用管理ドメイン内のホスト上で動作しているすべてのパフォーマンストレーサ | <運用管理ドメイン名>-<日時※1>.zip
特定のホスト上で動作しているすべてのパフォーマンストレーサ | <ホスト名>-<日時※1>.zip
特定のパフォーマンストレーサ | <論理サーバ名※2>-<日時※1>.zip

注※1

性能解析トレースファイルを収集した日時が表示されます。

注※2

指定したパフォーマンストレーサの名称が表示されます。

(2)　性能解析トレースファイルの出力情報

パフォーマンストレーサから性能解析トレースファイル（CSV形式）に出力される情報を次の表に示します。なお，CTMとそれ以外の機能レイヤでは，取得項目が異なります。また，付加情報の有無など，取得ポイントごとに，出力される項目は異なります。各取得ポイントで出力される項目の詳細については，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

表6-4　性能解析トレースファイルに出力する情報

トレース情報のヘッダ
説明
値の範囲

PRF
そのプロセスのレコードの状態（正常または異常）。
次のどちらかが出力されます。
正常：Rec
異常：ErrRec

Process
トレース情報を取得したプロセスのプロセスID。
10けたの10進数が出力されます。

Thread
トレース情報を取得したプロセス内スレッドのスレッドID，およびスレッドのハッシュ値※1。
スレッドID：20けた以内の10進数が出力されます。
ハッシュ値：10けた以内の10進数が出力されます。

Trace
トレース情報を取得したプロセス内スレッドでのトレース通番。
10けたの10進数が出力されます。

ProcessName
プロセス名。
32文字以内のプロセスを表す文字列※2が出力されます。

Event
トレース取得ポイントを示すイベントID。
6けたの16進数（6けたには，"0x"も含みます）が出力されます※3。

Date
トレース情報を取得した年月日。
年月日が「yyyy/mm/dd」のフォーマットで出力されます。
yyyy：年
mm：月
dd：日

Time
トレース情報を取得した時刻（時：分：秒）。
時刻が「hh:mm:ss」のフォーマットで出力されます。
hh：時
mm：分
ss：秒

Time(msec/usec/nsec)
トレース情報を取得した時刻（ミリ秒/マイクロ秒/ナノ秒）。
時刻が「ms/us/ns」のフォーマットで出力されます。
ms：ミリ秒
us：マイクロ秒
ns：ナノ秒

Rc
リターンコード。
16けたの16進数（16けたには，"0x"も含む）が出力されます。
正常：0
異常：1（または0以外）

ClientAP IP※4
トレース情報を取得したクライアントアプリケーションのIPアドレス。
IPアドレスが，「aaa.bbb.ccc.ddd」のフォーマットで出力されます。

ClientAP PID※4
トレース情報を取得したクライアントアプリケーションのプロセスID。
10けたの10進数が出力されます。

ClientAP CommNo.※4
トレース情報を取得したクライアントアプリケーションの通信番号。
18けたの16進数（18けたには，"0x"も含みます）が出力されます。

RootAP IP※5
トレース情報を取得したルートアプリケーションのIPアドレス。
IPアドレスが「aaa.bbb.ccc.ddd」のフォーマットで出力されます。

RootAP PID※5
トレース情報を取得したルートアプリケーションのプロセスID。
10けたの10進数が出力されます。

RootAP CommNo.※5
トレース情報を取得したルートアプリケーションの通信番号。
18けたの16進数（18けたには，"0x"も含む）が出力されます

SendSCD IP※5
リクエスト要求元CTMのIPアドレス。
IPアドレスが「aaa.bbb.ccc.ddd」のフォーマットで出力されます。

SendSCD PID※6
リクエスト要求元CTMのプロセスID。
10けたの10進数が出力されます。

ReceiveSCD IP※6
リクエスト要求先CTMのIPアドレス。
IPアドレスが「aaa.bbb.ccc.ddd」のフォーマットで出力されます。

ReceiveSCD PID※6
リクエスト要求先CTMのプロセスID。
10けたの10進数

INT
取得ポイントごとのインタフェース名。
33文字以内の文字列※7が出力されます。

OPR
取得ポイントに関連するオペレーション情報。
33文字以内の文字列※7が出力されます。

LookupName※6
ルックアップ名。
33文字以内の文字列※7が出力されます。

OPT※8
取得ポイントごとの付加情報。
514文字以内の16進数値文字列が出力されます。

ASCII
取得ポイントごとの付加情報をASCII文字出力。
OPTの内容が258文字以内のASCII文字列として出力されます。

注※1

CTMおよびリダイレクタで取得したトレース情報には，スレッドのハッシュ値は出力されない場合があります。

注※2

プロセス名称は次のように決定されます。

EJBクライアントアプリケーションの場合
EJBクライアントアプリケーションのシステムプロパティejbserver.server.prf.processNameに指定された名称。
このシステムプロパティを指定していない場合，またはこのプロパティにnull文字を指定した場合は，"EJBClient"になります。

J2EEサーバ，バッチサーバ，およびWebコンテナサーバの場合
サーバ名がプロセス名称となります。

リダイレクタの場合
WebサーバとしてHitachi Web Serverを使用している場合は，"RD-{Webサーバ待ち受けポート番号}"がプロセス名称となります。Microsoft IISを使用している場合は，"Redirector"がプロセス名称となります。

CTMの場合
CTMの各プロセス名称となります。

注※3

イベントIDは，機能レイヤのトレース取得ポイントごとに割り当てられています。詳細は，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

注※4

クライアントアプリケーション情報の構成要素です。

注※5

ルートアプリケーション情報の構成要素です。Webコンテナで出力されるトレースポイントでは，トレース情報を取得したルートアプリケーションのIPアドレス，プロセスID，および通信番号が「0.0.0. 0/0/0x0000000000000000」と出力される場合があります。詳細は「6.6.7　ルートアプリケーション情報を利用したログ調査」を参照してください。

注※6

CTMの場合だけ出力される情報です。CTM以外のレイヤでは，「****」が表示されます。なお，バッチアプリケーションを実行するシステムではスケジュールグループ名が表示されます。

注※7

インタフェース名，およびオペレーション名が33文字を超える場合，次のどれかの方法で，33文字になって出力されます。詳細は，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

先頭32文字+*

先頭16文字+*+末尾16文字

*+末尾32文字

注※8

機能レイヤによっては，「OPT」に入り口時刻が出力されるトレース取得ポイントがあります。入り口時刻とは，そのトレース取得ポイントのトレースに対応する入り口トレースが出力された時間を示します。例えば，リダイレクタのトレース取得ポイントの場合，WebサーバへのHTTPレスポンスボディ情報の送信完了時（0x8104）のトレース取得ポイントで出力される入り口時刻は，WebコンテナからのHTTPレスポンスボディ情報の送信開始時（0x8004）の時刻になります。

なお，入り口時刻は，「1970年1月1日00:00:00」からの通算時間が16バイトの値で出力されます。前半の8バイトの値は秒単位を，後半の8バイトの値はマイクロ秒単位を示します。ただし，リダイレクタの性能解析トレースの場合は，後半の8バイトはミリ秒単位を示します。

6.4　性能解析トレースのルートアプリケーション情報取得のための実装

この節では，性能解析トレースのルートアプリケーション情報を取得する機能の概要および実装方法を説明します。

ルートアプリケーション情報とは，性能解析トレース機能で取得した情報のうち，リダイレクタまたはEJBクライアントで取得した情報をいいます。APIを使用して，ルートアプリケーション情報の文字列表現を取得する機能をJ2EEアプリケーションおよびバッチアプリケーションに実装できます。実装すると，取得した文字列表現をログファイルなどに記録することで，任意のタイミングで性能解析トレースファイルとの突き合わせができるため，トラブル発生時のトラブルシュートに役立ちます。

性能解析トレースのルートアプリケーション情報の取得機能を実装するには，CprfTraceクラスを使用します。CprfTraceクラスを使用するには，次のパスをクラスパスに指定してコンパイルします。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥lib¥ejbserver.jar

UNIXの場合
/opt/Cosminexus/CC/lib/ejbserver.jar

CprfTraceクラスの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」の「12.2　CprfTraceクラス」を参照してください。

なお，ルートアプリケーション情報を利用した調査については，「6.6.7　ルートアプリケーション情報を利用したログ調査」を参照してください。

6.5　実行環境での設定

性能解析トレースを使用する場合，次の設定が必要です。

Management Server

パフォーマンストレーサ

＜この節の構成＞

(1)　Management Serverの設定

(2)　パフォーマンストレーサの設定

(1)　Management Serverの設定

Management Serverの設定は，mserver.properties（Management Server環境設定ファイル）で実施します。指定するパラメタを次に示します。

com.cosminexus.mngsvr.trace
Management Serverが収集する性能解析トレースファイルのファイル面数を指定します。

mserver.propertiesおよびキーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.7　mserver.properties（Management Server環境設定ファイル）」を参照してください。なお，性能解析トレースファイルについては，「6.3　性能解析トレースファイル」を参照してください。

(2)　パフォーマンストレーサの設定

パフォーマンストレーサ（PRFデーモン）の設定は，簡易構築定義ファイルで実施します。性能解析トレースの定義は，簡易構築定義ファイルの論理パフォーマンストレーサ（performance-tracer）の<configuration>タグ内に指定します。

簡易構築定義ファイルでの性能解析トレースの定義について次の表に示します。

表6-5　簡易構築定義ファイルでの性能解析トレースの定義

指定するパラメタ | 設定内容
PrfTraceLevel | アプリケーションサーバの各機能（Webサーバ，J2EEサーバ，CTMなどの機能レイヤ）がバッファに出力する，パフォーマンストレーサのトレース取得レベルを指定します。
PrfTraceCount | パフォーマンストレーサのPRFトレースファイルの面数を指定します。
PrfTraceFileSize | パフォーマンストレーサのファイルサイズを指定します。PrfTraceFileSize≧PrfTraceBufferSizeの関係が成り立つ値を設定してください。
PrfTraceBufferSize | パフォーマンストレーサのバッファサイズを指定します。PrfTraceFileSize≧PrfTraceBufferSizeの関係が成り立つ値を設定してください。

注　簡易構築定義ファイルおよび指定する各パラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6　簡易構築定義ファイル」を参照してください。

6.6　性能解析トレースファイルを使用した処理性能の解析作業

この節では，性能解析トレースファイルを使用した処理性能の解析作業について説明します。

＜この節の構成＞

6.6.1　処理性能の解析作業の概要

6.6.2　Webサーバのレスポンスタイムの解析

6.6.3　アプリケーションサーバ内でのリクエストの処理状況の調査

6.6.4　セッションのライフサイクルの調査

6.6.5　タイムアウトが発生したトランザクションの特定

6.6.6　タイムアウトが発生したリクエストの特定

6.6.7　ルートアプリケーション情報を利用したログ調査

6.6.8　トラブルが発生したコネクションの特定

6.6.9　性能解析トレースファイルとスレッドダンプを対応づけた問題個所の調査

6.6.1　処理性能の解析作業の概要

アプリケーションサーバで構築したシステムの処理性能は，クライアントからデータベースなどのEISまでの一連の処理，およびその処理結果がクライアントに返却されるまでのリクエストの一連の処理で，リダイレクタやWebコンテナなどの機能レイヤから出力されるトレース情報を基に解析できます。

各機能レイヤのトレース情報は，バイナリ形式でPRFトレースファイルに出力されます。システムの処理性能を解析する際は，PRFトレースファイルをテキスト形式（CSV形式）に変換した性能解析トレースファイルを使用します。

次に，システムの処理性能を解析する作業について説明します。

参考

保守レベルのトレース情報について

PRFトレース取得レベルには，標準レベルと詳細レベルのほかに，保守レベルがあります。保守レベルとは，障害発生時などの保守情報を取得するためのレベルを指します。通常は指定しないでください。

PRFトレース取得レベルに保守レベルを設定する方法については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprflevel（PRFトレース取得レベルの表示と変更）」を参照してください。

＜この項の構成＞

(1)　性能解析トレースファイルの収集

(2)　性能解析トレースファイルを利用したシステムの処理性能の解析

(1)　性能解析トレースファイルの収集

システムの処理性能の解析で使用する性能解析トレースファイルを，運用管理コマンド（mngsvrutil）を使用して出力，収集します。性能解析トレースファイルの収集方法については，「6.3.1　性能解析トレースファイルの収集方法」を参照してください。また，性能解析トレースファイルの出力先および出力情報については，「6.3.2　性能解析トレースファイルの出力先と出力情報」を参照してください。

(2)　性能解析トレースファイルを利用したシステムの処理性能の解析

性能解析トレースファイルを使用して性能を解析する場合，Microsoft Excelなど，CSV形式のファイルを編集できるアプリケーションプログラムで表示して，目的に合わせてフィルタリングや並べ替えの機能を利用します。

例えば，CSV形式で出力すると，Excelなどのアプリケーションプログラムで「イベントごと」「プロセスごと」などによって出力項目をフィルタリングして，注目する個所を絞り込んで，目的に合わせた分析ができます。

次に示す性能解析トレースファイルの利用方法について，例を使用して説明します。

Webサーバのレスポンスタイムの解析（6.6.2参照）

アプリケーションサーバ内でのリクエストの処理状況の調査（6.6.3参照）

セッションのライフサイクルの調査（6.6.4参照）

タイムアウトが発生したトランザクションの特定（6.6.5参照）

タイムアウトが発生したリクエストの特定（6.6.6参照）

ルートアプリケーション情報を利用したログ調査（6.6.7参照）

トラブルが発生したコネクションの特定（6.6.8参照）

性能解析トレースとスレッドダンプの対応づけた問題個所の調査（6.6.9参照）

なお，ここでは，次のようなWebクライアント構成の環境で性能解析トレースファイルを収集したことを前提とします。

図6-4　 Webクライアント構成の例

6.6.2　Webサーバのレスポンスタイムの解析

ここでは，Webサーバがクライアントからリクエストを受けてから返却するまでに掛かった時間を解析する方法を，例を使用して説明します。

リダイレクタに割り当てられたイベントID「0x8001」および「0x8101」をキーにして，Webサーバで収集した性能解析トレースファイルをフィルタリングします。フィルタリングに使用するイベントIDが示すトレース取得ポイントは次のとおりです。

表6-6　フィルタリングに使用するイベントIDが示すトレース取得ポイント

イベントID | トレース取得ポイント
0x8001 | Webコンテナへのリクエストヘッダ情報の送信
0x8101 | Webコンテナからのレスポンス完了通知の受信

イベントID「0x8001」および「0x8101」をキーにして，性能解析トレースをフィルタリングした例を次に示します。

図6-5　性能解析トレースファイルをフィルタリングした例

「0x8001」および「0x8101」のトレース取得時刻から，リクエストごとのレスポンスタイムを解析できます。図6-5の例では，クライアントアプリケーション情報の通信番号が「0x00000000000000c7」と「0x00000000000000cc」のリクエストのレスポンスタイムを比較すると，「0x00000000000000c7」のリクエストの方が処理に時間が掛かっていることがわかります。

6.6.3　アプリケーションサーバ内でのリクエストの処理状況の調査

ここでは，Webサーバがクライアントから受けたリクエストがアプリケーションサーバで処理されているかどうか調査する方法を，例を使用して説明します。

次に示すWebサーバで収集した性能解析トレースファイルから，2004/2/5 16:32:31にリクエストを受け付けたことがわかります。

図6-6　 Webサーバで収集した性能解析トレースファイルの例

このリクエストのルートアプリケーション情報をキーにして，アプリケーションサーバで収集した性能解析トレースファイルを調査します。

「RootAP IP：10.209.13.123」，「RootAP ID：2200」，および「RootAP CommNo.：0x00000000000000c7」をキーにして，アプリケーションサーバで収集した性能解析トレースファイルをフィルタリングした例を次に示します。

図6-7　アプリケーションサーバで収集した性能解析トレースファイルをフィルタリングした例

このようにアプリケーションサーバで収集した性能解析トレースファイルを，ルートアプリケーション情報をキーにフィルタリングすると，アプリケーションサーバ内でのリクエストの一連の処理を調査できます。

6.6.4　セッションのライフサイクルの調査

ここでは，性能解析トレースを利用したセッションのライフサイクルの調査方法について説明します。

セッションのライフサイクルは，PRFトレース取得レベルを「詳細」に設定している場合に出力されるトレース（セッショントレース）を利用して調査できます。

セッショントレース情報は，出力された性能解析トレースファイルのセッションIDまたはグローバルセッションID（メモリセッションフェイルオーバ機能を使用している場合）をキーにして調査できます。

セッションIDは，セッショントレース情報として出力されたイベントのオプション領域に，次の形式で出力されます。

セッション文字数:セッションID

例えば，「abc123」というセッションIDの場合，オプション領域には「6:abc123」と出力されます。セッションIDが空文字の場合は，セッション文字数として「0:」と出力されます。セッションIDを取得できなかった場合は，何も出力されません。

グローバルセッションIDの場合も同様の形式で出力されます。

また，特定のイベントのセッションIDは，リクエストヘッダのCookieまたはURL書き換えをした場合のURLから取得されます。どちらから取得したのかは，セッションIDの末尾に出力された文字から確認できます。Cookieから取得した場合は，これらのイベントで出力されるセッションIDに続いて「C」が出力されます。URLから取得した場合は，セッションIDに続いて「U」が出力されます。セッションIDの取得元が確認できるイベントを，次に示します。

0x8000（リクエスト処理要求取得後）

0x8002（WebコンテナからHTTPリクエストボディ要求受信）

0x8102（WebコンテナへのHTTPリクエストボディ送信受信）

0x8200（Webサーバ経由のリクエスト取得およびリクエストヘッダ解析完了）

セッショントレース情報が出力されている性能解析トレースファイルの例を次の図に示します。この例は，一つのセッションの有効期間内での，セッションを生成するリクエスト，セッションを利用するリクエスト，およびセッションを破棄するリクエストのトレース情報を出力したものです。また，ここでは，セッションを生成するリクエスト，セッションを利用するリクエスト，およびセッションを破棄するリクエストを分けて示します。実際はこれら三つの出力例は，続けて出力されます。また，これらの画面では，セッショントレースに関係ない出力項目は表示していません。

図6-8　セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを生成するリクエスト部分）

イベント「0x8208」のASCIIの列に，生成されたセッションIDが出力されます。オペレーション列の60は，セッションの有効期間を示します。

イベント「0x8300」のASCIIの列に，生成されたグローバルセッションIDが出力されます。

図6-9　セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを利用するリクエスト部分）

リクエストヘッダのCookieから取得したセッションIDであることを示しています。

図6-10　セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを破棄するリクエスト部分）

イベント「0x8209」のASCII列に，破棄したセッションのセッションIDが出力されます。オペレーション列は，破棄したセッションの生成時刻を示します。

グローバルセッションが破棄されていることを示します。破棄されたグローバルセッションIDは出力されません。

このトレースファイルで確認できることについて説明します。

セッションの有効期間の確認

セッション生成時には，イベント「0x8208」が出力されます。セッション破棄時には，イベント「0x8209」が出力されます。これらの取得時刻から，セッションの有効範囲を確認できます。また，イベント「0x8208」では，オペレーション名から生成されたセッションの有効期間（秒）も確認できます。

セッションIDは，セッションを破棄するリクエスト内のイベント「0x8209」でセッションが破棄されるまで，同じIDが出力されます。なお，イベント「0x8209」のオペレーション名から破棄されたセッションの生成時刻も確認できます。

グローバルセッションの有効期間の確認（メモリセッションフェイルオーバ機能の場合）

グローバルセッションの有効期間は，出力されたグローバルセッションIDを基に確認できます。グローバルセッションIDとは，メモリセッションフェイルオーバ機能を使用している場合に，冗長化されたJ2EEサーバ間で引き継がれたセッションが一意であることを示すためのIDです。詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「7.　メモリセッションフェイルオーバ機能」を参照してください。

グローバルセッションIDが生成されている場合，特定のトレース取得ポイントでセッションIDに続けてグローバルセッションIDが出力されます。

図6-8の場合，セッションを生成するリクエスト内のイベント「0x8300」のタイミングでグローバルセッションIDが生成されて，そのIDが出力されています。グローバルセッションIDは，セッションを破棄するリクエスト内のイベント「0x8209」でリクエスト処理が完了するまで，同じIDが出力されます。

6.6.5　タイムアウトが発生したトランザクションの特定

ここでは，J2EEアプリケーションまたはバッチアプリケーションのトランザクションがタイムアウトした場合に，メッセージまたは性能解析トレースファイルを使用してタイムアウトしたトランザクションを特定する方法について説明します。

ここでは，次の2種類の方法について説明します。

メッセージを利用した特定方法

性能解析トレースファイルの出力内容による特定方法

＜この項の構成＞

(1)　メッセージを利用した特定方法

(2)　性能解析トレースファイルの出力内容による特定方法

(1)　メッセージを利用した特定方法

トランザクションでタイムアウトが発生した場合，メッセージKDJE31002-W，およびKDJE50080-Wが出力されます。これらのメッセージには，次の情報が出力されます。

KDJE31002-W

トランザクションを開始したJ2EEアプリケーション名，またはバッチアプリケーションのクラス名

トランザクションを開始したJ2EEコンポーネント（Enterprise Bean，サーブレットまたはJSP）のクラス名とインスタンスのハッシュコード

保守情報

性能解析トレースのルートアプリケーション情報

メッセージに出力された性能解析トレースのルートアプリケーション情報を，性能解析トレースファイルに出力されたルートアプリケーション情報と突き合わせて確認することで，性能解析トレース中のどこでトランザクションタイムアウトが発生したかを確認できます。

また，その前後のトレース情報を確認して，タイムアウトが発生したトランザクションでの処理内容を確認できます。

KDJE50080-W

IPアドレス，プロセスID，ルートアプリケーション情報

SQLを実行したコネクションのコネクションID

SQLを実行したメソッド名

SQLを実行したメソッドが実行中かどうか

最後に実行されたSQL

メッセージに出力されたSQLの情報を参照することで，タイムアウトが発生した原因となった個所を調査できます。

なお，メッセージの詳細については，マニュアル「Cosminexus アプリケーションサーバ メッセージ 2」の「KDJE31002-W」，およびマニュアル「Cosminexus アプリケーションサーバ メッセージ 2」の「KDJE50080-W」を参照してください。

(2)　性能解析トレースファイルの出力内容による特定方法

性能解析トレースファイルには，トランザクションタイムアウトが発生する直前と直後のトレース取得ポイントで，トレース情報が出力されています。

次のイベントIDの処理内容を確認してください。

表6-7　トランザクションタイムアウト時に出力される性能解析トレース

イベントID | 説明
0x8819 | トランザクションタイムアウトの直前の処理で出力される情報です。インタフェース名に，タイムアウトするトランザクションのルートアプリケーション情報が出力されます。
0x8820 | トランザクションタイムアウトの直後の処理で出力される情報です。
0x8C41 | 障害調査用SQLが出力されたときに出力される情報です。

6.6.6　タイムアウトが発生したリクエストの特定

ここでは，リダイレクタでのレスポンス受信時にタイムアウトが発生した場合に，性能解析トレースを利用してタイムアウトが発生したリクエストを特定する方法について説明します。

リダイレクタでのレスポンス受信時にタイムアウトが発生した場合，メッセージKDJE41019-Eが出力されます。このメッセージには，次の情報が出力されます。

リクエストのURI

Webサーバとの通信に使用するWebコンテナが動作するホストのIPアドレス

Webサーバとの通信に使用するWebコンテナのポート番号

Webサーバとの通信に使用するWebコンテナのファイルディスクリプタ

性能解析トレースのルートアプリケーション情報

メッセージに出力された性能解析トレースのルートアプリケーション情報を，性能解析トレースファイルに出力されたルートアプリケーション情報と突き合わせて確認することで，性能解析トレース中のどこでリクエストのタイムアウトが発生したかを確認できます。

タイムアウトが発生したリクエストは，該当するルートアプリケーション情報を出力しているリクエスト処理内の，次の表に示すイベントIDのトレース情報で確認できます。オペレーション名に出力されているURIで，該当するリクエストを特定してください。

表6-8　タイムアウトしたリクエストを確認するために使用できる性能解析トレース

イベントID
説明

0x8000
リクエスト処理要求の取得後に出力された情報です。
オペレーション名として，リクエストのURIが出力されます。

0x8100
リダイレクタ処理の完了後に出力された情報です。
オペレーション名として，リクエストのURIが出力されます。

6.6.7　ルートアプリケーション情報を利用したログ調査

J2EEアプリケーションまたはバッチアプリケーション内で，アプリケーションサーバのAPIを使用すると，性能解析情報のルートアプリケーション情報の文字列表現を任意のタイミングでログファイルに出力できます。

ルートアプリケーション情報の文字列表現は，次の形式で出力されます（最大48文字）。

IPアドレス/プロセスID/通信番号
（例：10.209.15.130/1234/0x0000000000000001）

APIを使用してログファイルにルートアプリケーション情報を出力すると，ログファイルと性能解析トレースファイルを突き合わせた調査ができるようになります。

Webコンテナでは，新しいリクエストを受け付けた時点で，リクエスト単位で新しいルートアプリケーション情報が割り当てられます。新しいルートアプリケーション情報が割り当てられるトレースポイントを次に示します。

表6-9　新しいルートアプリケーション情報が割り当てられるトレースポイント

条件 | イベントID（処理内容） | 処理内容
インプロセスHTTPサーバを使用している場合 | 0x8211 | リクエスト取得時，リクエストヘッダ解析完了時
Webサーバと連携している場合※ | 0x8200 | リクエスト取得時，リクエストヘッダ解析完了時

注※　Webサーバと連携している場合，リダイレクタで取得したルートアプリケーション情報が割り当てられます。リダイレクタまたはリダイレクタが使用するPRFデーモンに異常が発生して，ルートアプリケーション情報が発行されなかった場合，Webコンテナで新しいルートアプリケーション情報が割り当てられます。

また，次のトレース取得ポイントでは，「IPアドレス/プロセスID/通信番号」が「0.0.0. 0/0/0x0000000000000000」と出力されることがあります。

0x8212
インプロセスHTTPサーバ使用時のWebクライアントからのデータ読み込み開始時

0x8312
インプロセスHTTPサーバ使用時のWebクライアントへのデータ書き込み開始時

「IPアドレス/プロセスID/通信番号」が「0.0.0. 0/0/0x0000000000000000」と出力されるのは，次の場合です。

HTTPリクエストヘッダを受信した場合

HTTPリクエストではない，不正なデータを受信した場合

リクエスト処理中に例外が発生した場合

なお，ルートアプリケーション情報の文字列表現での出力に使用するAPIは，com.hitachi.software.ejb.application.prfパッケージで提供されている，CprfTraceクラスのgetRootApInfoメソッドです。

J2EEアプリケーションまたはバッチアプリケーション開発時のルートアプリケーション情報の取得の実装については，「6.4　性能解析トレースのルートアプリケーション情報取得のための実装」を参照してください。APIの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」を参照してください。

6.6.8　トラブルが発生したコネクションの特定

データベースとしてHiRDBまたはOracleを使用している場合，性能解析トレースファイルに出力されたコネクションIDと，HiRDBクライアントおよびOracleクライアントのログファイルやトレースファイルに出力されたコネクションIDを突き合わせて確認することで，トラブルが発生したコネクションを確認できます。確認方法については，「付録B　データベースと接続中にトラブルが発生したコネクションの特定」を参照してください。

6.6.9　性能解析トレースファイルとスレッドダンプを対応づけた問題個所の調査

J2EEアプリケーションまたはバッチアプリケーションでスローダウンやハングアップが発生したときに，性能解析トレースファイルとスレッドダンプを対応づけることで，問題が発生した個所を調査できます。

性能解析トレースファイルとスレッドダンプの対応づけには，性能解析トレースファイルに出力されたスレッドIDと，スレッドダンプに出力されたスレッド情報のnativeID（OSレベルのスレッドID）を使用します。ここでは，性能解析トレースファイルから対応するスレッドダンプを特定する方法について説明します。

性能解析トレースファイルから対応するスレッドダンプを特定する手順を次に示します。

性能解析トレースファイル，およびスレッドダンプを収集します。
性能解析トレースファイルの収集方法については，「6.3.1　性能解析トレースファイルの収集方法」を参照してください。スレッドダンプの収集方法については，「4.7　JavaVMのスレッドダンプ」を参照してください。

使用する性能解析トレースファイル，およびスレッドダンプを選びます。
性能解析トレースファイルとスレッドダンプが出力された時刻を基に，調査に使用する性能解析トレースファイル，およびスレッドダンプを選びます。出力された時刻は，次の情報を参考にしてください。

性能解析トレースファイル

「Time」および「Time(msec/usec/nsec)」

性能解析トレースファイルの「Time」および「Time(msec/usec/nsec)」の例を次の図に示します。

スレッドダンプ

ファイル名，およびファイルの末尾に出力される時刻

ファイルの末尾に出力される時刻の例を次に示します。

　：
　：
Full thread dump completed.   Fri Jul 21 19:22:47 2006

性能解析トレースファイルの調査したいイベントIDに対応する「Thread（hashcode）」の値を16進数に変換します。

Windows，AIX，HP-UXおよびSolarisの場合
Thread（スレッドID）の値を10進数から16進数に変換します。

Linuxの場合
hashcode（ハッシュコード）の値を10進数から16進数に変換します。

手順3.で16進数に変換した「Thread（hashcode）」の値と一致するスレッド情報を探して，対応するスレッド情報を特定します。

Windows，AIX，HP-UXおよびSolarisの場合
スレッドダンプの「nid」が，16進数に変換したThread（スレッドID）の値（1124）と一致するスレッド情報を探します。

　：
　：
"VBJ ThreadPool Worker" daemon prio=5 jid=0x00054f93 tid=0x04cef380 nid=0x1124 in Object.wait() [0x0632f000..0x0632fd18]
 stack=[0x06330000..0x062f5000..0x062f1000..0x062f0000]
 [user cpu time=0ms, kernel cpu time=15ms] [blocked count=1, waited count=29]
at java.lang.Object.wait(Native Method)
　：
　：

Linuxの場合
スレッドダンプの「jid」が，16進数に変換したhashcode（ハッシュコード）の値（6d75）と一致するスレッド情報を探します。

　：
　：
"main" prio=1 jid=0x00006d75 tid=0x00201d70 nid=0x1e51 waiting on condition [0x00000000..0xbfe80488]
 stack=[0xbfe87000..0xbfc8c000..0xbfc88000..0xbfc87000]
 [user cpu time=1320ms, kernel cpu time=4280ms] [blocked count=5, waited count=4]
　：
　：

7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル

性能解析トレースは，クライアントからのリクエストを処理するときに，アプリケーションサーバの各機能が出力する性能解析情報（トレース情報）を収集する機能です。この章では，機能レイヤごとに，性能解析トレースによって出力されるトレース取得ポイントとPRFトレース取得レベルについて説明します。性能解析トレースの概要と，解析方法については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

＜この章の構成＞

7.1　この章の構成

7.2　性能解析トレースのトレース取得ポイントとPRFトレース取得レベルの概要

7.3　CTMのトレース取得ポイント

7.4　リダイレクタのトレース取得ポイント

7.5　Webコンテナのトレース取得ポイント（リクエスト処理のトレース）

7.6　Webコンテナのトレース取得ポイント（セッショントレース）

7.7　Webコンテナのトレース取得ポイント（フィルタのトレース）

7.8　Webコンテナのトレース取得ポイント（データベースセッションフェイルオーバ機能のトレース）

7.9　Webコンテナのトレース取得ポイント（メモリセッションフェイルオーバ機能のトレース）

7.10　EJBコンテナのトレース取得ポイント

7.11　JNDIのトレース取得ポイント

7.12　JTAのトレース取得ポイント

7.13　DB Connector，JCAコンテナのトレース取得ポイント

7.14　RMIのトレース取得ポイント

7.15　OTSのトレース取得ポイント

7.16　標準出力／標準エラー出力／ユーザログのトレース取得ポイント

7.17　DIのトレース取得ポイント

7.18　バッチアプリケーション実行機能のトレース取得ポイント

7.19　JPAでのトレース取得ポイント

7.20　Cosminexus JPAプロバイダのトレース取得ポイント

7.21　TP1インバウンド連携機能のトレース取得ポイント

7.22　Cosminexus JMSプロバイダのトレース取得ポイント

7.23　JavaMailのトレース取得ポイント

7.24　J2EEサーバの開始・終了時のトレース取得ポイント

7.1　この章の構成

WebクライアントまたはEJBクライアントからリクエストが送信された場合に，Webサーバ，J2EEサーバおよびCTMでは，決まった処理のポイント（トレース取得ポイント）でトレース情報を出力します。また，性能解析トレースでは，標準，詳細などのPRFトレース取得レベルを設定してトレースを出力できます。

この章の構成を次の表に示します。

表7-1　この章の構成（性能解析トレース）

分類 | タイトル | 参照先
解説 | 性能解析トレースのトレース取得ポイントとPRFトレース取得レベルの概要 | 7.2
CTMのトレース取得ポイント | 7.3
リダイレクタのトレース取得ポイント | 7.4
Webコンテナのトレース取得ポイント（リクエスト処理のトレース） | 7.5
Webコンテナのトレース取得ポイント（セッショントレース） | 7.6
Webコンテナのトレース取得ポイント（フィルタのトレース） | 7.7
Webコンテナのトレース取得ポイント（データベースセッションフェイルオーバ機能のトレース） | 7.8
Webコンテナのトレース取得ポイント（メモリセッションフェイルオーバ機能のトレース） | 7.9
EJBコンテナのトレース取得ポイント | 7.10
JNDIのトレース取得ポイント | 7.11
JTAのトレース取得ポイント | 7.12
DB Connector，JCAコンテナのトレース取得ポイント | 7.13
RMIのトレース取得ポイント | 7.14
OTSのトレース取得ポイント | 7.15
標準出力／標準エラー出力／ユーザログのトレース取得ポイント | 7.16
DIのトレース取得ポイント | 7.17
バッチアプリケーション実行機能のトレース取得ポイント | 7.18
JPAでのトレース取得ポイント | 7.19
Cosminexus JPAプロバイダのトレース取得ポイント | 7.20
TP1インバウンド連携機能のトレース取得ポイント | 7.21
Cosminexus JMSプロバイダのトレース取得ポイント | 7.22
JavaMailのトレース取得ポイント | 7.23
J2EEサーバの開始・終了時のトレース取得ポイント | 7.24

注　「実装」，「設定」，「運用」および「注意事項」について，この機能固有の説明はありません。

なお，性能解析トレースの概要と，解析方法については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

7.2　性能解析トレースのトレース取得ポイントとPRFトレース取得レベルの概要

ここでは，トレース取得ポイントとPRFトレース取得レベルについて説明します。

＜この節の構成＞

(1)　トレース取得ポイント

(2)　PRFトレース取得レベル

(1)　トレース取得ポイント

トレース取得ポイントは大きく分けて，J2EEサーバの開始・終了時でのトレース取得と，各機能レイヤでの処理中のトレース取得があります。

●J2EEサーバの開始・終了時のトレース取得

J2EEサーバの開始処理の完了時，およびJ2EEサーバの終了処理の開始時に，トレース情報を取得できます。取得できるイベントIDと参照先を次に示します。

イベントID
0x8FFE～0x8FFF

参照先
J2EEサーバの開始・終了時のトレース取得の詳細については，「7.24　J2EEサーバの開始・終了時のトレース取得ポイント」を参照してください。

●各機能レイヤでのトレース取得

取得できるイベントIDと機能レイヤの対応を次の表に示します。

表7-2　取得できるイベントIDと機能レイヤ

イベントID
機能レイヤ
図中の番号※
参照先

0x1101～0x1102
0x1301～0x1302
0x1401～0x1406
0x2002～0x2003
0x2101～0x2104
0x3000～0x3008
CTM
5
7.3

0x8000～0x8004
0x8100～0x8104
リダイレクタ
1
7.4

0x8200～0x8203
0x8206～0x8225
0x8300～0x8303
0x8306～0x8307
0x8311～0x8325
0x8E01～0x8E06
Webコンテナ
2
7.5，7.6，7.7，7.8，7.9

0x8401～0x840A
0x8425～0x8428
0x842D～0x8434
0x8453～0x8454
0x8460～0x846D
0x8470～0x8477
0x8490～0x8491
0x8C41
EJBコンテナ
6
7.10

0x8603～0x861C
JNDI
4
7.11

0x8435～0x843F
0x8811～0x8820
0x8C41
JTA
7
7.12

0x8B00～0x8B01
0x8B80～0x8B89
0x8B8A～0x8C03
0x8C10～0x8C13
0x8C20～0x8C41
0x8C60～0x8C65
0x8C80～0x8C93
0x8CC0～0x8CD9
0x8D00～0x8D19
0x8D60～0x8D63
0x8D80～0x8D89
0x8D8A～0x8D8F
0x8D90～0x8D99
DB Connector，JCAコンテナ
8
7.13

0x8E01～0x8E06
RMI
3
7.14

0x9400～0x9413
OTS
9
7.15

0x9C00～0x9C03
標準出力／標準エラー出力／ユーザログ
－
7.16

0x9D00，0x9D01
DI
10
7.17

0xA100，0xA101
バッチアプリケーション実行機能
11
7.18

0xA500～0xA5AF
JPA
12
7.19

0xA300～0xA305
0xA310～0xA315
0xA320～0xA323
0xA330～0xA331
0xA340～0xA363
0xA370～0xA381
0xA390～0xA3C3
Cosminexus JPAプロバイダ
13
7.20

0x842F
0x8430～0x8432
0x8825
0x8826
0x8B86，0x8B87
0x8B8A～0x8B93
0xAA00～0xAA06
0xAA08～0xAA0D
0xAA10～0xAA19
TP1インバウンド連携機能
14
7.21

0xA600～0xA60F
0xA610～0xA619
0xA61E，0xA61F
0xA620～0xA62F
0xA630～0xA63F
0xA640～0xA64F
0xA650～0xA65F
0xA660～0xA667
0xA61A，0xA61B
0xA668～0xA66F
0xA670～0xA67F
0xA686～0xA68D
0xA692～0xA69B
0xA69E，0xA69F
0xA6A0，0xA6A1
0xA6A6～0xA6AB
Cosminexus JMSプロバイダ
15
7.22

0xAD00～0xAD15
0xAD80～0xAD93
JavaMail
16
7.23

（凡例）－：該当しない

注※　図7-1～図7-4中の番号と対応しています。

PRFトレースを出力する機能レイヤとトレース取得ポイントについて，システムの構成ごとに次の図に示します。

図7-1　機能レイヤとトレース取得ポイント（Webクライアント構成の場合）

図7-2　機能レイヤとトレース取得ポイント（バッチアプリケーションを実行するシステムの場合）

図7-3　機能レイヤとトレース取得ポイント（EJBクライアント/TPBrokerクライアント/TPBroker OTMクライアント構成（CTM使用）の場合）

図7-4　機能レイヤとトレース取得ポイント（TP1インバウンド連携機能の場合）

トレース取得ポイントは，各機能レイヤ内でさらに詳細に分かれており，トレース取得ポイントによって，PRFトレース取得レベルが異なります。各機能レイヤの詳細なトレース取得ポイント，およびPRFトレース取得レベルについては，表7-2の参照先を参照してください。

参考

表7-2に示した機能レイヤのほか，Application Serverのプロセス，構成ソフトウェアおよび関連プログラムでも，PRFトレースが取得できるものがあります。

表7-2に示した以外でPRFトレースを取得できる機能レイヤとイベントIDの対応を，次の表に示します。

表7-3　表7-2に示した以外でPRFトレースを取得できる機能レイヤとイベントIDの対応

イベントID
機能レイヤ

0x9000～0x90FF
0xA400～0xA4FF
Cosminexus Web Services - Base

0x9100～0x91FF

uCosminexus TP1 Connector

TP1/Client/J

0x9200～0x92FF
TP1/MQ Access

0x9300～0x93FF
Cosminexus RM

0x9800～0x9B6E
HCSCサーバ

0x9F00～0x9FFF
uCosminexus Service Adapter for Object Access

0x9E00～0x9EFF
uCosminexus Service Coordinator Interactive Workflow

0xA000～0xA0FF
uCosminexus Service Adapter for Flat Files

0xA200～0xA2FF
uCosminexus Service Adapter for Message Queue

0xAB00～0xABFF
0xAC00～0xACFF
uCosminexus Service Adapter

(2)　PRFトレース取得レベル

性能解析トレースでは，次の4種類のPRFトレース取得レベルを設定してトレースを出力できます。レベルによって，トレース取得ポイントの数が異なります。トレース取得ポイント，およびPRFトレース取得レベルについては，表7-2の参照先を参照してください。

標準レベル
各機能レイヤの境界（入り口と出口）を識別できるトレース情報を出力します。

詳細レベル
標準レベルの出力内容に加えて，各機能レイヤ内処理のトレース情報も出力します。

保守レベル
障害発生時などの保守情報を取得するためのレベルです。

抑止レベル
トレース情報の出力を抑止するためのレベルです。RMIの機能レイヤにだけ設定できます。

Management Serverを利用して運用している場合は，簡易構築定義ファイルで，すべての機能レイヤに対して共通のレベルを設定して，トレース情報を出力します。

なお，次節以降は，トレース取得レベルが標準レベルと詳細レベルのトレース取得ポイントについて説明します。保守レベルは，障害発生時などの保守情報を取得するためのレベルのため，通常は収集する必要はありません。

7.3　CTMのトレース取得ポイント

ここでは，CTMでのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.3.1　トレース取得ポイントとPRFトレース取得レベル

7.3.2　取得できるトレース情報

7.3.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-4　CTMでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x1101 | 21 | OTMゲートウェイからのリクエスト送信直前 | A
0x1102 | 22 | OTMゲートウェイからのレスポンス受信直前 | A
0x1301 | 4 | EJBレギュレータからのリクエスト送信直前 | A
0x1302 | 13 | EJBレギュレータへのレスポンス受信直後 | A
0x1401 | 1 | CTM内のCreateメソッドの入り口 | A
0x1402 | 2 | CTM内のCreateメソッドの出口 | A
0x1403 | 5 | EJBレギュレータからのリクエスト受信直後 | A
0x1404 | 8 | CTMからJ2EEサーバまたはバッチサーバへのリクエスト送信直前 | A
0x1405 | 9 | CTMでの，J2EEサーバまたはバッチサーバからのリクエスト受信直後 | A
0x1406 | 12 | CTMからEJBレギュレータへのレスポンス送信直前 | A
0x2002 | 23 | OTMクライアントからのリクエスト受信直前 | A
0x2003 | 24 | OTMクライアントからのレスポンス受信直前 | A
0x2101 | 3 | EJBクライアントまたはcjexecjobコマンドからのリクエスト受信直後 | A
0x2102 | 14 | EJBクライアントまたはcjexecjobコマンドへのレスポンス送信直前 | A
0x2103 | 15 | CTM内のRemoveメソッドの入り口 | A
0x2104 | 16 | CTM内のRemoveメソッドの出口 | A
0x3000 | 6 | リクエストをキューイングする直前 | A
0x3001 | 7 | キューからリクエストを取り出した直後 | A
0x3002 | 17 | 他CTMへのリクエスト送信直前 | A
0x3003 | 18 | 他CTMからのリクエスト受信直後 | A
0x3004 | 10 | リクエスト応答をキューイングする直前 | B
0x3005 | 11 | キューからリクエスト応答を取り出した直後 | B
0x3006 | 19 | 他CTMへのリクエスト応答送信直前 | A
0x3007 | 20 | 他CTMからのリクエスト応答受信直後 | A
0x3008 | － | サーバ状態変更時に取得されます。（リクエスト処理中には取得されません） | B

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-5～図7-8中の番号と対応しています。

CTMでのトレース取得ポイントを次の図に示します。

図7-5　CTMのトレース取得ポイント

ほかのCTMと連携している場合は，次の図に示す場所でもトレース情報を取得します。上記の図とあわせて参照してください。なお，この図では，ほかのCTMと連携している個所だけを取り上げています。

図7-6　CTMのトレース取得ポイント（他CTMと連携している場合）

また，OTMゲートウェイまたはORBゲートウェイを使用する場合は，次の図に示す場所でもトレース情報を取得します。上記の図とあわせて参照してください。なお，この図では，ほかのCTMと連携している個所だけを取り上げています。

図7-7　CTMのトレース取得ポイント（OTMゲートウェイを使用する場合）

図7-8　CTMのトレース取得ポイント（ORBゲートウェイを使用する場合）

7.3.2　取得できるトレース情報

CTMで取得できるトレース情報を次の表に示します。

表7-5　CTMで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x1401 | A | リモートインタフェース名 | メソッド名 | －
2 | 0x1402 | A | リモートインタフェース名 | メソッド名 | 内部情報
3 | 0x2101 | A | リモートインタフェース名 | メソッド名 | －
4 | 0x1301 | A | リモートインタフェース名 | メソッド名 | －
5 | 0x1403 | A | リモートインタフェース名 | メソッド名 | －
6 | 0x3000 | A | － | － | －
7 | 0x3001 | A | － | － | 内部情報
8 | 0x1404 | A | リモートインタフェース名 | メソッド名 | 内部情報
9 | 0x1405 | A | リモートインタフェース名 | メソッド名 | 内部情報
10 | 0x3004 | B | － | － | －
11 | 0x3005 | B | － | － | 内部情報
12 | 0x1406 | A | リモートインタフェース名 | メソッド名 | －
13 | 0x1302 | A | リモートインタフェース名 | メソッド名 | －
14 | 0x2102 | A | リモートインタフェース名 | メソッド名 | －
15 | 0x2103 | A | リモートインタフェース名 | メソッド名 | －
16 | 0x2104 | A | リモートインタフェース名 | メソッド名 | －
17 | 0x3002 | A | － | － | －
18 | 0x3003 | A | － | － | －
19 | 0x3006 | A | － | － | －
20 | 0x3007 | A | － | － | －
21 | 0x1101 | A | リモートインタフェース名 | メソッド名 | －
22 | 0x1102 | A | リモートインタフェース名 | メソッド名 | －
23 | 0x2002 | A | リモートインタフェース名 | メソッド名 | －
24 | 0x2003 | A | リモートインタフェース名 | メソッド名 | －
－ | 0x3008 | B | － | － | 内部情報

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-5～図7-8中の番号と対応しています。

7.4　リダイレクタのトレース取得ポイント

ここでは，リダイレクタのトレース取得ポイントと，取得できるトレース情報について説明します。

なお，PRFトレース取得レベルを「詳細」にしている場合，リクエスト処理のトレースとセッショントレースが出力されます。

＜この節の構成＞

7.4.1　トレース取得ポイントとPRFトレース取得レベル

7.4.2　取得できるトレース情報

7.4.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。なお，「0x8003」のポイントで，セッショントレースは出力されません。

表7-6　リダイレクタでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8000 | 1 | リクエスト処理要求の取得直後 | A／B
0x8001 | 2 | Webコンテナへのリクエストヘッダ情報の送信直後 | A／B
0x8002 | 4 | WebコンテナからのHTTPリクエストボディ情報の要求受信直後 | B
0x8003 | 6 | WebコンテナからのHTTPレスポンスヘッダ情報の受信直後 | B
0x8004 | 8 | WebコンテナからのHTTPレスポンスボディ情報の送信開始直後 | B
0x8100 | 11 | リダイレクタ処理完了直後 | A／B
0x8101 | 10 | Webコンテナからのレスポンス完了通知の受信直後 | A／B
0x8102 | 3，5 | WebコンテナへのHTTPリクエストボディ情報の送信直前 | B
0x8103 | 7 | HTTPレスポンスヘッダ情報の設定完了直後 | B
0x8104 | 9 | WebサーバへのHTTPレスポンスボディ情報の送信完了直後 | B

（凡例）B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-9中の番号と対応しています。

リダイレクタでのトレース取得ポイントを次の図に示します。

図7-9　リダイレクタのトレース取得ポイント

コネクションは，通常，常設コネクションのために使い回されるため，リクエストのたびに切断されることはありません。コネクションは，通信で例外が発生した場合，または常設コネクションの上限数に達していた場合だけ切断されます。

次に示すポイントでは，トレース情報が出力される場合が制限されます。

3のポイント

ボディデータの形式がチャンク形式ではない場合にトレース情報が出力されます。ボディデータの形式がチャンク形式の場合，2と4のポイント間のWebサーバへのリクエストボディ要求およびWebコンテナへのリクエストボディ情報が送信されません。

4と5のポイント

Webコンテナからリクエストボディ情報の要求があった場合だけトレース情報が出力されます。また，4，5，8，9のポイントでは，リクエストボディ情報とレスポンスボディ情報が複数回クライアントに送信されることがあるため，トレース情報も複数回出力されることがあります。

また，次に示すポイントでは，無効なセッションIDを取得する場合や，セッションIDを取得しない場合があります。

1～5のポイント

セッションIDを取得できます。ただし，リクエストヘッダのCookieまたはURLからセッションIDを取得するため，無効なセッションID（J2EEアプリケーションで破棄されたHttpSessionのIDまたは有効期限切れで破棄されたHttpSessionのID）を取得する場合があります。

また，有効なセッションIDを取得した場合も，J2EEアプリケーションでセッションが破棄されることがあります。

7～11のポイント

セッションを生成した場合だけ，セッションIDを取得できます。

7.4.2　取得できるトレース情報

リダイレクタで取得できるトレース情報を次の表に示します。

表7-7　リダイレクタで取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8000 | A／B | クライアントのアドレス：HTTPメソッド | URI | ※2
2 | 0x8001 | A／B | コンテナのアドレス：ポート番号 | － | ※2
3，5 | 0x8102 | B | 送信サイズ | － | <入り口時刻><セッションID文字数:セッションID:取得方法>
4 | 0x8002 | B | 要求サイズ | － | <セッションID文字数:セッションID:取得方法>
6 | 0x8003 | B | － | － | －
7 | 0x8103 | B | － | － | ※3
8 | 0x8004 | B | 送信サイズ | － | <セッションID文字数:セッションID:取得方法>
9 | 0x8104 | B | 送信できたサイズ | － | <入り口時刻><セッションID文字数:セッションID>
10 | 0x8101 | A／B | コンテナのアドレス：ポート番号 | － | ※4
11 | 0x8100 | A／B | クライアントのアドレス：HTTPメソッド | URI | ※5

（凡例）B：詳細　A／B：標準と詳細で異なる情報を取得　－：該当なし

注※1　図7-9中の番号と対応しています。

注※2　レベルが「標準」の場合，何も出力されません。レベルが「詳細」の場合，セッションID文字数:セッションID:取得方法が出力されます。

注※3　正常に処理された場合，入り口時刻とセッションIDが表示されます。例外が発生した場合，入り口時刻に加え，4バイトの保守情報，およびセッションID文字数:セッションIDが表示されます。

注※4　レベルが「標準」の場合，入り口時刻が表示されます。レベルが「詳細」の場合，入り口時刻に加え，セッションID文字数:セッションIDが表示されます。

注※5　レベルが「標準」の場合，常に，入り口時刻とステータスコードが表示されます。ただし，Microsoft IIS使用時に例外が発生した場合は，入り口時刻とステータスコードに加え，4バイトの保守情報が表示されます。レベルが「詳細」の場合，レベルが「標準」の場合の情報に加え，セッションID文字数:セッションIDが表示されます。

7.5　Webコンテナのトレース取得ポイント（リクエスト処理のトレース）

ここでは，Webコンテナのトレース取得ポイントと，取得できるトレース情報について説明します。なお，Webコンテナでは，リクエスト処理のトレースとセッショントレースが出力されます。ここでは，リクエスト処理のトレースについて説明します。また，インプロセスHTTPサーバを使用したときのトレースポイントと取得できるトレース情報についても説明します。

＜この節の構成＞

7.5.1　トレース取得ポイントとPRFトレース取得レベル

7.5.2　取得できるトレース情報

7.5.3　トレース取得ポイントとPRFトレース取得レベル（インプロセスHTTPサーバを使用した場合）

7.5.4　取得できるトレース情報

7.5.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-8　Webコンテナでのトレース取得ポイントの詳細（リクエスト処理のトレース）

イベントID
図中の番号※
トレース取得ポイント
レベル

0x8200
1
リクエスト取得・リクエストヘッダ解析完了直後
Webサーバ経由の場合
A

0x8201
簡易Webサーバ経由の場合
A

0x8202
3
サーブレット／JSPの呼び出し直前
A

0x8203
2
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8206
4
RequestDispatcher経由のサーブレット／JSP呼び出し直前
B

0x8207
3
静的コンテンツの呼び出し
B

0x8300
8
リクエスト処理完了
Webサーバ経由の場合
A

0x8301
簡易Webサーバ経由の場合
A

0x8302
6
サーブレット／JSPの処理完了直後
A

0x8303
7
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8306
5
RequestDispatcher経由のサーブレット／JSP処理完了直後
B

0x8307
6
静的コンテンツの処理完了直後（DefaultServlet）
B

（凡例）A：標準　B：詳細

注※　図7-10中の番号と対応しています。

Webコンテナでのトレース取得ポイントを次の図に示します。

図7-10　Webコンテナのトレース取得ポイント（リクエスト処理のトレース）

7.5.2　取得できるトレース情報

Webコンテナで取得できるトレース情報を次の表に示します。

表7-9　Webコンテナで取得できるトレース情報（リクエスト処理のトレース）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8201
A
HTTPメソッド
URI
－

2
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

3
0x8202
A
クラス名またはJSPファイル名
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

4
0x8206
B
クラス名
ディスパッチのタイプ
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

5
0x8306
B
クラス名
ディスパッチのタイプ
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

6
0x8302
A
クラス名またはJSPファイル名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

7
0x8303
B
クラス名
－

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

8
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻>ステータスコード

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8301
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-10中の番号と対応しています。

参考

SOAPクライアント以外のリクエストを受信した場合，トレース情報のキー情報である「クライアントアプリケーション情報」には，常に0が表示されます。SOAPクライアントのリクエストを受信した場合だけ，「クライアントアプリケーション情報」が出力されます。

7.5.3　トレース取得ポイントとPRFトレース取得レベル（インプロセスHTTPサーバを使用した場合）

インプロセスHTTPサーバを使用した場合のイベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-10　インプロセスHTTPサーバでのトレース取得ポイントの詳細

イベントID
図中の番号※
トレース取得ポイント
レベル

0x8202
5
サーブレット／JSP呼び出し直前
A／B

0x8203
4
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8206
6
RequestDispatcher経由のサーブレット／JSP呼び出し直前
B

0x8207
5
静的コンテンツの呼び出し直前
B

0x8211
3
リクエスト取得時／リクエストヘッダ解析完了直後
A／B

0x8212
1
Webクライアントからのデータ読み込み開始直前
B

0x8213
8
Webクライアントへのデータ書き込み開始直前
B

0x8302
10
サーブレット／JSP処理完了直後
A

0x8303
11
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8306
7
RequestDispatcher経由のサーブレット／JSP処理完了直後
B

0x8307
10
静的コンテンツの処理完了直後（DefaultServlet）
B

0x8311
12
リクエスト処理完了直後
A／B

0x8312
2
Webクライアントからのデータ読み込み完了直後
B

0x8313
9
Webクライアントへのデータ書き込み完了直後
B

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-11中の番号と対応しています。

インプロセスHTTPサーバを使用した場合のトレース取得ポイントを次の図に示します。

図7-11　インプロセスHTTPサーバのトレース取得ポイント

なお，1および2のポイントはリクエスト情報をクライアントから複数回受信することがあるため，トレース情報も複数回出力されることがあります。

8および9のポイントはレスポンス情報が複数回クライアントに送信されることがあるため，トレース情報も複数回出力されることがあります。

フィルタからリクエストボディ情報の要求や，レスポンスの送信を行なった場合も，1および2または8および9のトレースは出力されます。

7.5.4　取得できるトレース情報

インプロセスHTTPサーバで取得できるトレース情報を次の表に示します。

表7-11　インプロセスHTTPサーバで取得できるトレース情報（リクエスト処理のトレース）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8212
B
要求サイズ
－
－

2
0x8312
B
読み込んだサイズ
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

4
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

5
0x8202
A
クラス名またはJSPファイル名
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

6
0x8206
B
クラス名
ディスパッチのタイプ
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8306
B
クラス名
ディスパッチのタイプ
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

8
0x8213
B
書き込みサイズ
－
－

9
0x8313
B
書き込んだサイズ
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

10
0x8302
A
クラス名またはJSPファイル名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

11
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

12
0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-11中の番号と対応しています。

7.6　Webコンテナのトレース取得ポイント（セッショントレース）

ここでは，Webコンテナのトレースのトレース取得ポイントと，取得できるトレース情報について説明します。なお，Webコンテナでは，リクエスト処理のトレースとセッショントレースが出力されます。ここでは，セッショントレース，およびグローバルセッションについてのトレース取得ポイントと取得できるトレース情報について説明します。

＜この節の構成＞

7.6.1　トレース取得ポイントとPRFトレース取得レベル（セッショントレース）

7.6.2　取得できるトレース情報

7.6.1　トレース取得ポイントとPRFトレース取得レベル（セッショントレース）

セッショントレースに関連するトレースの，イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。なお，「0x8203」，「0x8202」，「0x8207」，「0x8206」および「0x8300」では，グローバルセッションについての情報も出力されます。

表7-12　Webコンテナでのトレース取得ポイントの詳細（セッショントレース）

イベントID
図中の番号※1
トレース取得ポイント
レベル※2

0x8200
1
リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由の場合）
A／B

0x8202
4，9
サーブレット／JSP呼び出し直前
A／B

0x8203
2，3
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略した場合，または<dispatcher>タグで"REQUEST"を指定したフィルタを呼び出した場合）
B

0x8206
7
RequestDispatcher経由のサーブレット／JSP呼び出し直前
B

0x8207
4，9
静的コンテンツ呼び出し直前（DefaultServlet）
B

0x8208
5
セッション生成後
B

0x8209
6
セッション破棄後
B

0x8210
17
セッションタイムアウト後
B

0x8211
1
リクエスト取得・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由の場合）
A／B

0x8214
8
フォワード時に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"FORWARD"を指定したフィルタを呼び出した場合）
B

0x8215
8
インクルード時に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"INCLUDE"を指定したフィルタを呼び出した場合）
B

0x8216
2
エラーページに転送される際に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタを呼び出した場合）
B

0x8300
16
リクエスト処理完了直後（Webサーバ経由の場合）
A／B

0x8302
10，13
サーブレット／JSP処理完了直後
A／B

0x8303
14，15
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで""REQUEST""を指定したフィルタの処理が完了した場合）
B

0x8306
12
RequestDispatcher経由のサーブレット／JSP処理完了直後
B

0x8307
10，13
静的コンテンツ処理完了直後（DefaultServlet）
B

0x8311
16
リクエスト処理完了直後（インプロセスHTTPサーバ経由の場合）
A／B

0x8314
11
フォワード時に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"FORWARD"を指定したフィルタの処理が完了した場合）
B

0x8315
11
インクルード時に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"INCLUDE"を指定したフィルタの処理が完了した場合）
B

0x8316
15
エラーページに転送される際に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタの処理が完了した場合）
B

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※1　図7-12中の番号と対応しています。

注※2　セッショントレースについての情報はレベルが「詳細」の場合だけ出力されます。

Webコンテナでのセッショントレースのトレース取得ポイントを次の図に示します。

図7-12　Webコンテナのトレース取得ポイント（セッショントレース）

それぞれのポイントで取得できるセッションIDについて説明します。

1のポイント

セッションIDを取得できます。ただし，リクエストヘッダのCookieまたはURLからセッションIDを取得するため，無効なセッションID（J2EEアプリケーションで破棄されたHttpSessionのIDまたは有効期限切れで破棄されたHttpSessionのID）を取得する場合があります。

また，有効なセッションIDを取得した場合も，J2EEアプリケーションでセッションが破棄される場合があります。

2，3，4，7，8，9のポイント

トレース取得ポイントで有効なセッションIDを取得できます。ただし，J2EEアプリケーションでセッションが破棄される場合があります。

また，これらのポイントでは，グローバルセッションIDも取得できます。取得できるグローバルセッションIDの内容は，トレース取得ポイントごとに異なります。

2のポイントは，一つのリクエストで最初にイベントID「0x8203」が出力されるトレース取得ポイントです。このトレース取得ポイントでは，Webクライアントからリクエストとして送信されたグローバルセッションIDが取得できます。ただし，このポイントでは，すでに無効になっているグローバルセッションIDが出力される場合もあります。

3，4，7，8，9のポイントで出力される，イベントIDが「0x8216」「0x8202」「0x8203」「0x8206」「0x8207」「0x8214」「0x8215」のトレースには，その時点で有効なグローバルセッションIDが取得できます。

5のポイント

J2EEアプリケーションでセッションが生成された場合だけ，トレース取得ポイントで有効なセッションIDを取得できます。ただし，J2EEアプリケーションでセッションが破棄される場合があります。

6のポイント

J2EEアプリケーションでセッションが破棄された場合だけ，トレース取得ポイントで無効になったセッションIDを取得できます。ただし，J2EEアプリケーションでセッションが破棄される場合があります。

10，11，12，13のポイント

トレース取得ポイントで有効なセッションIDを取得できます。ただし，J2EEアプリケーションでセッションが破棄される場合があります。

14，15のポイント

トレース取得ポイントで有効なセッションIDを取得できます。なお，このトレース取得ポイントでリクエスト処理が完了すると，以降のJ2EEアプリケーションでセッションが破棄されることはありません。

16のポイント

トレース取得ポイントで有効なセッションIDを取得できます。なお，このトレース取得ポイントでリクエスト処理が完了すると，以降のJ2EEアプリケーションでセッションが破棄されることはありません。

また，グローバルセッションを生成した場合，リクエスト処理が終了した時点で有効なグローバルセッションIDを取得できます。

17のポイント

有効期限を超えたセッションが破棄された場合だけ，無効になったセッションIDを取得できます。

7.6.2　取得できるトレース情報

セッショントレースについて，Webコンテナで取得できるトレース情報を次の表に示します。なお，イベントIDが「0x8202」，「0x8203」，「0x8206」，「0x8207」，「0x8214」，「0x8215」，「0x8300」および「0x8311」のトレース取得ポイントでは，グローバルセッションについての情報も出力されます。

表7-13　Webコンテナで取得できるトレース情報（セッショントレース）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

4，9
0x8202
A
クラス名（JSP呼び出し時はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

2，3
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8206
B
クラス名
ディスパッチのタイプ
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

4，9
0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

5
0x8208
B
コンテキストルート名
セッション有効期間
<セッションID文字数:セッションID>

6
0x8209
B
コンテキストルート名
セッション生成時刻
<セッションID文字数:セッションID>

17
0x8210
B
コンテキストルート名
セッション有効期間:セッション生成時刻
<セッションID文字数:セッションID>

1
0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

8
0x8214
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

8
0x8215
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

2
0x8216
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

16
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

10，13
0x8302
A
クラス名（JSP呼び出し時はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

14，15
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

12
0x8306
B
クラス名
ディスパッチのタイプ
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

10，13
0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

16
0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

11
0x8314
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

11
0x8315
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

15
0x8316
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-12中の番号と対応しています。

7.7　Webコンテナのトレース取得ポイント（フィルタのトレース）

ここでは，フォワード時，またはインクルード時に呼び出されるフィルタを設定した場合のWebコンテナのトレースのトレース取得ポイントと，取得できるトレース情報について説明します。

なお，フォワード時，またはインクルード時に呼び出されるフィルタを設定した場合のWebコンテナでは，正常に処理が終了した場合と障害が発生した場合で取得できるトレース情報が異なります。ここでは，それぞれの場合について説明します。

なお，JSPのpageディレクティブでerrorPage属性を使用しエラーページを設定して，JSPで例外が発生した場合，リクエストのforwardでエラーページが表示されます。したがって，JSPでエラーページを表示する場合も，forward時のトレースが出力されます。

＜この節の構成＞

7.7.1　正常に処理が終了した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

7.7.2　例外が発生した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

7.7.1　正常に処理が終了した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-14　正常終了時のWebコンテナでのトレース取得ポイントの詳細（フィルタのトレース）

イベントID
図中の番号※
トレース取得ポイント
レベル

0x8200
1
リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由）
A／B

0x8201
1
リクエスト取得時・リクエストヘッダ解析完了直後（簡易Webサーバ経由）
A

0x8202
3
サーブレット／JSPの呼び出し直前
A／B

0x8202
6
サーブレット／JSPの呼び出し直前
A／B

0x8203
2
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8206
4
RequestDispatcher経由のサーブレット／JSP呼び出し直前
B

0x8207
6
静的コンテンツ呼び出し直前（DefaultServlet）
B

0x8211
1
リクエスト取得時・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由）
A／B

0x8214
5
フォワード時に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグで"FORWARD"を指定したフィルタ）
B

0x8215
5
インクルード時に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"INCLUDE"を指定したフィルタ）
B

0x8300
12
リクエスト処理完了直後（Webサーバ経由）
A／B

0x8301
12
リクエスト処理完了直後（簡易Webサーバ経由）
A

0x8302
7
サーブレット／JSPの処理完了直後
A／B

0x8302
10
サーブレット／JSPの処理完了直後
A／B

0x8303
11
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8306
9
RequestDispatcher経由のサーブレット／JSP処理完了直後
B

0x8307
7
静的コンテンツ処理完了直後(DefaultServlet)
B

0x8311
12
リクエスト処理完了直後（インプロセスHTTPサーバ経由）
A／B

0x8314
8
フォワード時に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"FORWARD"を指定したフィルタ）
B

0x8315
8
インクルード時に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"INCLUDE"を指定したフィルタ）
B

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-13中の番号と対応しています。

フォワード時，またはインクルード時に呼び出されるフィルタを設定した場合のWebコンテナでのトレース取得ポイントを次の図に示します。

図7-13　正常終了時のWebコンテナでのトレース取得ポイント（フィルタのトレース）

(2)　取得できるトレース情報

フォワード時，またはインクルード時に呼び出されるフィルタを設定した場合のWebコンテナで取得できるトレース情報を次の表に示します。

表7-15　正常終了時のWebコンテナで取得できるトレース情報（フィルタのトレース）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8201
A
HTTPメソッド
URI
－

0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

2
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

3
0x8202
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

4
0x8206
B
クラス名
ディスパッチのタイプコンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

5
0x8214
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8215
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

6
0x8202
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8302
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

8
0x8314
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8315
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

9
0x8306
B
クラス名
ディスパッチのタイプコンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

10
0x8302
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

11
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

12
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8301
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-13中の番号と対応しています。

7.7.2　例外が発生した場合のWebコンテナのトレース取得ポイント（フィルタのトレース）

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-16　例外が発生した場合のWebコンテナでのトレース取得ポイントの詳細（フィルタのトレース）

イベントID
図中の番号※
トレース取得ポイント
レベル

0x8200
1
リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由）
A／B

0x8201
1
リクエスト取得時・リクエストヘッダ解析完了直後（簡易Webサーバ経由）
A

0x8202
3
サーブレット／JSPの呼び出し直前
A／B

0x8202
8
サーブレット／JSPの呼び出し直前
A／B

0x8203
2
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8206
6
RequestDispatcher経由のサーブレット／JSP呼び出し直前
B

0x8207
8
静的コンテンツ呼び出し直前（DefaultServlet）
B

0x8211
1
リクエスト取得時・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由）
A／B

0x8216
7
エラーページに転送される際に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタ）
B

0x8300
12
リクエスト処理完了直後（Webサーバ経由）
A／B

0x8301
12
リクエスト処理完了直後（簡易Webサーバ経由）
A

0x8302
4，9
サーブレット／JSPの処理完了直後
A／B

0x8303
5
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ）
B

0x8306
11
RequestDispatcher経由のサーブレット／JSP処理完了直後
B

0x8307
9
静的コンテンツ処理完了直後(DefaultServlet)
B

0x8311
12
リクエスト処理完了直後（インプロセスHTTPサーバ経由）
A／B

0x8316
10
エラーページに転送される際に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタ）
B

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-14中の番号と対応しています。

例外が発生した場合のWebコンテナでのトレース取得ポイントを次の図に示します。

図7-14　例外が発生した場合のWebコンテナでのトレース取得ポイント

(2)　取得できるトレース情報

フォワード時，またはインクルード時に呼び出されるフィルタを設定した場合のWebコンテナで取得できるトレース情報を次の表に示します。

表7-17　例外が発生した場合のWebコンテナで取得できるトレース情報（フィルタのトレース）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8201
A
HTTPメソッド
URI
－

0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

2
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

3
0x8202
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

4
0x8302
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

5
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

6
0x8206
B
クラス名
ディスパッチのタイプコンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8216
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

8
0x8202
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

9
0x8302
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

10
0x8316
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

11
0x8306
B
クラス名
ディスパッチのタイプ
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

12
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8301
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-14中の番号と対応しています。

7.8　Webコンテナのトレース取得ポイント（データベースセッションフェイルオーバ機能のトレース）

ここでは，データベースセッションフェイルオーバ機能を使用した場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.8.1　HTTPセッションを作成するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.2　HTTPセッションを更新するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.3　HTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.4　有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

7.8.1　HTTPセッションを作成するリクエスト処理のトレース取得ポイントと取得できるトレース情報

HTTPセッションを作成するリクエスト処理のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-18　HTTPセッションを作成するリクエスト処理のトレース取得ポイントの詳細（データベースセッションフェイルオーバ機能）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8200 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由） | A／B
0x8202 | 2 | サーブレット／JSP呼び出し直前 | A／B
0x8203 | 2 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8207 | 2 | 静的コンテンツ呼び出し直前（DefaultServlet） | B
0x8211 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由） | A／B
0x8219 | 6 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のシリアライズ開始直前 | A
0x8222 | 8 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理後のデータベースアクセス開始直前 | A
0x8223 | 3 | データベースセッションフェイルオーバ機能によるHTTPセッション作成時のデータベースアクセス開始直前 | A
0x8300 | 10 | リクエスト処理完了直後（Webサーバ経由） | A／B
0x8302 | 5 | サーブレット／JSP処理完了直後 | A／B
0x8303 | 5 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8307 | 5 | 静的コンテンツ処理完了直後（DefaultServlet） | B
0x8311 | 10 | リクエスト処理完了直後（インプロセスHTTPサーバ経由） | A／B
0x8316 | 5 | エラーページに転送される際に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタ） | B
0x8319 | 7 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のシリアライズ終了直後 | A
0x8322 | 9 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理後のデータベースアクセス終了直後 | A
0x8323 | 4 | データベースセッションフェイルオーバ機能によるHTTPセッション作成時のデータベースアクセス終了直後 | A

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-15中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-15　HTTPセッションを作成するリクエスト処理のトレース取得ポイント（データベースセッションフェイルオーバ機能）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-19　HTTPセッションを作成するリクエスト処理で取得できるトレース情報（データベースセッションフェイルオーバ機能）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8211
A
HTTPメソッド
URI

－

B
<セッションID文字数:セッションID:取得方法>

2
0x8202
A
クラス名
（JSP呼び出し時はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

3
0x8223
A
－
－
－

4
0x8323
A

完全性保障モードが有効な場合

排他を取得したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻><セッションID文字数:作成したHTTPセッションのセッションID>

例外発生時
<入り口時刻><例外名>

5
0x8302
A
クラス名
（JSP呼び出し時はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8316
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

6
0x8219
A
リクエストURL
－
<セッションID文字数:セッションID>

7
0x8319
A
リクエストURL
シリアライズ後のHTTPセッションの属性情報のサイズ（バイト）

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

8
0x8222
A
－
－
<セッションIDの文字数:HTTPセッションのセッションID>

9
0x8322
A

完全性保障モードが有効な場合

排他を解放したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

10
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
＜入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID＞

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-15中の番号と対応しています。

7.8.2　HTTPセッションを更新するリクエスト処理のトレース取得ポイントと取得できるトレース情報

HTTPセッションを更新するリクエスト処理のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-20　HTTPセッションを更新するリクエスト処理のトレース取得ポイントの詳細（データベースセッションフェイルオーバ機能）

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0x8200 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由） | A／B
0x8202 | 6 | サーブレット／JSP呼び出し直前 | A／B
0x8203 | 6 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8207 | 6 | 静的コンテンツ呼び出し直前（DefaultServlet） | B
0x8211 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由） | A／B
0x8219※2 | 8 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のシリアライズ開始直前 | A
0x8220 | 4 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のデシリアライズ開始直前 | A
0x8221 | 2 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理前のデータベースアクセス開始直前 | A
0x8222※2 | 10 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理後のデータベースアクセス開始直前 | A
0x8300 | 12 | リクエスト処理完了直後（Webサーバ経由） | A／B
0x8302 | 7 | サーブレット／JSP処理完了直後 | A／B
0x8303 | 7 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8307 | 7 | 静的コンテンツ処理完了直後（DefaultServlet） | B
0x8311 | 12 | リクエスト処理完了直後（インプロセスHTTPサーバ経由） | A／B
0x8316 | 7 | エラーページに転送される時に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタ） | B
0x8319※2 | 9 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のシリアライズ終了直後 | A
0x8320 | 5 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のデシリアライズ終了直後 | A
0x8321 | 3 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理前のデータベースアクセス終了直後 | A
0x8322※2 | 11 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理後のデータベースアクセス終了直後 | A

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※1　図7-16中の番号と対応しています。

注※2　HTTPセッションの参照専用リクエストの場合，出力されません。

トレース取得ポイントを次の図に示します。

図7-16　HTTPセッションを更新するリクエスト処理のトレース取得ポイント（データベースセッションフェイルオーバ機能）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-21　HTTPセッションを更新するリクエスト処理で取得できるトレース情報（データベースセッションフェイルオーバ機能）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

2
0x8221
A
－
－
<セッションIDの文字数:リクエストで受信したセッションID>

3
0x8321
A

完全性保障モードが有効な場合

排他を取得したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

4
0x8220
A
リクエストURL
デシリアライズ前のHTTPセッションの属性情報のサイズ（バイト）
<セッションID文字数:セッションID>

5
0x8320
A
リクエストURL
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

6
0x8202
A
クラス名
（JSP呼び出し時はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8302
A
クラス名
（JSP呼び出し時はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8316
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

8
0x8219
A
リクエストURL
－
<セッションID文字数:セッションID>

9
0x8319
A
リクエストURL
シリアライズ後のHTTPセッションの属性情報のサイズ（バイト）

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

10
0x8222
A
－
－
<セッションIDの文字数:HTTPセッションのセッションID>

11
0x8322
A

完全性保障モードが有効な場合

排他を解放したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

12
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-16中の番号と対応しています。

7.8.3　HTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

HTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-22　HTTPセッションを無効化するリクエスト処理のトレース取得ポイントの詳細（データベースセッションフェイルオーバ機能）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8200 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（Webサーバ経由） | A／B
0x8202 | 6 | サーブレット／JSP呼び出し直前 | A／B
0x8203 | 6 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略，または<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8207 | 6 | 静的コンテンツ呼び出し直前（DefaultServlet） | B
0x8211 | 1 | リクエスト取得・リクエストヘッダ解析完了直後（インプロセスHTTPサーバ経由） | A／B
0x8220 | 4 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のデシリアライズ開始直前 | A
0x8221 | 2 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理前のデータベースアクセス開始直前 | A
0x8224 | 7 | データベースセッションフェイルオーバ機能によるHTTPセッション無効化時のデータベースアクセス開始直前 | A
0x8300 | 10 | リクエスト処理完了直後（Webサーバ経由） | A／B
0x8302 | 9 | サーブレット／JSP処理完了直後 | A／B
0x8303 | 9 | リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタ） | B
0x8307 | 9 | 静的コンテンツ処理完了直後（DefaultServlet） | B
0x8311 | 10 | リクエスト処理完了直後（インプロセスHTTPサーバ経由） | A／B
0x8316 | 9 | エラーページに転送される際に実行されるフィルタの処理完了直後（web.xmlの<filter-mapping>タグの<dispatcher>タグで"ERROR"を指定したフィルタ） | B
0x8320 | 5 | データベースセッションフェイルオーバ機能によるHTTPセッションの属性情報のデシリアライズ終了直後 | A
0x8321 | 3 | データベースセッションフェイルオーバ機能によるWebアプリケーション処理前のデータベースアクセス終了直後 | A
0x8324 | 8 | データベースセッションフェイルオーバ機能によるHTTPセッション無効化時のデータベースアクセス終了直後 | A

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得

注※　図7-17中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-17　HTTPセッションを無効化するリクエスト処理のトレース取得ポイント（データベースセッションフェイルオーバ機能）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-23　HTTPセッションを無効化するリクエスト処理で取得できるトレース情報（データベースセッションフェイルオーバ機能）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8200
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

0x8211
A
HTTPメソッド
URI
－

B
<セッションID文字数:セッションID:取得方法>

2
0x8221
A
－
－
<セッションIDの文字数:リクエストで受信したセッションID>

3
0x8321
A

完全性保障モードが有効な場合

排他を取得したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

4
0x8220
A
リクエストURL
デシリアライズ前のHTTPセッションの属性情報のサイズ（バイト）
<セッションID文字数:セッションID>

5
0x8320
A
リクエストURL
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

6
0x8202
A
クラス名
（JSP呼び出し時はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

7
0x8224
A
－
－
<セッションIDの文字数:無効化したHTTPセッションのセッションID>

8
0x8324
A

完全性保障モードが有効な場合

排他を解放したレコード番号

完全性保障モードが無効な場合

-1

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

9
0x8302
A
クラス名
（JSP呼び出し時はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

0x8316
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

10
0x8300
A
HTTPメソッド
URI

正常時
<入り口時刻><ステータスコード>

例外発生時
<入り口時刻><ステータスコード><例外名>

B

正常時
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

例外発生時
<入り口時刻><ステータスコード><例外名:セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

0x8311
A
HTTPメソッド
URI
<入り口時刻><ステータスコード>

B
<入り口時刻><ステータスコード><セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-17中の番号と対応しています。

7.8.4　有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報

有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-24　有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイントの詳細（データベースセッションフェイルオーバ機能）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8210 | 3 | セッションタイムアウト後 | B
0x8225 | 1 | データベース上のグローバルセッション情報の有効期限監視処理開始直前 | A
0x8325 | 2 | データベース上のグローバルセッション情報の有効期限監視処理終了直後 | A

（凡例）A：標準　B：詳細

注※　図7-18中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-18　有効期限監視でHTTPセッションを無効化するリクエスト処理のトレース取得ポイント（データベースセッションフェイルオーバ機能）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-25　有効期限監視でHTTPセッションを無効化するリクエスト処理で取得できるトレース情報（データベースセッションフェイルオーバ機能）

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8225※2
A
－
－
－

2
0x8325※2
A

グローバルセッション情報の有効期限チェックを実施した場合

無効化したグローバルセッションの個数

グローバルセッション情報の有効期限チェックを実施しなかった場合

現在，有効期限チェックを担当しているJ2EEサーバのJ2EEサーバ名（IPアドレス）

－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8210
B
コンテキストルート名
セッション有効期間：セッション生成時刻
<セッションID文字数:セッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-18中の番号と対応しています。

注※2　完全性保障モードが無効な場合は，出力されません。

7.9　Webコンテナのトレース取得ポイント（メモリセッションフェイルオーバ機能のトレース）

ここでは，メモリセッションフェイルオーバ機能を使用した場合のWebコンテナのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.9.1　トレース取得ポイントとPRFトレース取得レベル

7.9.2　取得できるトレース情報

7.9.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-26　Webコンテナでのトレース取得ポイントの詳細（メモリセッションフェイルオーバ機能）

イベントID
図中の番号※1
トレース取得ポイント
レベル

0x8203
1
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略した場合，または<dispatcher>タグで"REQUEST"を指定したフィルタを呼び出した場合）
B

0x8E01
2
スタブでのリクエスト送信処理の始まり
A

0x8E05
3
サーバ側のリクエスト受信処理
A

0x8405
4
EJBコンテナがリクエストを受信した直後
A

0x8406
5
EJBコンテナがレスポンスを送信する直前
A

0x8E06
6
サーバ側のレスポンス送信処理
A

0x8E02
7
スタブでのレスポンス受信処理の終わり
A

0x8218※2
8
メモリセッションフェイルオーバ機能のデシリアライズ開始直前
A

0x8318※2
9
メモリセッションフェイルオーバ機能のデシリアライズ終了直後
A

0x8203
10
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略した場合，または<dispatcher>タグで"REQUEST"を指定したフィルタを呼び出した場合）
B

0x8202
11
サーブレット／JSP呼び出し直前
A／B

0x8207
11
静的コンテンツ呼び出し直前（DefaultServlet）
B

0x8302
12
サーブレット／JSP処理完了直後
A／B

0x8307
12
静的コンテンツ処理完了直後（DefaultServlet）
B

0x8303
13
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの処理完了直後
（web.xmlの<filter-mapping>タグの<dispatcher>タグで"REQUEST"を指定したフィルタの処理が完了した場合）
B

0x8217※2
14
メモリセッションフェイルオーバ機能のシリアライズ開始直前
A

0x8317※2
15
メモリセッションフェイルオーバ機能のシリアライズ終了直後
A

0x8E01
16
スタブでのリクエスト送信処理の始まり
A

0x8E05
17
サーバ側のリクエスト受信処理
A

0x8405
18
EJBコンテナがリクエストを受信した直後
A

0x8406
19
EJBコンテナがレスポンスを送信する直前
A

0x8E06
20
サーバ側のレスポンス送信処理
A

0x8E02
21
スタブでのレスポンス受信処理の終わり
A

0x8203
22
リクエストを受信したサーブレット／JSPの実行前に実行されるフィルタの呼び出し直前
（web.xmlの<filter-mapping>タグの<dispatcher>タグを省略した場合，または<dispatcher>タグで"REQUEST"を指定したフィルタを呼び出した場合）
B

（凡例）A：標準　B：詳細　A／B：標準と詳細で異なる情報を取得　－：該当なし

注※1　図7-19中の番号と対応しています。

注※2　次の条件をすべて満たす場合に出力されます。

直列化可能クラスのオブジェクトの引き継ぎが有効である。

直列化対象のセッション情報が存在する。

メモリセッションフェイルオーバ機能でのトレース取得ポイントを次の図に示します。

図7-19　Webコンテナでのトレース取得ポイント（メモリセッションフェイルオーバ機能）

7.9.2　取得できるトレース情報

メモリセッションフェイルオーバ機能で取得できるトレース情報を次の表に示します。

表7-27　Webコンテナで取得できるトレース情報（メモリセッションフェイルオーバ機能）

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

2
0x8E01
A
インタフェース名
オペレーション名
－

3
0x8E05
A
－
－
－

4
0x8405
A
Bean名
メソッド名，引数の数
－

5
0x8406
A
Bean名
メソッド名，引数の数

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

6
0x8E06
A
－
－
－

7
0x8E02
A
インタフェース名（例外発生時はなし）
オペレーション名（例外発生時はなし）

正常時
なし

例外発生時
<例外名>

8
0x8218※2
A
リクエストURL
デシリアライズ前のグローバルセッション情報のサイズ（バイト）
グローバルセッションID文字数:グローバルセッションID

9
0x8318※2
A
リクエストURL
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

10
0x8203
B
クラス名
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

11
0x8202
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－
－

B
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

11
0x8207
B
－
コンテキストルート名
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

12
0x8302
A
クラス名（JSP呼び出しの場合はJSPファイル名）
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

B
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>＜例外名:セッションID文字数:セッションID>

12
0x8307
B
－
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>例外名:セッションID文字数:セッションID>

13
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻>例外名:セッションID文字数:セッションID>

14
0x8217※2
A
リクエストURL
なし
<セッションID文字数:セッションID:グローバルセッションID文字数:グローバルセッションID>

15
0x8317※2
A
リクエストURL
シリアライズ後のグローバルセッション情報のサイズ（バイト）※3

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

16
0x8E01
A
インタフェース名
オペレーション名
－

17
0x8E05
A
－
－
－

18
0x8405
A
Bean名
メソッド名，引数の数
－

19
0x8406
A
Bean名
メソッド名，引数の数

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

20
0x8E06
A
－
－
－

21
0x8E02
A
インタフェース名（例外発生時はなし）
オペレーション名（例外発生時はなし）

正常時
－

例外発生時
<例外名>

22
0x8303
B
クラス名
コンテキストルート名

正常時
<入り口時刻><セッションID文字数:セッションID>

例外発生時
<入り口時刻><例外名:セッションID文字数:セッションID>

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-19中の番号と対応しています。

注※2　次の条件をすべて満たす場合に出力されます。

直列化可能クラスのオブジェクトの引き継ぎが有効である。

直列化対象のセッション情報が存在する。

注※3　例外が発生した場合，0が表示されます。

7.10　EJBコンテナのトレース取得ポイント

ここでは，EJBコンテナのトレース取得ポイントと，取得できるトレース情報について，Session Bean，Entity Beanの場合，Message-driven Beanの場合，Timer Serviceを使用した場合，およびメソッドキャンセルが発生した場合に分けて説明します。

＜この節の構成＞

7.10.1　Session Bean，Entity Beanの場合

7.10.2　Message-driven Bean（EJB2.0）の場合

7.10.3　Message-driven Bean（EJB2.1以降）の場合

7.10.4　Timer Serviceの場合

7.10.5　メソッドキャンセルが発生した場合

7.10.1　Session Bean，Entity Beanの場合

Session Bean，Entity Beanのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-28　Session Bean，Entity Beanでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8401 | 1 | リモートホームインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8402 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8403 | 1 | ローカルホームインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8404 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8405 | 1 | リモートコンポーネントインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8406 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8407 | 1 | ローカルコンポーネントインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8408 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8409 | 2 | EJBコンテナがEJBのビジネスメソッドをコールバックする直前 | B
0x840A | 3 | EJBのビジネスメソッドのコールバックからリターンした直後 | B
0x8453 | 2 | EJBコンテナがEJBのホームメソッドをコールバックする直前 | B
0x8454 | 3 | EJBのホームメソッドのコールバックからリターンした直後 | B
0x8470 | 1 | リモートビジネスインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8471 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8472 | 1 | ローカルビジネスインタフェースの場合 | EJBコンテナがリクエストを受信した直後 | A
0x8473 | 4 | EJBコンテナがレスポンスを送信する直前 | A
0x8474 | 1 | リモートビジネスインタフェースの場合 | EJBコンテナがリモートビジネスインタフェース経由でStateful Session Beanのインスタンス作成リクエストを受信した直後 | A
0x8475 | 1 | EJBコンテナがリモートビジネスインタフェース経由でStateful Session Beanのインスタンス作成リクエストのレスポンスを送信する直前 | A
0x8476 | 1 | ローカルビジネスインタフェースの場合 | EJBコンテナがローカルビジネスインタフェース経由でStateful Session Beanのインスタンス作成リクエストを受信した直後 | A
0x8477 | 1 | EJBコンテナがローカルビジネスインタフェース経由でStateful Session Beanのインスタンス作成リクエストのレスポンスを送信する直前 | A

（凡例）A：標準　B：詳細

注※　図7-20中の番号と対応しています。

Session Bean，Entity Beanでのトレース取得ポイントを次の図に示します。

図7-20　Session Bean，Entity Beanのトレース取得ポイント

(2)　取得できるトレース情報

Session Bean，Entity Beanで取得できるトレース情報を次の表に示します。

表7-29　Session Bean，Entity Beanで取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8401
A
Bean名
メソッド名，引数の数
－

0x8403
A
Bean名
メソッド名，引数の数
－

0x8405
A
Bean名
メソッド名，引数の数
－

0x8407
A
Bean名
メソッド名，引数の数
－

0x8470
A
Bean名
メソッド名，引数の数
－

0x8472
A
Bean名
メソッド名，引数の数
－

0x8474
A
Bean名
－
－

0x8475
A
Bean名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8476
A
Bean名
－
－

0x8477
A
Bean名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

2
0x8409
B
Bean名
メソッド名，引数の数
－

0x8453
B
Bean名
メソッド名，引数の数
－

3
0x840A
B
Bean名
メソッド名，引数の数

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8454
B
Bean名
メソッド名，引数の数

4
0x8402
A
Bean名
メソッド名，引数の数

0x8404
A
Bean名
メソッド名，引数の数

0x8406
A
Bean名
メソッド名，引数の数

0x8408
A
Bean名
メソッド名，引数の数

0x8471
A
Bean名
メソッド名，引数の数

0x8473
A
Bean名
メソッド名，引数の数

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-20中の番号と対応しています。

7.10.2　Message-driven Bean（EJB2.0）の場合

Message-driven Bean（EJB2.0）のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-30　Message-driven Bean（EJB2.0）でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8425 | 1 | EJBコンテナでのメッセージ処理の始まり | A
0x8426 | 4 | EJBコンテナでのメッセージ処理の終わり | A
0x8427 | 2 | EJBコンテナがMessage-driven BeanのonMessageメソッドをコールバックする直前 | B
0x8428 | 3 | Message-driven BeanのonMessageメソッドのコールバックからリターンした直後 | B

（凡例）A：標準　B：詳細

注※　図7-21中の番号と対応しています。

Message-driven Bean（EJB2.0）でのトレース取得ポイントを次の図に示します。

図7-21　Message-driven Bean（EJB2.0）のトレース取得ポイント

(2)　取得できるトレース情報

Message-driven Bean（EJB2.0）で取得できるトレース情報を次の表に示します。

表7-31　Message-driven Bean（EJB2.0）で取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8425
A
Bean名
－
－

2
0x8427
B
－
－
－

3
0x8428
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

4
0x8426
A
Bean名
－

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-21中の番号と対応しています。

7.10.3　Message-driven Bean（EJB2.1以降）の場合

Message-driven Bean（EJB2.1以降）のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-32　Message-driven Bean（EJB2.1以降）でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x842D | 1 | Message-driven BeanのbeforeDelivery()メソッドの呼び出し直後 | A
0x842E | 2 | Message-driven BeanのbeforeDelivery()メソッドのリターン直前 | A
0x842F | 3 | リソースアダプタからMessage-driven Beanのメッセージリスナのメソッドを呼び出した直後 | A
0x8431 | 4 | EJBコンテナがMessage-driven Beanのメッセージリスナのメソッドをコールバックする直前 | A
0x8432 | 5 | Message-driven Beanのメッセージリスナのメソッドのコールバックからリターンした直後 | A
0x8430 | 6 | リソースアダプタから呼び出したMessage-driven Beanのメッセージリスナのメソッドのリターン直前 | A
0x8433 | 7 | Message-driven BeanのafterDelivery()メソッドの呼び出し直後 | A
0x8434 | 8 | Message-driven BeanのafterDelivery()メソッドのリターン直前 | A

（凡例）A：標準

注※　図7-22および図7-23中の番号と対応しています。

Message-driven Bean（EJB2.1以降）でのトレース取得ポイントを次の図に示します。

図7-22　Message-driven Bean（EJB2.1以降）のトレース取得ポイント（optionA※の場合）

注※　Connector 1.5仕様に記述されるメッセージ配送オプションを示します。

図7-23　Message-driven Bean（EJB2.1以降）のトレース取得ポイント（optionB※の場合）

注※　Connector 1.5仕様に記述されるメッセージ配送オプションを示します。

(2)　取得できるトレース情報

Message-driven Bean（EJB2.1以降）で取得できるトレース情報を次の表に示します。

表7-33　Message-driven Bean（EJB2.1以降）で取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x842D
A
Bean名
－
－

2
0x842E
A
Bean名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x842F
A
Bean名
メソッド名
－

4
0x8431
A
Bean名
メソッド名
－

5
0x8432
A
Bean名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

6
0x8430
A
Bean名
メソッド名

7
0x8433
A
Bean名
－
－

8
0x8434
A
Bean名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

（凡例）A：標準　－：該当なし

注※　図7-22および図7-23中の番号と対応しています。

7.10.4　Timer Serviceの場合

Timer Serviceのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　createTimerの場合

(2)　cancelの場合

(3)　コールバックの場合

(1)　createTimerの場合

(a)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-34　Timer Serviceでのトレース取得ポイントの詳細（createTimerの場合）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8460 | 1 | TimerService.createTimer(Date initialExpiration, long intervalDuration, Serializable info)処理開始 | A
0x8462 | 1 | TimerService.createTimer(Date expiration, Serializable info) 処理開始 | A
0x8464 | 1 | TimerService.createTimer(long initialDuration, long intervalDuration, Serializable info) 処理開始 | A
0x8466 | 1 | 'TimerService.createTimer(long duration, Serializable info) 処理開始 | A
0x8461 | 2 | TimerService.createTimer(Date initialExpiration, long intervalDuration, Serializable info)処理終了 | A
0x8463 | 2 | TimerService.createTimer(Date expiration, Serializable info) 処理終了 | A
0x8465 | 2 | 'TimerService.createTimer(long initialDuration, long intervalDuration, Serializable info) 処理終了 | A
0x8467 | 2 | TimerService.createTimer(long duration, Serializable info) 処理終了 | A

（凡例）A：標準

注※　図7-24中の番号と対応しています。

createTimerの場合のTimer Serviceでのトレース取得ポイントを次の図に示します。

図7-24　Timer Serviceのトレース取得ポイント（createTimerの場合）

(b)　取得できるトレース情報

createTimerの場合のTimer Serviceで取得できるトレース情報を次の表に示します。

表7-35　Timer Serviceで取得できるトレース情報（createTimerの場合）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8460
A
コールバック対象Beanのクラス名
－
引数情報

1
0x8462
A
コールバック対象Beanのクラス名
－
引数情報

1
0x8464
A
コールバック対象Beanのクラス名
－
引数情報

1
0x8466
A
コールバック対象Beanのクラス名
－
引数情報

2
0x8461
A
コールバック対象Beanのクラス名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻:例外名:メッセージ>

2
0x8463
A
コールバック対象Beanのクラス名
－

2
0x8465
A
コールバック対象Beanのクラス名
－

2
0x8467
A
コールバック対象Beanのクラス名
－

（凡例）A：標準　－：該当なし

注※　図7-24中の番号と対応しています。

(2)　cancelの場合

(a)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-36　Timer Serviceでのトレース取得ポイントの詳細（cancelの場合）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8468 | 1 | javax.ejb.Timer.cancel()処理開始 | A
0x8469 | 2 | javax.ejb.Timer.cancel()処理終了 | A

（凡例）A：標準

注※　図7-25中の番号と対応しています。

cancelの場合のTimer Serviceでのトレース取得ポイントを次の図に示します。

図7-25　Timer Serviceのトレース取得ポイント（cancelの場合）

(b)　取得できるトレース情報

cancelの場合のTimer Serviceで取得できるトレース情報を次の表に示します。

表7-37　Timer Serviceで取得できるトレース情報（cancelの場合）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8468
A
コールバック対象Beanのクラス名
－
－

2
0x8469
A
コールバック対象Beanのクラス名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

（凡例）A：標準　－：該当なし

注※　図7-25中の番号と対応しています。

(3)　コールバックの場合

(a)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-38　Timer Serviceでのトレース取得ポイントの詳細（コールバックの場合）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x846C | 1 | スレッドがコールバック処理開始 | B
0x846A | 2 | Enterprise Beanのタイムアウトコールバックメソッドをコールバック開始 | A
0x846B | 3 | Enterprise Beanのタイムアウトコールバックメソッドをコールバック終了 | A
0x846D | 4 | スレッドがコールバック処理終了 | B

（凡例）A：標準　B：詳細

注※　図7-26中の番号と対応しています。

コールバックの場合のTimer Serviceでのトレース取得ポイントを次の図に示します。

図7-26　Timer Serviceのトレース取得ポイント（コールバックの場合）

(b)　取得できるトレース情報

コールバックの場合のTimer Serviceで取得できるトレース情報を次の表に示します。

なお，ルートアプリケーション情報には，タイムアウトメソッドのコールバック時に取得する情報が出力されます。また，クライアントアプリケーション情報には「0」が出力されます。

表7-39　Timer Serviceで取得できるトレース情報（コールバックの場合）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x846C
B
コールバック対象Beanのクラス名
－
－

2
0x846A
A
コールバック対象Beanのクラス名
－
－

3
0x846B
A
コールバック対象Beanのクラス名
－

正常時
<入り口時刻>

例外発生時
<入り口時刻:例外名:メッセージ>

4
0x846D
B
コールバック対象Beanのクラス名
－

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-26中の番号と対応しています。

7.10.5　メソッドキャンセルが発生した場合

メソッドキャンセルが発生した場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-40　メソッドキャンセルが発生した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8490 | 1 | メソッドキャンセル処理開始 | A
0x8C41 | 2 | 障害調査用SQL出力 | A
0x8491 | 3 | メソッドキャンセル処理完了 | A

（凡例）A：標準

注※　図7-27中の番号と対応しています。

メソッドキャンセルが発生した場合のトレース取得ポイントを次の図に示します。

図7-27　メソッドキャンセルが発生した場合のトレース取得ポイント

(2)　取得できるトレース情報

メソッドキャンセルが発生した場合に取得できるトレース情報を次の表に示します。

表7-41　メソッドキャンセルが発生した場合に取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8490 | A | メソッドキャンセル対象のアプリケーションのルートアプリケーション情報 | － | －
2 | 0x8C41 | A | トランザクションタイムアウト，J2EEアプリケーション強制停止，またはメソッドキャンセルされたコネクションのルートアプリケーション情報 | － | SQL文
3 | 0x8491 | A | － | － | <入り口時刻>

（凡例）A：標準　－：該当なし

注※　図7-27中の番号と対応しています。

7.11　JNDIのトレース取得ポイント

ここでは，JNDIのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.11.1　トレース取得ポイントとPRFトレース取得レベル

7.11.2　取得できるトレース情報

7.11.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-42　JNDIでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8603 | 1 | JNDI内部の名前空間，またはCORBAネーミングサービスの検索時 | javax.naming.Context.lookup | 呼び出し直後 | A
0x8604 | 2 | リターン直前 | A
0x8605 | 1 | javax.naming.Context.list | 呼び出し直後 | B
0x8606 | 2 | リターン直前 | B
0x8607 | 1 | javax.naming.Context.listBindings | 呼び出し直後 | B
0x8608 | 2 | リターン直前 | B
0x8609 | 1 | javax.ejb.EJBLocalHomeが保存されている名前空間の検索時 | javax.naming.Context.lookup | 呼び出し直後 | A
0x860A | 2 | リターン直前 | A
0x860B | 1 | javax.naming.Context.list | 呼び出し直後 | B
0x860C | 2 | リターン直前 | B
0x860D | 1 | javax.naming.Context.listBindings | 呼び出し直後 | B
0x860E | 2 | リターン直前 | B
0x860F | 1 | java: 名前空間検索時 | javax.naming.Context.lookup | 呼び出し直後 | A
0x8610 | 2 | リターン直前 | A
0x8611 | 1 | javax.naming.Context.list | 呼び出し直後 | B
0x8612 | 2 | リターン直前 | B
0x8613 | 1 | javax.naming.Context.listBindings | 呼び出し直後 | B
0x8614 | 2 | リターン直前 | B
0x8615 | 1 | ラウンドロビン検索機能利用時 | javax.naming.Context.lookup | 呼び出し直後 | A
0x8616 | 2 | リターン直前 | A
0x8617 | 1 | CORBAネーミングサービス切り替え機能利用時 | javax.naming.Context.lookup | 呼び出し直後 | A
0x8618 | 2 | リターン直前 | A
0x8619 | 1 | javax.naming.Context.list | 呼び出し直後 | B
0x861A | 2 | リターン直前 | B
0x861B | 1 | javax.naming.Context.listBindings | 呼び出し直後 | B
0x861C | 2 | リターン直前 | B

（凡例）A：標準　B：詳細

注※　図7-28中の番号と対応しています。

JNDIでのトレース取得ポイントを次の図に示します。

図7-28　JNDIのトレース取得ポイント

7.11.2　取得できるトレース情報

JNDIで取得できるトレース情報を次の表に示します。

表7-43　JNDIで取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8603
A
－
指定された名前
－

0x8609
A

0x860F
A

0x8615
A

0x8617
A

0x8605
B

0x860B
B

0x8611
B

0x8619
B

0x8607
B

0x860D
B

0x8613
B

0x861B
B

2
0x8604
A
－

正常時
<入り口時刻>

例外発生時
<入り口時刻:例外名:メッセージ>

0x860A
A

0x8610
A

0x8616
A

0x8618
A

0x8606
B

0x860C
B

0x8612
B

0x861A
B

0x8608
B

0x860E
B

0x8614
B

0x861C
B

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-28中の番号と対応しています。

参考

JNDIでのトレース情報では，次に示す場合，キー情報である「ルートアプリケーション情報」および「クライアントアプリケーション情報」には，0が表示されます。
・クライアントからのlookupメソッドを呼び出す場合
・サーバが開始処理中または停止処理中の場合

ビジネスインタフェース利用時には，0x8609と0x860Aが2回ずつ出力されます。

7.12　JTAのトレース取得ポイント

ここでは，JTAのトレース取得ポイントと，取得できるトレース情報について，CMTの場合と，BMTの場合に分けて説明します。

＜この節の構成＞

7.12.1　CMTの場合

7.12.2　BMTの場合

7.12.3　トランザクションタイムアウトの場合

7.12.4　スレッドの非同期並行処理を使用する場合

7.12.1　CMTの場合

CMTの場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-44　CMTでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8811 | 1 | トランザクション開始処理直前 | A
0x8812 | 2 | トランザクション開始処理直後 | A
0x8815 | 3 | トランザクションコミット処理直前 | A
0x8816 | 4 | トランザクションコミット処理直後 | A
0x8817 | 3 | トランザクションロールバック処理直前 | A
0x8818 | 4 | トランザクションロールバック処理直後 | A

（凡例）A：標準

注※　図7-29中の番号と対応しています。

CMTのトレース取得ポイントを，次の図に示します。

図7-29　CMTのトレース取得ポイント

(2)　取得できるトレース情報

CMTで取得できるトレース情報を次の表に示します。

表7-45　CMTで取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8811
A
－
－
－

2
0x8812
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8815
A
－
－
－

0x8817
A
－
－
－

4
0x8816
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8818
A
－
－

（凡例）A：標準　－：該当なし

注※　図7-29中の番号と対応しています。

7.12.2　BMTの場合

BMTの場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-46　BMTでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8813 | 1 | トランザクション開始処理直前 | A
0x8814 | 2 | トランザクション開始処理直後 | A
0x8815 | 3 | トランザクションコミット処理直前 | A
0x8816 | 4 | トランザクションコミット処理直後 | A
0x8817 | 3 | トランザクションロールバック処理直前 | A
0x8818 | 4 | トランザクションロールバック処理直後 | A

（凡例）A：標準

注※　図7-30中の番号と対応しています。

BMTのトレース取得ポイントを，次の図に示します。

図7-30　BMTのトレース取得ポイント

(2)　取得できるトレース情報

BMTで取得できるトレース情報を次の表に示します。

表7-47　BMTで取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8813
A
－
－
－

2
0x8814
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8815
A
－
－
－

0x8817
A
－
－
－

4
0x8816
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8818
A
－
－

（凡例）A：標準　－：該当なし

注※　図7-30中の番号と対応しています。

7.12.3　トランザクションタイムアウトの場合

トランザクションタイムアウトの場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-48　トランザクションタイムアウトでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8819 | 1 | トランザクションタイムアウト処理直前 | A
0x8C41 | 2 | 障害調査用SQL出力 | A
0x8820 | 3 | トランザクションタイムアウト処理直後 | A

（凡例）A：標準

注※　図7-31中の番号と対応しています。

トランザクションタイムアウトのトレース取得ポイントを，次の図に示します。

図7-31　トランザクションタイムアウトのトレース取得ポイント

(2)　取得できるトレース情報

トランザクションタイムアウトで取得できるトレース情報を次の表に示します。

表7-49　トランザクションタイムアウトで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8819 | A | タイムアウトしたトランザクションのルートアプリケーション情報 | － | －
2 | 0x8C41 | A | トランザクションタイムアウト，J2EEアプリケーション強制停止，またはメソッドキャンセルされたコネクションのルートアプリケーション情報 | － | SQL文
3 | 0x8820 | A | － | － | <入り口時刻>

（凡例）A：標準　－：該当なし

注※　図7-31中の番号と対応しています。

7.12.4　スレッドの非同期並行処理を使用する場合

スレッドの非同期並行処理を使用する場合のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この項の構成＞

(1)　TimerManagerのトレース取得ポイント

(2)　WorkManagerのトレース取得ポイント

(1)　TimerManagerのトレース取得ポイント

●トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-50　TimerManagerのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8435 | 1 | TimerManagerの開始直前 | A
0x8436 | 2 | TimerManagerの開始直後 | A
0x8439 | 5 | TimerManagerの停止直前 | A
0x843A | 6 | TimerManagerの停止直後 | A
0x843D | 3 | TimerManagerのリスナ実行の直前 | A
0x843E | 4 | TimerManagerのリスナ実行の直後 | A

（凡例）A：標準

注※　図7-32中の番号と対応しています。

TimerManagerのトレース取得ポイントを次の図に示します。

図7-32　TimerManagerのトレース取得ポイント

●取得できるトレース情報

TimerManagerで取得できるトレース情報を次の表に示します。

表7-51　TimerManagerで取得できるトレース情報

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8435
A
－
－
－

2
0x8436
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x843D
A
メソッド名※2
スケジュールごとに一意の番号
－

4
0x843E
A
メソッド名※2
スケジュールごとに一意の番号

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

5
0x8439
A
－
－
－

6
0x843A
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

（凡例）A：標準　－：該当なし

注※1　図7-32中の番号と対応しています。

注※2　TimerManager.timerExpired，StopTimerListener.timerStop，またはCancelTimerListener.timerCancelが出力されます。

(2)　WorkManagerのトレース取得ポイント

●トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-52　WorkManagerのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8437 | 1 | WorkManagerの開始直前 | A
0x8438 | 2 | WorkManagerの開始直後 | A
0x8440 | 4 | WorkManagerのリスナ，またはタスク処理の実行直後 | A
0x843B | 5 | WorkManagerの停止直前 | A
0x843C | 6 | WorkManagerの停止直後 | A
0x843F | 3 | WorkManagerのリスナ，またはタスク処理の実行直前 | A

（凡例）A：標準

注※　図7-33中の番号と対応しています。

WorkManagerのトレース取得ポイントを次の図に示します。

図7-33　WorkManagerのトレース取得ポイント

●取得できるトレース情報

WorkManagerで取得できるトレース情報を次の表に示します。

表7-53　WorkManagerで取得できるトレース情報

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8437
A
－
－
－

2
0x8438
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x843F
A
メソッド名※2
スケジュールごとに一意の番号
－

4
0x8440
A
メソッド名※2
スケジュールごとに一意の番号

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

5
0x843B
A
－
－
－

6
0x843C
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

（凡例）A：標準　－：該当なし

注※1　図7-33中の番号と対応しています。

注※2　Work.run，WorkListener.workAccepted，WorkListener.workRejected，WorkListener.workStarted，またはWorkListener.workCompletedが出力されます。

7.13　DB Connector，JCAコンテナのトレース取得ポイント

ここでは，DB ConnectorおよびJCAコンテナのトレース取得ポイントと，取得できるトレース情報について説明します。

コネクション関連のトレース取得ポイントには，ローカルトランザクションを使用する場合だけ取得できるものがあります。ここでは，トランザクションサポートレベルに関係なく取得できるトレース取得ポイントと，ローカルトランザクションを使用する場合だけ取得できるトレース取得ポイントの二つに分けて説明します。なお，ここでは，トランザクションサポートレベルに関係なく取得できるトレース取得ポイントを，「コネクション関連のトレース取得ポイント」と呼びます。

＜この節の構成＞

7.13.1　コネクション関連のトレース取得ポイントと取得できるトレース情報

7.13.2　ローカルトランザクションを使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.3　コネクションアソシエーションを使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.4　コネクション自動クローズ機能を使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.5　DB Connector for Cosminexus RMと連携する場合のトレース取得ポイントと取得できるトレース情報

7.13.6　ワーク管理を使用する場合のトレース取得ポイントと取得できるトレース情報

7.13.1　コネクション関連のトレース取得ポイントと取得できるトレース情報

コネクション関連のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，イベントIDごとに，次の四つの表に示します。

0x8B00，0x8B01，0x8B80～0x8B83，0x8C00～0x8C03，0x8C10～0xC13，0x8C20～0x8C29，0x8C2A～0x8C3Fの場合（コネクション関連の処理実行時）
参照先：表7-54

0x8C80～0x8C93の場合（java.sql.Statementインタフェースのメソッド実行時）
参照先：表7-55

0x8CC0～0x8CD9の場合（java.sql.PreparedStatementインタフェースのメソッド実行時）
参照先：表7-56

0x8D00～0x8D19の場合（java.sql.CallableStatementインタフェースのメソッド実行時）
参照先：表7-57

ポイント

イベントID「0x8C41」については，「7.10　EJBコンテナのトレース取得ポイント」，および「7.12　JTAのトレース取得ポイント」を参照してください。

表7-54　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクション関連の処理実行時）1

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8B00 | 2 | リソースアダプタからのコネクション取得要求呼び出し直後 | B
0x8B01 | 5 | リソースアダプタからのコネクション取得要求リターン直前 | B
0x8B80 | 3 | 物理コネクション作成の呼び出し直前 | B
0x8B81 | 4 | 物理コネクション作成のリターン直後 | B
0x8B82 | 14 | 物理コネクション破棄の呼び出し直前 | B
0x8B83 | 15 | 物理コネクション破棄のリターン直後 | B
0x8C00 | 1 | javax.sql.DataSource.getConnection()での，データベース接続の確立 | 処理開始 | A
0x8C01 | 6 | 処理終了 | A
0x8C02 | 1 | javax.sql.DataSource.getConnection(String username, String password)での，データベース接続の確立 | 処理開始 | A
0x8C03 | 6 | 処理終了 | A
0x8C10 | 1 | コネクションプールのクラスタ化機能使用時のjavax.sql.DataSource.getConnection()での，データベース接続の確立 | 処理開始 | A
0x8C11 | 6 | 処理終了 | A
0x8C12 | 1 | コネクションプールのクラスタ化機能使用時のjavax.sql.DataSource.getConnection(String username, String password)での，データベース接続の確立 | 処理開始 | A
0x8C13 | 6 | 処理終了 | A
0x8C20 | 13 | java.sql.Connection.close()での，ConnectionオブジェクトのデータベースとJDBCリソースの解除 | 処理開始 | A
0x8C21 | 16 | 処理終了 | A
0x8C22 | 11 | java.sql.Connection.commit() | 処理開始 | B
0x8C23 | 12 | 処理終了 | B
0x8C24 | 11 | java.sql.Connection.rollback() | 処理開始 | B
0x8C25 | 12 | 処理終了 | B
0x8C26 | 11 | java.sql.Connection.rollback(Savepoint savepoint) | 処理開始 | B
0x8C27 | 12 | 処理終了 | B
0x8C28 | 7 | java.sql.Connection.createStatement() | 処理開始 | B
0x8C29 | 8 | 処理終了 | B
0x8C2A | 7 | java.sql.Connection.createStatement(int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8C2B | 8 | 処理終了 | B
0x8C2C | 7 | java.sql.Connection.createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8C2D | 8 | 処理終了 | B
0x8C2E | 7 | java.sql.Connection.prepareCall(String sql) | 処理開始 | B
0x8C2F | 8 | 処理終了 | B
0x8C30 | 7 | java.sql.Connection.prepareCall(String sql, int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8C31 | 8 | 処理終了 | B
0x8C32 | 7 | java.sql.Connection.prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8C33 | 8 | 処理終了 | B
0x8C34 | 7 | java.sql.Connection.prepareStatement(String sql) | 処理開始 | B
0x8C35 | 8 | 処理終了 | B
0x8C36 | 7 | java.sql.Connection.prepareStatement(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8C37 | 8 | 処理終了 | B
0x8C38 | 7 | java.sql.Connection.prepareStatement(String sql, int[] columnIndexes) | 処理開始 | B
0x8C39 | 8 | 処理終了 | B
0x8C3A | 7 | java.sql.Connection.prepareStatement(String sql, int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8C3B | 8 | 処理終了 | B
0x8C3C | 7 | java.sql.Connection.prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8C3D | 8 | 処理終了 | B
0x8C3E | 7 | java.sql.Connection.prepareStatement(String sql, String[] columnNames) | 処理開始 | B
0x8C3F | 8 | 処理終了 | B

（凡例）A：標準　B：詳細

注　SQL Server 2005を使用している場合，DB ConnectorのイベントIDは出力されません。

注※　図7-34中の番号と対応しています。

表7-55　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（java.sql.Statementインタフェースのメソッド実行時）2

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8C80 | 9 | execute(String sql) | 処理開始 | B
0x8C81 | 10 | 処理終了 | B
0x8C82 | 9 | execute(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8C83 | 10 | 処理終了 | B
0x8C84 | 9 | execute(String sql, int[] columnIndexes) | 処理開始 | B
0x8C85 | 10 | 処理終了 | B
0x8C86 | 9 | execute(String sql, String[] columnNames) | 処理開始 | B
0x8C87 | 10 | 処理終了 | B
0x8C88 | 9 | executeBatch() | 処理開始 | B
0x8C89 | 10 | 処理終了 | B
0x8C8A | 9 | executeQuery(String sql) | 処理開始 | B
0x8C8B | 10 | 処理終了 | B
0x8C8C | 9 | executeUpdate(String sql) | 処理開始 | B
0x8C8D | 10 | 処理終了 | B
0x8C8E | 9 | executeUpdate(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8C8F | 10 | 処理終了 | B
0x8C90 | 9 | executeUpdate(String sql, int[] columnIndexes) | 処理開始 | B
0x8C91 | 10 | 処理終了 | B
0x8C92 | 9 | executeUpdate(String sql, String[] columnNames) | 処理開始 | B
0x8C93 | 10 | 処理終了 | B

（凡例）B：詳細

注※　図7-34中の番号と対応しています。

表7-56　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（java.sql.PreparedStatementインタフェースのメソッド実行時）3

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8CC0 | 9 | execute() | 処理開始 | B
0x8CC1 | 10 | 処理終了 | B
0x8CC2 | 9 | execute(String sql) | 処理開始 | B
0x8CC3 | 10 | 処理終了 | B
0x8CC4 | 9 | execute(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8CC5 | 10 | 処理終了 | B
0x8CC6 | 9 | execute(String sql, int[] columnIndexes) | 処理開始 | B
0x8CC7 | 10 | 処理終了 | B
0x8CC8 | 9 | execute(String sql, String[] columnNames) | 処理開始 | B
0x8CC9 | 10 | 処理終了 | B
0x8CCA | 9 | executeBatch() | 処理開始 | B
0x8CCB | 10 | 処理終了 | B
0x8CCC | 9 | executeQuery() | 処理開始 | B
0x8CCD | 10 | 処理終了 | B
0x8CCE | 9 | executeQuery(String sql) | 処理開始 | B
0x8CCF | 10 | 処理終了 | B
0x8CD0 | 9 | executeUpdate() | 処理開始 | B
0x8CD1 | 10 | 処理終了 | B
0x8CD2 | 9 | executeUpdate(String sql) | 処理開始 | B
0x8CD3 | 10 | 処理終了 | B
0x8CD4 | 9 | executeUpdate(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8CD5 | 10 | 処理終了 | B
0x8CD6 | 9 | executeUpdate(String sql, int[] columnIndexes) | 処理開始 | B
0x8CD7 | 10 | 処理終了 | B
0x8CD8 | 9 | executeUpdate(String sql, String[] columnNames) | 処理開始 | B
0x8CD9 | 10 | 処理終了 | B

（凡例）B：詳細

注※　図7-34中の番号と対応しています。

表7-57　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（java.sql.CallableStatementインタフェースのメソッド実行時）4

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8D00 | 9 | execute() | 処理開始 | B
0x8D01 | 10 | 処理終了 | B
0x8D02 | 9 | execute(String sql) | 処理開始 | B
0x8D03 | 10 | 処理終了 | B
0x8D04 | 9 | execute(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8D05 | 10 | 処理終了 | B
0x8D06 | 9 | execute(String sql, int[] columnIndexes) | 処理開始 | B
0x8D07 | 10 | 処理終了 | B
0x8D08 | 9 | execute(String sql, String[] columnNames) | 処理開始 | B
0x8D09 | 10 | 処理終了 | B
0x8D0A | 9 | executeBatch() | 処理開始 | B
0x8D0B | 10 | 処理終了 | B
0x8D0C | 9 | executeQuery() | 処理開始 | B
0x8D0D | 10 | 処理終了 | B
0x8D0E | 9 | executeQuery(String sql) | 処理開始 | B
0x8D0F | 10 | 処理終了 | B
0x8D10 | 9 | executeUpdate() | 処理開始 | B
0x8D11 | 10 | 処理終了 | B
0x8D12 | 9 | executeUpdate(String sql) | 処理開始 | B
0x8D13 | 10 | 処理終了 | B
0x8D14 | 9 | executeUpdate(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8D15 | 10 | 処理終了 | B
0x8D16 | 9 | executeUpdate(String sql, int[] columnIndexes) | 処理開始 | B
0x8D17 | 10 | 処理終了 | B
0x8D18 | 9 | executeUpdate(String sql, String[] columnNames) | 処理開始 | B
0x8D19 | 10 | 処理終了 | B

（凡例）B：詳細

注※　図7-34中の番号と対応しています。

DB Connector，JCAコンテナでのトレース取得ポイントを次の図に示します。

図7-34　DB Connector，JCAコンテナのトレース取得ポイント（コネクション関連）

(2)　取得できるトレース情報

DB Connector，JCAコンテナで取得できるトレース情報について，次に示します。ここでは，図7-34の番号と対応づけて説明しています。

番号1～6・11～16に対応するトレース情報
番号1～6・11～16に対応するイベントIDとトレース情報を，次の表に示します。

表7-58　DB Connector，JCAコンテナで取得できるトレース情報（コネクション関連の処理実行時）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8C00
A
－
－
－

0x8C02
A
－
－
－

0x8C10
A
－
－
－

0x8C12
A
－
－
－

2
0x8B00
B
－
－
－

3
0x8B80
B
－
－
－

4
0x8B81
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

5
0x8B01
B
－
－

6
0x8C01
A
コネクションID
－

0x8C03
A
コネクションID
－

0x8C11
A
コネクションID
－

0x8C13
A
コネクションID
－

11
0x8C22
B
－
－
－

0x8C24
B
－
－
－

0x8C26
B
－
－
－

12
0x8C23
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8C25
B
－
－

0x8C27
B
－
－

13
0x8C20
A
コネクションID
－
－

14
0x8B82
B
－
－
－

15
0x8B83
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

16
0x8C21
A
－
－

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-34中の番号と対応しています。

番号7に対応するトレース情報
番号7に対応するイベントIDは次のとおりです。
0x8C28，0x8C2A，0x8C2C，0x8C2E，0x8C30，0x8C32，0x8C34，
0x8C36，0x8C38，0x8C3A，0x8C3C，0x8C3E
これらのイベントIDで取得できるトレース情報を示します。

PRFトレース取得レベル
すべて「詳細」です。

インタフェース名，およびオペレーション名
これらのイベントIDでは出力されません。

オプション
メソッドの引数にsqlを持つ場合，SQL文が表示されます。

番号8に対応するトレース情報
番号8に対応するイベントIDは次のとおりです。
0x8C29，0x8C2B，0x8C2D，0x8C2F，0x8C31，0x8C33，0x8C35，
0x8C37，0x8C39，0x8C3B，0x8C3D，0x8C3F
これらのイベントIDで取得できるトレース情報を示します。

PRFトレース取得レベル
すべて「詳細」です。

インタフェース名，オペレーション名
これらのイベントIDでは出力されません。

オプション
これらのイベントIDでは，正常に処理された場合は入り口時刻が表示されます。例外が発生した場合は入り口時刻および例外が表示されます。

番号9に対応するトレース情報
番号9に対応するイベントIDは次のとおりです。
0x8C80，0x8C82，0x8C84，0x8C86，0x8C88，0x8C8A，0x8C8C，0x8C8E，0x8C90，0x8C92，0x8CC0，0x8CC2，0x8CC4，0x8CC6，0x8CC8，0x8CCA，0x8CCC，0x8CCE，0x8CD0，0x8CD2，0x8CD4，0x8CD6，0x8CD8，0x8D00，0x8D02，0x8D04，0x8D06，0x8D08，0x8D0A，0x8D0C，0x8D0E，0x8D10，0x8D12，0x8D14，0x8D16，0x8D18
これらのイベントIDで取得できるトレース情報を示します。

PRFトレース取得レベル
すべて「詳細」です。

インタフェース名，およびオペレーション名
これらのイベントIDでは出力されません。

オプション
メソッドの引数にsqlを持つ場合，SQL文が表示されます。

番号10に対応するトレース情報
番号10に対応するイベントIDは次のとおりです。
0x8C81，0x8C83，0x8C85，0x8C87，0x8C89，0x8C8B，0x8C8D，0x8C8F，0x8C91，0x8C93，0x8CC1，0x8CC3，0x8CC5，0x8CC7，0x8CC9，0x8CCB，0x8CCD，0x8CCF，0x8CD1，0x8CD3，0x8CD5，0x8CD7，0x8CD9，0x8D01，0x8D03，0x8D05，0x8D07，0x8D09，0x8D0B，0x8D0D，0x8D0F，0x8D11，0x8D13，0x8D15，0x8D17，0x8D19
これらのイベントIDで取得できるトレース情報を示します。

PRFトレース取得レベル
すべて「詳細」です。

インタフェース名，オペレーション名
これらのイベントIDでは出力されません。

オプション
これらのイベントIDでは，正常に処理された場合は入り口時刻が表示されます。例外が発生した場合は入り口時刻および例外が表示されます。

7.13.2　ローカルトランザクションを使用する場合のトレース取得ポイントと取得できるトレース情報

ローカルトランザクションを使用する場合のトレース取得ポイントと取得できるトレース情報トレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-59　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（ローカルトランザクションの処理実行時）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8C60 | 1 | ローカルトランザクションの開始 | 処理開始 | B
0x8C61 | 2 | 処理終了 | B
0x8C62 | 3 | ローカルトランザクションのコミット | 処理開始 | B
0x8C63 | 4 | 処理終了 | B
0x8C64 | 3 | ローカルトランザクションのロールバック | 処理開始 | B
0x8C65 | 4 | 処理終了 | B

（凡例）B：詳細

注※　図7-35中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-35　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（ローカルトランザクション関連）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-60　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（ローカルトランザクションの処理実行時）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8C60
B
－
－
－

2
0x8C61
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8C62
B
－
－
－

0x8C64
B
－
－
－

4
0x8C63
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0x8C65
B
－
－

（凡例）B：詳細　－：該当なし

注※　図7-35中の番号と対応しています。

7.13.3　コネクションアソシエーションを使用する場合のトレース取得ポイントと取得できるトレース情報

コネクションアソシエーションを使用する場合のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-61　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクションアソシエーションの処理実行時）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8C40 | 1 | コネクションアソシエーション機能によって，論理コネクションに対する物理コネクションが差し替えられた時 | A

（凡例）A：標準

注※　図7-36中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-36　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクションアソシエーション関連）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-62　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクションアソシエーション処理実行時）

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8C40 | A | コネクションID（コネクションアソシエーション機能によって差し替えられた先の物理コネクションのコネクションID） | － | －

（凡例）A：標準　－：該当なし

注※　図7-36中の番号と対応しています。

7.13.4　コネクション自動クローズ機能を使用する場合のトレース取得ポイントと取得できるトレース情報

コネクション自動クローズ時のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-63　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクション自動クローズ時）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8B84 | 1 | コネクション自動クローズ機能によるクローズ処理呼び出し直後 | B
0x8B82 | 2 | 物理コネクション破棄の呼び出し直前 | B
0x8B83 | 3 | 物理コネクション破棄のリターン直後 | B
0x8B85 | 4 | コネクション自動クローズ機能によるクローズ処理リターン直前 | B

（凡例）B：詳細

注※　図7-37中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-37　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクション自動クローズ時）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-64　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（コネクション自動クローズ時）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8B84
B
コネクションID
－
－

2
0x8B82
B
－
－
－

3
0x8B83
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

4
0x8B85
B
－
－
<入り口時刻>

（凡例）B：詳細　－：該当なし

注※　図7-37中の番号と対応しています。

7.13.5　DB Connector for Cosminexus RMと連携する場合のトレース取得ポイントと取得できるトレース情報

DB Connector for Cosminexus RMと連携する場合のトレース取得ポイントと取得できるトレース情報について説明します。

なお，DB Connector for Cosminexus RMでは，DB Connectorを使用してデータベースに接続しています。そのためDB Connector for Cosminexus RM利用時にはDB Connectorのトレースポイントも取得します。JDBCコネクションの生成物（java.sql.Statementなど）は，DB Connectorと同じトレース取得ポイントになります。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-65　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（DB Connector for Cosminexus RM連携時）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8D60 | 1 | DB Connector for Cosminexus RM利用時のjavax.sql.DataSource.getConnection()でのデータベース接続の確立 | 処理開始 | A
0x8D61 | 2 | 処理終了 | A
0x8D62 | 1 | DB Connector for Cosminexus RM利用時のjavax.sql.DataSource.getConnection(String username, String password)での，データベース接続の確立 | 処理開始 | A
0x8D63 | 2 | 処理終了 | A
0x8D80 | 5 | DB Connector for Cosminexus RM利用時のjava.sql.Connection.close()での，ConnectionオブジェクトのデータベースとJDBCリソースの解除 | 処理開始 | A
0x8D81 | 6 | 処理終了 | A
0x8D82 | 3 | DB Connector for Cosminexus RM利用時のConnection.createStatement() | 処理開始 | B
0x8D83 | 4 | 処理終了 | B
0x8D84 | 3 | DB Connector for Cosminexus RM利用時のConnection.createStatement(int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8D85 | 4 | 処理終了 | B
0x8D86 | 3 | DB Connector for Cosminexus RM利用時のConnection.createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8D87 | 4 | 処理終了 | B
0x8D88 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareCall(String sql) | 処理開始 | B
0x8D89 | 4 | 処理終了 | B
0x8D8A | 3 | DB Connector for Cosminexus RM利用時の(String sql, int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8D8B | 4 | 処理終了 | B
0x8D8C | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8D8D | 4 | 処理終了 | B
0x8D8E | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql) | 処理開始 | B
0x8D8F | 4 | 処理終了 | B
0x8D90 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql, int autoGeneratedKeys) | 処理開始 | B
0x8D91 | 4 | 処理終了 | B
0x8D92 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql, int[] columnIndexes) | 処理開始 | B
0x8D93 | 4 | 処理終了 | B
0x8D94 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql, int resultSetType, int resultSetConcurrency) | 処理開始 | B
0x8D95 | 4 | 処理終了 | B
0x8D96 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) | 処理開始 | B
0x8D97 | 4 | 処理終了 | B
0x8D98 | 3 | DB Connector for Cosminexus RM利用時のConnection.prepareStatement(String sql, String[] columnNames) | 処理開始 | B
0x8D99 | 4 | 処理終了 | B

（凡例）A：標準　B：詳細

注※　図7-38中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-38　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（DB Connector for Cosminexus RM連携時）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-66　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（DB Connector for Cosminexus RM連携時）

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8D60
A
－
－
－

2
0x8D61
A
コネクションID
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

1
0x8D62
A
－
－
－

2
0x8D63
A
コネクションID
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

5
0x8D80
A
コネクションID
－
－

6
0x8D81
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D82
B
－
－
－

4
0x8D83
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D84
B
－
－
－

4
0x8D85
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D86
B
－
－
－

4
0x8D87
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D88
B
－
－
SQL文

4
0x8D89
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D8A
B
－
－
SQL文

4
0x8D8B
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D8C
B
－
－
SQL文

4
0x8D8D
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D8E
B
－
－
SQL文

4
0x8D8F
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D90
B
－
－
SQL文

4
0x8D91
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D92
B
－
－
SQL文

4
0x8D93
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D94
B
－
－
SQL文

4
0x8D95
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D96
B
－
－
SQL文

4
0x8D97
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

3
0x8D98
B
－
－
SQL文

4
0x8D99
B
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-38中の番号と対応しています。

7.13.6　ワーク管理を使用する場合のトレース取得ポイントと取得できるトレース情報

Connector1.5に準拠したリソースアダプタでワーク管理を使用する場合のトレース取得ポイントと取得できるトレース情報について説明します。

なお，日立のリソースアダプタ以外を使用している場合，0x8B86を出力するときにルートAP情報が新規に採番されます。DD（ra.xml）の<resourceadapter>-<resourceadapter-class>の値が"com.hitachi"または"com.cosminexus"で始まっている場合，日立のリソースアダプタであると判断されます。

WorkからMessage-driven Beanを呼び出した場合，MDBコンテナの入り口で設定されるルートAP情報は，WorkのルートAP情報となります。個々のMessage-driven Beanの処理は，スレッドIDで区別されます。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-67　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（ワーク管理を使用する場合）

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8B86 | 1 | javax.resource.spi.work.WorkManagerのメソッドの呼び出し直後 | A
0x8B87 | 6，9，14 | javax.resource.spi.work.WorkManagerのメソッドのリターン直前 | A
0x8B88 | 2，4，7，12 | javax.resource.spi.work.WorkListenerのメソッドの呼び出し直前 | B
0x8B89 | 3，5，8，13 | javax.resource.spi.work.WorkListenerのメソッドのリターン直後 | B
0x8B8A | 10 | javax.resource.spi.work.Workのメソッド呼び出し直前 | A
0x8B8B | 11 | javax.resource.spi.work.Workのメソッドのリターン直後 | A

（凡例）A：標準　B：詳細

注※　図7-39～図7-41中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-39　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（scheduleWork()呼び出し時）

図7-40　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（startWork()呼び出し時）

図7-41　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（doWork()呼び出し時）

(2)　取得できるトレース情報

取得できるトレース情報を次の表に示します。

表7-68　DB Connector，JCAコンテナでのトレース取得ポイントの詳細（ワーク管理を使用する場合）

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x8B86
A
Workのクラス名
メソッド名
リソースアダプタの表示名

2
0x8B88
B
Workのクラス名
メソッド名
リソースアダプタの表示名※2

3
0x8B89
B
Workのクラス名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

4
0x8B88
B
Workのクラス名
メソッド名
リソースアダプタの表示名※2

5
0x8B89
B
Workのクラス名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

6
0x8B87
A
Workのクラス名
メソッド名

7
0x8B88
B
Workのクラス名
メソッド名
リソースアダプタの表示名※2

8
0x8B89
B
Workのクラス名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

9
0x8B87
A
Workのクラス名
メソッド名

10
0x8B8A
A
Workのクラス名
メソッド名
リソースアダプタの表示名※2

11
0x8B8B
A
Workのクラス名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

12
0x8B88
B
Workのクラス名
メソッド名
リソースアダプタの表示名※2

13
0x8B89
B
Workのクラス名
メソッド名

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

14
0x8B87
A
Workのクラス名
メソッド名

（凡例）A：標準　B：詳細

注※1　図7-39～図7-41中の番号と対応しています。

注※2　アプリケーションに含まれているリソースアダプタの場合，「アプリケーション名:リソースアダプタの表示名」と表示されます。

7.14　RMIのトレース取得ポイント

ここでは，RMIのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.14.1　トレース取得ポイントとPRFトレース取得レベル

7.14.2　取得できるトレース情報

7.14.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-69　RMIでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x8E01 | 1 | スタブでのリクエスト送信処理の始まり | A
0x8E02 | 6 | スタブでのレスポンス受信処理の終わり | A
0x8E03 | 2 | クライアント側のリクエスト送信処理 | A
0x8E04 | 5 | クライアント側のレスポンス受信処理 | A
0x8E05 | 3 | サーバ側のリクエスト受信処理 | A
0x8E06 | 4 | サーバ側のレスポンス送信処理 | A

（凡例）A：標準

注※　図7-42中の番号と対応しています。

RMIでのトレース取得ポイントを次の図に示します。

図7-42　RMIのトレース取得ポイント

7.14.2　取得できるトレース情報

RMIで取得できるトレース情報を次の表に示します。

表7-70　RMIで取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8E01 | A | インタフェース名 | オペレーション名 | －
2 | 0x8E03 | A | － | － | －
3 | 0x8E05 | A | － | － | －
4 | 0x8E06 | A | － | － | －
5 | 0x8E04 | A | － | － | －
6 | 0x8E02 | A | インタフェース名※2 | オペレーション名※2 | －※2

（凡例）A：標準　－：該当なし

注※1　図7-42中の番号と対応しています。

注※2　例外が発生した場合，インタフェース名およびオペレーション名は表示されません。また，オプションには発生した例外が表示されます。

7.15　OTSのトレース取得ポイント

ここでは，OTSのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.15.1　トレース取得ポイントとPRFトレース取得レベル

7.15.2　取得できるトレース情報

7.15.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-71　OTSでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x9400 | 1 | トランザクション生成直後 | A
0x9401 | 2 | トランザクションの状態がMarkedRollbackへ遷移した直後 | A
0x9402 | 3 | トランザクションの状態がRollingBackへ遷移した直後 | A
0x9403 | 12 | トランザクション決着直後 | A
0x9404 | 4 | javax.transaction.xa.XAResourceへの決着処理直前 | B
0x9405 | 5 | javax.transaction.xa.XAResourceへの決着処理直後 | B
0x9406 | 6 | サブオーディネートトランザクションへの決着処理直前 | B
0x9407 | 9 | サブオーディネートトランザクションへの決着処理直後 | B
0x9408 | 7 | スペリアトランザクションからの決着処理要求受信直後 | B
0x9409 | 8 | スペリアトランザクションからの決着処理要求返信直前 | B
0x9410 | 13 | javax.transaction.xa.XAResourceオブジェクト取得処理直前 | B
0x9411 | 14 | javax.transaction.xa.XAResourceオブジェクト取得処理直後 | B
0x9412 | 10 | ステータスファイルへの書き込み・読み込み直前 | B
0x9413 | 11 | ステータスファイルへの書き込み・読み込み直後 | B

（凡例）A：標準　B：詳細

注※　図7-43～図7-48中の番号と対応しています。

OTSでのトレース取得ポイントを次の図に示します。

図7-43　トランザクション生成から決着までのトレース取得ポイント

図7-44　インプロセスOTS初期化時のステータスファイルへの読み込み・書き込みに関連するトレース取得ポイント

図7-45　javax.transaction.xa.Xidの回復処理でのトレース取得ポイント

図7-46　典型的な1フェーズコミットモデルでのトレース取得ポイント

図7-47　典型的な2フェーズコミットモデルでのトレース取得ポイント

図7-48　OpenTP1とトランザクション連携した場合のPRF取得情報

7.15.2　取得できるトレース情報

OTSで取得できるトレース情報を次の表に示します。なお，次の表の中で，一つの項目に複数の情報が個条書きで記載してある場合は，そのどれかが出力されることを意味します。

表7-72　OTSで取得できるトレース情報

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0x9400
A
global transaction

| created
トランザクション開始指示を受け，生成されました。

| recreated
別ノードからトランザクション処理への参加指示を受け，生成されました。

| recovered
ステータスファイルから回復されました。

| recovered(orphan)
javax.transaction.xa.XAResourceからXidが回復されましたが，これに対応するトランザクションが存在しないため，トランザクションが新たに生成されました。

<グローバルトランザクションID>

2
0x9401
A
global transaction
| marked rollback(<遷移した理由>※2)
<グローバルトランザクションID>

3
0x9402
A
global transaction
| rolling back(<遷移した理由>※3)
<グローバルトランザクションID>

12
0x9403
A
global transaction

| committed
コミットしました。

| rolled back
ロールバックしました。

| heuristic commit
強制コミットしました。

| heuristic rollback
強制ロールバックしました。

| heuristic mixed
部分的にコミットおよびロールバックされました。

| heuristic hazard
コミットしたかロールバックしたか不明です。

| unknown
コミットしたかロールバックしたか不明です。

| invalid status
上記以外の状態で決着しました。

<グローバルトランザクションID>

4
0x9404
B

<XAResource識別子>

なし

> prepare
prepareを発行します。

> commit(second phase)
2相目のcommitを発行します。

> commit(one phase)
1相目のcommitを発行します。

> rollback
rollbackを発行します。

> forget
forgetを発行します。

> recover
recoverを発行します。

<グローバルトランザクションID>

なし

5
0x9405
B

<XAResource識別子>

なし

正常リターンの場合

< prepare

< commit(second phase)

< commit(one phase)

< rollback

< forget

< recover

異常リターンの場合（想定外の値がリターンされた場合，または例外が発生した場合）

<!prepare

<!commit(second phase)

<!commit(one phase)

<!rollback

<!forget

<!recover

<グローバルトランザクションID>:<結果>※4

なし

6
0x9406
B
resource

> prepare
prepareを発行します。

> commit(second phase)
2相目のcommitを発行します。

> commit(one phase)
1相目のcommitを発行します。

> rollback
rollbackを発行します。

> forget
forgetを発行します。

<グローバルトランザクションID>

9
0x9407
B
resource

正常リターンの場合

< prepare

< commit(second phase)

< commit(one phase)

< rollback

< forget

異常リターンの場合（想定外の値がリターンされた場合，または例外が発生した場合）

<!prepare

<!commit(second phase)

<!commit(one phase)

<!rollback

<!forget

<グローバルトランザクションID>

<グローバルトランザクションID>:<結果>※5

7
0x9408
B
subordinate transaction

> prepare
prepare指示が入ってきました。

> commit(second phase)
2相目のcommit指示が入ってきました。

> commit(one phase)
1相目のcommit指示が入ってきました。

> rollback
rollback指示が入ってきました。

> forget
forget指示が入ってきました。

<グローバルトランザクションID>

8
0x9409
B
subordinate transaction

正常リターンの場合

< prepare

< commit(second phase)

< commit(one phase)

< rollback

< forget

異常リターンの場合（想定外の値がリターンされた場合，または例外が発生した場合）

<!prepare

<!commit(second phase)

<!commit(one phase)

<!rollback

<!forget

<グローバルトランザクションID>

<グローバルトランザクションID>:<結果>※6

13
0x9410
B

なし

<XAResource識別子>

> get xaresource

なし

<グローバルトランザクションID>

14
0x9411
B

なし

<XAResource識別子>

正常リターンの場合

< get xaresource

異常リターン場合（想定外の値がリターンされた場合，または例外が発生した場合）

<!get xaresource

なし

<結果>※7

<グローバルトランザクションID>

<グローバルトランザクションID>:<結果>※7

10
0x9412
B

<ステータスファイル名>

<ステータスファイル名>:<エントリ番号>※8

> write(<書き込む内容>※9)

> read(<読み込む内容>※10)

なし

<グローバルトランザクションID>

11
0x9413
B

<ステータスファイル名>

<ステータスファイル名>:<エントリ番号>※8

正常リターンの場合

< write

< read

異常リターン（想定外の値がリターンされた場合，または例外が発生した場合）

<!write

<!read

なし

<結果>※11

<グローバルトランザクションID>

<グローバルトランザクションID>:<結果>※11

（凡例）A：標準　B：詳細

注※1　図7-43～図7-48中の番号と対応しています。

注※2　遷移した理由として，次のどれかが出力されます。

operation：インプロセスOTS外部から指示されました。

server call：別ノードにあるサーバへの呼び出しに失敗しました。

superior：別ノードからトランザクション処理への参加指示を受けましたが，すでにそのトランザクションがMarkedRollback状態でした。

sync before：決着処理中のJTAへのコールバック処理に失敗しました。

注※3　遷移した理由として，次のどれかが出力されます。

operation：インプロセスOTS外部から指示されました。

timeout：グローバルトランザクションタイムアウトが発生しました。

superior：スペリアトランザクション，またはcjrollbacktrnコマンドから指示されました。

forgotten：サブオーディネートトランザクション，またはjavax.transaction.xa.XAResourceに対して決着指示を出すトランザクションが存在しないと判断しました。

end：javax.transaction.xa.XAResourceに対するendに失敗しました。

prepare：javax.transaction.xa.XAResourceに対するprepareに失敗しました。

write prepared：ステータスファイルへのprepared書き込みに失敗しました。

write committing：ステータスファイルへのcommitting書き込みに失敗しました。

注※4　prepare，commit，rollbackまたはforgetの場合，結果として次のどれかが出力されます。

リターン値

XAExceptionのエラーコード

例外(=XAException以外の例外)のtoString()

recoverの場合，結果として次のどれかが出力されます。

回復されたXidの個数

null（Xid配列自体がnullの場合）

XAExceptionのエラーコード

例外(=XAException以外の例外)のtoString()

注※5　prepareの場合，結果として次のどちらかが出力されます。

リターンされた値

例外のtoString()

prepare以外の場合，結果として例外のtoString()が出力されます。

注※6　prepareの場合，結果として次のどちらかが出力されます。

リターンする値

例外のtoString()

prepare以外の場合，結果として例外のtoString()が出力されます。

注※7　結果として次のどちらかが出力されます。

例外のtoString()

null（リターン値がnullの場合）

注※8　内部情報です。

注※9　書き込み内容として，次のどれかが出力されます。

management info：ステータスファイル管理情報

status file body：ステータスファイル本体

prepared：プリペア完了状態

committing：コミット決定状態

heuristic commit：強制コミットされた状態

heuristic rollback：強制ロールバックされた状態

heuristic mixed：部分的にコミットおよびロールバックされた状態

heuristic hazard：コミットしたかロールバックしたか不明な状態

forgotten：トランザクション決着完了状態

注※10　読み込む内容として，次のどちらかが出力されます。

management info：ステータスファイル管理情報

status file body：ステータスファイル本体

注※11　結果として，次のどれかが出力されます。

書き込みサイズ（単位：バイト）

読み込みサイズ（単位：バイト）

例外のtoString()

7.16　標準出力／標準エラー出力／ユーザログのトレース取得ポイント

ここでは，標準出力／標準エラー出力／ユーザログのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.16.1　標準出力／標準エラー出力のトレース取得ポイント

7.16.2　ユーザログのトレース取得ポイント

7.16.1　標準出力／標準エラー出力のトレース取得ポイント

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-73　標準出力／標準エラー出力でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x9C00 | 1 | 標準出力/標準エラー出力への出力開始時 | B
0x9C01 | 2 | 標準出力/標準エラー出力への出力完了時 | B

（凡例）B：詳細

注※　図7-49中の番号と対応しています。

標準出力／標準エラー出力のトレース取得ポイントを次の図に示します。

図7-49　標準出力／標準エラー出力のトレース取得ポイント

(2)　取得できるトレース情報

標準出力／標準エラー出力で取得できるトレース情報を次の表に示します。

表7-74　標準出力／標準エラー出力で取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x9C00 | B | ストリーム名（「out」／「err」） | － | －
2 | 0x9C01 | B | ストリーム名（「out」／「err」） | － | －

（凡例）B：詳細　－：該当なし

注※　図7-49中の番号と対応しています。

7.16.2　ユーザログのトレース取得ポイント

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-75　ユーザログのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x9C02 | 1 | ユーザログを使用したメッセージ出力開始時 | B
0x9C03 | 2 | ユーザログを使用したメッセージ出力完了時 | B

（凡例）B：詳細

注※　図7-50中の番号と対応しています。

ユーザログのトレース取得ポイントを次の図に示します。

図7-50　ユーザログのトレース取得ポイント

(2)　取得できるトレース情報

ユーザログで取得できるトレース情報を次の表に示します。

表7-76　ユーザログで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x9C02 | B | アプリケーション識別名 | メッセージID | －
2 | 0x9C03 | B | アプリケーション識別名 | メッセージID | －

（凡例）B：詳細　－：該当なし

注※　図7-50中の番号と対応しています。

7.17　DIのトレース取得ポイント

ここでは，DIのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.17.1　トレース取得ポイントとPRFトレース取得レベル

7.17.2　取得できるトレース情報

7.17.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-77　DIでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0x9D00 | 1 | 依存性を注入する直前 | A
0x9D01 | 2 | 依存性を注入した直後 | A

（凡例）A：標準

注※　図7-51中の番号と対応しています。

DIのトレース取得ポイントを次の図に示します。

図7-51　DIのトレース取得ポイント

7.17.2　取得できるトレース情報

DIで取得できるトレース情報を次の表に示します。

表7-78　DIで取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x9D00 | A | 依存性を注入する先のターゲット名 | 注入するリファレンス名 | －
2 | 0x9D01 | A | 依存性を注入した先のターゲット名 | 注入したリファレンス名 | ※2

（凡例）A：標準　－：該当なし

注※1　図7-51中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻および例外が表示されます。

7.18　バッチアプリケーション実行機能のトレース取得ポイント

ここでは，バッチアプリケーション実行機能のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.18.1　トレース取得ポイントとPRFトレース取得レベル

7.18.2　取得できるトレース情報

7.18.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-79　バッチアプリケーション実行機能でのトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0x8E05 | 1※2 | バッチアプリケーションの実行リクエストを受信した直後 | A
0xA100 | 2 | バッチアプリケーションの実行直前 | A
0xA101 | 3 | バッチアプリケーションの終了直後 | A
0x8E06 | 4※2 | バッチアプリケーションの終了結果を送信する直前 | A

（凡例）A：標準

注※1　図7-52中の番号と対応しています。

注※2　トレースが取得されるのはスケジューリング機能使用時だけです。

バッチアプリケーション実行機能のトレース取得ポイントを次の図に示します。

図7-52　バッチアプリケーション実行機能のトレース取得ポイント

7.18.2　取得できるトレース情報

バッチアプリケーション実行機能で取得できるトレース情報を次の表に示します。

表7-80　バッチアプリケーション実行機能で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0x8E05 | A | － | － | －
2 | 0xA100 | A | バッチアプリケーションのクラス名（パッケージ名を含む） | － | －
3 | 0xA101 | A | バッチアプリケーションのクラス名（パッケージ名を含む） | － | ※2
4 | 0x8E06 | A | － | － | －

（凡例）A：標準　－：該当なし

注※1　図7-52中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻および例外が表示されます。

7.19　JPAでのトレース取得ポイント

ここでは，JPAのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.19.1　アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

7.19.2　コンテナ管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

7.19.1　アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報について説明します。

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-81　アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA500 | 1 | EntityManagerFactory#createEntityManagerFactory()の処理開始 | A
0xA501 | 2 | EntityManagerFactory#createEntityManagerFactory()の処理終了 | A
0xA502 | 1 | EntityManagerFactory#createEntityManagerFactory(Map map)の処理開始 | A
0xA503 | 2 | EntityManagerFactory#createEntityManagerFactory(Map map)の処理終了 | A
0xA504 | 1 | EntityManagerFactory#isOpen()の処理開始 | A
0xA505 | 2 | EntityManagerFactory#isOpen()の処理終了 | A
0xA506 | 1 | EntityManagerFactory#close()の処理開始 | A
0xA507 | 2 | EntityManagerFactory#close()の処理終了 | A
0xA508 | 1 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA509 | 2 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50A | 1 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA50B | 2 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50C | 1 | EntityManager#contains(Object entity)の処理開始 | A
0xA50D | 2 | EntityManager#contains(Object entity)の処理終了 | A
0xA50E | 1 | EntityManager#lock(Object entity, LockModeType lockMode)の処理開始 | A
0xA50F | 2 | EntityManager#lock(Object entity, LockModeType lockMode)の処理終了 | A
0xA510 | 1 | EntityManager#merge(T entity)の処理開始 | A
0xA511 | 2 | EntityManager#merge(T entity)の処理終了 | A
0xA512 | 1 | EntityManager#persist(Object entity)の処理開始 | A
0xA513 | 2 | EntityManager#persist(Object entity)の処理終了 | A
0xA514 | 1 | EntityManager#refresh(Object entity)の処理開始 | A
0xA515 | 2 | EntityManager#refresh(Object entity)の処理終了 | A
0xA516 | 1 | EntityManager#remove(Object entity)の処理開始 | A
0xA517 | 2 | EntityManager#remove(Object entity)の処理終了 | A
0xA518 | 1 | EntityManager#clear()の処理開始 | A
0xA519 | 2 | EntityManager#clear()の処理終了 | A
0xA51A | 1 | EntityManager#flush()の処理開始 | A
0xA51B | 2 | EntityManager#flush()の処理終了 | A
0xA51C | 1 | EntityManager#createQuery(String qlString)の処理開始 | A
0xA51D | 2 | EntityManager#createQuery(String qlString)の処理終了 | A
0xA51E | 1 | EntityManager#createNamedQuery(String name)の処理開始 | A
0xA51F | 2 | EntityManager#createNamedQuery(String name)の処理終了 | A
0xA520 | 1 | EntityManager#createNativeQuery(String sqlString)の処理開始 | A
0xA521 | 2 | EntityManager#createNativeQuery(String sqlString)の処理終了 | A
0xA522 | 1 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理開始 | A
0xA523 | 2 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理終了 | A
0xA524 | 1 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理開始 | A
0xA525 | 2 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理終了 | A
0xA526 | 1 | EntityManager#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA527 | 2 | EntityManager#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA528 | 1 | EntityManager#getFlushMode()の処理開始 | A
0xA529 | 2 | EntityManager#getFlushMode()の処理終了 | A
0xA52A | 1 | EntityManager#joinTransaction()の処理開始 | A
0xA52B | 2 | EntityManager#joinTransaction()の処理終了 | A
0xA52C | 1 | EntityManager#getTransaction()の処理開始 | A
0xA52D | 2 | EntityManager#getTransaction()の処理終了 | A
0xA52E | 1 | EntityManager#getDelegate()の処理開始 | A
0xA52F | 2 | EntityManager#getDelegate()の処理終了 | A
0xA530 | 1 | EntityManager#isOpen()の処理開始 | A
0xA531 | 2 | EntityManager#isOpen()の処理終了 | A
0xA532 | 1 | EntityManager#close()の処理開始 | A
0xA533 | 2 | EntityManager#close()の処理終了 | A
0xA534 | 1 | EntityTransaction#begin()の処理開始 | A
0xA535 | 2 | EntityTransaction#begin()の処理終了 | A
0xA536 | 1 | EntityTransaction#commit()の処理開始 | A
0xA537 | 2 | EntityTransaction#commit()の処理終了 | A
0xA538 | 1 | EntityTransaction#rollback()の処理開始 | A
0xA539 | 2 | EntityTransaction#rollback()の処理終了 | A
0xA53A | 1 | EntityTransaction#getRollbackOnly()の処理開始 | A
0xA53B | 2 | EntityTransaction#getRollbackOnly()の処理終了 | A
0xA53C | 1 | EntityTransaction#setRollbackOnly()の処理開始 | A
0xA53D | 2 | EntityTransaction#setRollbackOnly()の処理終了 | A
0xA53E | 1 | EntityTransaction#isActive()の処理開始 | A
0xA53F | 2 | EntityTransaction#isActive()の処理終了 | A
0xA540 | 1 | Query#executeUpdate()の処理開始 | A
0xA541 | 2 | Query#executeUpdate()の処理終了 | A
0xA542 | 1 | Query#getResultList()の処理開始 | A
0xA543 | 2 | Query#getResultList()の処理終了 | A
0xA544 | 1 | Query#getSingleResult()の処理開始 | A
0xA545 | 2 | Query#getSingleResult()の処理終了 | A
0xA546 | 1 | Query#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA547 | 2 | Query#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA548 | 1 | Query#setFirstResult(int startPosition)の処理開始 | B
0xA549 | 2 | Query#setFirstResult(int startPosition)の処理終了 | B
0xA54A | 1 | Query#setMaxResults(int maxResult)の処理開始 | B
0xA54B | 2 | Query#setMaxResults(int maxResult)の処理終了 | B
0xA54C | 1 | Query#setHint(String hintName, Object value)の処理開始 | B
0xA54D | 2 | Query#setHint(String hintName, Object value)の処理終了 | B
0xA54E | 1 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA54F | 2 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA550 | 1 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA551 | 2 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA552 | 1 | Query#setParameter(int position, Object value)の処理開始 | B
0xA553 | 2 | Query#setParameter(int position, Object value)の処理終了 | B
0xA554 | 1 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA555 | 2 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA556 | 1 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA557 | 2 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA558 | 1 | Query#setParameter(String name, Object value)の処理開始 | B
0xA559 | 2 | Query#setParameter(String name, Object value)の処理終了 | B

（凡例）A：標準　B：詳細

注※　図7-53中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-53　アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイント

(2)　取得できるトレース情報

アプリケーション管理の永続化コンテキストを利用した場合に取得できるトレース情報を次の表に示します。

表7-82　アプリケーション管理の永続化コンテキストを利用した場合に取得できるトレース情報

図中の番号※
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0xA500
A
－
－
－

0xA502
A
－
－
－

0xA504
A
－
－
－

0xA506
A
－
－
－

0xA508
A
entityのクラス名
－
－

0xA50A
A
entityのクラス名
－
－

0xA50C
A
entityのクラス名
－
－

0xA50E
A
entityのクラス名
lockModeの値
－

0xA510
A
entityのクラス名
－
－

0xA512
A
entityのクラス名
－
－

0xA514
A
entityのクラス名
－
－

0xA516
A
entityのクラス名
－
－

0xA518
A
－
－
－

0xA51A
A
－
－
－

0xA51C
A
－
－
－

0xA51E
A
name
－
－

0xA520
A
－
－
－

0xA522
A
resultClassのクラス名
－
－

0xA524
A
resultSetMapping
－
－

0xA526
A
flushModeの値
－
－

0xA528
A
－
－
－

0xA52A
A
－
－
－

0xA52C
A
－
－
－

0xA52E
A
－
－
－

0xA530
A
－
－
－

0xA532
A
－
－
－

0xA534
A
－
－
－

0xA536
A
－
－
－

0xA538
A
－
－
－

0xA53A
A
－
－
－

0xA53C
A
－
－
－

0xA53E
A
－
－
－

0xA540
A
－
－
－

0xA542
A
－
－
－

0xA544
A
－
－
－

0xA546
A
flushModeの値
－
－

0xA548
B
startPositionの値
－
－

0xA54A
B
maxResultの値
－
－

0xA54C
B
hintName
valueのクラス名
－

0xA54E
B
positionの値
－
－

0xA550
B
positionの値
－
－

0xA552
B
positionの値
－
－

0xA554
B
nameの値
－
－

0xA556
B
nameの値
－
－

0xA558
B
nameの値
－
－

2
0xA501
A
－
－

正常時
<入り口時刻>

例外発生時
<入り口時刻><例外名>

0xA503
A
－
－

0xA505
A
－
－

0xA507
A
－
－

0xA509
A
－
－

0xA50B
A
－
－

0xA50D
A
－
－

0xA50F
A
－
－

0xA511
A
－
－

0xA513
A
－
－

0xA515
A
－
－

0xA517
A
－
－

0xA519
A
－
－

0xA51B
A
－
－

0xA51D
A
－
－

0xA51F
A
－
－

0xA521
A
－
－

0xA523
A
－
－

0xA525
A
－
－

0xA527
A
－
－

0xA529
A
－
－

0xA52B
A
－
－

0xA52D
A
－
－

0xA52F
A
－
－

0xA531
A
－
－

0xA533
A
－
－

0xA535
A
－
－

0xA537
A
－
－

0xA539
A
－
－

0xA53B
A
－
－

0xA53D
A
－
－

0xA53F
A
－
－

0xA541
A
－
－

0xA543
A
－
－

0xA545
A
－
－

0xA547
A
－
－

0xA549
B
－
－

0xA54B
B
－
－

0xA54D
B
－
－

0xA54F
B
－
－

0xA551
B
－
－

0xA553
B
－
－

0xA555
B
－
－

0xA557
B
－
－

0xA559
B
－
－

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-53中の番号と対応しています。

7.19.2　コンテナ管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

コンテナ管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報について説明します。ここでは，次の四つの場合に分けて説明します。

トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合

トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合

トランザクション外で生成されたQueryをトランザクション外で利用した場合

拡張永続化コンテキストを利用した場合

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

(a)　トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-83　トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA508 | 1 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA509 | 6 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50A | 1 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA50B | 6 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50C | 1 | EntityManager#contains(Object entity)の処理開始 | A
0xA50D | 6 | EntityManager#contains(Object entity)の処理終了 | A
0xA50E | 1 | EntityManager#lock(Object entity, LockModeType lockMode)の処理開始 | A
0xA50F | 6 | EntityManager#lock(Object entity, LockModeType lockMode)の処理終了 | A
0xA510 | 1 | EntityManager#merge(T entity)の処理開始 | A
0xA511 | 6 | EntityManager#merge(T entity)の処理終了 | A
0xA512 | 1 | EntityManager#persist(Object entity)の処理開始 | A
0xA513 | 6 | EntityManager#persist(Object entity)の処理終了 | A
0xA514 | 1 | EntityManager#refresh(Object entity)の処理開始 | A
0xA515 | 6 | EntityManager#refresh(Object entity)の処理終了 | A
0xA516 | 1 | EntityManager#remove(Object entity)の処理開始 | A
0xA517 | 6 | EntityManager#remove(Object entity)の処理終了 | A
0xA518 | 1 | EntityManager#clear()の処理開始 | A
0xA519 | 6 | EntityManager#clear()の処理終了 | A
0xA51A | 1 | EntityManager#flush()の処理開始 | A
0xA51B | 6 | EntityManager#flush()の処理終了 | A
0xA51C | 1 | EntityManager#createQuery(String qlString)の処理開始 | A
0xA51D | 6 | EntityManager#createQuery(String qlString)の処理終了 | A
0xA51E | 1 | EntityManager#createNamedQuery(String name)の処理開始 | A
0xA51F | 6 | EntityManager#createNamedQuery(String name)の処理終了 | A
0xA520 | 1 | EntityManager#createNativeQuery(String sqlString)の処理開始 | A
0xA521 | 6 | EntityManager#createNativeQuery(String sqlString)の処理終了 | A
0xA522 | 1 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理開始 | A
0xA523 | 6 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理終了 | A
0xA524 | 1 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理開始 | A
0xA525 | 6 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理終了 | A
0xA526 | 1 | EntityManager#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA527 | 6 | EntityManager#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA528 | 1 | EntityManager#getFlushMode()の処理開始 | A
0xA529 | 6 | EntityManager#getFlushMode()の処理終了 | A
0xA52A | 1 | EntityManager#joinTransaction()の処理開始 | A
0xA52B | 6 | EntityManager#joinTransaction()の処理終了 | A
0xA52C | 1 | EntityManager#getTransaction()の処理開始 | A
0xA52D | 6 | EntityManager#getTransaction()の処理終了 | A
0xA52E | 1 | EntityManager#getDelegate()の処理開始 | A
0xA52F | 6 | EntityManager#getDelegate()の処理終了 | A
0xA530 | 1 | EntityManager#isOpen()の処理開始 | A
0xA531 | 6 | EntityManager#isOpen()の処理終了 | A
0xA532 | 1 | EntityManager#close()の処理開始 | A
0xA533 | 6 | EntityManager#close()の処理終了 | A
0xA540 | 1 | Query#executeUpdate()の処理開始 | A
0xA541 | 6 | Query#executeUpdate()の処理終了 | A
0xA542 | 1 | Query#getResultList()の処理開始 | A
0xA543 | 6 | Query#getResultList()の処理終了 | A
0xA544 | 1 | Query#getSingleResult()の処理開始 | A
0xA545 | 6 | Query#getSingleResult()の処理終了 | A
0xA546 | 1 | Query#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA547 | 6 | Query#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA548 | 1 | Query#setFirstResult(int startPosition)の処理開始 | B
0xA549 | 6 | Query#setFirstResult(int startPosition)の処理終了 | B
0xA54A | 1 | Query#setMaxResults(int maxResult)の処理開始 | B
0xA54B | 6 | Query#setMaxResults(int maxResult)の処理終了 | B
0xA54C | 1 | Query#setHint(String hintName, Object value)の処理開始 | B
0xA54D | 6 | Query#setHint(String hintName, Object value)の処理終了 | B
0xA54E | 1 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA54F | 6 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA550 | 1 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA551 | 6 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA552 | 1 | Query#setParameter(int position, Object value)の処理開始 | B
0xA553 | 6 | Query#setParameter(int position, Object value)の処理終了 | B
0xA554 | 1 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA555 | 6 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA556 | 1 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA557 | 6 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA558 | 1 | Query#setParameter(String name, Object value)の処理開始 | B
0xA559 | 6 | Query#setParameter(String name, Object value)の処理終了 | B
0xA560 | 4 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA561 | 5 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA562 | 4 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA563 | 5 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA564 | 4 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理開始 | B
0xA565 | 5 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理終了 | B
0xA566 | 4 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理開始 | B
0xA567 | 5 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理終了 | B
0xA568 | 4 | JPAプロバイダのEntityManagerのmerge(T entity)の処理開始 | B
0xA569 | 5 | JPAプロバイダのEntityManagerのmerge(T entity)の処理終了 | B
0xA56A | 4 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理開始 | B
0xA56B | 5 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理終了 | B
0xA56C | 4 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理開始 | B
0xA56D | 5 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理終了 | B
0xA56E | 4 | JPAプロバイダのEntityManagerのremove(Object entity)の処理開始 | B
0xA56F | 5 | JPAプロバイダのEntityManagerのremove(Object entity)の処理終了 | B
0xA570 | 4 | JPAプロバイダのEntityManagerのclear()の処理開始 | B
0xA571 | 5 | JPAプロバイダのEntityManagerのclear()の処理終了 | B
0xA572 | 4 | JPAプロバイダのEntityManagerのflush()の処理開始 | B
0xA573 | 5 | JPAプロバイダのEntityManagerのflush()の処理終了 | B
0xA574 | 4 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理開始 | B
0xA575 | 5 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理終了 | B
0xA576 | 4 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理開始 | B
0xA577 | 5 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理終了 | B
0xA578 | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理開始 | B
0xA579 | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理終了 | B
0xA57A | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理開始 | B
0xA57B | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理終了 | B
0xA57C | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理開始 | B
0xA57D | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理終了 | B
0xA57E | 4 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA57F | 5 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA580 | 4 | JPAプロバイダのEntityManagerのgetFlushMode()の処理開始 | B
0xA581 | 5 | JPAプロバイダのEntityManagerのgetFlushMode()の処理終了 | B
0xA582 | 4 | JPAプロバイダのEntityManagerのjoinTransaction()の処理開始 | B
0xA583 | 5 | JPAプロバイダのEntityManagerのjoinTransaction()の処理終了 | B
0xA584 | 4 | JPAプロバイダのEntityManagerのisOpen()の処理開始 | B
0xA585 | 5 | JPAプロバイダのEntityManagerのisOpen()の処理終了 | B
0xA586 | 4 | JPAプロバイダのQueryのexecuteUpdate()の処理開始 | B
0xA587 | 5 | JPAプロバイダのQueryのexecuteUpdate()の処理終了 | B
0xA588 | 4 | JPAプロバイダのQueryのgetResultList()の処理開始 | B
0xA589 | 5 | JPAプロバイダのQueryのgetResultList()の処理終了 | B
0xA58A | 4 | JPAプロバイダのQueryのgetSingleResult()の処理開始 | B
0xA58B | 5 | JPAプロバイダのQueryのgetSingleResult()の処理終了 | B
0xA58C | 4 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA58D | 5 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA58E | 4 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理開始 | B
0xA58F | 5 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理終了 | B
0xA590 | 4 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理開始 | B
0xA591 | 5 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理終了 | B
0xA592 | 4 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理開始 | B
0xA593 | 5 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理終了 | B
0xA594 | 4 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA595 | 5 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA596 | 4 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA597 | 5 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA598 | 4 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理開始 | B
0xA599 | 5 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理終了 | B
0xA59A | 4 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA59B | 5 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA59C | 4 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA59D | 5 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA59E | 4 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理開始 | B
0xA59F | 5 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理終了 | B
0xA5A0 | 2 | トランザクションスコープの永続化コンテキストを利用した際の永続化コンテキストの生成処理開始 | A
0xA5A1 | 3 | トランザクションスコープの永続化コンテキストを利用した際の永続化コンテキストの生成処理終了 | A
0xA5A2 | 7 | トランザクションスコープの永続化コンテキストを利用した際の永続化コンテキストの破棄処理開始 | A
0xA5A3 | 8 | トランザクションスコープの永続化コンテキストを利用した際の永続化コンテキストの破棄処理終了 | A

（凡例）A：標準　B：詳細

注※　図7-54中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-54　トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合のトレース取得ポイント

(b)　トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-84　トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA508 | 1 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA509 | 8 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50A | 1 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA50B | 8 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50C | 1 | EntityManager#contains(Object entity)の処理開始 | A
0xA50D | 8 | EntityManager#contains(Object entity)の処理終了 | A
0xA50E | 1 | EntityManager#lock(Object entity, LockModeType lockMode)の処理開始 | A
0xA50F | 8 | EntityManager#lock(Object entity, LockModeType lockMode)の処理終了 | A
0xA510 | 1 | EntityManager#merge(T entity)の処理開始 | A
0xA511 | 8 | EntityManager#merge(T entity)の処理終了 | A
0xA512 | 1 | EntityManager#persist(Object entity)の処理開始 | A
0xA513 | 8 | EntityManager#persist(Object entity)の処理終了 | A
0xA514 | 1 | EntityManager#refresh(Object entity)の処理開始 | A
0xA515 | 8 | EntityManager#refresh(Object entity)の処理終了 | A
0xA516 | 1 | EntityManager#remove(Object entity)の処理開始 | A
0xA517 | 8 | EntityManager#remove(Object entity)の処理終了 | A
0xA518 | 1 | EntityManager#clear()の処理開始 | A
0xA519 | 8 | EntityManager#clear()の処理終了 | A
0xA51A | 1 | EntityManager#flush()の処理開始 | A
0xA51B | 8 | EntityManager#flush()の処理終了 | A
0xA526 | 1 | EntityManager#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA527 | 8 | EntityManager#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA528 | 1 | EntityManager#getFlushMode()の処理開始 | A
0xA529 | 8 | EntityManager#getFlushMode()の処理終了 | A
0xA52A | 1 | EntityManager#joinTransaction()の処理開始 | A
0xA52B | 8 | EntityManager#joinTransaction()の処理終了 | A
0xA52C | 1 | EntityManager#getTransaction()の処理開始 | A
0xA52D | 8 | EntityManager#getTransaction()の処理終了 | A
0xA52E | 1 | EntityManager#getDelegate()の処理開始 | A
0xA52F | 8 | EntityManager#getDelegate()の処理終了 | A
0xA530 | 1 | EntityManager#isOpen()の処理開始 | A
0xA531 | 8 | EntityManager#isOpen()の処理終了 | A
0xA532 | 1 | EntityManager#close()の処理開始 | A
0xA533 | 8 | EntityManager#close()の処理終了 | A
0xA560 | 4 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA561 | 5 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA562 | 4 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA563 | 5 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA564 | 4 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理開始 | B
0xA565 | 5 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理終了 | B
0xA566 | 4 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理開始 | B
0xA567 | 5 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理終了 | B
0xA568 | 4 | JPAプロバイダのEntityManagerのmerge(T entity)の処理開始 | B
0xA569 | 5 | JPAプロバイダのEntityManagerのmerge(T entity)の処理終了 | B
0xA56A | 4 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理開始 | B
0xA56B | 5 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理終了 | B
0xA56C | 4 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理開始 | B
0xA56D | 5 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理終了 | B
0xA56E | 4 | JPAプロバイダのEntityManagerのremove(Object entity)の処理開始 | B
0xA56F | 5 | JPAプロバイダのEntityManagerのremove(Object entity)の処理終了 | B
0xA570 | 4 | JPAプロバイダのEntityManagerのclear()の処理開始 | B
0xA571 | 5 | JPAプロバイダのEntityManagerのclear()の処理終了 | B
0xA572 | 4 | JPAプロバイダのEntityManagerのflush()の処理開始 | B
0xA573 | 5 | JPAプロバイダのEntityManagerのflush()の処理終了 | B
0xA57E | 4 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA57F | 5 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA580 | 4 | JPAプロバイダのEntityManagerのgetFlushMode()の処理開始 | B
0xA581 | 5 | JPAプロバイダのEntityManagerのgetFlushMode()の処理終了 | B
0xA582 | 4 | JPAプロバイダのEntityManagerのjoinTransaction()の処理開始 | B
0xA583 | 5 | JPAプロバイダのEntityManagerのjoinTransaction()の処理終了 | B
0xA584 | 4 | JPAプロバイダのEntityManagerのisOpen()の処理開始 | B
0xA585 | 5 | JPAプロバイダのEntityManagerのisOpen()の処理終了 | B
0xA5A4 | 2 | トランザクションスコープのEntityManagerのQuery生成以外のAPIを，トランザクションの存在しない状況で利用した際の永続化コンテキストの生成処理開始 | A
0xA5A5 | 3 | トランザクションスコープのEntityManagerのQuery生成以外のAPIを，トランザクションの存在しない状況で利用した際の永続化コンテキストの生成処理終了 | A
0xA5A6 | 6 | トランザクションスコープのEntityManagerのQuery生成以外のAPIを，トランザクションの存在しない状況で利用した際に生成した永続化コンテキストの破棄処理開始 | A
0xA5A7 | 7 | トランザクションスコープのEntityManagerのQuery生成以外のAPIを，トランザクションの存在しない状況で利用した際に生成した永続化コンテキストの破棄処理終了 | A

（凡例）A：標準　B：詳細

注※　図7-55中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-55　トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合のトレース取得ポイント

(c)　トランザクション外で生成されたQueryをトランザクション外で利用した場合

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-85　トランザクション外で生成されたQueryをトランザクション外で利用した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA51C | 1 | EntityManager#createQuery(String qlString)の処理開始 | A
0xA51D | 6 | EntityManager#createQuery(String qlString)の処理終了 | A
0xA51E | 1 | EntityManager#createNamedQuery(String name)の処理開始 | A
0xA51F | 6 | EntityManager#createNamedQuery(String name)の処理終了 | A
0xA520 | 1 | EntityManager#createNativeQuery(String sqlString)の処理開始 | A
0xA521 | 6 | EntityManager#createNativeQuery(String sqlString)の処理終了 | A
0xA522 | 1 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理開始 | A
0xA523 | 6 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理終了 | A
0xA524 | 1 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理開始 | A
0xA525 | 6 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理終了 | A
0xA540 | 1，11 | Query#executeUpdate()の処理開始 | A
0xA541 | 6，16 | Query#executeUpdate()の処理終了 | A
0xA542 | 1，11 | Query#getResultList()の処理開始 | A
0xA543 | 6，16 | Query#getResultList()の処理終了 | A
0xA544 | 1，11 | Query#getSingleResult()の処理開始 | A
0xA545 | 6，16 | Query#getSingleResult()の処理終了 | A
0xA546 | 1，7 | Query#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA547 | 6，10 | Query#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA548 | 1，7 | Query#setFirstResult(int startPosition)の処理開始 | B
0xA549 | 6，10 | Query#setFirstResult(int startPosition)の処理終了 | B
0xA54A | 1，7 | Query#setMaxResults(int maxResult)の処理開始 | B
0xA54B | 6，10 | Query#setMaxResults(int maxResult)の処理終了 | B
0xA54C | 1，7 | Query#setHint(String hintName, Object value)の処理開始 | B
0xA54D | 6，10 | Query#setHint(String hintName, Object value)の処理終了 | B
0xA54E | 1，7 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA54F | 6，10 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA550 | 1，7 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA551 | 6，10 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA552 | 1，7 | Query#setParameter(int position, Object value)の処理開始 | B
0xA553 | 6，10 | Query#setParameter(int position, Object value)の処理終了 | B
0xA554 | 1，7 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA555 | 6，10 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA556 | 1，7 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA557 | 6，10 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA558 | 1，7 | Query#setParameter(String name, Object value)の処理開始 | B
0xA559 | 6，10 | Query#setParameter(String name, Object value)の処理終了 | B
0xA574 | 4 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理開始 | B
0xA575 | 5 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理終了 | B
0xA576 | 4 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理開始 | B
0xA577 | 5 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理終了 | B
0xA578 | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理開始 | B
0xA579 | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理終了 | B
0xA57A | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理開始 | B
0xA57B | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理終了 | B
0xA57C | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理開始 | B
0xA57D | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理終了 | B
0xA586 | 4，12 | JPAプロバイダのQueryのexecuteUpdate()の処理開始 | B
0xA587 | 5，13 | JPAプロバイダのQueryのexecuteUpdate()の処理終了 | B
0xA588 | 4，12 | JPAプロバイダのQueryのgetResultList()の処理開始 | B
0xA589 | 5，13 | JPAプロバイダのQueryのgetResultList()の処理終了 | B
0xA58A | 4，12 | JPAプロバイダのQueryのgetSingleResult()の処理開始 | B
0xA58B | 5，13 | JPAプロバイダのQueryのgetSingleResult()の処理終了 | B
0xA58C | 4，8 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA58D | 5，9 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA58E | 4，8 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理開始 | B
0xA58F | 5，9 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理終了 | B
0xA590 | 4，8 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理開始 | B
0xA591 | 5，9 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理終了 | B
0xA592 | 4，8 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理開始 | B
0xA593 | 5，9 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理終了 | B
0xA594 | 4，8 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA595 | 5，9 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA596 | 4，8 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA597 | 5，9 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA598 | 4，8 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理開始 | B
0xA599 | 5，9 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理終了 | B
0xA59A | 4，8 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA59B | 5，9 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA59C | 4，8 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA59D | 5，9 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA59E | 4，8 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理開始 | B
0xA59F | 5，9 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理終了 | B
0xA5A8 | 2 | トランザクションスコープのEntityManagerのQuery生成APIまたはQueryによる検索・更新後に同一QueryオブジェクトのAPIを，トランザクションの存在しない状況で利用した際の永続化コンテキストの生成処理開始 | A
0xA5A9 | 3 | トランザクションスコープのEntityManagerのQuery生成APIまたはQueryによる検索・更新後に同一QueryオブジェクトのAPIを，トランザクションの存在しない状況で利用した際の永続化コンテキストの生成処理終了 | A
0xA5AA | 14 | トランザクションスコープのEntityManagerのQuery生成APIまたはQueryによる検索・更新後に同一QueryオブジェクトのAPIを，トランザクションの存在しない状況で利用した際に生成した永続化コンテキストの破棄処理開始 | A
0xA5AB | 15 | トランザクションスコープのEntityManagerのQuery生成APIまたはQueryによる検索・更新後に同一QueryオブジェクトのAPIを，トランザクションの存在しない状況で利用した際に生成した永続化コンテキストの破棄処理終了 | A

（凡例）A：標準　B：詳細

注※　図7-56中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-56　トランザクション外で生成されたQueryをトランザクション外で利用した場合のトレース取得ポイント

(d)　拡張永続化コンテキストを利用した場合

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-86　拡張永続化コンテキストを利用した場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA508 | 3 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA509 | 6 | EntityManager#find(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50A | 3 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理開始 | A
0xA50B | 6 | EntityManager#getReference(Class<T> entityClass, Object primaryKey)の処理終了 | A
0xA50C | 3 | EntityManager#contains(Object entity)の処理開始 | A
0xA50D | 6 | EntityManager#contains(Object entity)の処理終了 | A
0xA50E | 3 | EntityManager#lock(Object entity, LockModeType lockMode)の処理開始 | A
0xA50F | 6 | EntityManager#lock(Object entity, LockModeType lockMode)の処理終了 | A
0xA510 | 3 | EntityManager#merge(T entity)の処理開始 | A
0xA511 | 6 | EntityManager#merge(T entity)の処理終了 | A
0xA512 | 3 | EntityManager#persist(Object entity)の処理開始 | A
0xA513 | 6 | EntityManager#persist(Object entity)の処理終了 | A
0xA514 | 3 | EntityManager#refresh(Object entity)の処理開始 | A
0xA515 | 6 | EntityManager#refresh(Object entity)の処理終了 | A
0xA516 | 3 | EntityManager#remove(Object entity)の処理開始 | A
0xA517 | 6 | EntityManager#remove(Object entity)の処理終了 | A
0xA518 | 3 | EntityManager#clear()の処理開始 | A
0xA519 | 6 | EntityManager#clear()の処理終了 | A
0xA51A | 3 | EntityManager#flush()の処理開始 | A
0xA51B | 6 | EntityManager#flush()の処理終了 | A
0xA51C | 3 | EntityManager#createQuery(String qlString)の処理開始 | A
0xA51D | 6 | EntityManager#createQuery(String qlString)の処理終了 | A
0xA51E | 3 | EntityManager#createNamedQuery(String name)の処理開始 | A
0xA51F | 6 | EntityManager#createNamedQuery(String name)の処理終了 | A
0xA520 | 3 | EntityManager#createNativeQuery(String sqlString)の処理開始 | A
0xA521 | 6 | EntityManager#createNativeQuery(String sqlString)の処理終了 | A
0xA522 | 3 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理開始 | A
0xA523 | 6 | EntityManager#createNativeQuery(String sqlString, Class resultClass)の処理終了 | A
0xA524 | 3 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理開始 | A
0xA525 | 6 | EntityManager#createNativeQuery(String sqlString, String resultSetMapping)の処理終了 | A
0xA526 | 3 | EntityManager#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA527 | 6 | EntityManager#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA528 | 3 | EntityManager#getFlushMode()の処理開始 | A
0xA529 | 6 | EntityManager#getFlushMode()の処理終了 | A
0xA52A | 3 | EntityManager#joinTransaction()の処理開始 | A
0xA52B | 6 | EntityManager#joinTransaction()の処理終了 | A
0xA52C | 3 | EntityManager#getTransaction()の処理開始 | A
0xA52D | 6 | EntityManager#getTransaction()の処理終了 | A
0xA52E | 3 | EntityManager#getDelegate()の処理開始 | A
0xA52F | 6 | EntityManager#getDelegate()の処理終了 | A
0xA530 | 3 | EntityManager#isOpen()の処理開始 | A
0xA531 | 6 | EntityManager#isOpen()の処理終了 | A
0xA532 | 3 | EntityManager#close()の処理開始 | A
0xA533 | 6 | EntityManager#close()の処理終了 | A
0xA540 | 3 | Query#executeUpdate()の処理開始 | A
0xA541 | 6 | Query#executeUpdate()の処理終了 | A
0xA542 | 3 | Query#getResultList()の処理開始 | A
0xA543 | 6 | Query#getResultList()の処理終了 | A
0xA544 | 3 | Query#getSingleResult()の処理開始 | A
0xA545 | 6 | Query#getSingleResult()の処理終了 | A
0xA546 | 3 | Query#setFlushMode(FlushModeType flushMode)の処理開始 | A
0xA547 | 6 | Query#setFlushMode(FlushModeType flushMode)の処理終了 | A
0xA548 | 3 | Query#setFirstResult(int startPosition)の処理開始 | B
0xA549 | 6 | Query#setFirstResult(int startPosition)の処理終了 | B
0xA54A | 3 | Query#setMaxResults(int maxResult)の処理開始 | B
0xA54B | 6 | Query#setMaxResults(int maxResult)の処理終了 | B
0xA54C | 3 | Query#setHint(String hintName, Object value)の処理開始 | B
0xA54D | 6 | Query#setHint(String hintName, Object value)の処理終了 | B
0xA54E | 3 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA54F | 6 | Query#setParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA550 | 3 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA551 | 6 | Query#setParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA552 | 3 | Query#setParameter(int position, Object value)の処理開始 | B
0xA553 | 6 | Query#setParameter(int position, Object value)の処理終了 | B
0xA554 | 3 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA555 | 6 | Query#setParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA556 | 3 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA557 | 6 | Query#setParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA558 | 3 | Query#setParameter(String name, Object value)の処理開始 | B
0xA559 | 6 | Query#setParameter(String name, Object value)の処理終了 | B
0xA560 | 4 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA561 | 5 | JPAプロバイダのEntityManagerのfind(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA562 | 4 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理開始 | B
0xA563 | 5 | JPAプロバイダのEntityManagerのgetReference(Class<T> entityClass, Object primaryKey)の処理終了 | B
0xA564 | 4 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理開始 | B
0xA565 | 5 | JPAプロバイダのEntityManagerのcontains(Object entity)の処理終了 | B
0xA566 | 4 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理開始 | B
0xA567 | 5 | JPAプロバイダのEntityManagerのlock(Object entity, LockModeType lockMode)の処理終了 | B
0xA568 | 4 | JPAプロバイダのEntityManagerのmerge(T entity)の処理開始 | B
0xA569 | 5 | JPAプロバイダのEntityManagerのmerge(T entity)の処理終了 | B
0xA56A | 4 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理開始 | B
0xA56B | 5 | JPAプロバイダのEntityManagerのpersist(Object entity)の処理終了 | B
0xA56C | 4 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理開始 | B
0xA56D | 5 | JPAプロバイダのEntityManagerのrefresh(Object entity)の処理終了 | B
0xA56E | 4 | JPAプロバイダのEntityManagerのremove(Object entity)の処理開始 | B
0xA56F | 5 | JPAプロバイダのEntityManagerのremove(Object entity)の処理終了 | B
0xA570 | 4 | JPAプロバイダのEntityManagerのclear()の処理開始 | B
0xA571 | 5 | JPAプロバイダのEntityManagerのclear()の処理終了 | B
0xA572 | 4 | JPAプロバイダのEntityManagerのflush()の処理開始 | B
0xA573 | 5 | JPAプロバイダのEntityManagerのflush()の処理終了 | B
0xA574 | 4 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理開始 | B
0xA575 | 5 | JPAプロバイダのEntityManagerのcreateQuery(String qlString)の処理終了 | B
0xA576 | 4 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理開始 | B
0xA577 | 5 | JPAプロバイダのEntityManagerのcreateNamedQuery(String name)の処理終了 | B
0xA578 | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理開始 | B
0xA579 | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString)の処理終了 | B
0xA57A | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理開始 | B
0xA57B | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, Class resultClass)の処理終了 | B
0xA57C | 4 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理開始 | B
0xA57D | 5 | JPAプロバイダのEntityManagerのcreateNativeQuery(String sqlString, String resultSetMapping)の処理終了 | B
0xA57E | 4 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA57F | 5 | JPAプロバイダのEntityManagerのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA580 | 4 | JPAプロバイダのEntityManagerのgetFlushMode()の処理開始 | B
0xA581 | 5 | JPAプロバイダのEntityManagerのgetFlushMode()の処理終了 | B
0xA582 | 4 | JPAプロバイダのEntityManagerのjoinTransaction()の処理開始 | B
0xA583 | 5 | JPAプロバイダのEntityManagerのjoinTransaction()の処理終了 | B
0xA584 | 4 | JPAプロバイダのEntityManagerのisOpen()の処理開始 | B
0xA585 | 5 | JPAプロバイダのEntityManagerのisOpen()の処理終了 | B
0xA586 | 4 | JPAプロバイダのQueryのexecuteUpdate()の処理開始 | B
0xA587 | 5 | JPAプロバイダのQueryのexecuteUpdate()の処理終了 | B
0xA588 | 4 | JPAプロバイダのQueryのgetResultList()の処理開始 | B
0xA589 | 5 | JPAプロバイダのQueryのgetResultList()の処理終了 | B
0xA58A | 4 | JPAプロバイダのQueryのgetSingleResult()の処理開始 | B
0xA58B | 5 | JPAプロバイダのQueryのgetSingleResult()の処理終了 | B
0xA58C | 4 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理開始 | B
0xA58D | 5 | JPAプロバイダのQueryのsetFlushMode(FlushModeType flushMode)の処理終了 | B
0xA58E | 4 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理開始 | B
0xA58F | 5 | JPAプロバイダのQueryのsetFirstResult(int startPosition)の処理終了 | B
0xA590 | 4 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理開始 | B
0xA591 | 5 | JPAプロバイダのQueryのsetMaxResults(int maxResult)の処理終了 | B
0xA592 | 4 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理開始 | B
0xA593 | 5 | JPAプロバイダのQueryのsetHint(String hintName, Object value)の処理終了 | B
0xA594 | 4 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理開始 | B
0xA595 | 5 | JPAプロバイダのQueryのsetParameter(int position, Calendar value, TemporalType temporalType)の処理終了 | B
0xA596 | 4 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理開始 | B
0xA597 | 5 | JPAプロバイダのQueryのsetParameter(int position, Date value, TemporalType temporalType)の処理終了 | B
0xA598 | 4 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理開始 | B
0xA599 | 5 | JPAプロバイダのQueryのsetParameter(int position, Object value)の処理終了 | B
0xA59A | 4 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理開始 | B
0xA59B | 5 | JPAプロバイダのQueryのsetParameter(String name, Calendar value, TemporalType temporalType)の処理終了 | B
0xA59C | 4 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理開始 | B
0xA59D | 5 | JPAプロバイダのQueryのsetParameter(String name, Date value, TemporalType temporalType)の処理終了 | B
0xA59E | 4 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理開始 | B
0xA59F | 5 | JPAプロバイダのQueryのsetParameter(String name, Object value)の処理終了 | B
0xA5AC | 1 | 拡張スコープの永続化コンテキストを利用した際の永続化コンテキストの生成処理開始 | A
0xA5AD | 2 | 拡張スコープの永続化コンテキストを利用した際の永続化コンテキストの生成処理終了 | A
0xA5AE | 7 | 拡張スコープの永続化コンテキストを利用した際のEntityManager.close()の処理開始 | A
0xA5AF | 8 | 拡張スコープの永続化コンテキストを利用した際のEntityManager.close()の処理終了 | A

（凡例）A：標準　B：詳細

注※　図7-57中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-57　拡張永続化コンテキストを利用した場合のトレース取得ポイント

(2)　取得できるトレース情報

(a)　トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合

トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合に取得できるトレース情報を次の表に示します。

表7-87　トランザクションスコープの永続化コンテキストをトランザクション内で利用した場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA508 | A | entityのクラス名 | － | －
0xA50A | A | entityのクラス名 | － | －
0xA50C | A | entityのクラス名 | － | －
0xA50E | A | entityのクラス名 | lockModeの値 | －
0xA510 | A | entityのクラス名 | － | －
0xA512 | A | entityのクラス名 | － | －
0xA514 | A | entityのクラス名 | － | －
0xA516 | A | entityのクラス名 | － | －
0xA518 | A | － | － | －
0xA51A | A | － | － | －
0xA51C | A | － | － | －
0xA51E | A | name | － | －
0xA520 | A | － | － | －
0xA522 | A | resultClassのクラス名 | － | －
0xA524 | A | resultSetMapping | － | －
0xA526 | A | flushModeの値 | － | －
0xA528 | A | － | － | －
0xA52A | A | － | － | －
0xA52C | A | － | － | －
0xA52E | A | － | － | －
0xA530 | A | － | － | －
0xA532 | A | － | － | －
0xA540 | A | － | － | －
0xA542 | A | － | － | －
0xA544 | A | － | － | －
0xA546 | A | flushModeの値 | － | －
0xA548 | B | startPositionの値 | － | －
0xA54A | B | maxResultの値 | － | －
0xA54C | B | hintName | valueのクラス名 | －
0xA54E | B | positionの値 | － | －
0xA550 | B | positionの値 | － | －
0xA552 | B | positionの値 | － | －
0xA554 | B | nameの値 | － | －
0xA556 | B | nameの値 | － | －
0xA558 | B | nameの値 | － | －
2 | 0xA5A0 | A | － | － | －
3 | 0xA5A1 | A | － | － | ※2
4 | 0xA560 | B | entityのクラス名 | － | －
0xA562 | B | entityのクラス名 | － | －
0xA564 | B | entityのクラス名 | － | －
0xA566 | B | entityのクラス名 | lockModeの値 | －
0xA568 | B | entityのクラス名 | － | －
0xA56A | B | entityのクラス名 | － | －
0xA56C | B | entityのクラス名 | － | －
0xA56E | B | entityのクラス名 | － | －
0xA570 | B | － | － | －
0xA572 | B | － | － | －
0xA574 | B | － | － | －
0xA576 | B | name | － | －
0xA578 | B | － | － | －
0xA57A | B | resultClassのクラス名 | － | －
0xA57C | B | resultSetMapping | － | －
0xA57E | B | flushModeの値 | － | －
0xA580 | B | － | － | －
0xA582 | B | － | － | －
0xA584 | B | － | － | －
0xA586 | B | － | － | －
0xA588 | B | － | － | －
0xA58A | B | － | － | －
0xA58C | B | flushModeの値 | － | －
0xA58E | B | startPositionの値 | － | －
0xA590 | B | maxResultの値 | － | －
0xA592 | B | hintName | valueのクラス名 | －
0xA594 | B | positionの値 | － | －
0xA596 | B | positionの値 | － | －
0xA598 | B | positionの値 | － | －
0xA59A | B | nameの値 | － | －
0xA59C | B | nameの値 | － | －
0xA59E | B | nameの値 | － | －
5 | 0xA561 | B | － | － | ※2
0xA563 | B | － | － | ※2
0xA565 | B | － | － | ※2
0xA567 | B | － | － | ※2
0xA569 | B | － | － | ※2
0xA56B | B | － | － | ※2
0xA56D | B | － | － | ※2
0xA56F | B | － | － | ※2
0xA571 | B | － | － | ※2
0xA573 | B | － | － | ※2
0xA575 | B | － | － | ※2
0xA577 | B | － | － | ※2
0xA579 | B | － | － | ※2
0xA57B | B | － | － | ※2
0xA57D | B | － | － | ※2
0xA57F | B | － | － | ※2
0xA581 | B | － | － | ※2
0xA583 | B | － | － | ※2
0xA585 | B | － | － | ※2
0xA587 | B | － | － | ※2
0xA589 | B | － | － | ※2
0xA58B | B | － | － | ※2
0xA58D | B | － | － | ※2
0xA58F | B | － | － | ※2
0xA591 | B | － | － | ※2
0xA593 | B | － | － | ※2
0xA595 | B | － | － | ※2
0xA597 | B | － | － | ※2
0xA599 | B | － | － | ※2
0xA59B | B | － | － | ※2
0xA59D | B | － | － | ※2
0xA59F | B | － | － | ※2
6 | 0xA509 | A | － | － | ※2
0xA50B | A | － | － | ※2
0xA50D | A | － | － | ※2
0xA50F | A | － | － | ※2
0xA511 | A | － | － | ※2
0xA513 | A | － | － | ※2
0xA515 | A | － | － | ※2
0xA517 | A | － | － | ※2
0xA519 | A | － | － | ※2
0xA51B | A | － | － | ※2
0xA51D | A | － | － | ※2
0xA51F | A | － | － | ※2
0xA521 | A | － | － | ※2
0xA523 | A | － | － | ※2
0xA525 | A | － | － | ※2
0xA527 | A | － | － | ※2
0xA529 | A | － | － | ※2
0xA52B | A | － | － | ※2
0xA52D | A | － | － | ※2
0xA52F | A | － | － | ※2
0xA531 | A | － | － | ※2
0xA533 | A | － | － | ※2
0xA541 | A | － | － | ※2
0xA543 | A | － | － | ※2
0xA545 | A | － | － | ※2
0xA547 | A | － | － | ※2
0xA549 | B | － | － | ※2
0xA54B | B | － | － | ※2
0xA54D | B | － | － | ※2
0xA54F | B | － | － | ※2
0xA551 | B | － | － | ※2
0xA553 | B | － | － | ※2
0xA555 | B | － | － | ※2
0xA557 | B | － | － | ※2
0xA559 | B | － | － | ※2
7 | 0xA5A2 | A | － | － | －
8 | 0xA5A3 | A | － | － | ※2

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-54中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻と例外が表示されます。

(b)　トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合

トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合に取得できるトレース情報を次の表に示します。

表7-88　トランザクションスコープの永続化コンテキストに関連づいているエンティティマネージャをトランザクション外で利用した場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA508 | A | entityのクラス名 | － | －
0xA50A | A | entityのクラス名 | － | －
0xA50C | A | entityのクラス名 | － | －
0xA50E | A | entityのクラス名 | lockModeの値 | －
0xA510 | A | entityのクラス名 | － | －
0xA512 | A | entityのクラス名 | － | －
0xA514 | A | entityのクラス名 | － | －
0xA516 | A | entityのクラス名 | － | －
0xA518 | A | － | － | －
0xA51A | A | － | － | －
0xA526 | A | flushModeの値 | － | －
0xA528 | A | － | － | －
0xA52A | A | － | － | －
0xA52C | A | － | － | －
0xA52E | A | － | － | －
0xA530 | A | － | － | －
0xA532 | A | － | － | －
2 | 0xA5A4 | A | － | － | －
3 | 0xA5A5 | A | － | － | ※2
4 | 0xA560 | B | entityのクラス名 | － | －
0xA562 | B | entityのクラス名 | － | －
0xA564 | B | entityのクラス名 | － | －
0xA566 | B | entityのクラス名 | lockModeの値 | －
0xA568 | B | entityのクラス名 | － | －
0xA56A | B | entityのクラス名 | － | －
0xA56C | B | entityのクラス名 | － | －
0xA56E | B | entityのクラス名 | － | －
0xA570 | B | － | － | －
0xA572 | B | － | － | －
0xA57E | B | flushModeの値 | － | －
0xA580 | B | － | － | －
0xA582 | B | － | － | －
0xA584 | B | － | － | －
5 | 0xA561 | B | － | － | ※2
0xA563 | B | － | － | ※2
0xA565 | B | － | － | ※2
0xA567 | B | － | － | ※2
0xA569 | B | － | － | ※2
0xA56B | B | － | － | ※2
0xA56D | B | － | － | ※2
0xA56F | B | － | － | ※2
0xA571 | B | － | － | ※2
0xA573 | B | － | － | ※2
0xA57F | B | － | － | ※2
0xA581 | B | － | － | ※2
0xA583 | B | － | － | ※2
0xA585 | B | － | － | ※2
6 | 0xA5A6 | A | － | － | －
7 | 0xA5A7 | A | － | － | ※2
8 | 0xA509 | A | － | － | ※2
0xA50B | A | － | － | ※2
0xA50D | A | － | － | ※2
0xA50F | A | － | － | ※2
0xA511 | A | － | － | ※2
0xA513 | A | － | － | ※2
0xA515 | A | － | － | ※2
0xA517 | A | － | － | ※2
0xA519 | A | － | － | ※2
0xA51B | A | － | － | ※2
0xA527 | A | － | － | ※2
0xA529 | A | － | － | ※2
0xA52B | A | － | － | ※2
0xA52D | A | － | － | ※2
0xA52F | A | － | － | ※2
0xA531 | A | － | － | ※2
0xA533 | A | － | － | ※2

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-55中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻と例外が表示されます。

(c)　トランザクション外で生成されたQueryをトランザクション外で利用した場合

トランザクション外で生成されたQueryをトランザクション外で利用した場合に取得できるトレース情報を次の表に示します。

表7-89　トランザクション外で生成されたQueryをトランザクション外で利用した場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA51C | A | － | － | －
0xA51E | A | name | － | －
0xA520 | A | － | － | －
0xA522 | A | resultClassのクラス名 | － | －
0xA524 | A | resultSetMapping | － | －
1，11 | 0xA540 | A | － | － | －
0xA542 | A | － | － | －
0xA544 | A | － | － | －
1，7 | 0xA546 | A | flushModeの値 | － | －
0xA548 | B | startPositionの値 | － | －
0xA54A | B | maxResultの値 | － | －
0xA54C | B | hintName | valueのクラス名 | －
0xA54E | B | positionの値 | － | －
0xA550 | B | positionの値 | － | －
0xA552 | B | positionの値 | － | －
0xA554 | B | nameの値 | － | －
0xA556 | B | nameの値 | － | －
0xA558 | B | nameの値 | － | －
2 | 0xA5A8 | A | － | － | －
3 | 0xA5A9 | A | － | － | ※2
4 | 0xA574 | B | － | － | －
0xA576 | B | name | － | －
0xA578 | B | － | － | －
0xA57A | B | resultClassのクラス名 | － | －
0xA57C | B | resultSetMapping | － | －
4，12 | 0xA586 | B | － | － | －
0xA588 | B | － | － | －
0xA58A | B | － | － | －
4，8 | 0xA58C | B | flushModeの値 | － | －
0xA58E | B | startPositionの値 | － | －
0xA590 | B | maxResultの値 | － | －
0xA592 | B | hintName | valueのクラス名 | －
0xA594 | B | positionの値 | － | －
0xA596 | B | positionの値 | － | －
0xA598 | B | positionの値 | － | －
0xA59A | B | nameの値 | － | －
0xA59C | B | nameの値 | － | －
0xA59E | B | nameの値 | － | －
5 | 0xA575 | B | － | － | ※2
0xA577 | B | － | － | ※2
0xA579 | B | － | － | ※2
0xA57B | B | － | － | ※2
0xA57D | B | － | － | ※2
5，13 | 0xA587 | B | － | － | ※2
0xA589 | B | － | － | ※2
0xA58B | B | － | － | ※2
5，9 | 0xA58D | B | － | － | ※2
0xA58F | B | － | － | ※2
0xA591 | B | － | － | ※2
0xA593 | B | － | － | ※2
0xA595 | B | － | － | ※2
0xA597 | B | － | － | ※2
0xA599 | B | － | － | ※2
0xA59B | B | － | － | ※2
0xA59D | B | － | － | ※2
0xA59F | B | － | － | ※2
6 | 0xA51D | A | － | － | ※2
0xA51F | A | － | － | ※2
0xA521 | A | － | － | ※2
0xA523 | A | － | － | ※2
0xA525 | A | － | － | ※2
6，16 | 0xA541 | A | － | － | ※2
0xA543 | A | － | － | ※2
0xA545 | A | － | － | ※2
6，10 | 0xA547 | A | － | － | ※2
0xA549 | B | － | － | ※2
0xA54B | B | － | － | ※2
0xA54D | B | － | － | ※2
0xA54F | B | － | － | ※2
0xA551 | B | － | － | ※2
0xA553 | B | － | － | ※2
0xA555 | B | － | － | ※2
0xA557 | B | － | － | ※2
0xA559 | B | － | － | ※2
14 | 0xA5AA | A | － | － | －
15 | 0xA5AB | A | － | － | ※2

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-56中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻と例外が表示されます。

(d)　拡張永続化コンテキストを利用した場合

拡張永続化コンテキストを利用した場合に取得できるトレース情報を次の表に示します。

表7-90　拡張永続化コンテキストを利用した場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA5AC | A | － | － | －
2 | 0xA5AD | A | － | － | ※2
3 | 0xA508 | A | entityのクラス名 | － | －
0xA50A | A | entityのクラス名 | － | －
0xA50C | A | entityのクラス名 | － | －
0xA50E | A | entityのクラス名 | lockModeの値 | －
0xA510 | A | entityのクラス名 | － | －
0xA512 | A | entityのクラス名 | － | －
0xA514 | A | entityのクラス名 | － | －
0xA516 | A | entityのクラス名 | － | －
0xA518 | A | － | － | －
0xA51A | A | － | － | －
0xA51C | A | － | － | －
0xA51E | A | name | － | －
0xA520 | A | － | － | －
0xA522 | A | resultClassのクラス名 | － | －
0xA524 | A | resultSetMapping | － | －
0xA526 | A | flushModeの値 | － | －
0xA528 | A | － | － | －
0xA52A | A | － | － | －
0xA52C | A | － | － | －
0xA52E | A | － | － | －
0xA530 | A | － | － | －
0xA532 | A | － | － | －
0xA540 | A | － | － | －
0xA542 | A | － | － | －
0xA544 | A | － | － | －
0xA546 | A | flushModeの値 | － | －
0xA548 | B | startPositionの値 | － | －
0xA54A | B | maxResultの値 | － | －
0xA54C | B | hintName | valueのクラス名 | －
0xA54E | B | positionの値 | － | －
0xA550 | B | positionの値 | － | －
0xA552 | B | positionの値 | － | －
0xA554 | B | nameの値 | － | －
0xA556 | B | nameの値 | － | －
0xA558 | B | nameの値 | － | －
4 | 0xA560 | B | entityのクラス名 | － | －
0xA562 | B | entityのクラス名 | － | －
0xA564 | B | entityのクラス名 | － | －
0xA566 | B | entityのクラス名 | lockModeの値 | －
0xA568 | B | entityのクラス名 | － | －
0xA56A | B | entityのクラス名 | － | －
0xA56C | B | entityのクラス名 | － | －
0xA56E | B | entityのクラス名 | － | －
0xA570 | B | － | － | －
0xA572 | B | － | － | －
0xA574 | B | － | － | －
0xA576 | B | name | － | －
0xA578 | B | － | － | －
0xA57A | B | resultClassのクラス名 | － | －
0xA57C | B | resultSetMapping | － | －
0xA57E | B | flushModeの値 | － | －
0xA580 | B | － | － | －
0xA582 | B | － | － | －
0xA584 | B | － | － | －
0xA586 | B | － | － | －
0xA588 | B | － | － | －
0xA58A | B | － | － | －
0xA58C | B | flushModeの値 | － | －
0xA58E | B | startPositionの値 | － | －
0xA590 | B | maxResultの値 | － | －
0xA592 | B | hintName | valueのクラス名 | －
0xA594 | B | positionの値 | － | －
0xA596 | B | positionの値 | － | －
0xA598 | B | positionの値 | － | －
0xA59A | B | nameの値 | － | －
0xA59C | B | nameの値 | － | －
0xA59E | B | nameの値 | － | －
5 | 0xA561 | B | － | － | ※2
0xA563 | B | － | － | ※2
0xA565 | B | － | － | ※2
0xA567 | B | － | － | ※2
0xA569 | B | － | － | ※2
0xA56B | B | － | － | ※2
0xA56D | B | － | － | ※2
0xA56F | B | － | － | ※2
0xA571 | B | － | － | ※2
0xA573 | B | － | － | ※2
0xA575 | B | － | － | ※2
0xA577 | B | － | － | ※2
0xA579 | B | － | － | ※2
0xA57B | B | － | － | ※2
0xA57D | B | － | － | ※2
0xA57F | B | － | － | ※2
0xA581 | B | － | － | ※2
0xA583 | B | － | － | ※2
0xA585 | B | － | － | ※2
0xA587 | B | － | － | ※2
0xA589 | B | － | － | ※2
0xA58B | B | － | － | ※2
0xA58D | B | － | － | ※2
0xA58F | B | － | － | ※2
0xA591 | B | － | － | ※2
0xA593 | B | － | － | ※2
0xA595 | B | － | － | ※2
0xA597 | B | － | － | ※2
0xA599 | B | － | － | ※2
0xA59B | B | － | － | ※2
0xA59D | B | － | － | ※2
0xA59F | B | － | － | ※2
6 | 0xA509 | A | － | － | ※2
0xA50B | A | － | － | ※2
0xA50D | A | － | － | ※2
0xA50F | A | － | － | ※2
0xA511 | A | － | － | ※2
0xA513 | A | － | － | ※2
0xA515 | A | － | － | ※2
0xA517 | A | － | － | ※2
0xA519 | A | － | － | ※2
0xA51B | A | － | － | ※2
0xA51D | A | － | － | ※2
0xA51F | A | － | － | ※2
0xA521 | A | － | － | ※2
0xA523 | A | － | － | ※2
0xA525 | A | － | － | ※2
0xA527 | A | － | － | ※2
0xA529 | A | － | － | ※2
0xA52B | A | － | － | ※2
0xA52D | A | － | － | ※2
0xA52F | A | － | － | ※2
0xA531 | A | － | － | ※2
0xA533 | A | － | － | ※2
0xA541 | A | － | － | ※2
0xA543 | A | － | － | ※2
0xA545 | A | － | － | ※2
0xA547 | A | － | － | ※2
0xA549 | B | － | － | ※2
0xA54B | B | － | － | ※2
0xA54D | B | － | － | ※2
0xA54F | B | － | － | ※2
0xA551 | B | － | － | ※2
0xA553 | B | － | － | ※2
0xA555 | B | － | － | ※2
0xA557 | B | － | － | ※2
0xA559 | B | － | － | ※2
7 | 0xA5AE | A | － | － | －
8 | 0xA5AF | A | － | － | ※2

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-57中の番号と対応しています。

注※2　正常に処理された場合，入り口時刻が表示されます。例外が発生した場合，入り口時刻と例外が表示されます。

7.20　Cosminexus JPAプロバイダのトレース取得ポイント

ここでは，Cosminexus JPAプロバイダのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.20.1　EntityManagerFactoryの取得／解放処理のトレース取得ポイントと取得できるトレース情報

7.20.2　EntityManagerの取得処理のトレース取得ポイントと取得できるトレース情報

7.20.3　EntityManagerの操作のトレース取得ポイントと取得できるトレース情報

7.20.4　EntityManagerの解放処理のトレース取得ポイントと取得できるトレース情報

7.20.5　Queryの操作のトレース取得ポイントと取得できるトレース情報

7.20.6　EntityTransactionの操作のトレース取得ポイントと取得できるトレース情報

7.20.7　ユーザへのコールバックメソッドのトレース取得ポイントと取得できるトレース情報

7.20.8　エンティティクラスのバイナリ変換のトレース取得ポイントと取得できるトレース情報

7.20.9　トランザクションマネージャとのトランザクション連携処理のトレース取得ポイントと取得できるトレース情報

7.20.10　DB Connectorのコネクション操作のトレース取得ポイントと取得できるトレース情報

7.20.1　EntityManagerFactoryの取得／解放処理のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-91　EntityManagerFactoryの取得／解放処理のトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0xA304※2 | 3 | EntityManagerFactory#close()の処理開始 | B
0xA305※2 | 4 | EntityManagerFactory#close()の処理終了 | B
0xA320※3 | 1 | PersistenceProvider#createEntityManagerFactory(String, Map)の処理開始 | A
0xA321※3 | 2 | PersistenceProvider#createEntityManagerFactory(String, Map)の処理終了 | A
0xA322※3 | 1 | PersistenceProvider#createContainerEntityManagerFactory(PersistenceUnitInfo, Map)の処理開始 | A
0xA323※3 | 2 | PersistenceProvider#createContainerEntityManagerFactory(PersistenceUnitInfo, Map)の処理終了 | A

（凡例）A：標準　B：詳細

注※1　図7-58中の番号と対応しています。

注※2　javax.persistence.EntityManagerFactoryの場合のトレース取得ポイントです。

注※3　javax.persistence.spi.PersistenceProviderの場合のトレース取得ポイントです。

トレース取得ポイントを次の図に示します。

図7-58　EntityManagerFactoryの取得／解放処理のトレース取得ポイント

(2)　取得できるトレース情報

EntityManagerFactoryの取得／解放処理で取得できるトレース情報を次の表に示します。

表7-92　EntityManagerFactoryの取得／解放処理で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1※2 | 0xA320※3 | A | － | － | －
0xA322 | A | － | － | －
2※2 | 0xA321※3 | A | － | － | ※4
0xA323 | A | － | － | ※4
3※5 | 0xA304 | B | － | － | －
4※5 | 0xA305 | B | － | － | ※4

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-58中の番号と対応しています。

注※2　javax.persistence.spi.PersistenceProviderの場合のトレース取得ポイントです。

注※3　Cosminexus JPAプロバイダを使用した場合は出力されません。

注※4　例外が発生した場合，例外が表示されます。

注※5　javax.persistence.EntityManagerFactoryの場合のトレース取得ポイントです。

7.20.2　EntityManagerの取得処理のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-93　javax.persistence.EntityManagerFactoryの場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA300 | 1 | EntityManagerFactory#createEntityManager()の処理開始 | B
0xA301 | 2 | EntityManagerFactory#createEntityManager()の処理終了 | B
0xA302 | 1 | EntityManagerFactory#createEntityManager(Map)の処理開始 | B
0xA303 | 2 | EntityManagerFactory#createEntityManager(Map)の処理終了 | B

（凡例）B：詳細

注※　図7-59中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-59　javax.persistence.EntityManagerFactoryの場合のトレース取得ポイント

(2)　取得できるトレース情報

EntityManagerの取得処理で取得できるトレース情報を次の表に示します。

表7-94　javax.persistence.EntityManagerFactoryの場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA300 | B | － | － | －
0xA302 | B | － | － | －
2 | 0xA301 | B | － | － | ※2
0xA303 | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-59中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.3　EntityManagerの操作のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-95　javax.persistence.EntityManagerの場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA340 | 1 | EntityManager#persist(Object)の処理開始 | B
0xA341 | 2 | EntityManager#persist(Object)の処理終了 | B
0xA342 | 1 | EntityManager#merge(T)の処理開始 | B
0xA343 | 2 | EntityManager#merge(T)の処理終了 | B
0xA344 | 1 | EntityManager#remove(Object)の処理開始 | B
0xA345 | 2 | EntityManager#remove(Object)の処理終了 | B
0xA346 | 1 | EntityManager#find(Class<T>, Object)の処理開始 | B
0xA347 | 2 | EntityManager#find(Class<T>, Object)の処理終了 | B
0xA348 | 1 | EntityManager#getReference(Class<T>, Object)の処理開始 | B
0xA349 | 2 | EntityManager#getReference(Class<T>, Object)の処理終了 | B
0xA34A | 1 | EntityManager#flush()の処理開始 | B
0xA34B | 2 | EntityManager#flush()の処理終了 | B
0xA34C | 1 | EntityManager#lock(Object, LockModeType)の処理開始 | B
0xA34D | 2 | EntityManager#lock(Object, LockModeType)の処理終了 | B
0xA34E | 1 | EntityManager#refresh(Object)の処理開始 | B
0xA34F | 2 | EntityManager#refresh(Object)の処理終了 | B
0xA350 | 1 | EntityManager#clear()の処理開始 | B
0xA351 | 2 | EntityManager#clear()の処理終了 | B
0xA352 | 1 | EntityManager#contains(Object)の処理開始 | B
0xA353 | 2 | EntityManager#contains(Object)の処理終了 | B
0xA35E | 1 | EntityManager#joinTransaction()の処理開始 | B
0xA35F | 2 | EntityManager#joinTransaction()の処理終了 | B

（凡例）B：詳細

注※　図7-60中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-60　javax.persistence.EntityManagerの場合のトレース取得ポイント

(2)　取得できるトレース情報

EntityManagerの操作で取得できるトレース情報を次の表に示します。

表7-96　javax.persistence.EntityManagerの場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA340 | B | － | － | －
0xA342 | B | － | － | －
0xA344 | B | － | － | －
0xA346 | B | － | － | －
0xA348 | B | － | － | －
0xA34A | B | － | － | －
0xA34C | B | － | － | －
0xA34E | B | － | － | －
0xA350 | B | － | － | －
0xA352 | B | － | － | －
0xA35E | B | － | － | －
2 | 0xA341 | B | － | － | ※2
0xA343 | B | － | － | ※2
0xA345 | B | － | － | ※2
0xA347 | B | － | － | ※2
0xA349 | B | － | － | ※2
0xA34B | B | － | － | ※2
0xA34D | B | － | － | ※2
0xA34F | B | － | － | ※2
0xA351 | B | － | － | ※2
0xA353 | B | － | － | ※2
0xA35F | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-60中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.4　EntityManagerの解放処理のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-97　 javax.persistence.EntityManagerの場合のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA360 | 1 | EntityManager#close()の処理開始 | B
0xA361 | 2 | EntityManager#close()の処理終了 | B

（凡例）B：詳細

注※　図7-61中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-61　javax.persistence.EntityManagerの場合のトレース取得ポイント

(2)　取得できるトレース情報

EntityManagerの解放処理で取得できるトレース情報を次の表に示します。

表7-98　javax.persistence.EntityManagerの場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA360 | B | － | － | －
2 | 0xA361 | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-61中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.5　Queryの操作のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-99　Query操作のトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0xA354※2 | 1 | EntityManager#createQuery(String)の処理開始 | B
0xA355※2 | 2 | EntityManager#createQuery(String)の処理終了 | B
0xA356※2 | 1 | EntityManager#createNamedQuery(String)の処理開始 | B
0xA357※2 | 2 | EntityManager#createNamedQuery(String)の処理終了 | B
0xA358※2 | 1 | EntityManager#createNativeQuery(String)の処理開始 | B
0xA359※2 | 2 | EntityManager#createNativeQuery(String)の処理終了 | B
0xA35A※2 | 1 | EntityManager#createNativeQuery(String, Class)の処理開始 | B
0xA35B※2 | 2 | EntityManager#createNativeQuery(String, Class)の処理終了 | B
0xA35C※2 | 1 | EntityManager#createNativeQuery(String, String)の処理開始 | B
0xA35D※2 | 2 | EntityManager#createNativeQuery(String, String)の処理終了 | B
0xA370※3 | 5 | Query#getResultList()の処理開始 | B
0xA371※3 | 6 | Query#getResultList()の処理終了 | B
0xA372※3 | 5 | Query#getSingleResult()の処理開始 | B
0xA373※3 | 6 | Query#getSingleResult()の処理終了 | B
0xA374※3 | 5 | Query#executeUpdate()の処理開始 | B
0xA375※3 | 6 | Query#executeUpdate()の処理終了 | B
0xA376※3 | 3 | Query#setParameter(String, Object)の処理開始 | B
0xA377※3 | 4 | Query#setParameter(String, Object)の処理終了 | B
0xA378※3 | 3 | Query#setParameter(String, Date, TemporalType)の処理開始 | B
0xA379※3 | 4 | Query#setParameter(String, Date, TemporalType)の処理終了 | B
0xA37A※3 | 3 | Query#setParameter(String, Calendar, TemporalType)の処理開始 | B
0xA37B※3 | 4 | Query#setParameter(String, Calendar, TemporalType)の処理終了 | B
0xA37C※3 | 3 | Query#setParameter(int, Object)の処理開始 | B
0xA37D※3 | 4 | Query#setParameter(int, Object)の処理終了 | B
0xA37E※3 | 3 | Query#setParameter(int, Date, TemporalType)の処理開始 | B
0xA37F※3 | 4 | Query#setParameter(int, Date, TemporalType)の処理終了 | B
0xA380※3 | 3 | Query#setParameter(int, Calendar, TemporalType)の処理開始 | B
0xA381※3 | 4 | Query#setParameter(int, Calendar, TemporalType)の処理終了 | B

（凡例）B：詳細

注※1　図7-62中の番号と対応しています。

注※2　javax.persistence.EntityManagerの場合のトレース取得ポイントです。

注※3　javax.persistence.Queryの場合のトレース取得ポイントです。

トレース取得ポイントを次の図に示します。

図7-62　Query操作のトレース取得ポイント

(2)　取得できるトレース情報

Queryの操作で取得できるトレース情報を次の表に示します。

表7-100　Query操作で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1※2 | 0xA354 | B | － | － | －
0xA356 | B | － | － | －
0xA358 | B | － | － | －
0xA35A | B | － | － | －
0xA35C | B | － | － | －
2※2 | 0xA355 | B | － | － | ※3
0xA357 | B | － | － | ※3
0xA359 | B | － | － | ※3
0xA35B | B | － | － | ※3
0xA35D | B | － | － | ※3
3※4 | 0xA376 | B | － | － | －
0xA378 | B | － | － | －
0xA37A | B | － | － | －
0xA37C | B | － | － | －
0xA37E | B | － | － | －
0xA380 | B | － | － | －
4※4 | 0xA377 | B | － | － | ※3
0xA379 | B | － | － | ※3
0xA37B | B | － | － | ※3
0xA37D | B | － | － | ※3
0xA37F | B | － | － | ※3
0xA381 | B | － | － | ※3
5※4 | 0xA370 | B | － | － | －
0xA372 | B | － | － | －
0xA374 | B | － | － | －
6※4 | 0xA371 | B | － | － | ※3
0xA373 | B | － | － | ※3
0xA375 | B | － | － | ※3

（凡例）B：詳細　－：該当なし

注※1　図7-62中の番号と対応しています。

注※2　javax.persistence.EntityManagerの場合のトレース取得ポイントです。

注※3　例外が発生した場合，例外が表示されます。

注※4　javax.persistence.Queryの場合のトレース取得ポイントです。

7.20.6　EntityTransactionの操作のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-101　EntityTransactionの操作のトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0xA310※2 | 3 | EntityTransaction#begin()の処理開始 | B
0xA311※2 | 4 | EntityTransaction#begin()の処理終了 | B
0xA312※2 | 5 | EntityTransaction#commit()の処理開始 | B
0xA313※2 | 6 | EntityTransaction#commit()の処理終了 | B
0xA314※2 | 5 | EntityTransaction#rollback()の処理開始 | B
0xA315※2 | 6 | EntityTransaction#rollback()の処理終了 | B
0xA362※3 | 1 | EntityManager#getTransaction()の処理開始 | B
0xA363※3 | 2 | EntityManager#getTransaction()の処理終了 | B

（凡例）B：詳細

注※1　図7-63中の番号と対応しています。

注※2　javax.persistence.EntityTransactionの場合のトレース取得ポイントです。

注※3　javax.persistence.EntityManagerの場合のトレース取得ポイントです。

トレース取得ポイントを次の図に示します。

図7-63　EntityTransactionの操作のトレース取得ポイント

(2)　取得できるトレース情報

EntityTransactionの操作で取得できるトレース情報を次の表に示します。

表7-102　EntityTransactionの場合に取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1※2 | 0xA362 | B | － | － | －
2※2 | 0xA363 | B | － | － | ※3
3※4 | 0xA310 | B | － | － | －
4※4 | 0xA311 | B | － | － | ※3
5※4 | 0xA312 | B | － | － | －
0xA314 | B | － | － | －
6※4 | 0xA313 | B | － | － | ※3
0xA315 | B | － | － | ※3

（凡例）B：詳細　－：該当なし

注※1　図7-63中の番号と対応しています。

注※2　javax.persistence.EntityManagerの場合のトレース取得ポイントです。

注※3　例外が発生した場合，例外が表示されます。

注※4　javax.persistence.EntityTransactionの場合のトレース取得ポイントです。

7.20.7　ユーザへのコールバックメソッドのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-103　ユーザへのコールバックメソッドでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA390 | 1 | PrePersist()コールバックメソッドの呼び出し直前 | A
0xA391 | 2 | PrePersist()コールバックメソッドからリターンした直後 | A
0xA392 | 1 | PostPersist()コールバックメソッドの呼び出し直前 | A
0xA393 | 2 | PostPersist()コールバックメソッドからリターンした直後 | A
0xA394 | 1 | PreRemove()コールバックメソッドの呼び出し直前 | A
0xA395 | 2 | PreRemove()コールバックメソッドからリターンした直後 | A
0xA396 | 1 | PostRemove()コールバックメソッドの呼び出し直前 | A
0xA397 | 2 | PostRemove()コールバックメソッドからリターンした直後 | A
0xA398 | 1 | PreUpdate()コールバックメソッドの呼び出し直前 | A
0xA399 | 2 | PreUpdate()コールバックメソッドからリターンした直後 | A
0xA39A | 1 | PostUpdate()コールバックメソッドの呼び出し直前 | A
0xA39B | 2 | PostUpdate()コールバックメソッドからリターンした直後 | A
0xA39C | 1 | PostLoad()コールバックメソッドの呼び出し直前 | A
0xA39D | 2 | PostLoad()コールバックメソッドからリターンした直後 | A

（凡例）A：標準

注※　図7-64中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-64　ユーザへのコールバックメソッドのトレース取得ポイント

(2)　取得できるトレース情報

ユーザへのコールバックメソッドで取得できるトレース情報を次の表に示します。

表7-104　ユーザへのコールバックメソッドで取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA390 | A | ユーザが指定したコールバックメソッド名 | － | －
0xA392 | A | － | －
0xA394 | A | － | －
0xA396 | A | － | －
0xA398 | A | － | －
0xA39A | A | － | －
0xA39C | A | － | －
2 | 0xA391 | A | ユーザが指定したコールバックメソッド名 | － | ※2
0xA393 | A | － | ※2
0xA395 | A | － | ※2
0xA397 | A | － | ※2
0xA399 | A | － | ※2
0xA39B | A | － | ※2
0xA39D | A | － | ※2

（凡例）A：標準　－：該当なし

注※1　図7-64中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.8　エンティティクラスのバイナリ変換のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-105　エンティティクラスのバイナリ変換でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA330 | 1 | エンティティクラスに対するバイナリ変換処理の開始直前 | B
0xA331 | 2 | エンティティクラスに対するバイナリ変換処理の完了直後 | B

（凡例）B：詳細

注※　図7-65中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-65　エンティティクラスのバイナリ変換でのトレース取得ポイント

ポイント

JPAを使用するアプリケーションでは，エンティティクラス以外のクラスの場合でも，そのクラスがクラスローダからローディングされるタイミングでこれらのトレース情報が取得されます。

(2)　取得できるトレース情報

エンティティクラスのバイナリ変換で取得できるトレース情報を次の表に示します。

表7-106　エンティティクラスのバイナリ変換で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA330 | B | － | － | －
2 | 0xA331 | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-65中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.9　トランザクションマネージャとのトランザクション連携処理のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-107　トランザクションマネージャとのトランザクション連携処理のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA39E | 1 | 永続化コンテキストとトランザクションを関連づける処理の開始直前 | B
0xA39F | 2 | 永続化コンテキストとトランザクションを関連づける処理の完了直後 | B
0xA3A0 | 3 | JTAトランザクション決着の前処理の開始直前 | B
0xA3A1 | 4 | JTAトランザクション決着の前処理の終了直後 | B
0xA3A2 | 5 | JTAトランザクション決着の後処理の開始直前 | B
0xA3A3 | 6 | JTAトランザクション決着の後処理の終了直後 | B

（凡例）B：詳細

注※　図7-66中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-66　トランザクションマネージャとのトランザクション連携処理のトレース取得ポイント

(2)　取得できるトレース情報

トランザクションマネージャとのトランザクション連携処理で取得できるトレース情報を次の表に示します。

表7-108　トランザクションマネージャとのトランザクション連携処理で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA39E | B | － | － | －
2 | 0xA39F | B | － | － | ※2
3 | 0xA3A0 | B | － | － | －
4 | 0xA3A1 | B | － | － | ※2
5 | 0xA3A2 | B | － | afterCompletion()の引数で渡されたトランザクションのステータス(javax.transaction.Statusのint値) | －
6 | 0xA3A3 | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-66中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.20.10　DB Connectorのコネクション操作のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-109　DB Connectorのコネクション操作のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA3A4 | 1 | DataSource#getConnection()の呼び出し直前 | B
0xA3A5 | 2 | DataSource#getConnection()からリターンした直後 | B
0xA3A6 | 1 | DataSource#getConnection(String, String)の呼び出し直前 | B
0xA3A7 | 2 | DataSource#getConnection(String, String)からリターンした直後 | B
0xA3A8 | 1 | DriverManager#getConnection(String, Properties)の呼び出し直前 | B
0xA3A9 | 2 | DriverManager#getConnection(String, Properties)からリターンした直後 | B
0xA3AA | 1 | DriverManager#getConnection(String, String, String)の呼び出し直前 | B
0xA3AB | 2 | DriverManager#getConnection(String, String, String)からリターンした直後 | B
0xA3AC | 9 | Connection#close()の呼び出し直前 | B
0xA3AD | 10 | Connection#close()からリターンした直後 | B
0xA3AE | 7 | Connection#commit()の呼び出し直前 | B
0xA3AF | 8 | Connection#commit()からリターンした直後 | B
0xA3B0 | 3 | Connection#createStatement()の呼び出し直前 | B
0xA3B1 | 4 | Connection#createStatement()からリターンした直後 | B
0xA3B2 | 3 | Connection#prepareCall(String)の呼び出し直前 | B
0xA3B3 | 4 | Connection#prepareCall(String)からリターンした直後 | B
0xA3B4 | 3 | Connection#prepareCall(String, int, int)の呼び出し直前 | B
0xA3B5 | 4 | Connection#prepareCall(String, int, int)からリターンした直後 | B
0xA3B6 | 3 | Connection#prepareStatement(String)の呼び出し直前 | B
0xA3B7 | 4 | Connection#prepareStatement(String)からリターンした直後 | B
0xA3B8 | 3 | Connection#prepareStatement(String, int, int)の呼び出し直前 | B
0xA3B9 | 4 | Connection#prepareStatement(String , int, int)からリターンした直後 | B
0xA3BA | 7 | Connection#rollback()の呼び出し直前 | B
0xA3BB | 8 | Connection#rollback()からリターンした直後 | B
0xA3BC | 5 | Statement#executeQuery(String)の呼び出し直前 | B
0xA3BD | 6 | Statement#executeQuery(String)からリターンした直後 | B
0xA3BE | 5 | Statement#executeUpdate(String)の呼び出し直前 | B
0xA3BF | 6 | Statement#executeUpdate(String)からリターンした直後 | B
0xA3C0 | 5 | PreparedStatemen#executeUpdate()の呼び出し直前 | B
0xA3C1 | 6 | PreparedStatemen#executeUpdate()からリターンした直後 | B
0xA3C2 | 5 | PreparedStatemen#executeQuery()の呼び出し直前 | B
0xA3C3 | 6 | PreparedStatemen#executeQuery()からリターンした直後 | B

（凡例）B：詳細

注※　図7-67中の番号と対応しています。

トレース取得ポイントを次の図に示します。

図7-67　DB Connectorのコネクション操作のトレース取得ポイント

(2)　取得できるトレース情報

DB Connectorのコネクション操作で取得できるトレース情報を次の表に示します。

表7-110　DB Connectorのコネクション操作で取得できるトレース情報

図中の番号※1 | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA3A4 | B | － | － | －
0xA3A6 | B | － | － | －
0xA3A8 | B | － | － | －
0xA3AA | B | － | － | －
2 | 0xA3A5 | B | － | － | ※2
0xA3A7 | B | － | － | ※2
0xA3A9 | B | － | － | ※2
0xA3AB | B | － | － | ※2
3 | 0xA3B0 | B | － | － | －
0xA3B2 | B | － | － | －
0xA3B4 | B | － | － | －
0xA3B6 | B | － | － | －
0xA3B8 | B | － | － | －
4 | 0xA3B1 | B | － | － | ※2
0xA3B3 | B | － | － | ※2
0xA3B5 | B | － | － | ※2
0xA3B7 | B | － | － | ※2
0xA3B9 | B | － | － | ※2
5 | 0xA3BC | B | － | － | －
0xA3BE | B | － | － | －
0xA3C0 | B | － | － | －
0xA3C2 | B | － | － | －
6 | 0xA3BD | B | － | － | ※2
0xA3BF | B | － | － | ※2
0xA3C1 | B | － | － | ※2
0xA3C3 | B | － | － | ※2
7 | 0xA3AE | B | － | － | －
0xA3BA | B | － | － | －
8 | 0xA3AF | B | － | － | ※2
0xA3BB | B | － | － | ※2
9 | 0xA3AC | B | － | － | －
10 | 0xA3AD | B | － | － | ※2

（凡例）B：詳細　－：該当なし

注※1　図7-67中の番号と対応しています。

注※2　例外が発生した場合，例外が表示されます。

7.21　TP1インバウンド連携機能のトレース取得ポイント

ここでは，TP1インバウンド連携機能のトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.21.1　トレース取得ポイントとPRFトレース取得レベル

7.21.2　取得できるトレース情報

7.21.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

＜この項の構成＞

(1)　TP1インバウンド連携機能でのトレース取得ポイントの詳細

(2)　TP1インバウンド連携機能でのトレース取得ポイント

(3)　同期点処理でのトレース取得ポイント

(1)　TP1インバウンド連携機能でのトレース取得ポイントの詳細

TP1インバウンド連携機能でのトレース取得ポイントの詳細について次の表に示します。

表7-111　TP1インバウンド連携機能でのトレース取得ポイントの詳細

イベントID
図中の番号※
トレース取得ポイント
レベル

0x842F
19
リソースアダプタからMessage-driven Beanのメッセージリスナのメソッドを呼び出した直後
A

0x8430
22
リソースアダプタから呼び出したMessage-driven Beanのメッセージリスナのメソッドのリターン直前
A

0x8431
20
EJBコンテナがMessage-driven Beanのメッセージリスナのメソッドをコールバックする直前
A

0x8432
21
Message-driven Beanのメッセージリスナのメソッドのコールバックからリターンした直後
A

0x8825
17
トランザクションのrecreate処理直前
B

0x8826
18
トランザクションのrecreate処理直後
B

0x8B86
14
javax.resource.spi.work.WorkManagerのメソッドの呼び出し直後
A

0x8B87
15
javax.resource.spi.work.WorkManagerのメソッドのリターン直前
A

0x8B8A
16
javax.resource.spi.work.Workのメソッド呼び出し直前
A

0x8B8B
29
javax.resource.spi.work.Workのメソッドのリターン直後
A

0x8B8C
33
javax.resource.spi.XATerminator.prepare（Xid xid）呼び出し直後
B

0x8B8D
34
javax.resource.spi.XATerminator.prepare（Xid xid）リターン直前
B

0x8B8E
－
javax.resource.spi.XATerminator.commit（Xid xid，boolean onePhase）呼び出し直後
B

0x8B8F
－
javax.resource.spi.XATerminator.commit（Xid xid，boolean onePhase）リターン直前
B

0x8B90
－
javax.resource.spi.XATerminator.rollback（Xid xid）呼び出し直後
B

0x8B91
－
javax.resource.spi.XATerminator.rollback（Xid xid）リターン直前
B

0x8B92
－
javax.resource.spi.XATerminator.forget（Xid xid）呼び出し直後
B

0x8B93
－
javax.resource.spi.XATerminator.forget（Xid xid）リターン直前
B

0xAA00
8
電文受信開始直後
A

0xAA01
12
RPC応答送信完了直後
A

0xAA02
4
OpenTP1からの電文読み込み開始直後
A

0xAA03
10
OpenTP1とのコネクション切断直前（OpenTP1の定義にrpc_close_after_send=Yが指定されている場合）
A

0xAA04
5
ソケットのread呼び出し直前
B

0xAA05
6
ソケットのread完了直後
B

0xAA06
13
電文受信が完了し，スケジュールキュー投入直前
A

0xAA08
23
RPC応答電文の送信開始直前
A

0xAA09
27
応答用のコネクション切断直前（TP1インバウンドアダプタのプロパティにrpc_close_after_send=trueが指定されている場合）
A

0xAA0A
25
ソケットのwrite呼び出し直前
B

0xAA0B
26
ソケットのwrite完了直後
B

0xAA0C
30
送信失敗。リトライ待機開始直前
A

0xAA0D
31
リトライ開始直前
A

0xAA10
11

不正電文を受信してコネクションを切断した直後

受信タイムアウトが発生してコネクションを切断した直後

受信タイマ監視スレッドでRPC要求の受信タイムアウトが発生し電文が破棄された直後

A

0xAA11
28
RPC応答送信失敗直後
A

0xAA12
2
OpenTP1とのコネクションを受信監視対象に追加する直前
B

0xAA13
3
OpenTP1とのコネクションで電文の受信を検知した時
B

0xAA14
32
同期点処理でのOpenTP1からの受信完了直後
A

0xAA15
35
同期点処理でのOpenTP1への送信完了直後，または送信できないエラーが発生した直後
A

0xAA16
1
OpenTP1とのコネクション確立直後
A

0xAA17
9
OpenTP1とのコネクション切断直前，または通信エラー発生によるOpenTP1とのコネクション切断検知直後
A

0xAA18
7
受信した電文を解析した直後
B

0xAA19
24
電文を送信する直前
B

（凡例）A：標準　B：詳細　－：該当なし

注※　図7-68～図7-74の番号と対応しています。

(2)　TP1インバウンド連携機能でのトレース取得ポイント

TP1インバウンド連携機能でのトレース取得ポイントの全体を次の図に示します。なお，図中のA，およびBについては，さらに詳細なトレース取得ポイントがあります。

図7-68　TP1インバウンド連携機能のトレース取得ポイントの全体

図中のAおよびBの詳細なトレース取得ポイントについて，次の二つの図で示します。

図7-69　A部分のトレース取得ポイント

注※1　readで例外が発生した場合，出力しません。

注※2　電文受信後に出力します。分割された電文の場合，分割された電文ごとに出力します。ただし，電文不正時は出力しません。

注※3　RPC応答送信処理（0xAA01以外のPRFトレース取得ポイント）については，図7-70を参照してください。

RPC受信時のPRFトレース取得ポイントは，図7-69に加えて，受信タイマ監視スレッドがRPC要求の受信タイムアウトを検知し，電文を破棄した直後に出力する0xAA10があります。

図7-70　B部分のトレース取得ポイント

図7-70の応答送信時のPRFトレース出力ポイントは，RPC通信時だけでなく，J2EEアプリケーション停止時にも出力します。このときのルートアプリケーション情報は，OpenTP1から引き継いだルートアプリケーション情報ではなく，J2EEサーバによって生成されたルートアプリケーション情報です。そのため，J2EEアプリケーション停止時のPRFトレース出力ポイントとRPC通信時のほかのPRFトレース出力ポイントとの対応づけは，J2EEアプリケーション停止時の0xAA08のインタフェース名に出力するルートアプリケーション情報を使用します。

(3)　同期点処理でのトレース取得ポイント

同期点処理でのトレース取得ポイントの全体を次の図に示します。なお，図中のA，およびBについては，さらに詳細なトレース取得ポイントがあります。

図7-71　同期点処理のトレース取得ポイントの全体

注※1

処理要求がXATerminatorに移った時点で，メソッドごとに出力されるイベントIDが異なります。各メソッドと出力されるイベントIDの対応を次の表に示します。

表7-112　メソッドとイベントIDの対応

メソッド | イベントID | 図中の番号
prepareメソッド | 0x8B8C | 33
commitメソッド | 0x8B8E | －
rollbackメソッド | 0x8B90 | －
forgetメソッド | 0x8B92 | －

（凡例）－：図中では使用していません。

注※2

OTSの出力ポイントについては，「7.15　OTSのトレース取得ポイント」を参照してください。

注※3

処理要求がXATerminatorから同期点電文送受信スレッドへ移る時点で，メソッドごとに出力されるイベントIDが異なります。各メソッドと出力されるイベントIDの対応を次の表に示します。

表7-113　メソッドとイベントIDの対応

メソッド | イベントID | 図中の番号
prepareメソッド | 0x8B8D | 34
commitメソッド | 0x8B8F | －
rollbackメソッド | 0x8B91 | －
forgetメソッド | 0x8B93 | －

（凡例）－：図中では使用していません。

図中のAおよびBの詳細なトレース取得ポイントについて，次の二つの図で示します。

図7-72　同期点処理のA部分のトレース取得ポイント

注※1　readで例外が発生した場合，出力しません。

注※2　電文受信後に出力します。分割された電文の場合，分割された電文ごとに出力します。ただし，電文不正時は出力しません。

図7-73　同期点処理のB部分のトレース取得ポイント

コネクション数調整スレッドのトレース取得ポイントを次の図で示します。

図7-74　コネクション数調整スレッドのトレース取得ポイント

7.21.2　取得できるトレース情報

TP1インバウンド連携機能で取得できるトレース情報を次の表に示します。

表7-114　TP1インバウンド連携機能で取得できるトレース情報

図中の番号※1
イベントID
レベル
取得できる情報

インタフェース名
オペレーション名
オプション

1
0xAA16
A
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

2
0xAA12
B
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

3
0xAA13
B
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

4
0xAA02
A
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

5
0xAA04
B
要求サイズ
－
－

6
0xAA05
B
読み込めたサイズ
－
－

7
0xAA18
B
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
電文の種類
TP1インバウンドアダプタ側のListenポート番号

8
0xAA00
A
サービスグループ名
サービス名
呼び出し元のOpenTP1のノード識別子※3，トランザクショングローバル識別子（トランザクショナルRPCの場合）

9
0xAA17
A
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

10
0xAA03
A
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

11
0xAA10
A
サービスグループ名※4
サービス名※5
入り口時刻

12
0xAA01
A
サービスグループ名
サービス名
正常時：入り口時刻
異常時：入り口時刻およびエラー応答コード

13
0xAA06
A
サービスグループ名
サービス名
呼び出し元のOpenTP1のノード識別子※3，キュー内の電文数

14
0x8B86
A
Workのクラス名
メソッド名
リソースアダプタの表示名

15
0x8B87
A
Workのクラス名
メソッド名
正常時：入り口時刻
異常時：入り口時刻および例外

16
0x8B8A
A
Workのクラス名
メソッド名
リソースアダプタの表示名

17
0x8825
B
－
－
OpenTP1のグローバルトランザクションID（バイト列）

18
0x8826
B
－
－
正常時：入り口時刻
異常時：入り口時刻および例外

19
0x842F
A
Bean名
メソッド名
－

20
0x8431
A
Bean名
メソッド名
－

21
0x8432
A
Bean名
メソッド名
正常時：入り口時刻
異常時：入り口時刻および例外

22
0x8430
A
Bean名
メソッド名
正常時：入り口時刻
異常時：入り口時刻および例外

23
0xAA08
A
ルートアプリケーション情報※6
－
－

24
0xAA19
B
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
電文の種類
TP1インバウンドアダプタ側のListenポート番号

25
0xAA0A
B
書き込みサイズ
－
－

26
0xAA0B
B
書き込めたサイズ
－
－

27
0xAA09
A
OpenTP1のIPアドレス：OpenTP1のlistenポート番号※2
－
TP1インバウンドアダプタ側のListenポート番号

28
0xAA11
A
サービスグループ名
サービス名
入り口時刻

29
0x8B8B
A
Workのクラス名
メソッド名
正常時：入り口時刻
異常時：入り口時刻および例外

30
0xAA0C
A
－
－
－

31
0xAA0D
A
－
－
－

32
0xAA14
A
OpenTP1のノード識別子
次のどれかを出力します。

prepare

commit

rollback

トランザクショングローバル識別子

33
0x8B8C
B
－
－
XATerminatorの引数xidのグローバルトランザクションID（バイト列）

34
0x8B8D
B
－
－
正常時：入り口時刻
異常時：入り口時刻および例外

35
0xAA15
A
－
正常時は次のどれかを出力します※7。

prepared

read only

committed

rolled back

異常時は何も出力しません。
入口時刻

－
0x8B8E
B
－
－
XATerminatorの引数xidのグローバルトランザクションID（バイト列）

－
0x8B8F
B
－
－
正常時：入り口時刻
異常時：入り口時刻および例外

－
0x8B90
B
－
－
XATerminatorの引数xidのグローバルトランザクションID（バイト列）

－
0x8B91
B
－
－
正常時：入り口時刻
異常時：入り口時刻および例外

－
0x8B92
B
－
－
XATerminatorの引数xidのグローバルトランザクションID（バイト列）

－
0x8B93
B
－
－
正常時：入り口時刻
異常時：入り口時刻および例外

（凡例）A：標準　B：詳細　－：該当なし

注※1　図7-68～図7-74中の番号と対応しています。

注※2　OpenTP1のlistenポートが判別できない場合は「OpenTP1のIPアドレス：－」と出力します。

注※3　呼び出し元のOpenTP1からPRF情報を引き継いでいる場合は，「root RPCノード識別子」が出力されます。引き継いでいない場合は，「呼出元ノードID」が出力されます。

注※4　インタフェース名に出力されるサービスグループ名が判別できない場合は「－」が出力されます。

注※5　オペレーション名に出力されるサービス名が判別できない場合は「－」が出力されます。

注※6　J2EEアプリケーションの停止時だけ出力します。出力する内容を以下に示します。

呼び出し元のOpenTP1からPRF情報を引き継いでいる場合は，OpenTP1から引き継いだルートアプリケーション情報を出力します。

呼び出し元のOpenTP1からPRF情報を引き継いでいない場合は，TP1インバウンドアダプタが採番したルートアプリケーション情報を出力します。

注※7　それぞれ次の条件の場合に出力します。

prepared：プリペアが完了した場合

read only：実行したMessage-driven Bean（サービス）のトランザクションの設定がCMT NotSupported，またはBMTの場合

committed：コミットが完了した場合

rolled back：ロールバックが完了した場合。プリペアやコミットの結果がロールバックとなった場合も含みます。

7.22　Cosminexus JMSプロバイダのトレース取得ポイント

ここでは，Cosminexus JMSプロバイダのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.22.1　JMS ConnectionFactoryインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.2　JMS Connectionインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.3　JMSセッションインタフェースのトレース取得ポイントと取得できるトレース情報

7.22.4　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーのトレース取得ポイントと取得できるトレース情報

7.22.5　CJMSPリソースアダプタと接続するときのCJMSPブローカーのトレース取得ポイントと取得できるトレース情報

7.22.6　CJMSPリソースアダプタでのトランザクション管理のトレース取得ポイントと取得できるトレース情報

7.22.7　CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時のトレース取得ポイントと取得できるトレース情報

7.22.1　JMS ConnectionFactoryインタフェースのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-115　JMS ConnectionFactoryインタフェースでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA600 | 1 | ConnectionFactory.createConnection()の処理開始 | A
0xA601 | 4 | ConnectionFactory.createConnection()の処理終了 | A
0xA602 | 1 | ConnectionFactory.createConnection(uname,pwd)の処理開始 | A
0xA603 | 4 | ConnectionFactory.createConnection(uname,pwd)の処理終了 | A
0xA604 | 1 | QueueConnectionFactory.createQueueConnection()の処理開始 | A
0xA605 | 4 | QueueConnectionFactory.createQueueConnection()の処理終了 | A
0xA606 | 1 | QueueConnectionFactory.createQueueConnection(uname,pwd)の処理開始 | A
0xA607 | 4 | QueueConnectionFactory.createQueueConnection(uname,pwd)の処理終了 | A
0xA608 | 1 | TopicConnectionFactory.createTopicConnection()の処理開始 | A
0xA609 | 4 | TopicConnectionFactory.createTopicConnection()の処理終了 | A
0xA60A | 1 | TopicConnectionFactory.createTopicConnection(uname,pwd)の処理開始 | A
0xA60B | 4 | TopicConnectionFactory.createTopicConnection(uname,pwd)の処理終了 | A
0xA60C | 2 | ManagedConnectionFactory.matchManagedConnections()の処理開始 | B
0xA60D | 3 | ManagedConnectionFactory.matchManagedConnections()の処理終了 | B

（凡例）A：標準　B：詳細

注※　図7-75の番号と対応しています。

JMS ConnectionFactoryインタフェースでのトレース取得ポイントを次の図に示します。

図7-75　JMS ConnectionFactoryインタフェースのトレース取得ポイント

(2)　取得できるトレース情報

JMS ConnectionFactoryインタフェースで取得できるトレース情報（インタフェース名，オペレーション名，およびオプション）はありません。

7.22.2　JMS Connectionインタフェースのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-116　JMS Connectionインタフェースでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA60E | 1 | Connection.createSession(transacted,acknowledgeMode)の処理開始 | A
0xA60F | 4 | Connection.createSession(transacted,acknowledgeMode)の処理終了 | A
0xA610 | 1 | QueueConnection.createQueueSession(transacted,acknowledgeMode)の処理開始 | A
0xA611 | 4 | QueueConnection.createQueueSession(transacted,acknowledgeMode)の処理終了 | A
0xA612 | 1 | TopicConnection.createTopicSession(transacted,acknowledgeMode)の処理開始 | A
0xA613 | 4 | TopicConnection.createTopicSession(transacted,acknowledgeMode)の処理終了 | A
0xA614 | 5 | Connection.close()処理の開始 | A
0xA615 | 8 | Connection.close()処理の終了 | A
0xA616 | 2 | セッション作成直前のCJMSPブローカーによる呼び出し | A
0xA617 | 3 | セッション作成直後のCJMSPブローカーによる呼び出し | A
0xA618 | 6 | コネクションの切断直前のCJMSPブローカーによる呼び出し | A
0xA619 | 7 | コネクションの切断直後のCJMSPブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-76の番号と対応しています。

JMS Connectionインタフェースでのトレース取得ポイントを次の図に示します。

図7-76　JMS Connectionインタフェースのトレース取得ポイント

(2)　取得できるトレース情報

JMS Connectionインタフェースで取得できるトレース情報を次の表に示します。

表7-117　JMS Connectionインタフェースで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA60E | A | トランザクション | Ack モード | －
0xA610 | A
0xA612 | A
2 | 0xA616 | A | － | － | －
3 | 0xA617 | A | － | － | －
4 | 0xA60F | A | － | － | －
0xA611 | A
0xA613 | A
5 | 0xA614 | A | － | － | －
6 | 0xA618 | A | － | － | －
7 | 0xA619 | A | － | － | －
8 | 0xA615 | A | － | － | －

（凡例）A：標準　－：該当なし

注※　図7-76の番号と対応しています。

注意事項

イベントIDの0xA618と0xA619はMessage-driven Beanアプリケーションを停止している間にも出力されます。

参考

Acknowledgementモードは数値で出力されます。数値は，Acknowledgementモードの種類ごとに対応しています。対応を次に示します。

AUTO_ACKNOWLEDGE = 1

CLIENT_ACKNOWLEDGE = 2

DUPS_OK_ACKNOWLEDGE = 3

SESSION_TRANSACTED = 0

それぞれのモードの数値はJMS仕様で定義されています。

7.22.3　JMSセッションインタフェースのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-118　JMSセッションインタフェースでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA61E | 5 | Session.createSubscriber(topic)の処理開始 | A
0xA61F | 8 | Session.createSubscriber(topic)の処理終了 | A
0xA620 | 1 | Session.createBrowser(queue)の処理開始 | A
0xA621 | 4 | Session.createBrowser(queue)の処理終了 | A
0xA622 | 1 | Session.createBrowser(queue,selector)の処理開始 | A
0xA623 | 4 | Session.createBrowser(queue,selector)の処理終了 | A
0xA624 | 5 | Session.createSubscriber(topic,selector,noLocal)の処理開始 | A
0xA625 | 8 | Session.createSubscriber(topic,selector,noLocal)の処理終了 | A
0xA626 | 5 | Session.createDurableSubscriber(topic,name)の処理開始 | A
0xA627 | 8 | Session.createDurableSubscriber(topic,name)の処理終了 | A
0xA628 | 5 | Session.createDurableSubscriber(topic,name,selector,noLocal)の処理開始 | A
0xA629 | 8 | Session.createDurableSubscriber(topic,name,selector,noLocal)の処理終了 | A
0xA62A | 5 | Session.createConsumer(destination)の処理開始 | A
0xA62B | 8 | Session.createConsumer(destination)の処理終了 | A
0xA62C | 5 | Session.createConsumer(destination,selector)の処理開始 | A
0xA62D | 8 | Session.createConsumer(destination,selector)の処理終了 | A
0xA62E | 5 | Session.createConsumer(destination,selector,noLocal)の処理開始 | A
0xA62F | 8 | Session.createConsumer(destination,selector,noLocal)の処理終了 | A
0xA630 | 5 | Session.createReceiver(queue)の処理開始 | A
0xA631 | 8 | Session.createReceiver(queue)の処理終了 | A
0xA632 | 5 | Session.createReceiver(queue,selector)の処理開始 | A
0xA633 | 8 | Session.createReceiver(queue,selector)の処理終了 | A
0xA634 | 9 | Session.createPublisher(topic)の処理開始 | A
0xA635 | 12 | Session.createPublisher(topic)の処理終了 | A
0xA636 | 9 | Session.createProducer(destination)の処理開始 | A
0xA637 | 12 | Session.createProducer(destination)の処理終了 | A
0xA638 | 9 | Session.createSender(queue)の処理開始 | A
0xA639 | 12 | Session.createSender(queue)の処理終了 | A
0xA63A | 13 | Session.createQueue()の処理開始 | A
0xA63B | 16 | Session.createQueue()の処理終了 | A
0xA63C | 13 | Session.createTopic()の処理開始 | A
0xA63D | 16 | Session.createTopic()の処理終了 | A
0xA63E | 13 | Session.createTemporaryQueue()の処理開始 | A
0xA63F | 16 | Session.createTemporaryQueue()の処理終了 | A
0xA640 | 13 | Session.createTemporaryTopic()の処理開始 | A
0xA641 | 16 | Session.createTemporaryTopic()の処理終了 | A
0xA642 | 17 | Session.unsubscribe()の処理開始 | A
0xA643 | 20 | Session.unsubscribe()の処理終了 | A
0xA644 | 21 | Session.commit()の処理開始 | A
0xA645 | 24 | Session.commit()の処理終了 | A
0xA646 | 21 | Session.rollback()の処理開始 | A
0xA647 | 24 | Session.rollback()の処理終了 | A
0xA648 | 25 | Session.recover()の処理開始 | A
0xA649 | 26 | Session.recover()の処理終了 | A
0xA64A | 25 | Session.close()の処理開始 | A
0xA64B | 26 | Session.close()の処理終了 | A
0xA64C | 2 | ブラウザーの送信先認証を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA64D | 3 | ブラウザーの送信先認証を呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA64E | 6 | コンシューマーを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA64F | 7 | コンシューマーを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA650 | 10 | プロデューサーを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA651 | 11 | プロデューサーを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA652 | 14 | 送信先作成を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA653 | 15 | 送信先作成を呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA654 | 18 | 永続化サブスクライバー作成を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA655 | 19 | 永続化サブスクライバー作成を呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA656 | 22 | セッションコミットを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA657 | 23 | セッションコミットを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA658 | 22 | セッションロールバックを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA659 | 23 | セッションロールバックを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA65A | 22 | セッション回復を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA65B | 23 | セッション回復を呼び出した直後のCJMSPブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-77の番号と対応しています。

注意事項

イベントIDの0xA644と0xA645，0xA646と0x647に対応するメソッドであるSession.commit()およびSession.rollback()はサポートされていません。

イベントIDの0xA65Aと0xA65Bは出力されません。XAトランザクションを使用したとき出力されます。

JMSセッションインタフェースでのトレース取得ポイントを次の図に示します。

図7-77　JMSセッションインタフェースのトレース取得ポイント

参考

プロデューサーまたはコンシューマーの作成の間，destinationが作成されます。このため，createProducer()メソッドおよびcreateConsumer()メソッドでは，イベントID 0xa652および0xa653が呼び出される可能性があります。

(2)　取得できるトレース情報

JMSセッションインタフェースで取得できるトレース情報を次の表に示します。

表7-119　 JMSセッションインタフェースで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA620 | A | キュー名 | － | －
0xA622 | A | セレクタ文字列
2 | 0xA64C | A | － | － | －
3 | 0xA64D | A | － | － | －
4 | 0xA621 | A | － | － | －
0xA623 | A
5 | 0xA61E | A | トピック名 | － | －
0xA624 | A | セレクタ文字列
0xA626 | A | －
0xA628 | A | セレクタ文字列
0xA62A | A | 送信先名 | －
0xA62C | A | セレクタ文字列
0xA62E | A
0xA630 | A | キュー名 | －
0xA632 | A | セレクタ文字列
6 | 0xA64E | A | － | － | －
7 | 0xA64F | A | － | － | －
8 | 0xA61F | A | － | － | －
0xA625 | A
0xA627 | A
0xA629 | A
0xA62B | A
0xA62D | A
0xA62F | A
0xA631 | A
0xA633 | A
9 | 0xA634 | A | トピック名 | － | －
0xA636 | A | 送信先名 | － | －
0xA638 | A | キュー名 | － | －
10 | 0xA650 | A | － | － | －
11 | 0xA651 | A | － | － | －
12 | 0xA635 | A | － | － | －
0xA637 | A
0xA639 | A
13 | 0xA63A | A | キュー名 | － | －
0xA63C | A | トピック名
0xA63E | A | －
0xA640 | A
14 | 0xA652 | A | － | － | －
15 | 0xA653 | A | － | － | －
16 | 0xA63B | A | － | － | －
0xA63D | A
0xA63F | A
0xA641 | A
17 | 0xA642 | A | － | － | －
18 | 0xA654 | A | － | － | －
19 | 0xA655 | A | － | － | －
20 | 0xA643 | A | － | － | －
21 | 0xA644 | A | － | － | －
0xA646 | A
0xA648 | A
22 | 0xA656 | A | － | － | －
0xA658 | A
0xA65A | A
23 | 0xA657 | A | － | － | －
0xA659 | A
0xA65B | A
24 | 0xA645 | A | － | － | －
0xA647 | A
0xA649 | A
25 | 0xA64A | A | － | － | －
26 | 0xA64B | A | － | － | －

（凡例）A：標準　－：該当なし

注※　図7-77の番号と対応しています。

7.22.4　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-120　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA65C | 1 | MessageProducer.send(msg)の処理開始 | A
0xA65D | 4 | MessageProducer.send(msg)の処理終了 | A
0xA65E | 1 | MessageProducer.send(msg,deliveryMode,priority,timeToLive)の処理開始 | A
0xA65F | 4 | MessageProducer.send(msg,deliveryMode,priority,timeToLive)の処理終了 | A
0xA660 | 1 | MessageProducer.send(destination,msg)の処理開始 | A
0xA661 | 4 | MessageProducer.send(destination,msg)の処理終了 | A
0xA662 | 1 | MessageProducer.send(destination,msg,deliveryMode,priority,timeToLive)の処理開始 | A
0xA663 | 4 | MessageProducer.send(destination,msg,deliveryMode,priority,timeToLive)の処理終了 | A
0xA664 | 9 | MessageProducer.close()の処理開始 | A
0xA665 | 10 | MessageProducer.close()の処理終了 | A
0xA666 | 5 | MessageConsumer.receive()の処理開始 | A
0xA667 | 8 | MessageConsumer.receive()の処理終了 | A
0xA61A | 5 | MessageConsumer.receive(timeout)の処理開始 | A
0xA61B | 8 | MessageConsumer.receive(timeout)の処理終了 | A
0xA668 | 5 | MessageConsumer.receiveNoWait()の処理開始 | A
0xA669 | 8 | MessageConsumer.receiveNoWait()の処理終了 | A
0xA66A | 9 | MessageConsumer.close()の処理開始 | A
0xA66B | 10 | MessageConsumel.close()の処理終了 | A
0xA66C | 11 | QueueBrowser.getEnumeration()の処理開始 | A
0xA66D | 14 | QueueBrowser.getEnumeration()の処理終了 | A
0xA66E | 15 | Message.acknowledge()の処理開始 | A
0xA66F | 18 | Message.acknowledge()の処理終了 | A
0xA670 | 2 | JMSメッセージの書き込みを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA671 | 3 | JMSメッセージの書き込みを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA672 | 6 | JMSメッセージの受信を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA673 | 7 | JMSメッセージの受信を呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA674 | 12 | 全JMSメッセージの配信を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA675 | 13 | 全JMSメッセージの配信を呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA676 | 16 | JMSメッセージの承認を呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA677 | 17 | JMSメッセージの承認を呼び出した直後のCJMSPブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-78の番号と対応しています。

注意事項

トランザクションを使用した場合，またはacknowledgementモードをCLIENT_ACKNOWLEDGE以外に設定した場合は，メッセージを受信するとイベントIDの0xA676と0xA677が出力されます。

JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーでのトレース取得ポイントを次の図に示します。

図7-78　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーのトレース取得ポイント

(2)　取得できるトレース情報

JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーで取得できるトレース情報を次の表に示します。

表7-121　JMSメッセージ，プロデューサー，コンシューマーとキューブラウザーで取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA65C | A | 送信先名 | － | －
0xA65E | A | 優先
0xA660 | A | －
0xA662 | A | 優先
2 | 0xA670 | A | － | － | －
3 | 0xA671 | A | － | － | －
4 | 0xA65D | A | － | － | －
0xA65F | A
0xA661 | A
0xA663 | A
5 | 0xA666 | A | 送信先名 | 0 | －
0xA61A | A | タイムアウト
0xA668 | A | －
6 | 0xA672 | A | － | － | －
7 | 0xA673 | A | － | － | －
8 | 0xA667 | A | － | － | －
0xA61B | A
0xA669 | A
9 | 0xA664 | A | － | － | －
0xA66A | A
10 | 0xA665 | A | － | － | －
0xA66B | A
11 | 0xA66C | A | － | － | －
12 | 0xA674 | A | － | － | －
13 | 0xA675 | A | － | － | －
14 | 0xA66D | A | － | － | －
15 | 0xA66E | A | － | － | －
16 | 0xA676 | A | － | － | －
17 | 0xA677 | A | － | － | －
18 | 0xA66F | A | － | － | －

（凡例）A：標準　－：該当なし

注※　図7-78の番号と対応しています。

7.22.5　CJMSPリソースアダプタと接続するときのCJMSPブローカーのトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-122　CJMSPリソースアダプタと接続するときのCJMSPブローカーでのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA678 | 1 | ResourceAdapter.start(ctx)の処理開始 | A
0xA679 | 4 | ResourceAdapter.start(ctx)の処理終了 | A
0xA67A | 5 | ResourceAdapter.stop()の処理開始 | A
0xA67B | 8 | ResourceAdapter.stop()の処理終了 | A
0xA67C | 2 | helloメソッドを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA67D | 3 | helloメソッドを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA67E | 6 | good byeメソッドを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA67F | 7 | good byeメソッドを呼び出した直後のCJMSPブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-79の番号と対応しています。

注意事項

イベントIDの0xA67Cと0xA67DはCJMSPブローカーとCJMSPリソースアダプタがコネクション接続をするための通信をしている間にも出力されます。

CJMSPリソースアダプタと接続するときのCJMSPブローカーでのトレース取得ポイントを次の図に示します。

図7-79　CJMSPリソースアダプタと接続するときのCJMSPブローカーのトレース取得ポイント

(2)　取得できるトレース情報

CJMSPリソースアダプタと接続するときのCJMSPブローカーで取得できるトレース情報（インタフェース名，オペレーション名，およびオプション）はありません。

7.22.6　CJMSPリソースアダプタでのトランザクション管理のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）

(2)　CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）

(1)　CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）

●トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-123　CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）のトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA656 | 6 | セッションコミットを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA657 | 7 | セッションコミットを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA658 | 6 | セッションロールバックを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA659 | 7 | セッションロールバックを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA686 | 1 | LocalTransaction.begin()の処理開始 | A
0xA687 | 4 | LocalTransaction.begin()の処理終了 | A
0xA688 | 5 | LocalTransaction.commit()の処理開始 | A
0xA689 | 8 | LocalTransaction.commit()の処理終了 | A
0xA68A | 5 | LocalTransaction.rollback()の処理開始 | A
0xA68B | 8 | LocalTransaction.rollback()の処理終了 | A
0xA68C | 2 | トランザクション開始直前のCJMSPブローカーによる呼び出し | A
0xA68D | 3 | トランザクション開始直後のCJMSPブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-80の番号と対応しています。

CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）のトレース取得ポイントを次の図に示します。

図7-80　CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）のトレース取得ポイント

●取得できるトレース情報

CJMSPリソースアダプタでのトランザクション管理（LocalTransactionの場合）で取得できるトレース情報（インタフェース名，オペレーション名，およびオプション）はありません。

(2)　CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）

●トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-124　CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA656 | 2 | セッションコミットを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA657 | 3 | セッションコミットを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA658 | 2 | セッションロールバックを呼び出す直前のCJMSPブローカーによる呼び出し | A
0xA659 | 3 | セッションロールバックを呼び出した直後のCJMSPブローカーによる呼び出し | A
0xA68C | 2 | トランザクション開始直前のCJMSPブローカーによる呼び出し | A
0xA68D | 3 | トランザクション開始直後のCJMSPブローカーによる呼び出し | A
0xA692 | 1 | XAResource.start()の処理開始 | A
0xA693 | 4 | XAResource.start()の処理終了 | A
0xA694 | 1 | XAResource.end()の処理開始 | A
0xA695 | 4 | XAResource.end()の処理終了 | A
0xA696 | 1 | XAResource.prepare()の処理開始 | A
0xA697 | 4 | XAResource.prepare()の処理終了 | A
0xA698 | 1 | XAResource.commit()の処理開始 | A
0xA699 | 4 | XAResource.commit()の処理終了 | A
0xA69A | 1 | XAResource.rollback()の処理開始 | A
0xA69B | 4 | XAResource.rollback()の処理終了 | A
0xA69E | 2 | XAResource停止を呼び出す直前のブローカーによる呼び出し | A
0xA69F | 3 | XAResource停止を呼び出した直後のブローカーによる呼び出し | A
0xA6A0 | 2 | XAResource準備の直前のブローカーによる呼び出し | A
0xA6A1 | 3 | XAResource準備の直後のブローカーによる呼び出し | A

（凡例）A：標準

注※　図7-81の番号と対応しています。

CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）でのトレース取得ポイントを次の図に示します。

図7-81　CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）のトレース取得ポイント

●取得できるトレース情報

CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）で取得できるトレース情報を次の表に示します。

表7-125　CJMSPリソースアダプタでのトランザクション管理（XAResourceの場合）で取得できるトレース情報

図中の番号※ | イベントID | レベル | 取得できる情報
インタフェース名 | オペレーション名 | オプション
1 | 0xA692 | A | フラグ | － | －
0xA694 | A | フラグ
0xA696 | A | －
0xA698 | A | フラグ
0xA69A | A | －
2 | 0xA656 | A | － | － | －
0xA658 | A
0xA68C | A
0xA69E | A
0xA6A0 | A
3 | 0xA657 | A | － | － | －
0xA659 | A
0xA68D | A
0xA69F | A
0xA6A1 | A
4 | 0xA693 | A | － | － | －
0xA695 | A
0xA697 | A
0xA699 | A
0xA69B | A

（凡例）A：標準　－：該当なし

注※　図7-81の番号と対応しています。

7.22.7　CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-126　CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時でのトレース取得ポイントの詳細

イベントID | 図中の番号※ | トレース取得ポイント | レベル
0xA6A6 | 1 | ResourceAdapter.endpointActivation(endpointFactory,spec)の処理開始 | A
0xA6A7 | 2 | ResourceAdapter.endpointActivation(endpointFactory,spec)の処理終了 | A
0xA6A8 | 3 | ResourceAdapter.endpointDeactivation(endpointFactory,spec)の処理開始 | A
0xA6A9 | 4 | ResourceAdapter.endpointDeactivation(endpointFactory,spec)の処理終了 | A
0xA6AA | 5 | MessageListener.onMessage()の処理開始 | A
0xA6AB | 6 | MessageListener.onMessage()の処理終了 | A

（凡例）A：標準

注※　図7-82の番号と対応しています。

注意事項

endpointDeactivation()を呼び出すと0xA67Eと0xA67Fが出力されます。

endpointActivation()を呼び出すと0xA67Cと0xA67Dが出力されます。

CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時でのトレース取得ポイントを次の図に示します。

図7-82　CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時のトレース取得ポイント

(2)　取得できるトレース情報

CJMSPリソースアダプタからのMessage-driven Beanのデプロイ時で取得できるトレース情報（インタフェース名，オペレーション名，およびオプション）はありません。

7.23　JavaMailのトレース取得ポイント

ここでは，JavaMailのトレース取得ポイントと，取得できるトレース情報について説明します。

＜この節の構成＞

7.23.1　JavaMail送信時のトレース取得ポイントと取得できるトレース情報

7.23.2　JavaMail受信時のトレース取得ポイントと取得できるトレース情報

7.23.1　JavaMail送信時のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-127　JavaMail送信時のトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0xAD00 | 1 | javax.mail.Transportクラスのconnect(String host, int port, String user, String password)メソッドの入り口 | A
0xAD01 | 20 | javax.mail.Transportクラスのconnect(String host, int port, String user, String password)メソッドの出口 | A
0xAD02 | 21 | javax.mail.TransportクラスのsendMessage(Message message, Address[] addresses)メソッドの入り口 | A
0xAD03 | 36 | javax.mail.TransportクラスのsendMessage(Message message, Address[] addresses)メソッドの出口 | A
0xAD04 | 37 | javax.mail.Transportクラスのcloseメソッドの入り口 | A
0xAD05 | 42 | javax.mail.Transportクラスのcloseメソッドの出口 | A
0xAD06 | 2 | コネクション取得処理の開始直前 | A
0xAD07 | 3 | コネクション取得処理の終了直後 | A
0xAD08 | 24※2 | すべての送信先情報の送信開始直前 | A
0xAD09 | 27※2 | すべての送信先情報の送信終了直後 | A
0xAD0A | 32※3 | メール本体の送信開始直前 | A
0xAD0B | 33※3 | メール本体の送信完了直後 | A
0xAD0C | 40 | コネクション切断処理の開始直前 | B
6 | コネクション切断処理の開始直前 | B
0xAD0D | 41 | コネクション切断処理の終了直後 | B
7 | コネクション切断処理の終了直後 | B
0xAD0E | 43 | javax.mail.Transportクラスのsend(Message msg, Address[] addresses)メソッド，javax.mail.Transportクラスのsend(Message msg)メソッドの入り口 | A
0xAD0F | 44 | javax.mail.Transportクラスのsend(Message msg, Address[] addresses)メソッド，javax.mail.Transportクラスのsend(Message msg)メソッドの出口 | A
0xAD10 | 8※4 | EHLOまたはHELOコマンド発行の開始直前 | A
0xAD11 | 9※4 | EHELOまたはHELOコマンドのレスポンスを受信した直後 | A
0xAD12 | 10 | AUTHコマンド発行の開始直前 | B
12 | ユーザ名，パスワードの送信の開始直前 | B
14 | 認証の終了通知開始直前 | B
16 | ユーザ名の送信の開始直前 | B
18 | パスワードの送信の開始直前 | B
22 | MAILコマンド発行の開始直前 | B
25※5 | RCPTコマンド発行の開始直前 | B
28 | RSETコマンド発行の開始直前 | B
30 | DATAコマンド発行の開始直前 | B
34 | 「¥r¥n.」コマンド発行の開始直前 | B
38 | QUITコマンド発行の開始直前 | B
45※6 | NOOPコマンドのレスポンスを受信した直後 | B
0xAD13 | 11 | AUTHのレスポンスを受信した直後 | B
13 | ユーザ名，パスワード送信のレスポンスを受信した直後 | B
15 | 認証の終了通知完了直後 | B
17 | ユーザ名送信のレスポンスを受信した直後 | B
19 | パスワード送信のレスポンスを受信した直後 | B
23 | MAILコマンドのレスポンスを受信した直後 | B
26※5 | RCPTコマンドのレスポンスを受信した直後 | B
29 | RSETコマンドのレスポンスを受信した直後 | B
31 | DATAコマンドのレスポンスを受信した直後 | B
35 | 「¥r¥n.」コマンドのレスポンスを受信した直後 | B
39 | QUITコマンドのレスポンスを受信した直後 | B
46※6 | NOOPコマンド発行の開始直前 | B
0xAD14 | 4 | 接続時のサーバレスポンス取得を行う直前 | B
0xAD15 | 5 | 接続時のサーバレスポンス取得直後 | B

（凡例）A：標準　B：詳細

注※1

図7-83，図7-84，または図7-85中の番号と対応しています。

注※2

すべての送信先情報の送信開始～終了で取得します。

注※3

32または33の取得ポイントのデータ送信処理では，送信するデータの読み込みとメールサーバへの送信を行います。例えば，添付ファイルが存在する場合は，添付ファイルのデータの読み込みとメールサーバへの送信を行います。

注※4

EHLOに失敗した場合，HELOで再度接続を試みるため，1回のサーバ接続でEHLOとHELOの2回分のログが出力される場合があります。

注※5

個々の送信先情報の送信開始～終了で取得します。

注※6

サーバと接続中の場合にだけ取得します。

JavaMail送信時のトレース取得ポイントを以降の図に示します。

図7-83　JavaMailの送信処理のトレース取得ポイント（javax.mail.TransportクラスのsendMessage(Message message, Address[] addresses)メソッドを使用する場合）

図7-84　JavaMailの送信処理のトレース取得ポイント（javax.mail.Transportクラスのsend(Message msg, Address[] addresses)メソッド，javax.mail.Transportクラスのsend(Message msg)メソッドを使用する場合）

注※1　内部でjavax.mail.Transportクラスのconnectメソッドを呼び出すため，図7-83で示した1～20の取得ポイントも出力されます。

注※2　内部でjavax.mail.TransportクラスのsendMessageメソッドを呼び出すため，図7-83で示した21～36の取得ポイントも出力されます。

注※3　内部でjavax.mail.Transportクラスのcloseメソッドを呼び出すため，図7-83で示した37～42の取得ポイントも出力されます。

図7-85　JavaMailのコネクション接続確認時のトレース取得ポイント

(2)　取得できるトレース情報

JavaMail送信時に取得できるトレース情報を次の表に示します。

表7-128　JavaMail送信時に取得できるトレース情報

図中の番号※1 | イベントID | レベル | インタフェース名 | オペレーション名 | オプション
1 | 0xAD00 | A | － | － | －
2 | 0xAD06 | A | － | － | ※2
3 | 0xAD07 | A | － | － | 異常時は例外のクラス名
4 | 0xAD14 | B | 通信処理を示す文字列※3 | － | －
5 | 0xAD15 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
6 | 0xAD0C | B | － | － | －
7 | 0xAD0D | B | － | － | 異常時は例外のクラス名
8 | 0xAD10 | A | 通信処理を示す文字列※3 | － | －
9 | 0xAD11 | A | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※6 | 異常時は例外のクラス名※7
10 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
11 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
12 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
13 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
14 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
15 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
16 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
17 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
18 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
19 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
20 | 0xAD01 | A | － | － | 異常時は例外のクラス名
21 | 0xAD02 | A | － | － | －
22 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
23 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
24 | 0xAD08 | A | － | － | －
25 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
26 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
27 | 0xAD09 | A | － | － | 異常時は例外のクラス名
28 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
29 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
30 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
31 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
32 | 0xAD0A | A | － | － | －
33 | 0xAD0B | A | － | － | 異常時は例外のクラス名
34 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
35 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
36 | 0xAD03 | A | － | － | 異常時は例外のクラス名
37 | 0xAD04 | A | － | － | －
38 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
39 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7
40 | 0xAD0C | B | － | － | －
41 | 0xAD0D | B | － | － | 異常時は例外のクラス名
42 | 0xAD05 | A | － | － | 異常時は例外のクラス名
43 | 0xAD0E | A | メソッド名(send(Message, Address[])またはsend(Message)) | － | －
44 | 0xAD0F | A | メソッド名(send(Message, Address[])またはsend(Message)) | － | 異常時は例外のクラス名
45 | 0xAD12 | B | 通信処理を示す文字列※3 | － | －
46 | 0xAD13 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4，※5，※6 | 異常時は例外のクラス名※7

（凡例）A：標準　B：詳細　－：該当なし

注※1

図7-83，図7-84，または図7-85中の番号と対応しています。

注※2

次の出力項目を出力します。

「ホスト名 ポート番号 コネクション取得時のタイムアウト値 通信のタイムアウト値」

各出力項目は半角スペースで区切って出力します。

タイムアウト値が無限に設定されている場合は0を出力します。また，ユーザがタイムアウト値を設定しなかった場合は-1を出力します。

（例）「localhost 25 10000 10000」

注※3

通信処理を示す文字列出力内容は，次の表に示すとおりです。

項番
通信処理を示す文字列
通信処理

1
－（該当なし）
コネクション取得

2
connect-mail-server
接続時のサーバレスポンス取得

3
EHLO コマンド引数
EHLOコマンド発行

4
HELO コマンド引数
HELOコマンド発行

5
AUTH LOGIN
AUTHコマンド発行
(引数に LOGIN)

6
AUTH PLAIN
AUTHコマンド発行
(引数に PLAIN)

7
AUTH DIGEST-MD5
AUTHコマンド発行
(引数に DIGEST-MD5)

8
SEND USER
ユーザ名の送信

9
SEND PASS
パスワードの送信

10
SEND USER PASS
ユーザ名とパスワードの送信

11
AUTH END
認証の完了通知

12
QUIT
QUITコマンド発行

13
MAIL コマンド引数
MAILコマンド発行

14
RCPT コマンド引数
RCPTコマンド発行

15
RSET
RSETコマンド発行

16
NOOP
NOOPコマンド発行

17
DATA
DATAコマンド発行

18
SEND MAIL
メール本体のデータ送信

19
¥r¥n.
¥r¥n.の送信

注※4

レスポンスの出力内容は，次の表に示すとおりです。

レスポンス
出力内容

レスポンスコードが不正ではない（RFC仕様内）
レスポンスコード

レスポンスコードが不正（RFC仕様外）
レスポンス1行目の先頭4文字（詳細については，KDJE59111-Eメッセージを参照してください）

1行目が4文字未満の場合
1行目のすべての文字を出力

レスポンスがない場合
空文字列を出力

注※5

QUITコマンドではmail.smtp.quitwaitがtureの場合にだけレスポンスコードを出力します。

注※6

レスポンスが取得できた場合にだけレスポンスコードを出力します。通信でIOExceptionが発生した場合など，異常時にレスポンスが取得できなかったとき，レスポンスコードは出力しません。

注※7

レスポンスコードがRFC仕様外の場合，およびEOFを検知した場合には例外のクラス名は出力しません。

7.23.2　JavaMail受信時のトレース取得ポイントと取得できるトレース情報

＜この項の構成＞

(1)　トレース取得ポイントとPRFトレース取得レベル

(2)　取得できるトレース情報

(1)　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-129　JavaMail受信時のトレース取得ポイントの詳細

イベントID | 図中の番号※1 | トレース取得ポイント | レベル
0xAD80 | 1 | javax.mail.Storeクラスのconnect(String host, int port, String user, String password)メソッドの入り口 | A
0xAD81 | 12 | javax.mail.Storeクラスのconnect(String host, int port, String user, String password)メソッドの出口 | A
0xAD82 | 2 | コネクション取得処理の開始直前 | A
0xAD83 | 3 | コネクション取得処理の終了直後 | A
0xAD84 | 13 | javax.mail.Folderクラスのopen(int)メソッドの入り口 | A
0xAD85 | 16 | javax.mail.Folderクラスのopen(int)メソッドの出口 | A
0xAD86 | 23 | javax.mail.Folderクラスのclose(boolean)メソッドの入り口 | A
0xAD87 | 34 | javax.mail.Folderクラスの close(boolean)メソッドの出口 | A
0xAD88 | 32 | コネクション切断処理の開始直前 | B
6 | コネクション切断処理の開始直前 | B
0xAD89 | 33 | コネクション切断処理の終了直後 | B
7 | コネクション切断処理の終了直後 | B
0xAD8A | 17※2 | 全メッセージ情報取得処理の開始直前 | A
0xAD8B | 20※2 | 全メッセージ情報取得処理の終了直後 | A
0xAD8C | 26※2 | すべての削除対象のメッセージに対するDELEコマンド発行の開始直前 | A
0xAD8D | 29※2 | すべての削除対象のメッセージに対するDELEコマンドのレスポンスを受信した直後 | A
0xAD8E | 8 | USERコマンド発行の開始直前 | A
21※3 | LIST，UIDL，RETR，またはTOPコマンド発行の開始直前 | A
24 | RSETコマンド発行の開始直前 | A
0xAD8F | 9 | USERコマンドのレスポンスを受信した直後 | A
22※3 | LIST，UIDL，RETR，またはTOPコマンドのレスポンスを受信した直後 | A
25 | RSETコマンドのレスポンスを受信した直後 | A
0xAD90 | 10 | PASSコマンド発行の開始直前 | B
14 | STATコマンド発行の開始直前 | B
18※4，※5 | TOPまたはLISTコマンド発行の開始直前 | B
27※5 | DELEコマンド発行の開始直前 | B
30 | QUITコマンド発行の開始直前 | B
35※6 | NOOPコマンド発行の開始直前 | B
0xAD91 | 11 | PASSコマンドのレスポンスを受信した直後 | B
15 | STATコマンドのレスポンスを受信した直後 | B
19※4，※5 | TOPまたはLISTのレスポンスを受信した直後 | B
28※5 | DELEコマンドのレスポンスを受信した直後 | B
31 | QUITコマンドのレスポンスを受信した直後 | B
36※6 | NOOPコマンドのレスポンスを受信した直後 | B
0xAD92 | 4 | 接続時のサーバレスポンス取得を行う直前 | B
0xAD93 | 5 | 接続時のサーバレスポンス取得直後 | B

（凡例）A：標準　B：詳細

注※1

図7-86，または図7-87中の番号と対応しています。

注※2

すべてのメールの情報の取得開始～終了で取得します。

注※3

javax.mail.Folderクラスのfetchメソッドの第2引数にENVELOPEが指定されて呼び出された場合以外です。

注※4

javax.mail.Folderクラスのfetchメソッドの第2引数にENVELOPEが指定されて呼び出された場合だけです。

注※5

個々のメールの情報の取得開始～終了で取得します。

注※6

サーバと接続中の場合にだけ取得します。

JavaMail受信時のトレース取得ポイントを以降の図に示します。

図7-86　JavaMailの受信処理でのトレース取得ポイント

図7-87　JavaMailのコネクション接続確認時の取得ポイント

(2)　取得できるトレース情報

JavaMail受信時に取得できるトレース情報を次の表に示します。

表7-130　JavaMail受信時に取得できるトレース情報

図中の番号※1 | イベントID | レベル | インタフェース名 | オペレーション名 | オプション
1 | 0xAD80 | A | － | － | －
2 | 0xAD82 | A | － | － | ※2
3 | 0xAD83 | A | － | － | 異常時は例外のクラス名
4 | 0xAD92 | B | 通信処理を示す文字列※3 | － | －
5 | 0xAD93 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
6 | 0xAD88 | B | － | － | －
7 | 0xAD89 | B | － | － | 異常時は例外のクラス名
8 | 0xAD8E | A | 通信処理を示す文字列※3 | － | －
9 | 0xAD8F | A | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
10 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
11 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
12 | 0xAD81 | A | － | － | 異常時は例外のクラス名
13 | 0xAD84 | A | － | － | －
14 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
15 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
16 | 0xAD85 | A | － | － | 異常時は例外のクラス名
17※5 | 0xAD8A | A | － | － | －
18 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
19※6 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
20※5 | 0xAD8B | A | － | － | 異常時は例外のクラス名
21 | 0xAD8E | A | 通信処理を示す文字列※3 | － | －
22※6 | 0xAD8F | A | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
23 | 0xAD86 | A | － | － | －
24 | 0xAD8E | A | 通信処理を示す文字列※3 | － | －
25 | 0xAD8F | A | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
26 | 0xAD8C | A | － | － | －
27 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
28 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
29 | 0xAD8D | A | － | － | 異常時は例外のクラス名
30 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
31 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名
32 | 0xAD88 | B | － | － | －
33 | 0xAD89 | B | － | － | 異常時は例外のクラス名
34 | 0xAD87 | A | － | － | 異常時は例外のクラス名
35 | 0xAD90 | B | 通信処理を示す文字列※3 | － | －
36 | 0xAD91 | B | 通信処理を示す文字列※3 | メールサーバからのレスポンスコード※4 | 異常時は例外のクラス名

（凡例）A：標準　B：詳細　－：該当なし

注※1

図7-86，または図7-87中の番号と対応しています。

注※2

次の出力項目を出力します。

「ホスト名 ポート番号 コネクション取得時のタイムアウト値 通信のタイムアウト値」

各出力項目は半角スペースで区切って出力します。

タイムアウト値が無限に設定されている場合は0を出力します。また，ユーザがタイムアウト値を設定しなかった場合は-1を出力します。

（例）「localhost 25 10000 10000」

注※3

通信処理を示す文字列出力内容は，次の表に示すとおりです。

項番 | 通信処理を示す文字列 | 通信処理
1 | －（該当なし） | コネクション取得
2 | connect-mail-server | 接続時のサーバレスポンス取得
3 | USER | USERコマンド発行
4 | PASS | PASSコマンド発行
5 | QUIT | QUITコマンド発行
6 | STAT | STATコマンド発行
7 | LIST コマンド引数 | LISTコマンド発行
8 | UIDL コマンド引数 | UIDLコマンド発行
9 | RETR コマンド引数 | RETRコマンド発行
10 | TOP コマンド引数 | TOPコマンド発行
11 | DELE コマンド引数 | DELEコマンド発行
12 | NOOP | NOOPコマンド発行
13 | RSET | RSETコマンド発行

注※4

レスポンス1行目が取得できた場合にだけレスポンスコードを出力します。通信でIOExceptionが発生した場合など，異常時にレスポンスが取得できなかったとき，レスポンスコードは出力しません。

注※5

レスポンスの出力内容は，次の表に示すとおりです。

レスポンス
出力内容

レスポンスコードが不正ではない（RFC仕様内）
レスポンスコード

レスポンスコードが不正（RFC仕様外）
レスポンス1行目の先頭4文字（詳細については，KDJE59112-Eメッセージを参照してください）

1行目が4文字未満の場合
1行目のすべての文字を出力

レスポンスがない場合
空文字列を出力

注※6

複数行のレスポンスを受け取るコマンド（RETRコマンド，TOPコマンド，およびUIDLコマンドの発行時）では，レスポンスの1行目が取得できた場合，リターンコード0を出力します。

7.24　J2EEサーバの開始・終了時のトレース取得ポイント

J2EEサーバの開始処理の完了時，およびJ2EEサーバの終了処理の開始時に，トレース情報を取得できます。

＜この節の構成＞

7.24.1　トレース取得ポイントとPRFトレース取得レベル

7.24.2　取得できるトレース情報

7.24.1　トレース取得ポイントとPRFトレース取得レベル

イベントID，トレース取得ポイント，およびPRFトレース取得レベルについて，次の表に示します。

表7-131　J2EEサーバでのトレース取得ポイントの詳細

イベントID | トレース取得ポイント | レベル
0x8FFE | J2EEサーバの開始処理完了（KDJE90028-Iメッセージ出力）時 | A
0x8FFF | J2EEサーバのシャットダウン開始（KDJE90031-Iメッセージ出力）時 | A

（凡例）A：標準

7.24.2　取得できるトレース情報

J2EEサーバの開始・終了時に取得できるトレース情報を次に示します。

イベントID
0x8FFE，0x8FFF

PRFトレース取得レベル
すべて「標準」になります。

インタフェース名，オペレーション名，およびオプション
情報は出力されません。

8.　日立固有のJavaVMの機能

アプリケーションサーバで提供するJavaVMは，日立固有のJavaVMです。日立固有のJavaVMを使用すると，障害時の資料やチューニングで使用する情報を取得できます。この章では，日立固有のJavaVMが提供する機能について説明します。なお，日立固有のJavaVMが提供する機能の一つである明示管理ヒープ機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.　明示管理ヒープ機能を使用したフルガーベージコレクションの抑止」を参照してください。

＜この章の構成＞

8.1　この章の構成

8.2　日立固有のJavaVMの機能の概要

8.3　クラス別統計機能

8.4　インスタンス統計機能

8.5　STATICメンバ統計機能

8.6　参照関係情報出力機能

8.7　統計前のガーベージコレクション選択機能

8.8　Tenured領域内不要オブジェクト統計機能

8.9　Tenured増加要因の基点オブジェクトリスト出力機能

8.10　クラス別統計情報解析機能

8.11　Survivor領域の年齢分布情報出力機能

8.12　ファイナライズ滞留解消機能

8.13　hndlwrap機能

8.14　JITコンパイル時のCヒープ確保量の上限値設定機能

8.15　スレッド数の上限値設定機能

8.1　この章の構成

アプリケーションサーバのJavaVMは，構成ソフトウェアであるCosminexus Developer's Kit for Javaによって提供される，日立固有のJavaVMです。アプリケーションサーバで動作するJ2EEサーバまたはバッチサーバのプロセスは，JavaVM上で実行されます。この節では，日立固有のJavaVMの機能について説明します。

日立固有のJavaVMの機能の概要については，「8.2　日立固有のJavaVMの機能の概要」を参照してください。

アプリケーションサーバで提供する日立固有のJavaVMの機能と参照先を次の表に示します。

表8-1　アプリケーションサーバで提供する日立固有のJavaVMの機能

機能名 | 参照先
クラス別統計機能 | 8.3
インスタンス統計機能※ | 8.4
STATICメンバ統計機能※ | 8.5
参照関係情報出力機能※ | 8.6
統計前のガーベージコレクション選択機能※ | 8.7
Tenured領域内不要オブジェクト統計機能※ | 8.8
Tenured増加要因の基点オブジェクトリスト出力機能※ | 8.9
クラス別統計情報解析機能 | 8.10
Survivor領域の年齢分布情報出力機能 | 8.11
ファイナライズ滞留解消機能 | 8.12
hndlwrap機能 | 8.13
JITコンパイル時のCヒープ確保量の上限値設定機能 | 8.14
スレッド数の上限値設定機能 | 8.15

注※　クラス別統計情報を出力するクラス別統計機能の一つです。

8.2　日立固有のJavaVMの機能の概要

アプリケーションサーバで動作するJ2EEサーバまたはバッチサーバのプロセスは，JavaVM上で実行されます。日立固有のJavaVMで提供している機能を次に示します。

明示管理ヒープ機能

クラス別統計機能

インスタンス統計機能

STATICメンバ統計機能

参照関係情報出力機能

統計前のガーベージコレクション選択機能

Tenured領域内不要オブジェクト統計機能

Tenured増加要因の基点オブジェクトリスト出力機能

クラス別統計情報解析機能※

Survivor領域の年齢分布情報出力機能

ファイナライズ滞留解消機能

hndlwrap機能

JITコンパイル時のCヒープ確保量の上限値設定機能

スレッド数の上限値設定機能

注※

クラス別統計情報解析機能を使うと，拡張スレッドダンプファイルに出力されたクラス別統計情報をCSV形式で出力できます。

ポイント

クラス別統計機能のTenured領域内不要オブジェクト統計機能を実行した場合，次に示す機能は無効となります。

インスタンス統計機能

STATICメンバ統計機能

統計前のガーベージコレクション選択機能

日立固有のJavaVMでは，障害発生時の要因分析やシステムの状態確認に利用できるよう，ログの出力内容が拡張されています。このログは，日立JavaVMログファイルに出力され，標準のJavaVMよりも，多くのトラブルシュート情報が取得できます。さらに，このログ（拡張verbosegc情報）を利用して適切なチューニングを実施することで，システムの可用性向上が図れます。日立JavaVMログファイルについては，「5.7　日立固有のJavaVMログの内容（日立JavaVMログファイル）」を参照してください。Java VMのチューニングについては，マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「7.　JavaVMのメモリチューニング」を参照してください。

次節以降で，日立固有のJavaVMの各機能について説明します。なお，明示管理ヒープ機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.　明示管理ヒープ機能を使用したフルガーベージコレクションの抑止」を参照してください。

8.3　クラス別統計機能

この節では，クラス別統計機能について説明します。

クラス別統計機能を使用すると，クラスごとに，参照関係にあるクラスのインスタンスの情報を拡張スレッドダンプに出力できます。

この節の構成を次の表に示します。

表8-2　この節の構成（クラス別統計機能）

分類 | タイトル | 参照先
解説 | クラス別統計機能の概要 | 8.3.1
クラス別統計情報を前提とする機能 | 8.3.2
運用 | クラス別統計情報の出力 | 8.3.3
注意事項 | クラス別統計情報出力時の注意事項 | 8.3.4

注　「実装」および「設定」について，この機能固有の説明はありません。

＜この節の構成＞

8.3.1　クラス別統計機能の概要

8.3.2　クラス別統計機能を前提とする機能

8.3.3　クラス別統計情報の出力

8.3.4　クラス別統計情報出力時の注意事項

8.3.1　クラス別統計機能の概要

各クラスのインスタンスが持つメンバの配下にあるすべてのインスタンスのサイズを，クラスごとに統計情報として拡張スレッドダンプに出力できます。この統計情報をクラス別統計情報といいます。クラス別統計情報を複数回出力すると，ガーベージコレクションによるJavaオブジェクトの変化や，寿命が短いJavaオブジェクトの状態，クラスごとのサイズの変化，Javaオブジェクトの親子関係などを調査できます。これらの情報は，1トランザクション当たりのメモリ使用量の測定や，メモリリークの検出などに利用できます。

クラス別統計情報は，次に示す機能によって出力されます。

インスタンス統計機能

STATICメンバ統計機能

参照関係情報出力機能

統計前のガーベージコレクション選択機能

Tenured領域内不要オブジェクト統計機能

Tenured増加要因の基点オブジェクトリスト出力機能

各機能については，「8.3.2　クラス別統計機能を前提とする機能」を参照してください。

また，クラス別統計機能では，Javaヒープ（Eden領域，Survivor領域およびTenured領域を合わせたもの）と，Permanent領域にあるインスタンスを統計対象とします。さらに，明示管理ヒープ機能を使用している場合には，Explicitヒープにあるインスタンスも統計対象にできます。クラス別統計情報の出力方法については，「8.3.3　クラス別統計情報の出力」を参照してください。

参考

拡張スレッドダンプは，デフォルトで出力されるように設定されています。拡張スレッドダンプを取得するための設定については，「3.3.19(1)　JavaVMのスレッドダンプ取得の設定」を参照してください。出力情報については，「5.5　JavaVMのスレッドダンプの内容」を参照してください。

また，クラス別統計情報は，CSV形式に出力することもできます。クラス別統計情報をCSV形式で出力する方法については，「8.10　クラス別統計情報解析機能」を参照してください。

8.3.2　クラス別統計機能を前提とする機能

クラス別統計機能を前提とする機能の種類と概要を次の表に示します。

表8-3　クラス別統計機能を前提とする機能の種類と概要

種類 | 概要 | 参照先
インスタンス統計機能 | クラスごとに，クラスのインスタンスがメンバとして持つインスタンスの合計サイズを出力します。 | 8.4
STATICメンバ統計機能 | 各クラスのstaticメンバが持つインスタンスの合計サイズを出力します。 | 8.5
参照関係情報出力機能 | 指定したクラス（インスタンス）をメンバに持つクラスの参照関係を出力します。 | 8.6
統計前のガーベージコレクション選択機能 | クラス別統計情報を出力する前に，ガーベージコレクションを実行するかどうかを選択できます。この機能は，jheapprofコマンド実行時にオプションで指定します。デフォルトの設定では，クラス別統計情報を出力する前にフルガーベージコレクションが実行されます。 | 8.7
Tenured領域内不要オブジェクト統計機能 | Tenured領域内で不要となったオブジェクトを特定します。 | 8.8
Tenured増加要因の基点オブジェクトリスト出力機能 | Tenured領域内不要オブジェクト統計機能を使って特定した，不要オブジェクトの基点となるオブジェクトの情報を出力します。 | 8.9

これらの機能のうち，インスタンス統計機能，STATICメンバ統計機能，参照関係情報出力機能，およびTenured増加要因の基点オブジェクトリスト出力機能は，クラス別統計機能の実行時に有効になります。

統計前のガーベージコレクション選択機能は，クラス別統計機能を実行する際に設定できます。クラス別統計情報の調査目的に合わせて選択してください。詳細は，「8.7.2　ガーベージコレクションの選択の指針」を参照してください。

8.3.3　クラス別統計情報の出力

ここでは，クラス別統計情報を出力する方法について説明します。

クラス別統計情報を拡張スレッドダンプに出力するには，jheapprofコマンドを利用します。クラス別統計情報を出力したいJavaプロセスや，参照関係情報を出力したいクラスを指定して，jheapprofコマンドを実行します。

jheapprofコマンド実行時には，次の指定ができます。

クラス別統計情報にExplicitヒープの情報を出力するかどうかの指定

クラス別統計情報を取得する前にガーベージコレクションを実行するかどうかの指定

次に，jheapprofコマンドの実行形式と実行例，および各指定方法について説明します。

＜この項の構成＞

(1)　jheapprofコマンドの実行形式と実行例

(2)　Explicitヒープの情報をクラス別統計情報に出力する場合

(3)　ガーベージコレクションの実行有無を指定する場合

(1)　jheapprofコマンドの実行形式と実行例

jheapprofコマンドの実行形式と実行例を次に示します。jheapprofコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「jheapprof（日立クラス別統計情報付き拡張スレッドダンプの出力）」を参照してください。

実行形式

Windowsの場合

jheapprof [-f|-i] [-explicit|-noexplicit] [-class <クラス名>] [-fullgc|-copygc|-nogc] [-garbage|-nogarbage] [-rootobjectinfo|-norootobjectinfo] [-rootobjectinfost <サイズ>] -p <プロセスID>

UNIXの場合

jheapprof [-f|-i] [-explicit|-noexplicit] [-class <クラス名>] [-fullgc|-copygc|-nogc] [-garbage|-nogarbage] [-rootobjectinfo|-norootobjectinfo] [-rootobjectinfost <サイズ>] [-force] -p <プロセスID>

実行例

ここでは，プロセスIDが2463のJavaプロセスのクラス別統計情報を出力します。

-pオプションに，クラス別統計情報を出力したいJavaプロセスのプロセスIDを指定して，jheapprofコマンドを実行します。

% jheapprof -p 2463

jheapprofコマンドで-fオプションを省略している場合，次の確認メッセージが表示されます。

Windowsの場合

日立クラス別統計付き拡張スレッドダンプを出力するかどうかを確認するメッセージが次の形式で表示されます。

Force VM to output HitachiJavaHeapProfile: ? (y/n)

UNIXの場合

プロセスIDを確認するメッセージが次の形式で表示されます。

send SIGQUIT to 2463: ? (y/n)

yを入力します。
日立クラス別統計付き拡張スレッドダンプが出力されます。実行中のjavaプログラムでは次のメッセージが出力されます。

Writing Java core to javacore2463.030806215140.txt... OK

実行中のjavaプログラムは，カレントディレクトリに日立クラス別統計付き拡張スレッドダンプ（javacore<プロセスID>.<日時>.txt）を作成し，プログラムを継続します。

(2)　Explicitヒープの情報をクラス別統計情報に出力する場合

次の条件を満たしている場合，Explicitヒープの情報をクラス別統計情報に出力できます。

JavaVM起動オプションに-XX:+HitachiUseExplicitMemoryを指定している。

アプリケーションの実装，または実行環境（J2EEサーバ）の設定でExplicitヒープが使用されている。

Explicitヒープの情報をクラス別統計情報に出力する場合は，jheapprofコマンドに-explicitオプションを指定して実行します。

明示管理ヒープ機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.　明示管理ヒープ機能を使用したフルガーベージコレクションの抑止」を参照してください。

(3)　ガーベージコレクションの実行有無を指定する場合

クラス別統計情報を出力する前に，ガーベージコレクションを実行するかどうかを選択できます。この機能を統計前のガーベージコレクション選択機能といいます。クラス別統計情報を出力する前に，ガーベージコレクションを実行するかどうかは，jheapprofコマンドに次のどれかのオプションを指定して実行します。

-fullgc
フルガーベージコレクションを実行してから，クラス別統計情報を出力します。

-copygc
コピーガーベージコレクションを実行してから，クラス別統計情報を出力します。

-nogc
ガーベージコレクションを実行しないで，クラス別統計情報を出力します。

統計前のガーベージコレクション選択機能については，「8.7　統計前のガーベージコレクション選択機能」を参照してください。なお，Tenured領域内不要オブジェクト統計機能を実行する場合，統計前のガーベージコレクション選択機能は実行できません。

8.3.4　クラス別統計情報出力時の注意事項

ここでは，クラス別統計情報出力時の注意事項について説明します。

起動中のJavaプロセスに対して，-copygcオプションを設定したjheapprofコマンドを実行すると，統計前にコピーガーベージコレクションを実行しようとします。この場合に，Tenured領域の空き容量が足りないと，コピーガーベージコレクションが実行できないときがあります。
コピーガーベージコレクションが実行できない場合，JavaVM起動オプションに-XX:+HitachiVerboseGCを指定していても，ガーベージコレクションが発生した時の拡張verbosegc情報は出力されません。なお，クラス別統計情報を含む拡張スレッドダンプは，ガーベージコレクション実行時と同様に出力されます。

JavaVM起動時に，-XX:+PrintGCDetailsが指定されたJavaプロセスに対して，-copygcオプションを設定したjheapprofコマンドを実行すると，統計前にコピーガーベージコレクションを実行します。この場合，-XX:+PrintGCDetailsの指定によって出力されるガーベージコレクション情報には，「Full GC」と出力されます。

8.4　インスタンス統計機能

この節では，インスタンス統計機能について説明します。

インスタンス統計機能は，クラス別統計情報を出力する機能の一つです。クラスごとに，クラスのインスタンスの数やインスタンスの合計サイズが出力できます。

インスタンス統計機能はjheapprofコマンドを使用して出力します。jheapprofコマンドの実行形式と実行例については，「8.3.3　クラス別統計情報の出力」を参照してください。

この節の構成を次の表に示します。

表8-4　この節の構成（インスタンス統計機能）

分類 | タイトル | 参照先
解説 | インスタンス統計機能の概要 | 8.4.1
インスタンス統計機能で出力するクラス別統計情報 | 8.4.2

注　「実装」，「設定」，「運用」および「注意事項」について，この機能固有の説明はありません。

＜この節の構成＞

8.4.1　インスタンス統計機能の概要

8.4.2　インスタンス統計機能で出力するクラス別統計情報

8.4.1　インスタンス統計機能の概要

インスタンス統計機能では，classAのインスタンス→classAのメンバ変数（クラスはclassB）→classBのインスタンス→...とインスタンスの参照関係を調べ，ほかのインスタンスへの参照を持たないインスタンスのサイズをそのインスタンスをメンバに持つクラスに再帰的に加算します。つまり，インスタンス統計機能とは，各クラスのインスタンスがメンバとして持つインスタンスの合計サイズが出力される機能です。

インスタンス統計機能では，明示管理ヒープ機能を使用している場合に，Explicitヒープのインスタンスを統計対象とするかどうかによって，クラス別統計情報の出力結果が変わります。なお，Explicitヒープのインスタンスを統計対象とする場合には，jheapprofコマンドに-explicitオプションを指定して実行します。

統計対象ごとの出力結果について，次の図に示すインスタンス構造を例に説明します。

図8-1　インスタンス構造の例

Explicitヒープを統計対象に含む場合は，インスタンスa1，b1，b2，c1，およびc2がクラス別統計情報の対象となります。Explicitヒープを統計対象に含まない場合は，インスタンスa1，b2，c2がクラス別統計情報の対象となります。

統計対象ごとのインスタンス数とインスタンスの合計サイズを次の表に示します。

表8-5　統計対象ごとのインスタンス数とインスタンスの合計サイズ

jheapprofコマンドの引数
統計対象
クラスA
クラスB
クラスC

インスタンス数
合計サイズ※
インスタンス数
合計サイズ※
インスタンス数※
合計サイズ※

-explicit

Javaヒープ

Permanent領域

Explicitヒープ

1
122
2
22
2
2

-noexplicit

Javaヒープ

Permanent領域

1
111
1
11
1
1

注※　合計サイズは，インスタンスの合計サイズを示します。単位はバイトです。

各クラスのインスタンスの合計サイズの算出式を次に示します。

Explicitヒープを統計対象に含む場合

クラスAの場合：a1+b1+b2+c1+c2

クラスBの場合：b1+b2+c1+c2

クラスCの場合：c1+c2

Explicitヒープを統計対象に含まない場合

クラスAの場合：a1+b2+c2

クラスBの場合：b2+c2
（インスタンスb1が対象外でも，その配下にあるインスタンスb2，c2が対象であるため，参照関係にあるそれらのインスタンスのサイズがクラスBに加算される）

クラスCの場合：c2

インスタンス統計機能では，基点となるオブジェクトから次の順序に従って参照されるオブジェクトの参照関係を調べます。基点となるオブジェクトは，ほかの参照関係で調べられていないオブジェクトが該当します。1.，2.，3.は調査の優先順を示します。

Javaヒープ内のアドレスの低い順

明示管理ヒープ内のアドレスの低い順

Permanentヒープ内のアドレスの低い順

参照先のオブジェクトが調査済みの場合は，分岐点まで戻って参照関係を調べます。

また，参照先のオブジェクトがほかの参照関係の基点となるオブジェクトである場合は，参照先オブジェクトとして扱います。すべての基点となるオブジェクトがなくなるまで参照関係を調べます。

インスタンス統計機能の場合，インスタンス数には各クラスのインスタンス数が出力されます。インスタンスの合計サイズには，次の内容が出力されます。

基点となるオブジェクトのサイズは，該当するクラスに加算されます。参照先のオブジェクトのサイズは，該当するクラスに加算され，さらに基点となるオブジェクト，および該当するクラスまでの参照関係にあるすべてのオブジェクトの該当するクラスにも加算されます。

8.4.2　インスタンス統計機能で出力するクラス別統計情報

ここでは，インスタンス統計機能で出力するクラス別統計情報の出力形式，出力項目および出力例について説明します。

＜この項の構成＞

(1)　出力形式と出力項目

(2)　出力例

(1)　出力形式と出力項目

インスタンス統計機能で出力するクラス別統計情報の出力形式を次に示します。

●出力形式

Java Heap Profile
-----------------------
________________Size__Instances__Class________________
  <total_size>       <Instance_count>   <class_name>
  <total_size>       <Instance_count>   <class_name>
...

●出力項目

出力形式で示した各項目について説明します。

表8-6　出力項目（インスタンス統計機能）

出力項目 | 意味
<total_size> | インスタンスの合計サイズがバイト単位で出力されます。
<Instance_count> | インスタンスの数が出力されます。
<class_name> | クラス名が出力されます。

(2)　出力例

インスタンス統計機能で出力するクラス別統計情報の出力例を，次のソースを例にして説明します。

public class instance {
 public static void main(String args[]) {
   classA cls_a = new classA();
   try {
     Thread.sleep(20000);
   } catch (Exception e) {}
 }
}
class classA {
 classB a1;
 classC a2;
 classA() {
   a1 = new classB();
   a2 = new classC();
 }
}
class classB {
 classD b1;
 String b2;
 classB() {
   b1 = new classD();
   b2 = null;
 }
}
class classC {
 String c1, c2;
 classC() {
   c1 = null;
   c2 = null;
 }
}
class classD {
 String d1, d2;
 classD() {
   d1 = null;
   d2 = null;
 }
}

このソースの場合の，インスタンス構造を次の図に示します。

図8-2　インスタンス構造（インスタンス統計機能）

このようなインスタンス構造の場合，インスタンス統計機能では，次のように各クラスのサイズを加算します。

classAのサイズ：a1+a2+ b1+b2+ c1+c2+ d1+d2

classBのサイズ：b1+b2+ d1+d2

classCのサイズ：c1+c2

classDのサイズ：d1+d2

インスタンス統計機能の出力結果を次の図に示します。

図8-3　出力結果（インスタンス統計機能）

8.5　STATICメンバ統計機能

この節では，STATICメンバ統計機能について説明します。

STATICメンバ統計機能は，クラス別統計情報を出力する機能の一つです。クラスごとに，staticメンバが持つインスタンスの合計サイズが出力できます。

STATICメンバ統計機能はjheapprofコマンドを使用して出力します。jheapprofコマンドの実行形式と実行例については，「8.3.3　クラス別統計情報の出力」を参照してください。

この節の構成を次の表に示します。

表8-7　この節の構成（STATICメンバ統計機能）

分類 | タイトル | 参照先
解説 | STATICメンバ統計機能の概要 | 8.5.1
STATICメンバ統計機能で出力するクラス別統計情報 | 8.5.2

注　「実装」，「設定」，「運用」および「注意事項」について，この機能固有の説明はありません。

＜この節の構成＞

8.5.1　STATICメンバ統計機能の概要

8.5.2　STATICメンバ統計機能で出力するクラス別統計情報

8.5.1　STATICメンバ統計機能の概要

STATICメンバ統計機能は，インスタンス統計機能と同様に，インスタンスの参照関係を調べ，そのサイズを加算して統計情報を出力します。インスタンス統計機能と異なる点は，インスタンス統計機能が最初に取り出したインスタンスの非staticフィールドから参照関係を構築するのに対し，STATICメンバ統計機能は最初に取り出したインスタンスのstaticフィールド（=クラスのstaticフィールド）から参照関係を調べるという点です。これによって，各クラスのstaticメンバが持つインスタンスの合計サイズを得ることができます。ただし，最初に取り出すインスタンス以外では，インスタンス統計機能およびSTATICメンバ統計機能共に，インスタンスの非staticメンバを基に参照関係を調べます。インスタンス統計機能とSTATICメンバ統計機能の違いについては，「8.5.2(2)　出力例」を参照してください。

STATICメンバ統計機能では，基点となるオブジェクトから参照関係を調べます。基点となるオブジェクトは，JavaVMが持つすべてのクラスのSTATICメンバが参照し，ほかの参照関係で調べられていないオブジェクトが該当します。

また，参照先のオブジェクトが調査済みの場合は，分岐点まで戻って参照関係を調べます。すべての基点となるオブジェクトがなくなるまで参照関係を調べます。

STATICメンバ統計機能の場合，インスタンス数とインスタンスの合計サイズには，次の内容が出力されます。

参照関係にあるすべてのオブジェクトのサイズとオブジェクト数を基点となるオブジェクトに合計します。この値を基点となるオブジェクトが参照しているSTATICメンバを持つクラスに合計して統計値とします。

8.5.2　STATICメンバ統計機能で出力するクラス別統計情報

ここでは，STATICメンバ統計機能で出力するクラス別統計情報の出力形式，出力項目および出力例について説明します。

＜この項の構成＞

(1)　出力形式と出力項目

(2)　出力例

(1)　出力形式と出力項目

STATICメンバ統計機能で出力するクラス別統計情報の出力形式を次に示します。

●出力形式

Java Heap Dump Static Profile
-----------------------
________________Size__Instances__Class________________
  <total_size>       <Instance_count>   <class_name>
  <total_size>       <Instance_count>   <class_name>
...

●出力項目

出力形式で示した各項目について説明します。

表8-8　出力項目（STATICメンバ統計機能）

出力項目 | 意味
<total_size> | インスタンスの合計サイズがバイト単位で出力されます。
<Instance_count> | インスタンスの数が出力されます。
<class_name> | クラス名が出力されます。

(2)　出力例

STATICメンバ統計機能で出力するクラス別統計情報の出力例を，次のソースを例にして説明します。

public class static_instance {
 public static void main(String args[]) {
   classA cls_a;
   classB cls_b;
   classC cls_c;

   cls_a = new classA();
   cls_b = new classB();
   cls_c = new classC();
   cls_b.cls_c = cls_c;
   cls_a.cls_b = cls_b;

   try {
     Thread.sleep(20000);
   } catch (Exception e) {}
 }
}
class classA {
 static classB cls_b;
}
class classB {
 classC cls_c;
}
class classC {
}

STATICメンバ統計機能の出力結果を次の図に示します。

図8-4　出力結果（STATICメンバ統計機能）

また，上記のソースの場合，インスタンス統計機能とSTATICメンバ統計機能では，参照関係に違いがあります。インスタンス統計機能とSTATICメンバ統計機能の参照関係の相違を次の図に示します。

図8-5　インスタンス統計機能とSTATICメンバ統計機能の参照関係の相違

それぞれ機能の参照関係は次のようになっています。

インスタンス統計機能の参照関係
インスタンスAのインスタンス変数 cls_b → インスタンスBのインスタンス変数 cls_c → インスタンスC

STATICメンバ統計機能の参照関係
クラスAのクラス変数cls_b → インスタンスBのインスタンス変数cls_c → インスタンスC

8.6　参照関係情報出力機能

この節では，参照関係情報出力機能について説明します。

参照関係情報出力機能は，指定したクラスのインスタンスの参照関係が先頭から順番に出力できます。

この節の構成を次の表に示します。

表8-9　この節の構成（参照関係情報出力機能）

分類 | タイトル | 参照先
解説 | 参照関係情報出力機能の概要 | 8.6.1
参照関係情報出力機能で出力するクラス別統計情報 | 8.6.2

注　「実装」，「設定」，「運用」および「注意事項」について，この機能固有の説明はありません。

＜この節の構成＞

8.6.1　参照関係情報出力機能の概要

8.6.2　参照関係情報出力機能で出力するクラス別統計情報

8.6.1　参照関係情報出力機能の概要

jheapprofコマンドの-classオプションに指定したクラスのインスタンスがどのクラスから参照されているかを，インスタンスの参照関係の先頭から順番に出力します。

指定したクラスのインスタンスが複数ある場合は，該当するすべてのインスタンスが出力されます。同じ名前のインスタンスが複数ある場合でも，インスタンス名のあとに次の情報が出力されるため，別のインスタンスかどうか識別できます。

インスタンスのアドレス

インスタンスが所属している領域名称

参照関係情報出力機能では，基点となるオブジェクトから次の順序に従って参照されるオブジェクトの参照関係を調べます。基点となるオブジェクトは，ほかの参照関係で調べられていないオブジェクトが該当します。1.，2.，3.は調査の優先順を示します。

Javaヒープ内のアドレスの低い順

明示管理ヒープ内のアドレスの低い順

Permanentヒープ内のアドレスの低い順

参照先のオブジェクトが-classオプションで指定したクラスの場合，参照関係情報には，基点となるオブジェクトから-classオプションで指定したクラスのオブジェクトまでの参照関係が出力されます。

また，参照先のオブジェクトが調査済みの場合は，分岐点まで戻って参照関係を調べます。参照先のオブジェクトがほかの参照関係の基点となるオブジェクトである場合は，参照先オブジェクトとして扱います。すべての基点となるオブジェクトがなくなるまで参照関係を調べます。

8.6.2　参照関係情報出力機能で出力するクラス別統計情報

ここでは，参照関係情報出力機能で出力するクラス別統計情報の出力形式，出力項目および出力例について説明します。

＜この項の構成＞

(1)　出力形式と出力項目

(2)　出力例

(1)　出力形式と出力項目

参照関係情報出力機能で出力するクラス別統計情報の出力形式を次に示します。

●出力形式

Reference of class <オプション指定クラス名>
--------------------------------------------※
<クラス名>(<アドレス>)[<領域名称>]
 <クラス名>(<アドレス>)[<領域名称>]
   <オプション指定クラス名>(<アドレス>)[<領域名称>]
------
<クラス名>(<アドレス>)[<領域名称>]
 java.lang.ref.Finalizer<<繰り返し数> times>
   <クラス名>(<アドレス>)[<領域名称>]
     <クラス名>(<アドレス>)[<領域名称>]
       <オプション指定クラス名>(<アドレス>)[<領域名称>]
------
...

注※　<オプション指定クラス名>の文字数に19を加算した数の「-（ハイフン）」が出力されます。

●出力項目

出力形式で示した各項目について説明します。

表8-10　出力項目（参照関係情報出力機能）

出力項目
意味

<クラス名>
jheapprofコマンドの-classオプションに指定したクラスのインスタンスが参照するクラスの名称が出力されます。

<アドレス>
インスタンスのアドレスが出力されます。

<領域名称>
インスタンスが所属する領域が出力されます。

Eden：Eden領域を示します。

Survivor：Survivor領域を示します。

Tenured：Tenured領域を示します。

Perm：Permanent領域を示します。

EM(eid=<id>)：Explicitメモリブロックを示します。

<オプション指定クラス名>
jheapprofコマンドの-classオプションに指定したクラス名が出力されます。

java.lang.ref.Finalizer
finalize()メソッドを持つクラスで生成するjava.lang.ref.Finalizerのオブジェクトを一つにまとめて出力することを示します。

<繰り返し数>
Finalizerインスタンスの参照が連続した回数が出力されます。

(2)　出力例

参照関係情報出力機能で出力するクラス別統計情報の出力例を，次のソースを例にして説明します。

public class instance2 {
 public static void main(String args[]) {
   classA cls_a1 = new classA();    classA cls_a2 = new classA();
   classB cls_b1 = new classB();    classB cls_b2 = new classB();
   classC cls_c1 = new classC();    classC cls_c2 = new classC();
   classC cls_c3 = new classC();    classC cls_c4 = new classC();
   cls_a1.cls_a = cls_a2;    cls_a1.cls_b = cls_b1;
   cls_a1.cls_c = cls_c1;    cls_a2.cls_b = cls_b2;
   cls_b1.cls_c = cls_c2;    cls_b2.cls_c = cls_c3;
   cls_c1.cls_c = cls_c4;
   try {
     Thread.sleep(20000);
   } catch (Exception e) {}
 }
}
class classA {
 classA cls_a;
 classB cls_b;
 classC cls_c;

 classA() {
   classB cls_b;
 }
}
class classB {
 classC cls_c;
}
class classC {
 classC cls_c;
}

上記のソースの場合の，インスタンス構造を次の図に示します。

図8-6　インスタンス構造（参照関係情報出力機能）

参照関係情報出力機能の出力結果を次の図に示します。この場合，jheapprofコマンドに引数「-class <クラス名>」を指定して実行します。

図8-7　出力結果（参照関係情報出力機能）

classAのアドレスは，すべて同じアドレス（0x10766840）になっています。したがって，classAはすべて同じインスタンスであることがわかります。一方，(1)と(4)のclassBは，アドレスが異なっているので，別のインスタンスであることがわかります。

なお，ガーベージコレクションの発生によってインスタンスのメモリ上の配置が変化します。そのため，アドレスおよび領域名称は，出力するたびに変化する場合があります。

8.7　統計前のガーベージコレクション選択機能

この節では，統計前のガーベージコレクション選択機能について説明します。

統計前のガーベージコレクション選択機能を使用すると，クラス別統計情報の出力前に実行する処理を選択できます。

この節の構成を次の表に示します。

表8-11　この節の構成（統計前のガーベージコレクション選択機能）

分類 | タイトル | 参照先
解説 | 統計前のガーベージコレクション選択機能の概要 | 8.7.1
ガーベージコレクションの選択の指針 | 8.7.2

注　「実装」，「設定」，および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.7.1　統計前のガーベージコレクション選択機能の概要

8.7.2　ガーベージコレクションの選択の指針

8.7.1　統計前のガーベージコレクション選択機能の概要

クラス別統計機能を実行すると，拡張スレッドダンプへクラス別統計情報が出力できます。統計前のガーベージコレクション選択機能では，クラス別統計情報を出力する前に実施する処理を選択できます。調査目的に合わせて，実施する処理を選択することで，Javaオブジェクトのさまざまな変化の様子をクラス別統計情報に取得できます。

統計前のガーベージコレクション選択機能を使用する場合，jheapprofコマンドの引数で実行する処理を指定します。クラス別統計機能実行前に実施できる処理とjheapprofコマンドの引数を次の表に示します。

表8-12　クラス別統計機能実行前に実施できる処理とjheapprofコマンドの引数

処理の種類 | 処理内容 | jheapprofコマンドの引数
フルガーベージコレクションの実行 | Tenured領域も含む，JavaVM固有領域全体を対象に，使用済みのオブジェクトを回収します。 | -fullgc
コピーガーベージコレクションの実行 | Eden領域およびSurvivor領域だけを対象に，使用済みのオブジェクトを回収します。 | -copygc
ガーベージコレクションを実行しない | 使用済みのオブジェクトがあっても回収しません。 | -nogc

なお，JavaVM起動オプションで-XX:+HitachiVerboseGCおよび-XX:+HitachiVerboseGCPrintCauseを指定している場合にクラス別統計機能を実行すると，拡張verbosegc情報に次の情報が出力されます。

ガーベージコレクション種別

拡張スレッドダンプにガーベージコレクションが発生した要因

これらの情報は，jheapprofコマンドに指定する引数によって，出力される情報が異なります。jheapprofコマンドの引数と出力情報の関係を次の表に示します。

表8-13　jheapprofコマンドの引数と出力情報の関係

jheapprofコマンドの引数 | ガーベージコレクション種別 | ガーベージコレクションが発生した要因
-fullgc | FullGC | JHeapProf Command
-copygc | GC | JHeapProf Command

8.7.2　ガーベージコレクションの選択の指針

統計前のガーベージコレクション選択機能で，どの処理を指定するかは，出力されるクラス別統計情報の調査目的によって異なります。

ここでは，調査目的に合わせて，処理を選択する指針について説明します。

統計前のガーベージコレクション選択機能で選択できる処理は，jheapprofコマンドの引数で指定します。処理は，どのオブジェクトを調査対象とするか，クラス別統計情報をどのような調査で使用するかによって選択します。

処理の選択の指針を次の表に示します。

表8-14　処理の選択の指針

処理
（jheapprofコマンドの引数）
調査対象
クラス別統計情報の調査方法の例

フルガーベージコレクションの実行
（-fullgc）
フルガーベージコレクションによるオブジェクトの変化
フルガーベージコレクションによって，使用済みのオブジェクトが回収されるため，Javaヒープのメモリリークの原因となるオブジェクトを特定できます。

コピーガーベージコレクションの実行
（-copygc）
コピーガーベージコレクションによるオブジェクトの変化
コピーガーベージコレクションによって，Tenured領域へ移動する寿命の長いオブジェクトを特定できます。この情報から，フルガーベージコレクションの発生頻度が増大する原因となるオブジェクトを特定できます。

ガーベージコレクションは実行しない
（-nogc）※
ガーベージコレクションの実行で回収されてしまう短寿命オブジェクト
使用済みのオブジェクトを含むすべてのオブジェクトの情報が出力されます。コピーガーベージコレクションが多発している場合などに，その原因となるメモリ占有率の高いオブジェクト（超大オブジェクト）を特定できます。

注※

jheapprofコマンドの引数に-nogcを指定した場合，すべての寿命の短いオブジェクトの情報が出力されるため，ログの出力量が増加します。

8.8　Tenured領域内不要オブジェクト統計機能

この節では，Tenured領域内不要オブジェクト統計機能について説明します。

Tenured領域内不要オブジェクト統計機能は，クラス別統計情報を出力する機能の一つです。Tenured領域内不要オブジェクト統計機能を使用すると，Tenured領域内で不要となったオブジェクトを特定できます。

Tenured領域内不要オブジェクト統計機能を使用する場合は，jheapprofコマンドの引数に-garbageを指定します。jheapprofコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「jheapprof（日立クラス別統計情報付き拡張スレッドダンプの出力）」を参照してください。

この節の構成を次の表に示します。

表8-15　この節の構成（Tenured領域内不要オブジェクト統計機能）

分類 | タイトル | 参照先
解説 | Tenured領域内不要オブジェクト統計機能の概要 | 8.8.1
Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報 | 8.8.2
注意事項 | Tenured領域内不要オブジェクト統計機能の実行に関する注意事項 | 8.8.3

注　「実装」，「設定」および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.8.1　Tenured領域内不要オブジェクト統計機能の概要

8.8.2　Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報

8.8.3　Tenured領域内不要オブジェクト統計機能の実行に関する注意事項

8.8.1　Tenured領域内不要オブジェクト統計機能の概要

Tenured領域内不要オブジェクト統計機能では，Tenured領域内に蓄積された不要となったオブジェクトだけを特定して，スレッドダンプファイルに出力します。Tenured領域内不要オブジェクト統計機能の仕組みについて説明します。

＜この項の構成＞

(1)　不要なオブジェクトのサイズの出力

(2)　不要なオブジェクトの参照関係の確認

(1)　不要なオブジェクトのサイズの出力

コピーガーベージコレクションの繰り返しによって，長寿命オブジェクトがTenured領域に蓄積します。蓄積した長寿命オブジェクトのうち，時間が経過して用途を失ったオブジェクトは，不要なオブジェクトとなってTenured領域内に残ります。その後，メモリがいっぱいになったタイミングでフルガーベージコレクションが発生します。コピーガーベージコレクションの発生からフルガーベージコレクションの発生までのTenured領域の使用量は，Tenured領域内不要オブジェクト統計機能，およびインスタンス統計機能で確認できます。

Tenured領域内不要オブジェクト統計機能，およびインスタンス統計機能を使って特定できる内容を次の図に示します。

図8-8　Tenured領域内不要オブジェクト統計機能，およびインスタンス統計機能を使って特定できる内容

統計前ガーベージコレクションを実施しないでインスタンス統計機能を実行した場合，図8-8の3.のサイズが出力されます。このサイズは，図8-8の1.に該当するTenured領域内で不要となったオブジェクトのサイズ，および図8-8の2.に該当するTenured領域内で使用中のオブジェクトを含んだTenured領域内のメモリ使用状況になります。

一方，Tenured領域内不要オブジェクト統計機能を実行した場合は，図8-8の2.の使用中のオブジェクトを除いたTenured領域内のメモリ使用状況（図8-8の1.に該当）を出力できます。Tenured領域内不要オブジェクト統計機能を使うことで，Tenured領域の増加要因となる不要となったオブジェクトを特定できるため，フルガーベージコレクションを抑止できます。

(2)　不要なオブジェクトの参照関係の確認

Tenured領域内不要オブジェクト統計機能では，基点となるオブジェクトはTenured領域内のアドレスの低い順に検索されます。検索されたオブジェクトの中でも，ほかの参照関係で調べられていないオブジェクトが基点となるオブジェクトになります。

参照先のオブジェクトが調査済みの場合は，分岐点まで戻って参照関係を調べます。また，参照先のオブジェクトがほかの参照関係の基点となるオブジェクトである場合は，参照先オブジェクトとして扱います。すべての基点となるオブジェクトがなくなるまで参照関係を調べます。

Tenured領域内不要オブジェクト統計機能の場合，インスタンス数，およびインスタンスサイズの合計が出力されます。インスタンス数は該当するクラスを加算します。インスタンスの合計サイズには次の内容が出力されます。

基点となるオブジェクトのサイズは，該当するクラスに加算されます。参照先のオブジェクトのサイズは，該当するクラスに加算され，さらに基点となるオブジェクト，および該当するクラスまでの参照関係にあるすべてのオブジェクトの該当するクラスにも加算されます。

なお，Tenured領域内不要オブジェクト統計機能を実行した場合，インスタンス統計機能，STATICメンバ統計機能，および統計前のガーベージコレクション選択機能は無効となります。

Tenured領域内の不要オブジェクトによる参照関係の例を示します。

図8-9　Tenured領域内の不要なオブジェクトによる参照関係の例

図8-9の参照関係について説明します。

インスタンス数

classA：a1が存在するため1

classB：b1，b2の二つが存在するため2

classC：c1，c2の二つが存在するため2

インスタンスサイズの合計

classA：classAのインスタンス（a1）と，その参照先のインスタンス（b1，b2，c1，c2）のサイズを合計した122

classB：classBのインスタンス（b1，b2）と，その参照先のインスタンス（c1，c2）のサイズを合計した22

classC：classCのインスタンス（c1，c2）を合計した2

Tenured領域内不要オブジェクト統計機能を実行して，図8-9の参照関係の情報を出力した場合の出力例を次に示します。

Garbage Profile
---------------
________________Size__Instances__Class________________
                122          1 A
                 22          2 B
                  2          2 C

8.8.2　Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報

ここでは，Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報の出力形式，出力項目および出力例について説明します。

＜この項の構成＞

(1)　出力形式と出力項目

(2)　出力例

(1)　出力形式と出力項目

Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報の出力形式を次に示します。

●出力形式

Garbage Profile
-----------------------
________________Size__Instances__Class________________
           <サイズ>       <個数>          <クラス名>
           <サイズ>       <個数>          <クラス名>...

●出力項目

出力形式で示した各項目について説明します。

表8-16　出力項目（Tenured領域内不要オブジェクト統計機能）

出力項目 | 意味
<サイズ> | インスタンスの合計サイズがバイト単位で出力されます。
<個数> | インスタンスの数が出力されます。
<クラス名> | クラス名が出力されます。

(2)　出力例

Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報の出力例を示します。

Garbage Profile
---------------
________________Size__Instances__Class________________
           35234568      10648 java.util.HashMap
            5678900      10668 [Ljava.util.HashMap$Entry;
            4456788       7436 java.util.HashMap$Entry
            4321000        200 java.util.WeakHashMap
            1234568        190 [Ljava.util.WeakHashMap$Entry
             454400          4 java.util.WeakHashMap$Entry
                  0          0 java.lang.Class
…

8.8.3　Tenured領域内不要オブジェクト統計機能の実行に関する注意事項

Tenured領域内不要オブジェクト統計機能の注意事項を次に示します。

＜この項の構成＞

(1)　Tenured領域内不要オブジェクト統計機能をフルガーベージコレクション直後に実行した場合の注意事項

(2)　統計結果に関する注意事項

(3)　統計対象とならないオブジェクトに関する注意事項

(4)　複数のオブジェクトから参照関係がある場合の注意事項

(5)　統計値の増加に関する注意事項

(1)　Tenured領域内不要オブジェクト統計機能をフルガーベージコレクション直後に実行した場合の注意事項

Tenured領域内不要オブジェクト統計機能をフルガーベージコレクション直後に実行すると，統計対象のTenured領域内の不要なオブジェクトが回収されている状態で統計処理を実行します。そのため，クラス別統計情報中のインスタンスサイズの合計，およびインスタンス数が小さくなり，不要なオブジェクトが効果的に特定されません。不要なオブジェクトを効果的に特定するためにはTenured領域内不要オブジェクト統計機能を実行してください。なお，Tenured領域内不要オブジェクト統計機能の実行について，フルガーベージコレクションの発生のタイミングが判明している場合と，判明していない場合に分けて説明します。

(a)　フルガーベージコレクションが発生するタイミングが判明している場合

Tenured領域内不要オブジェクト統計機能をフルガーベージコレクションの直前に実行すると，統計対象であるTenured領域内の不要オブジェクトの数が多い状態で統計処理が実行されます。そのため，クラス別統計情報中のインスタンスサイズの合計，およびインスタンス数が大きくなり，不要なオブジェクトを効果的に特定できます。

(b)　フルガーベージコレクションが発生するタイミングが判明していない場合

クラス別統計情報中のインスタンスサイズの合計，およびインスタンス数をできるだけ大きくし，不要なオブジェクトを効果的に特定する方法を示します。

フルガーベージコレクションの発生のタイミングを知るためにJavaVM起動時に拡張verbosegc情報を出力するオプション-XX:+HitachiVerboseGCを設定します。オプションを指定することでガーベージコレクションの情報を取得できます。

JavaVMに対してTenured領域内不要オブジェクト統計機能を一定の間隔で実行します。それによって，ガーベージコレクションの情報と，複数のクラス別統計情報を取得できます。

拡張verbosegc情報からフルガーベージコレクションの日時を取得できるため，フルガーベージコレクションにより近いクラス別統計情報を選択します。フルガーベージコレクションに近いクラス別統計情報は，統計対象であるTenured領域内の不要なオブジェクトの数が多い状態で統計処理された情報です。

(2)　統計結果に関する注意事項

図8-10のような参照関係の場合を例に統計結果に関する注意事項を説明します。

図8-10　参照関係の例（統計結果に関する注意事項）

この図で，a1が最も下位のアドレスとした場合，a1を基点となるオブジェクトとして，a1→b1→c1という参照関係で統計処理を実行します。このとき，b1またはc1を基点となるオブジェクトとしている場合，Tenured領域内不要オブジェクト統計機能，およびTenured増加要因の基点オブジェクトリスト機能の統計結果には，意図したとおりの結果が出力できません。

(3)　統計対象とならないオブジェクトに関する注意事項

図8-11のようにTenured領域のオブジェクト（a1およびc1）が，Tenured領域以外のオブジェクト（b1）と参照関係がある場合を例に，統計対象とならないオブジェクトに関する注意事項を説明します。

図8-11　参照関係の例（統計対象とならないオブジェクト）

この図の場合，Tenured領域以外のオブジェクト（b1）は統計対象とはなりません。しかし，クラスBのインスタンスサイズの合計には，参照先のTenured領域のオブジェクト（c1）のサイズが加算されます。

(4)　複数のオブジェクトから参照関係がある場合の注意事項

図8-12のように複数の参照元（c1およびd1）から一つのオブジェクト（b1）を参照している参照関係がある場合を例に，複数のオブジェクトから参照関係がある場合の注意事項を説明します。

図8-12　参照関係の例（複数のオブジェクトから参照関係がある場合）

この図の場合，Tenured領域内不要オブジェクト統計機能を実行すると，その参照元が属している参照関係の基点となるオブジェクト（c1およびa1）のうち，アドレスが最も低位である基点となるオブジェクトから統計処理が実行されます。そのため，アドレスが最も低位のオブジェクトがa1で，基点となるオブジェクトがc1である場合，Tenured領域内不要オブジェクト統計機能，およびTenured増加要因の基点オブジェクトリスト機能の統計結果には，意図したとおりの結果が出力できません。

(5)　統計値の増加に関する注意事項

オプション-XX:+HitachiAutoExplicitMemoryを指定したJavaプロセスに対して，Tenured領域内不要オブジェクト統計機能，およびTenured増加要因の基点オブジェクトリスト出力機能を実行すると，次に示すような現象が発生する場合があります。

Tenured領域内不要オブジェクト統計機能で出力されるクラス別統計情報のうち，float型の配列型（クラス名に[Fと出力される情報）のインスタンスサイズの合計，およびインスタンス数の統計値が，本来の統計値よりも大きくなります。クラス別統計情報の出力例を次に示します。

Garbage Profile
---------------
________________Size__Instances__Class________________
           43861400     473859 [F
                  0          0 java.util.Collections$EmptyMap
                  0          0 sun.security.util.Debug
                  0          0 java.nio.ByteOrder

Tenured増加要因の基点オブジェクトリスト出力機能で出力されるTenured増加要因の基点オブジェクトリストに，float型の配列型（クラス名に[Fと出力される情報）が出力されることでインスタンスサイズの合計の統計値が，本来の統計値よりも大きくなります。Tenured増加要因の基点オブジェクトリストの出力例を次に示します。

Garbage Profile Root Object Information
---------------------------------------
*, [F # 43861400

08-70よりも前のバージョンを使用している場合，これらの現象を発生させないために，-XX:-HitachiExplicitMemoryPartialTenuredAreaCollectionオプションを指定してください。

8.9　Tenured増加要因の基点オブジェクトリスト出力機能

この節では，Tenured増加要因の基点オブジェクトリスト出力機能について説明します。

Tenured増加要因の基点オブジェクトリスト出力機能は，クラス別統計情報を出力する機能の一つです。Tenured増加要因の基点オブジェクトリスト出力機能は，Tenured領域内不要オブジェクト統計機能を使って特定した，不要なオブジェクトの基点となるオブジェクトの情報を出力できます。

Tenured増加要因の基点オブジェクトリスト出力機能を使用する場合は，jheapprofコマンドの引数に-rootobjectinfoを指定します。jheapprofコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「jheapprof（日立クラス別統計情報付き拡張スレッドダンプの出力）」を参照してください。

この節の構成を次の表に示します。

表8-17　この節の構成（Tenured増加要因の基点オブジェクトリスト出力機能）

分類 | タイトル | 参照先
解説 | Tenured増加要因の基点オブジェクトリスト出力機能の概要 | 8.9.1
Tenured増加要因の基点オブジェクトリスト出力機能で出力するクラス別統計情報 | 8.9.2

注　「実装」，「設定」，「運用」および「注意事項」について，この機能固有の説明はありません。

＜この節の構成＞

8.9.1　Tenured増加要因の基点オブジェクトリスト出力機能の概要

8.9.2　Tenured増加要因の基点オブジェクトリスト出力機能で出力するクラス別統計情報

8.9.1　Tenured増加要因の基点オブジェクトリスト出力機能の概要

Tenured増加要因の基点オブジェクトリスト出力機能では，Tenured領域内不要オブジェクト統計機能を使って特定した，不要なオブジェクトの基点となるオブジェクトの情報をリストにしてスレッドダンプファイルに出力します。

また，Tenured増加要因の基点オブジェクトリスト出力機能は，Tenured領域内不要オブジェクト統計機能が前提になります。

ポイント

Tenured増加要因の基点オブジェクトリスト出力機能を使って取得した情報は，明示管理ヒープ機能を使用する場合に指定する，自動配置設定ファイルに指定できます。自動配置設定ファイルを使った明示管理ヒープの使用については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「8.11.2　自動配置設定ファイルを使った明示管理ヒープ機能の使用」を参照してください。

Tenured増加要因の基点オブジェクトリスト出力機能の仕組みについて説明します。

＜この項の構成＞

(1)　基点となるオブジェクトのリスト出力

(2)　不要なオブジェクトの参照関係の確認

(1)　基点となるオブジェクトのリスト出力

Tenured増加要因の基点オブジェクトリスト出力機能は，Tenured領域内不要オブジェクト統計機能の処理のあとに続けて実行されます。Tenured領域内不要オブジェクト統計機能で実行する処理については，「8.8.1　Tenured領域内不要オブジェクト統計機能の概要」を参照してください。

Tenured増加要因の基点オブジェクトリスト出力機能は，Tenured領域内のアドレスの低い順にオブジェクトを検索します。検索したオブジェクトの中で，すでに参照関係で調べられているオブジェクト，および不要なオブジェクトのクラス情報を取得して，出力候補リストに保存します。

出力候補リストに保存した情報をインスタンスサイズの合計でソートし，合計サイズがjheapprofコマンドの-rootobjectinfostオプションで指定した値以上のクラス情報だけが出力されます。

(2)　不要なオブジェクトの参照関係の確認

Tenured増加要因の基点オブジェクトリスト出力機能を実行して基点となるオブジェクトを取得する際の，Tenured領域内の不要オブジェクトによる参照関係の例を示します。

インスタンス数

classA：a1が存在するため1

classB：b1，b2の二つが存在するため2

classC：c1，c2の二つが存在するため2

インスタンスサイズの合計

classA：classAのインスタンス（a1）と，その参照先のインスタンス（b1，b2，c1，c2）のサイズを合計した122

classB：classBのインスタンス（b1，b2）と，その参照先のインスタンス（c1，c2）のサイズを合計した22

classC：classCのインスタンス（c1，c2）を合計した2

図8-13　Tenured領域内の不要なオブジェクトによる参照関係の例

Tenured領域内不要オブジェクト統計機能を実行して図8-13のような参照関係の情報を取得した場合に，Tenured増加要因の基点オブジェクトリスト出力機能で取得する情報を次に示します。

基点オブジェクト：a1

基点オブジェクトのクラス：A

基点オブジェクトのクラスAのインスタンスサイズの合計：122

図8-13の参照関係の情報をTenured増加要因の基点オブジェクトリスト出力機能を実行して出力した場合の出力例を次に示します。

Garbage Profile Root Object Information
---------------------------------------
*, A # 122

8.9.2　Tenured増加要因の基点オブジェクトリスト出力機能で出力するクラス別統計情報

ここでは，Tenured増加要因の基点オブジェクトリスト出力機能で出力するクラス別統計情報の出力形式，および出力項目について説明します。

●出力形式

Garbage Profile Root Object Information
---------------------------------------
*, <クラス名> # <サイズ>
…

●出力項目

出力形式で示した各項目について説明します。

表8-18　出力項目（Tenured領域内不要オブジェクト統計機能）

出力項目 | 意味
<クラス名> | Tenured増加要因となった基点となるオブジェクトのクラス名が出力されます。
<サイズ> | Tenured領域内不要オブジェクト統計機能のクラス別統計情報から取得したインスタンスサイズの合計がバイト単位で出力されます。

8.10　クラス別統計情報解析機能

この節では，クラス別統計情報解析機能について説明します。

クラス別統計情報解析機能を使用すると，クラス別統計情報で取得した情報をCSV形式で出力できます。

この節の構成を次の表に示します。

表8-19　この節の構成（クラス別統計情報解析機能）

分類 | タイトル | 参照先
解説 | クラス別統計情報解析機能の概要 | 8.10.1
クラス別統計情報解析機能の出力例 | 8.10.2
注意事項 | クラス別統計情報解析機能の注意事項 | 8.10.3

注　「実装」，「設定」および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.10.1　クラス別統計情報解析機能の概要

8.10.2　クラス別統計情報解析機能の出力例

8.10.3　クラス別統計情報解析機能の注意事項

8.10.1　クラス別統計情報解析機能の概要

jheapprofanalyzerコマンド（クラス別統計情報解析機能）を実行することで，クラス別統計情報の付いた複数の拡張スレッドダンプファイルを入力ファイルとして，クラスごとのインスタンスの合計サイズ，およびクラスごとのインスタンス数を時系列に出力します。出力されるファイルは，CSV形式で出力されます。

クラス別統計情報として取得した情報を基に，クラス別統計情報解析機能を実行してCSV形式に出力する場合の流れを次に示します。

図8-14　クラス別統計情報解析機能を実行してCSV形式に出力する場合の流れ

クラス別統計情報解析機能では，インスタンスの合計サイズが大きいインスタンスの情報を出力して，そのインスタンスのメモリ使用量だけを確認することもできます。インスタンスの合計サイズが大きいものだけを出力する場合には-DJP.co.Hitachi.soft.jvm.tools.jheapprofanalyzer.thresholdにしきい値を指定し，jheapprofanalyzerコマンドに指定して実行します。jheapprofanalyzerコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「jheapprofanalyzer（日立クラス別統計情報解析ファイルのCSV出力）」を参照してください。

8.10.2　クラス別統計情報解析機能の出力例

ここでは，クラス別統計情報解析機能の入力ファイル，出力ファイル，および出力形式について説明します。

＜この項の構成＞

(1)　入力ファイル

(2)　出力ファイル

(3)　出力形式

(1)　入力ファイル

クラス別統計情報解析機能で使用する入力ファイルは，クラス別統計情報を出力した拡張スレッドダンプファイルです。

(2)　出力ファイル

クラス別統計情報解析機能で出力するファイルは，クラスごとのインスタンスの合計サイズを出力したファイル，およびクラスごとのインスタンス数を出力したファイルの2種類です。出力ファイルはカレントディレクトリに次のファイル名で作成されます。

表8-20　出力ファイルのファイル名

出力ファイルの種類 | 出力ファイルのファイル名の例
インスタンス合計サイズファイル | JheapprofAnalyzer_size_nnn.csv
インスタンス数ファイル | JheapprofAnalyzer_num_nnn.csv

（凡例）

nnn：ファイルの分割番号が出力されます。分割番号の範囲は001～999です。

列が201列を超える場合は出力ファイルが分割されます。また，999ファイルを超えた場合は，001に戻りファイルは書き換えられます。

分割する列数は，201列（クラス名1列＋値200列）を超えた場合とし，出力形式は分割したファイルも同じになります。

(3)　出力形式

クラス別統計情報解析機能で出力されるファイルの出力形式を次の図に示します。なお，インスタンス合計サイズ，およびインスタンス数が出力されたCSVファイルの出力形式は同じです。

図8-15　クラス別統計情報解析機能で出力されるファイルの出力形式

クラス名と値，および値と値の間はコンマで区切ります。また，行の最後は値（空白も含む）で終了します。

クラス名の出力順はランダムです。値は入力ファイルの先頭行にある日付を基に，日付の古いものから横に並びます。同じ日付の入力ファイルがある場合はランダムに連続して横に並びます。

参考

クラス別統計情報解析機能を複数回実行すると，処理途中のクラスが消滅したり追加されたりする場合があります。また，該当するクラスがない場合の値には0が出力されます。図8-16のクラス情報の例を使用して説明します。

図8-16　クラス情報の例

上記のようなクラス情報の場合で，-DJP.co.Hitachi.soft.jvm.tools.jheapprofanalyzer.thresholdのしきい値を0にしたときの出力結果は図8-17のようになります。

図8-17　クラス別統計情報解析機能の出力例

インスタンス合計サイズの最大値は0～2⁶³-1，インスタンス数の最大値は0～2³¹-1です。一つの入力ファイルに同じクラス名がある場合は，インスタンスサイズの合計が加算されます。また，インスタンス数も加算されます。加算されたことによって，それぞれの最大値を超えた場合は，指定した最大値が出力されます。なお，一つのクラスについて，すべての入力ファイルで該当するクラスの情報がない，またはしきい値未満の場合は，そのクラスの情報は出力されません。

8.10.3　クラス別統計情報解析機能の注意事項

クラス別統計情報解析機能を使用する場合，jheapprofanalyzerコマンド実行中に入力ファイルの更新，および削除の操作はしないでください。クラス別統計情報解析機能は，日付を取得するとき，およびデータを読み込むときの2回ファイルを開きます。そのため，コマンド実行中に入力ファイルの更新，および削除の操作をした場合の結果は保証されません。

8.11　Survivor領域の年齢分布情報出力機能

この節では，Survivor領域の年齢分布情報出力機能について説明します。

Survivor領域の年齢分布情報出力機能を使用すると，コピーガーベージコレクション実行時に，Survivor領域の使用状況が調査できます。この情報は，メモリサイズのチューニングに使用できます。

この節の構成を次の表に示します。

表8-21　この節の構成（Survivor領域の年齢分布情報出力機能）

分類 | タイトル | 参照先
解説 | Survivor領域の年齢分布情報出力機能の概要 | 8.11.1
Survivor領域の年齢分布情報の出力形式と出力例 | 8.11.2
設定 | 実行環境での設定 | 8.11.3
注意事項 | Survivor領域の年齢分布情報出力機能使用時の注意事項 | 8.11.4

注　「実装」および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.11.1　Survivor領域の年齢分布情報出力機能の概要

8.11.2　Survivor領域の年齢分布情報の出力形式と出力例

8.11.3　実行環境での設定

8.11.4　Survivor領域の年齢分布情報出力機能使用時の注意事項

8.11.1　Survivor領域の年齢分布情報出力機能の概要

日立固有のJavaVMでは，多くのトラブルシュート情報が取得できるように，ログの出力内容が標準のJavaVMよりも拡張されています。日立固有のJavaVMログは，日立JavaVMログファイルに出力されます。Survivor領域の年齢分布情報出力機能は，コピーガーベージコレクション実行時，日立JavaVMログファイルに，Survivor領域のJavaオブジェクトの年齢分布情報を出力できる機能です。この情報を使用すると，Survivor領域のオブジェクトの使用状況が調査でき，Survivor領域のメモリサイズのチューニングができます。Survivor領域のメモリサイズのチューニングについては，マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「7.5.1　Javaヒープ内のSurvivor領域のメモリサイズの見積もり」を参照してください。

Survivor領域の年齢分布情報は，-XX:+PrintTenuringDistributionを指定しても出力できますが，Survivor領域の年齢分布情報出力機能を使用すると，Survivor領域の年齢分布情報に加えて日時も出力できます。また，出力先が日立JavaVMログファイルなので，ほかのログとの同期が取れます。

日立固有のJavaVMログファイルについては，「4.10　日立固有のJavaVMログ（日立JavaVMログファイル）」を参照してください。また，Java VMのチューニングについては，マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「7.　JavaVMのメモリチューニング」を参照してください。

8.11.2　Survivor領域の年齢分布情報の出力形式と出力例

Survivor領域の年齢分布情報は，コピーガーベージコレクション発生時に，コピーガーベージコレクションのログのあとに続けて出力されます。Survivor領域の年齢分布情報の出力形式と出力例を次に示します。

出力形式

[PTD]<date>[Desired survivor:size bytes][New threshold:value][MaxTenuringThreshold: max_value][age1:total_age1][age2:total_age2]...[agen:total_agen]

説明

PTD：Survivor領域の年齢情報であることを示す識別子

date：GCが発生した日時（-XX:+HitachiVerboseGCPrintDate（拡張verbosegc情報日付出力オプション）を指定した場合だけ出力）※1

size：Survivor領域のサイズ（単位：バイト）

value：次回のガーベージコレクション発生時にTenured領域へ移動するオブジェクトの年齢のしきい値

max_value：-XX:MaxTenuringThresholdの指定値※2

total_age1：1歳のオブジェクトが使用しているメモリサイズの合計（単位：バイト）

total_age2：1歳から2歳までのオブジェクトが使用しているメモリサイズの合計（単位：バイト）

total_agen：1歳からn歳までのオブジェクトが使用しているメモリサイズの合計（単位：バイト）※3

注

-XX:+HitachiCommaVerboseGCを指定している場合は，次の形式で出力されます。

PTD,date,size,value,max_value,total_age1,total_age2,...,total_agen

注※1

対応するコピーガーベージコレクションのログと同じ時刻が表示されます。

注※2

-XX:MaxTenuringThresholdの指定値には，コピーガーベージコレクション実行時に，From空間とTo空間でJavaオブジェクトを入れ替える回数のしきい値を設定します。

注※3

存在するオブジェクトを最小年齢から最大年齢まで順番に表示します。表示されるオブジェクトの最大年齢がmax_valueの値に近いと，寿命の長いオブジェクトが存在することを示します。

出力例

[VGC]<Wed May 28 11:45:23 2008>[GC 648K->136K(1984K), 0.0013020 secs][DefNew::Eden: 512K->0K(512K)][DefNew::Survivor: 0K->0K(64K)][Tenured: 136K->136K(1408K)][Perm: 1890K->1890K(8192K)][cause:ObjAllocFail][User: 0.0000000 secs][Sys: 0.0000000 secs]
[PTD]<Wed May 28 11:45:23 2008>[Desired survivor:5467547 bytes][New  threshold:30][MaxTenuringThreshold:31][age1:1357527][age2:1539661]

この出力例では，次の内容が確認できます。

出力契機は，2008年5月28日(水)11時45分23秒に発生したコピーガーベージコレクションです。

Survivor領域のメモリサイズは5,467,547バイトです。Survivor領域のオブジェクトは2歳までです。1歳のオブジェクトが使用しているメモリサイズは1,357,527バイト，1歳から2歳までのオブジェクトが使用しているメモリサイズは1,539,661バイトです。

8.11.3　実行環境での設定

Survivor領域の年齢分布情報出力機能を使用する場合，次の設定が必要です。

J2EEサーバ

バッチサーバ

Javaアプリケーション

＜この項の構成＞

(1)　J2EEサーバの設定

(2)　バッチサーバの設定

(3)　Javaアプリケーションの設定

(1)　J2EEサーバの設定

J2EEサーバの設定は，簡易構築定義ファイルで実施します。Survivor領域の年齢分布情報出力機能の定義は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にJavaVM起動パラメタ（add.jvm.arg）で指定します。指定するパラメタ値を次に示します。

-XX:+HitachiVerboseGCPrintTenuringDistribution
Survivor領域の年齢分布情報を日立JavaVMログファイルへ出力します。デフォルト値は，-XX:-HitachiVerboseGCPrintTenuringDistributionです。

(2)　バッチサーバの設定

バッチサーバの設定は，簡易構築定義ファイルで実施します。Survivor領域の年齢分布情報出力機能の定義は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にJavaVM起動パラメタ（add.jvm.arg）で指定します。指定するパラメタ値を次に示します。

-XX:+HitachiVerboseGCPrintTenuringDistribution
Survivor領域の年齢分布情報を日立JavaVMログファイルへ出力します。デフォルト値は，-XX:-HitachiVerboseGCPrintTenuringDistributionです。

(3)　Javaアプリケーションの設定

Javaアプリケーションの設定は，usrconf.cfg（Javaアプリケーション用オプション定義ファイル）で実施します。Survivor領域の年齢分布情報出力機能の定義は，usrconf.cfgのadd.jvm.argキーで指定します。指定するパラメタ値を次に示します。

-XX:+HitachiVerboseGCPrintTenuringDistribution
Survivor領域の年齢分布情報を日立JavaVMログファイルへ出力します。デフォルト値は，-XX:-HitachiVerboseGCPrintTenuringDistributionです。

8.11.4　Survivor領域の年齢分布情報出力機能使用時の注意事項

Survivor領域の年齢分布情報出力機能を使用すると，コピーガーベージコレクション実行時のログが使用しない場合に比べて倍以上に増えます。この機能は，Survivor領域のチューニング時だけに使用することをお勧めします。

8.12　ファイナライズ滞留解消機能

この節では，ファイナライズ滞留解消機能について説明します。

ファイナライズ滞留解消機能を使用すると，ファイナライズ処理の滞留を解消でき，OS資源の解放遅れなどの発生を抑止できます。

この節の構成を次の表に示します。

表8-22　この節の構成（ファイナライズ滞留解消機能）

分類 | タイトル | 参照先
解説 | ファイナライズ滞留解消機能の概要 | 8.12.1
ファイナライズ滞留解消機能使用時の出力情報 | 8.12.2
設定 | 実行環境での設定 | 8.12.3
注意事項 | ファイナライズ滞留解消機能使用時の注意事項 | 8.12.4

注　「実装」および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.12.1　ファイナライズ滞留解消機能の概要

8.12.2　ファイナライズ滞留解消機能使用時の出力情報

8.12.3　実行環境での設定

8.12.4　ファイナライズ滞留解消機能使用時の注意事項

8.12.1　ファイナライズ滞留解消機能の概要

finalize()メソッドでOS資源の解放処理を定義しているアプリケーションでは，ファイナライズ処理が滞留して，OS資源の解放遅れが発生することがあります。ファイナライズ滞留解消機能を使用すると，JavaVM内でファイナライズ処理が滞留している状態を検知して，滞留しているファイナライズ処理を解消します。

ファイナライズ滞留解消機能では，ファイナライズ滞留を検知するために，Java起動時にFinalizerThreadを監視するファイナライズ処理監視スレッドを生成します。FinalizerThreadは，Java実行時に常に一つあり，オブジェクトのfinalize()メソッドを一つずつ処理するスレッドです。

ファイナライズ処理監視スレッドでは，FinalizerThreadで処理しているオブジェクトを定期的に監視します。次の条件を満たす場合，ファイナライズ処理が滞留していると見なして，新たにファイナライズスレッドを生成します。

FinalizerThreadでオブジェクトのファイナライズ処理が進んでいない。

ファイナライズキューにオブジェクトがある。

FinalizerThreadとファイナライズスレッドの両方で，ファイナライズ処理を実行して，滞留しているファイナライズ処理の解消を促します。なお，ファイナライズスレッドは，ファイナライズキューが空になると終了します。

8.12.2　ファイナライズ滞留解消機能使用時の出力情報

ファイナライズ滞留解消機能では，次に示すタイミングでメッセージを標準出力に出力します。

ファイナライズ処理の滞留を検知して，ファイナライズスレッドを新たに生成する場合

生成したファイナライズスレッドが終了した場合

それぞれのタイミングで出力するメッセージの形式と出力例を次に示します。

ファイナライズ処理の滞留を検知して，ファイナライズスレッドを新たに生成する場合
ファイナライズ処理の滞留を検知して，ファイナライズスレッドを新たに生成する場合に出力されるメッセージの形式を次に示します。

# FinalizerWatcherThread: Create: create secondary finalizer thread. [queue length = queue] <date>

説明

queue：ファイナライズキューの要素数

date：ファイナライズスレッドを新たに生成した日時

出力例を次に示します。

# FinalizerWatcherThread: Create: create secondary finalizer thread. [queue length = 128] <Mon May 26 18:00:36 JST 2008>

生成したファイナライズスレッドが終了した場合
生成したファイナライズスレッドが終了した場合に出力されるメッセージの形式を次に示します。

# FinalizerWatcherThread: Finish: secondary finalizer thread is finished. <date>

説明

date：生成したファイナライズスレッドが終了した日時

出力例を次に示します。

# FinalizerWatcherThread: Finish: secondary finalizer thread is finished.  <Mon May 26 20:12:26 JST 2008>

8.12.3　実行環境での設定

ファイナライズ滞留解消機能を使用する場合，次の設定が必要です。

J2EEサーバ

バッチサーバ

Javaアプリケーション

＜この項の構成＞

(1)　J2EEサーバの設定

(2)　バッチサーバの設定

(3)　Javaアプリケーションの設定

(1)　J2EEサーバの設定

J2EEサーバの設定は，簡易構築定義ファイルで実施します。ファイナライズ滞留解消機能の定義は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にJavaVM起動パラメタ（add.jvm.arg）で指定します。指定するパラメタ値を次に示します。

-DJP.co.Hitachi.soft.jvm.autofinalizer = true
ファイナライズ滞留解消機能を有効にします。この機能を有効にすると，Java起動時に監視スレッドを生成します。無効にする場合は，falseを指定します。デフォルト値は，trueです。

(2)　バッチサーバの設定

バッチサーバの設定は，簡易構築定義ファイルで実施します。ファイナライズ滞留解消機能の定義は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にJavaVM起動パラメタ（add.jvm.arg）で指定します。指定するパラメタ値を次に示します。

-DJP.co.Hitachi.soft.jvm.autofinalizer = true
ファイナライズ滞留解消機能を有効にします。この機能を有効にすると，Java起動時に監視スレッドを生成します。無効にする場合は，falseを指定します。デフォルト値は，trueです。

(3)　Javaアプリケーションの設定

Javaアプリケーションの設定は，usrconf.cfg（Javaアプリケーション用オプション定義ファイル）で実施します。ファイナライズ滞留解消機能の定義は，usrconf.cfgのadd.jvm.argキーで指定します。指定するパラメタ値を次に示します。

-DJP.co.Hitachi.soft.jvm.autofinalizer = true
ファイナライズ滞留解消機能を有効にします。この機能を有効にすると，Java起動時に監視スレッドを生成します。無効にする場合は，falseを指定します。デフォルト値は，trueです。

8.12.4　ファイナライズ滞留解消機能使用時の注意事項

ファイナライズ滞留解消機能を使用する場合の注意事項を次に示します。

JDKのバージョンがJDK 6の場合，ファイナライズ滞留解消機能は使用できません。

JavaVM起動パラメタの値は，Java起動時に参照されます。このため，JavaVM実行中にjava.lang.System.setProperty()メソッドなどで，JavaVM起動パラメタの値を変更しても，ファイナライズ滞留解消機能は有効になりません。

JavaVM起動パラメタが複数指定された場合，最後に指定されたパラメタの値が有効になります。

ファイナライズ滞留解消機能では，ファイナライズの滞留を監視するための常駐スレッドを一つ生成します。また，ファイナライズの滞留を検知すると，滞留を解消するためのスレッドを一つ生成します。ファイナライズの滞留が発生してもシステムに影響しない場合は，add.jvm.argパラメタまたはadd.jvm.argキーに「-DJP.co.Hitachi.soft.jvm.autofinalizer = false」を指定して，ファイナライズ滞留解消機能を無効にすることで，ファイナライズの滞留を監視するスレッドとファイナライズの滞留を解消するスレッドの生成を抑止できます。

8.13　hndlwrap機能

この節では，hndlwrap機能について説明します。

hndlwrap機能は，ログオフ時のJavaVMのログオフイベントの発生を抑止できます。なお，この機能はWindowsの場合だけ使用できます。

この節の構成を次の表に示します。

表8-23　この節の構成（hndlwrap機能）

分類 | タイトル | 参照先
解説 | hndlwrap機能の概要 | 8.13.1
注意事項 | hndlwrap機能使用時の注意事項 | 8.13.2

注　「実装」，「設定」および「運用」について，この機能固有の説明はありません。

＜この節の構成＞

8.13.1　hndlwrap機能の概要

8.13.2　hndlwrap機能使用時の注意事項

8.13.1　hndlwrap機能の概要

hndlwrap機能は，ログオフした場合にログオフイベント，およびウィンドウクローズが発生しないようにする機能です。この機能は，Java Virtual Machine Tool Interface（JVMTI），およびJava Virtual Machine Profiler Interface（JVMPI）で，指定するオプションが異なります。

オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「19.5　Cosminexusで指定できるJava HotSpot VMのオプション」を参照してください。

JVMTI，およびJVMPIそれぞれについて説明します。

＜この項の構成＞

(1)　JVMTIを使ってhndlwrap機能を使用する場合

(2)　JVMPIを使ってhndlwrap機能を使用する場合

(1)　JVMTIを使ってhndlwrap機能を使用する場合

「hndlwrap2.dll」をJVMTIインタフェースを通してローディングすると，クラスの準備イベントを検出してログオフとウィンドウクローズのイベントを無視するイベントハンドラがインストールされます。これによって，-agentlib:hndlwrap2オプションを指定してhndlwrap機能を実行した場合には，ログオフ後もコマンドを動作させることができます。

(2)　JVMPIを使ってhndlwrap機能を使用する場合

「hndlwrap.dll」をJVMPIインタフェースを通してローディングすると，初回のCLASS_LOADイベントを検出して，ログオフとウィンドウクローズのイベントを無視するイベントハンドラがインストールされます。これによって，-Xrunhndlwrapオプションを指定してhndlwrap機能を実行した場合には，ログオフ後もコマンドを動作させることができます。

なお，-XrunhndlwrapはJDK 5.0までサポートされています。JDK 6以降ではサポートされていません。

8.13.2　hndlwrap機能使用時の注意事項

hndlwrap機能使用時の注意事項を次に示します。

-XX:+EagerXrunInitオプションを指定したときは，-Xrunhndlwrapオプションは無効になります。

コマンドプロンプト上でhndlwrap機能を使用したJavaアプリケーションを実行している場合にログオフすると，エラー用のポップアップが表示され，ログオフできません。

-XrunhndlwrapオプションはほかのJVMPIプログラムと同時に実行できません。実行した場合の動作は保証されません。

-agentlib:hndlwrap2オプションはほかのJVMTIプログラムと同時に実行できません。実行した場合の動作は保証されません。

-Xrunhndlwrapオプション，および-agentlib:hndlwrap2オプションは同時に指定できません。

8.14　JITコンパイル時のCヒープ確保量の上限値設定機能

JavaVMがサポートしているJust In Time方式でのコンパイル（JITコンパイル）では，コンパイル実行中にCヒープを使用します。処理数が多いメソッドや大量のメソッドに対してJITコンパイルを実行した場合，コンパイル処理のために確保されるCヒープのサイズも多大になり，Cヒープ不足が発生することがあります。この場合，JavaVMの強制終了やJ2EEサーバの異常終了などのトラブルが発生して，システムが全面停止してしまうおそれがあります。

このような問題の発生を防止するために，JITコンパイルで使用するCヒープのサイズに上限値を設定できます。上限値を超えた場合は，JITコンパイルが中止され，以降のコンパイルはインタプリタ方式で実行されます。これによって，JavaVMの強制終了を防ぎ，システムの停止を抑止できます。

JITコンパイル時のCヒープ確保量の上限は，-XX:HitachiJITCompileMaxMemorySizeオプションで指定します。-XX:HitachiJITCompileMaxMemorySizeオプションの詳細は，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:HitachiJITCompileMaxMemorySize（JITコンパイル時の確保メモリ上限値指定オプション）」を参照してください。

8.15　スレッド数の上限値設定機能

アプリケーションで使用するスレッド数が多くなると，Cヒープで使用するメモリ使用量が増加します。メモリ使用量の増加に伴いCヒープ不足が発生した場合，JavaVMの強制終了，J2EEサーバの異常終了などのトラブルが発生して，システムが全面停止してしまうおそれがあります。

このような問題の発生を防止するために，使用できるスレッド数に上限値を設定できます。あらかじめ使用するスレッド数の上限を把握し，その数を基にCヒープに割り当てるメモリサイズを決定することで，Cヒープ不足の発生を防止します。なお，設定した上限値を超えたスレッドが生成された場合は，例外がスローされます。アプリケーションでこの例外をキャッチして，適切な対処をすることで，システムの停止を抑止できます。

スレッド数の上限は，-XX:HitachiThreadLimitオプションで指定します。-XX:HitachiThreadLimitオプションの詳細は，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:HitachiThreadLimit（スレッド数の上限値指定オプション）」を参照してください。

9.　旧バージョンとの互換用機能（ベーシックモード）

旧バージョンとの互換用機能としてのサーバの動作モードには，ベーシックモードとサーブレットエンジンモードがあります。この章では，ベーシックモードについて説明します。

＜この章の構成＞

9.1　ベーシックモードの概要

9.2　使用できる機能の一覧

9.3　ベーシックモードでのリソース接続

9.4　ベーシックモードの利用方法

9.5　プロセスの依存関係とプロセスの再起動方法

9.6　データソースからDB Connectorへの移行方法

9.1　ベーシックモードの概要

ベーシックモードは，J2EEサーバモードの一つです。単一のデータベースだけのリソースをトランザクションで使用するシステムに適用できます。旧バージョンとの互換性を重視したモードです。

なお，ベーシックモードは，1.4モード（06-71までのスタンダードモードまたはアドバンスドモード）に比べて，使用できる機能に制限があります。J2EEサーバモードを使用する場合は，1.4モードを使用することを推奨します。

参考

ベーシックモードから1.4モードへの変更

すでにベーシックモードを使用している場合も，1.4モードへの変更ができます。変更する場合は，次の点に留意してください。

サーバの環境をいったん削除してから，再度サーバの環境をセットアップし直す必要があります。

1.4モードを使用する場合は，トランザクション管理サーバなどが必要となるため，ベーシックモードに比べ，多量のCPU/メモリリソースが必要となります。

また，動作モードの変更によって，変更前の動作モードで使用できたプロパティが使用できなくなることがありますので注意してください。

9.2　使用できる機能の一覧

ベーシックモードで使用できるJava EEおよびJ2EEの機能，ならびにアプリケーションサーバの機能について一覧に示します。

＜この節の構成＞

9.2.1　使用できるJava EEおよびJ2EEの機能

9.2.2　使用できるアプリケーションサーバの機能

9.2.1　使用できるJava EEおよびJ2EEの機能

ベーシックモードで使用できるJava EEおよびJ2EEの機能について，次の表に示します。

表9-1　互換用の動作モードで使用できるJava EEおよびJ2EEの機能

Java EEおよびJ2EEの機能
ベーシックモード

Servlet 2.2
○

Servlet 2.3
○

Servlet 2.4
×

Servlet 2.5
×

JSP 1.2
○

JSP 2.0
×

JSP 2.1
×

EJB 2.0
○

Message-driven Bean
×

ローカルインタフェース
×

CMP 1.1
○

CMP 2.0
×

EJB 2.1
×

EJB 3.0
×

ビジネスインタフェース
アノテーション
DI
×

JDBC 2.0コア
JDBC 2.0オプションパッケージ
○

JDBC 3.0
×

JMS 1.0.2
×

JMS 1.1
×

Connector 1.0（JCA 1.0）
×

Connector 1.5（JCA 1.5）
×

JTA 1.0.1
○

local
○

global
×

JPA 1.0
×

JavaMail 1.2
○※

JavaMail 1.3
×

Timer and Work Manager for Application Servers
×

（凡例）　○：使用できる　　×：使用できない

注※

JavaMailで使用できるサービスプロバイダはSMTPだけです。メールの送信機能だけを使用できます（メールの受信機能は使用できません）。

9.2.2　使用できるアプリケーションサーバの機能

ベーシックモードでの，アプリケーションサーバの各機能の使用可否について説明します。

＜この項の構成＞

(1)　Webコンテナの機能

(2)　Webサーバ連携の機能

(3)　インプロセスHTTPサーバの機能

(4)　EJBコンテナの機能

(5)　EJBクライアントの機能

(6)　ネーミング管理の機能

(7)　リソース接続とトランザクション管理の機能

(8)　OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

(9)　アプリケーションサーバで使用するJPAの機能

(10)　Cosminexus JPAプロバイダの機能

(11)　Cosminexus JMSプロバイダの機能

(12)　セキュリティ管理の機能

(13)　アノテーションの機能

(14)　J2EEアプリケーションの形式とデプロイの機能

(15)　コンテナ拡張ライブラリの機能

(16)　バッチアプリケーション実行時に使用する機能

(17)　CTMによるEnterprise Beanのスケジューリング機能

(18)　そのほかの拡張機能

(19)　システムの日常運用を支援する機能

(20)　システムの保守を支援する機能

(21)　J2EEアプリケーションの運用機能

(22)　システムの監査を支援する機能

(23)　JP1連携による運用管理機能

(24)　クラスタソフトウェアとの連携による系切り替え機能

(25)　システムの保守のための機能

(26)　日立固有のJavaVMの機能

(1)　Webコンテナの機能

Webコンテナの機能のベーシックモードでの使用可否を次の表に示します。Webコンテナの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.　Webコンテナ」を参照してください。

表9-2　Webコンテナの機能のベーシックモードでの使用可否

Webコンテナの機能 | ベーシックモードでの使用可否
Webアプリケーションの実行機能 | ◎
JSPの実行機能 | ×
JSPデバッグ機能 | ×
JSPの事前コンパイルとコンパイル結果の保持 | JSP事前コンパイル機能 | ×
JSP事前コンパイルを使用しない場合のJSPコンパイル結果 | ◎
デフォルトの文字エンコーディング設定機能 | ◎
セッション管理機能 | Webクライアントが保持する無効なセッションIDの削除 | ◎
HttpSessionオブジェクト数の上限値の設定 | ◎
セッションIDおよびCookieへのサーバIDの付加 | ◎
アプリケーションのイベントリスナ | ○
リクエストおよびレスポンスのフィルタリング | ○
HTTPレスポンス圧縮機能 | ○
EJBコンテナとの連携 | ◎
データベースとの接続 | △
Webコンテナによるスレッドの作成 | ◎
ユーザスレッドの使用 | △※
同時実行スレッド数の制御 | Webコンテナ単位での同時実行スレッド数の制御 | ◎
Webアプリケーション単位での同時実行スレッド数の制御 | ◎
URLグループ単位での同時実行スレッド数の制御 | ×
同時実行スレッド数の動的変更 | ◎
エラーページのカスタマイズ | ◎
静的コンテンツのキャッシュ | ◎
簡易Webサーバ機能 | 簡易WebサーバでのIPアドレス指定（バインド先アドレス設定機能） | ◎
簡易Webサーバへのアクセスの制御 | ◎
URIのデコード機能 | ◎
Webアプリケーションのバージョン設定機能 | ◎

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※

ユーザスレッドで使用できる機能のうち，ベーシックモードで使用できる機能だけが使用できます。

(2)　Webサーバ連携の機能

Webサーバ連携の機能のベーシックモードでの使用可否を次の表に示します。Webサーバ連携の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.　Webサーバ連携」を参照してください。

表9-3　Webサーバ連携の機能のベーシックモードでの使用可否

Webサーバ連携の機能 | ベーシックモードでの使用可否
Webサーバ（リダイレクタ）によるリクエストの振り分け | ◎
通信タイムアウト（Webサーバ連携） | ◎
IPアドレスの指定（Webサーバ連携） | ◎
エラーページのカスタマイズ（Webサーバ連携） | ◎
ドメイン名指定でのトップページの表示 | ○
Webコンテナへのゲートウェイ情報の通知 | ○

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(3)　インプロセスHTTPサーバの機能

インプロセスHTTPサーバの機能のベーシックモードでの使用可否を次の表に示します。インプロセスHTTPサーバの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.　インプロセスHTTPサーバ」を参照してください。

表9-4　インプロセスHTTPサーバの機能のベーシックモードでの使用可否

インプロセスHTTPサーバの機能 | ベーシックモードでの使用可否
Webクライアントからの接続数の制御 | ◎
リクエスト処理スレッド数の制御 | ◎
Webクライアントからの同時接続数の制御によるリクエストの流量制御 | ◎
同時実行スレッド数の制御によるリクエストの流量制御 | ◎
リダイレクトによるリクエストの振り分け | ◎
Persistent ConnectionによるWebクライアントとの通信制御 | ◎
通信タイムアウト（インプロセスHTTPサーバ） | ◎
IPアドレス指定（インプロセスHTTPサーバ） | ◎
アクセスを許可するホストの制限によるアクセス制御 | ◎
リクエストデータのサイズの制限によるアクセス制御 | ◎
有効なHTTPメソッドの制限によるアクセス制御 | ◎
HTTPレスポンスを使用したWebクライアントへのレスポンスのカスタマイズ | ◎
エラーページのカスタマイズ（インプロセスHTTPサーバ） | ◎
Webコンテナへのゲートウェイ情報の通知 | ◎
ログ・トレースの出力 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(4)　EJBコンテナの機能

EJBコンテナの機能のベーシックモードでの使用可否を次の表に示します。EJBコンテナの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「2.　EJBコンテナ」を参照してください。

表9-5　EJBコンテナの機能のベーシックモードでの使用可否

EJBコンテナの機能 | ベーシックモードでの使用可否
Enterprise Beanの実行 | ○
EJB仕様準拠のチェック | ○
CMPフィールドとデータ型のマッピング | ○
EJBコンテナのJNDI名前空間へのリファレンス登録 | ○
外部リソースとの接続 | ○
Enterprise Beanでのトランザクション管理 | ○※
Entity Beanのキャッシュモデル（コミットオプション指定） | ○
Stateless Session Bean，Entity Beanのプールの管理 | ◎
Enterprise Beanへのアクセス制御 | ○
EJBコンテナでのタイムアウトの設定 | Stateful Session Beanのタイムアウト | ◎
Entity BeanのEJBオブジェクトのタイムアウト | ◎
インスタンス取得待ちのタイムアウト | ×
RMI-IIOP通信のタイムアウト | ◎
Timer Serviceの機能 | ×
EJBのリモートインタフェースの呼び出し | ◎
EJBコンテナの通信ポートとIPアドレスの固定（TPBrokerのオプション） | ◎
インターセプタの使用 | ×
ジェネリクスの使用 | ×

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

注※

SessionSynchronizationを実装したStateful Session Beanへのトランザクション属性には，Required，RequiresNewおよびMandatoryだけが指定できます。

(5)　EJBクライアントの機能

EJBクライアントの機能のベーシックモードでの使用可否を次の表に示します。EJBクライアントの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.　EJBクライアント」を参照してください。

表9-6　EJBクライアントの機能のベーシックモードでの使用可否

EJBクライアントの機能 | ベーシックモードでの使用可否
EJBクライアントアプリケーションの開始 | ◎
Enterprise Beanの呼び出し | ◎
EJBクライアントアプリケーションでのトランザクションの実装 | ◎
EJBクライアントアプリケーションでのセキュリティの実装 | ◎
RMI-IIOPスタブ，インタフェースの取得 | ◎
EJBクライアントアプリケーションのシステムログ出力 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(6)　ネーミング管理の機能

ネーミング管理の機能のベーシックモードでの使用可否を次の表に示します。ネーミング管理の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「2.　ネーミング管理」を参照してください。

表9-7　ネーミング管理の機能のベーシックモードでの使用可否

ネーミング管理の機能 | ベーシックモードでの使用可否
JNDI名前空間へのオブジェクトのバインドとルックアップ | ◎
Enterprise BeanまたはJ2EEリソースへの別名付与（ユーザ指定名前空間機能） | ◎※
ラウンドロビンポリシーによるCORBAネーミングサービスの検索 | ◎
ネーミング管理機能でのキャッシング | ◎
CORBAネーミングサービスの切り替え | ◎
EJBホームオブジェクトリファレンスの再利用（EJBホームオブジェクトへの再接続機能） | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

注※

リモートホームインタフェースに対する別名だけを使用できます。

ローカルホームインタフェース，リモートビジネスインタフェースまたはローカルビジネスインタフェースに対しても別名は設定できます。ただし，ベーシックモードではこれらのインタフェースがサポートされていないため，設定した別名は使用できません。

(7)　リソース接続とトランザクション管理の機能

リソース接続とトランザクション管理の機能のベーシックモードでの使用可否を次の表に示します。なお，接続できるリソースやリソース接続で使用できる機能については，「9.3　ベーシックモードでのリソース接続」を参照してください。リソース接続とトランザクション管理の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.　リソース接続とトランザクション管理」を参照してください。

表9-8　リソース接続とトランザクション管理の機能のベーシックモードでの使用可否

リソース接続とトランザクション管理の機能 | ベーシックモードでの使用可否
コネクションプーリング | ◎※1
コネクションプールのウォーミングアップ | ×
コネクションプール数調節機能 | ×
コネクションシェアリング・アソシエーション | コネクションシェアリング | ○
コネクションアソシエーション | ×
ステートメントプーリング | ×
ライトトランザクション | ×
インプロセストランザクションサービス | ×
DataSourceオブジェクトのキャッシング | ◎
DB Connectorのコンテナ管理でのサインオンの最適化 | －
コネクションの障害検知 | ×
コネクション枯渇時のコネクション取得待ち | ×
コネクションの取得リトライ | ◎※1
コネクションプールの情報表示 | ◎
コネクションプールのクリア | ◎
コネクションの自動クローズ | Webコンテナによるコネクション自動クローズ | ×
EJBコンテナによるコネクション自動クローズ | ○
コネクションの強制クローズ | ○※2
コネクションスイーパ | ◎
トランザクションタイムアウトとステートメントキャンセル | ○※3
トランザクションリカバリ | ×
障害調査用SQLの出力 | ×
オブジェクトの自動クローズ | ○
リソースアダプタのライフサイクル管理 | ×
リソースアダプタのワーク管理 | ×
メッセージインフロー | ×
管理対象オブジェクトのルックアップ | ×
コネクション定義の複数指定 | ×
コネクションプールのクラスタ化（コネクションプールの一時停止・再開・状態表示） | ×
リソースへの接続テスト | ◎※4

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

－：該当しない

注※1　データソースを利用する場合に使用できます。詳細については，「9.3.3　データソースによるデータベースへの接続で使用できる機能」を参照してください。

注※2　コネクションの強制クローズについては，「9.3.3　データソースによるデータベースへの接続で使用できる機能」を参照してください。

注※3　トランザクションタイムアウトは使用できます。詳細については，「9.3.3　データソースによるデータベースへの接続で使用できる機能」を参照してください。

注※4　データソースおよびSMTPサーバを利用する場合に使用できます。詳細については，「9.3.4　リソースへの接続テスト」を参照してください。

(8)　OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

TP1インバウンド連携機能は，ベーシックモードでは使用できません。

(9)　アプリケーションサーバで使用するJPAの機能

アプリケーションサーバで使用するJPAの機能は，ベーシックモードでは使用できません。

(10)　Cosminexus JPAプロバイダの機能

Cosminexus JPAプロバイダの機能は，ベーシックモードでは使用できません。

(11)　Cosminexus JMSプロバイダの機能

Cosminexus JMSプロバイダの機能は，ベーシックモードでは使用できません。

(12)　セキュリティ管理の機能

セキュリティ管理の機能のベーシックモードでの使用可否を次の表に示します。セキュリティ管理の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「9.　セキュリティ管理」を参照してください。

表9-9　セキュリティ管理の機能のベーシックモードでの使用可否

セキュリティ管理の機能 | ベーシックモードでの使用可否
SSL使用による認証情報とデータの暗号化 | ◎
ロールに基づくWebコンテナのユーザ認証 | ◎
SecurityManagerによるWebコンテナの実行時の保護 | ◎
セキュリティアイデンティティを使用した認証 | △※

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

注※　サーブレット／JSPからEJBを呼び出す際に，web.xmlに指定した<run-as>タグの情報は使用されません。

(13)　アノテーションの機能

アノテーションの機能は，ベーシックモードでは使用できません。

(14)　J2EEアプリケーションの形式とデプロイの機能

J2EEアプリケーションの形式とデプロイの機能のベーシックモードでの使用可否を次の表に示します。J2EEアプリケーションの形式とデプロイの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.　J2EEアプリケーションの形式とデプロイ」を参照してください。

表9-10　J2EEアプリケーションの形式とデプロイの機能のベーシックモードでの使用可否

J2EEアプリケーションの形式とデプロイの機能 | ベーシックモードでの使用可否
アーカイブ形式によるJ2EEアプリケーションのデプロイ | ○
展開ディレクトリ形式によるJ2EEアプリケーションのデプロイ | ×
J2EEアプリケーションの入れ替え | ◎△※1
J2EEアプリケーションのリデプロイ | ◎
J2EEアプリケーションの更新検知とリロード | ×
Webアプリケーションの更新検知とリロード | ×
リソースアダプタを含むJ2EEアプリケーションの操作 | ○※2

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※1　機能差については，「(21)　J2EEアプリケーションの運用機能」を参照してください。

注※2　リソースアダプタを含むJ2EEアプリケーションのインポートはできますが，J2EEアプリケーションの開始はできません。また，開始状態のJ2EEアプリケーションをインポートした場合，J2EEアプリケーションにリソースアダプタが含まれている場合は開始できません。

(15)　コンテナ拡張ライブラリの機能

注意

コンテナ拡張ライブラリには次のアクセス権が付与されます。アクセス権は変更できません。

java.security.AllPermission

ただし，java.lang.RuntimePermissionのsetSecurityManagerアクセス権は付与されません。

コンテナ拡張ライブラリの機能のベーシックモードでの使用可否を次の表に示します。コンテナ拡張ライブラリの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「13.　コンテナ拡張ライブラリ」を参照してください。

表9-11　コンテナ拡張ライブラリの機能のベーシックモードでの使用可否

コンテナ拡張ライブラリの機能 | ベーシックモードでの使用可否
コンテナ拡張ライブラリ | ◎
サーバ起動・停止フック機能 | ◎
スマートエージェント経由でのCORBAオブジェクトの呼び出し | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(16)　バッチアプリケーション実行時に使用する機能

バッチアプリケーション実行時に使用する機能は，ベーシックモードでは使用できません。

(17)　CTMによるEnterprise Beanのスケジューリング機能

CTMによるEnterprise Beanのスケジューリング機能のベーシックモードでの使用可否を次の表に示します。CTMによるEnterprise Beanのスケジューリング機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「3.　CTMによるリクエストのスケジューリングと負荷分散」を参照してください。

表9-12　CTMによるEnterprise Beanのスケジューリング機能のベーシックモードでの使用可否

CTMによるEnterprise Beanのスケジューリング機能 | ベーシックモードでの使用可否
リクエストの流量制御 | ◎
リクエストの優先制御 | ◎
リクエストの同時実行数の動的変更 | ◎
リクエストの閉塞制御 | ◎
リクエストの負荷分散 | ◎
リクエストのキューの滞留監視 | ◎
CTMのゲートウェイ機能を利用したTPBroker／OTMクライアントとの接続 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(18)　そのほかの拡張機能

そのほかの拡張機能のベーシックモードでの使用可否を次の表に示します。そのほかの拡張機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「1.2.3　そのほかの拡張機能」を参照してください。

表9-13　そのほかの拡張機能のベーシックモードでの使用可否

そのほかの拡張機能 | ベーシックモードでの使用可否
バッチアプリケーションのスケジューリング | ×
セッションフェイルオーバ機能（データベースセッションフェイルオーバ） | ×
セッションフェイルオーバ機能（メモリセッションフェイルオーバ） | ◎
明示管理ヒープ機能を使用したフルガーベージコレクションの抑止 | ◎
クライアント性能の測定と分析 | ×
統合ユーザ管理 | ◎
ユーザログ出力 | ◎
スレッド非同期並行処理 | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

(19)　システムの日常運用を支援する機能

システムの日常運用を支援する機能のベーシックモードでの使用可否を次の表に示します。システムの日常運用を支援する機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.1　システムの日常運用を支援する機能」を参照してください。

表9-14　システムの日常運用を支援する機能のベーシックモードでの使用可否

システムの日常運用を支援する機能 | ベーシックモードでの使用可否
システムの起動・停止 | ◎△※
稼働情報の監視（稼働情報収集機能） | ×
リソースの枯渇監視 | ×
運用管理コマンドによる稼働情報の出力 | ◎
Managementイベントの通知とManagementアクションによる処理の自動実行 | ×
CTMの稼働統計情報の収集 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※　プロセスの依存関係とプロセスの再起動方法がJ2EEサーバモードの場合と異なります。詳細については，「9.5　プロセスの依存関係とプロセスの再起動方法」を参照してください。

(20)　システムの保守を支援する機能

システムの保守を支援する機能のベーシックモードでの使用可否を次の表に示します。システムの保守を支援する機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.2　システムの保守を支援する機能」を参照してください。

表9-15　システムの保守を支援する機能のベーシックモードでの使用可否

システムの保守を支援する機能 | ベーシックモードでの使用可否
コンソールログの出力 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(21)　J2EEアプリケーションの運用機能

J2EEアプリケーションの運用機能のベーシックモードでの使用可否を次の表に示します。J2EEアプリケーションの運用機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.3　J2EEアプリケーションの運用機能」を参照してください。

表9-16　J2EEアプリケーションの運用機能のベーシックモードでの使用可否

J2EEアプリケーションの運用機能 | ベーシックモードでの使用可否
J2EEアプリケーションの実行時間の監視とキャンセル | ×
J2EEアプリケーションのサービスの閉塞 | ◎
J2EEアプリケーションの停止 | 通常停止 | ○
強制停止 | ×
J2EEアプリケーションの入れ替え | Webアプリケーションのサービスの部分閉塞による入れ替え | ○
リデプロイによるJ2EEアプリケーションの入れ替え | ◎
リロードによるJ2EEアプリケーションの入れ替え | ×
J2EEアプリケーションのテスト機能 | ×
J2EEアプリケーションからのネットワークリソースへのアクセス | ×

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

(22)　システムの監査を支援する機能

システムの監査を支援する機能は，ベーシックモードでは使用できません。

(23)　JP1連携による運用管理機能

JP1連携による運用管理機能のベーシックモードでの使用可否を次の表に示します。JP1連携による運用管理機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.5　JP1連携による運用管理機能」を参照してください。

表9-17　JP1連携による運用管理機能のベーシックモードでの使用可否

JP1連携による運用管理機能 | ベーシックモードでの使用可否
JP1と連携したシステムの運用 | ○
システムの構成定義および管理（JP1/IM - CMとの連携） | ○
システムの集中監視（JP1/IMとの連携） | ○
ジョブによるシステムの自動運転（JP1/AJSとの連携） | ○
シナリオによるシステムの自動運転（JP1/AJS2 - SOとの連携） | ○
監査ログの収集および一元管理（JP1/NETM/Auditとの連携） | ○

（凡例）

○：使用できる

参考

ベーシックモードで動作しているJ2EEサーバはManagement Serverの管理対象となります。このため，ベーシックモードで動作しているJ2EEサーバはJP1連携による管理の対象となります。なお，JP1連携による運用管理機能と動作モードは，直接関係ありません。

(24)　クラスタソフトウェアとの連携による系切り替え機能

クラスタソフトウェアとの連携による系切り替え機能のベーシックモードでの使用可否を次の表に示します。クラスタソフトウェアとの連携による系切り替え機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.6　クラスタソフトウェアとの連携による系切り替え機能」を参照してください。

表9-18　クラスタソフトウェアとの連携による系切り替え機能のベーシックモードでの使用可否

クラスタソフトウェアとの連携による系切り替え機能 | ベーシックモードでの使用可否
1:1系切り替えシステム | アプリケーションサーバの1:1系切り替えシステム | ○
運用管理サーバの1:1系切り替えシステム | ○
相互系切り替えシステム | ○
N:1リカバリシステム | ×
ホスト単位管理モデルを対象にした系切り替えシステム | ×

（凡例）

○：使用できる

×：使用できない

(25)　システムの保守のための機能

システムの保守のための機能のベーシックモードでの使用可否を次の表に示します。

表9-19　システムの保守のための機能のベーシックモードでの使用可否

システムの保守のための機能 | ベーシックモードでの使用可否 | 参照先
トラブルシューティング | ◎※1 | 2章，3章，4章，5章
性能解析トレースを使用したシステムの性能解析 | ◎※2 | 6章，7章

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

注※1　障害検知時コマンドは使用できません。

注※2　機能レイヤのうち，JTA，JCAコンテナおよびDB Connectorでは性能解析情報を出力しません。

(26)　日立固有のJavaVMの機能

日立固有のJavaVMの機能のベーシックモードでの使用可否を次の表に示します。

表9-20　日立固有のJavaVMの機能のベーシックモードでの使用可否

日立固有のJavaVMの機能 | ベーシックモードでの使用可否 | 参照先
クラス別統計機能 | ◎ | 8.3
インスタンス統計機能 | ◎ | 8.4
STATICメンバ統計機能 | ◎ | 8.5
参照関係情報出力機能 | ◎ | 8.6
統計前のガーベージコレクション選択機能 | ◎ | 8.7
Tenured領域内不要オブジェクト統計機能 | × | 8.8
Tenured増加要因の基点オブジェクトリスト出力機能 | × | 8.9
クラス別統計情報解析機能 | × | 8.10
Survivor領域の年齢分布情報出力機能 | ◎ | 8.11
ファイナライズ滞留解消機能 | ◎ | 8.12
hndlwrap機能 | × | 8.13
JITコンパイル時のCヒープ確保量の上限値設定機能 | ◎ | 8.14
スレッド数の上限値設定機能 | ◎ | 8.15

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

9.3　ベーシックモードでのリソース接続

ここでは，ベーシックモードでのリソース接続について説明します。

＜この節の構成＞

9.3.1　接続できるリソースとトランザクションの管理方法

9.3.2　データベース接続の前提条件

9.3.3　データソースによるデータベースへの接続で使用できる機能

9.3.4　リソースへの接続テスト

9.3.5　JTAによるトランザクション実装時の注意事項

9.3.1　接続できるリソースとトランザクションの管理方法

ベーシックモードの場合に接続できるリソースの種類とトランザクションの管理方法について説明します。

＜この項の構成＞

(1)　接続できるリソース

(2)　トランザクションの管理方法

(1)　接続できるリソース

ベーシックモードで接続できるリソースについて次の表に示します。

表9-21　接続できるリソース（ベーシックモード）

リソースの種類 | ベーシックモード
データベース | HiRDB | ○
Oracle | ○
SQL Server | ×
XDM/RD E2 | ×
データベース上のキュー | HiRDB | ×
Oracle | ×
OpenTP1 | ×
SMTPサーバ | ○
JavaBeansリソース | ○

（凡例）　○：接続できる　　×：接続できない

参考

リソースアダプタがNon-Managed環境での使用に対応している場合には，接続できる場合があります。ただし，アプリケーションサーバによるコネクションプーリングやトランザクション管理は利用できません。

(2)　トランザクションの管理方法

ベーシックモードでは，次のトランザクションを管理できます。

アプリケーションサーバが管理するトランザクションのローカルトランザクション

アプリケーションサーバが管理しないトランザクション

9.3.2　データベース接続の前提条件

ベーシックモードでデータベースに接続する場合の前提条件を，データベースの種類ごとに示します。

ベーシックモードの場合，データベース接続には，データソースを使用します。使用できるトランザクションの種類は，ローカルトランザクションだけになります。

なお，ベーシックモードでは，次のデータベースには接続できません。

Oracle10g

Oracle11g

SQL Server

XDM/RD E2

＜この項の構成＞

(1)　HiRDBの場合

(2)　Oracle9iの場合

(3)　Cosminexus DABroker Libraryの文字コード設定

(1)　HiRDBの場合

使用できるJDBCドライバ
使用できるJDBCドライバはCosminexus DABroker Libraryとなります。
Cosminexus DABroker Libraryを使用する場合，HiRDBクライアントをインストールする必要があります。

接続方法
データソースを使用して接続します。
なお，トランザクションの管理方法は，アプリケーションサーバが管理するトランザクション，またはアプリケーションサーバが管理しないトランザクションのどちらかを選択できます。

(2)　Oracle9iの場合

使用できるJDBCドライバ
使用できるJDBCドライバはCosminexus DABroker Libraryとなります。Oracle JDBC Thin Driverでは接続できません。
JDBCドライバとしてCosminexus DABroker Libraryを使用する場合，Oracleクライアントをインストールする必要があります。

接続方法
データソースを使用して接続します。
なお，トランザクションの管理方法は，アプリケーションサーバが管理するトランザクション，またはアプリケーションサーバが管理しないトランザクションのどちらかを選択できます。

(3)　Cosminexus DABroker Libraryの文字コード設定

Cosminexus DABroker Libraryを使用してデータベースに接続する場合，文字コードを設定できます。ベーシックモードの場合，usrconf.propertiesのejbserver.jdbc.propertyInfo.ENCODELANGキーに文字コードを設定します。

usrconf.propertiesの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

9.3.3　データソースによるデータベースへの接続で使用できる機能

ここでは，データソースによるデータベースへの接続機能について説明します。

なお，データソースの設定については，「9.4　ベーシックモードの利用方法」を参照してください。

データソースを利用すると，J2EEサーバと連携して，J2EEアプリケーションから次に示す機能を利用できます。

＜この項の構成＞

(1)　サインオン

(2)　コネクション管理

(3)　トランザクション管理

(4)　オブジェクトの自動クローズ

(5)　パフォーマンスチューニングのための機能

(6)　フォールトトレランスのための機能

(7)　データソースを使用するときの注意

(1)　サインオン

データソースを利用した場合，サインオンの方式として，コンテナ管理のサインオンとコンポーネント管理のサインオンの両方を使用できます。ただし，コンポーネント管理でのサインオンの場合，トランザクションの種類によって使用が制限されます。

コンテナ管理でのサインオンの場合

コンテナ管理でのサインオンの場合には，データソースで設定したユーザ名とパスワードを使ってデータベースにアクセスします。

コンポーネント管理でのサインオンの場合

データベースへのアクセスはgetConnectionメソッドで渡されたユーザ名とパスワードを使ってデータベースにアクセスします。

(2)　コネクション管理

データベースの接続情報は，データソースを介してJ2EEサーバで管理され，コネクションプールにプーリングされます。

(3)　トランザクション管理

ローカルトランザクションでトランザクション管理されます。

トランザクションについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.4　トランザクション管理」を参照してください。

(4)　オブジェクトの自動クローズ

データソースは，ユーザハンドル（java.sql.Connection）から生成された，Statementオブジェクト，PreparedStatementオブジェクト，CallableStatementオブジェクト，および各種ステートメントやDatabaseMetaDataから生成されたResultSetオブジェクトを自動クローズできます。

(5)　パフォーマンスチューニングのための機能

ベーシックモードでデータベースに接続する場合に，パフォーマンスチューニングのために使用できる機能を，次の表に示します。

表9-22　ベーシックモードでデータベースに接続する場合に使用できるパフォーマンスチューニングのための機能

機能 | 使用可否 | 機能差※1
コネクションプーリング | ○ | あり
コネクションシェアリング | ○※2 | なし
コネクションのアソシエーション | × | －
ステートメントプーリング | × | －
ライトトランザクション | × | －
インプロセストランザクションサービス | × | －
DataSourceオブジェクトのキャッシング | ○ | なし
DB Connectorのコンテナ管理でのサインオンの最適化 | × | －
受信バッファのプーリング | × | －

（凡例）○：使用できる　×：使用できない　－：該当しない

注※1　1.4モードとの機能差の有無です。

注※2　ベーシックモードでコネクションシェアリング機能を利用するには，コネクションプーリング機能を利用する必要があります。なお，標準DDの<res-sharing-scope>にUnshareableを指定してもコネクションシェアリングは有効です。

以降，ベーシックモードで使用できるパフォーマンスチューニングのための機能について説明します。なお，それぞれの機能の概要および目的については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14　パフォーマンスチューニングのための機能」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.1　コネクションプーリング」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.2　コネクションプーリングで使用できる機能」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.3　コネクションシェアリング・アソシエーション」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.4　ステートメントプーリング」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.5　ライトトランザクション」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.6　インプロセストランザクションサービス」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.7　DataSourceオブジェクトのキャッシング」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.8　DB Connectorのコンテナ管理でのサインオンの最適化」

このマニュアルの「11.4　受信バッファのプーリングの設定」

ここでは，ベーシックモードで特有の内容についてだけ説明します。

コネクションプーリング

J2EEサーバでは，JDBCデータソースごとにプールを作成して管理します。JDBCデータソースに最大値，最小値，増加，しきい値などを指定することで，プーリングの動作をカスタマイズできます。

J2EEコンポーネントがJDBCデータソースからJDBCコネクションを取得したとき，最小値分のJDBCコネクションが生成されプーリングされます。また，JDBCコネクションは最大値分までプーリングされます。プール中の未使用JDBCコネクションの数がしきい値分以下になったとき，新たに増加分のJDBCコネクションを取得してプールに補充します。プーリングされるJDBCコネクションの数は，J2EEコンポーネントからのデータベースアクセス量に応じて，最大値と最小値の間になります。

なお，JDBCコネクションプーリングは，同一JDBCデータソースに対して，引数なしのgetConnection()メソッドと引数ありのgetConnection(java.lang.String username,java.lang.String password)メソッド間では，別のプールになります。

また，引数ありのgetConnection(java.lang.String username,java.lang.String password)メソッド間でusernameが異なる場合，別のプールになります。なお，J2EEサーバ間のJDBCコネクションプーリングは，サポートしていません。

コネクションシェアリング

1.4モードとの機能差はありません。

DataSourceオブジェクトのキャッシング

1.4モードとの機能差はありません。

(6)　フォールトトレランスのための機能

ベーシックモードでデータベースに接続する場合に，フォールトトレランスのために使用できる機能を，次の表に示します。

表9-23　ベーシックモードでデータベースに接続する場合に使用できるフォールトトレランスのための機能

機能 | 使用可否 | 機能差※
コネクションの障害検知 | × | －
コネクション枯渇時のコネクション取得待ち | × | －
コネクションの取得リトライ | ○ | なし
コネクションプールの情報表示 | ○ | あり
コネクションプールのクリア | ○ | なし
コネクションの自動クローズ | ○ | あり
コネクションの強制クローズ | ○ | あり
コネクションスイーパ | ○ | なし
トランザクションタイムアウト | ○ | あり
トランザクションリカバリ | × | －
障害調査用SQLの出力 | × | －
コネクションプールのクラスタ化 | × | －

（凡例）○：使用できる　×：使用できない　－：該当しない

注※　1.4モードとの機能差です。

以降，ベーシックモードで使用できるフォールトトレランスのための機能について説明します。

なお，それぞれの機能の概要および目的については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15　フォールトトレランスのための機能」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.1　コネクションの障害検知」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.2　コネクション枯渇時のコネクション取得待ち」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.3　コネクションの取得リトライ」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.4　コネクションプールの情報表示」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.5　コネクションプールのクリア」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.6　コネクションの自動クローズ」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.7　コネクションスイーパ」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.8　トランザクションタイムアウトとステートメントキャンセル」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.9　トランザクションリカバリ」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.10　障害調査用SQLの出力」

マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.17　コネクションプールのクラスタ化機能」

ここでは，ベーシックモードで特有の内容についてだけ説明します。

コネクションの取得リトライ

1.4モードとの機能差はありません。マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.5　コネクションプールのクリア」を参照してください。

コネクションプールの情報表示

コネクションプール内のコネクションの情報を，コマンドを使用して表示できます。コネクションプール情報の表示には，cjclosecnコマンドを使用します。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjclosecn（J2EEサーバのコネクションクローズまたはコネクションの状態表示）」を参照してください。

コネクションプールのクリア

1.4モードとの機能差はありません。マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.3　コネクションの取得リトライ」を参照してください。

コネクションの強制クローズ

アプリケーションのConnection.closeメソッドの記述もれによってクローズされないコネクションは，コネクションプール内で使用中状態のまま再利用されません。これらのコネクションは，cjclosecnコマンドを使用して強制クローズできます。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjclosecn（J2EEサーバのコネクションクローズまたはコネクションの状態表示）」を参照してください。

なお，ユーザスレッドでは使用できません。

コネクションの自動クローズ

EJBコンテナによるコネクション自動クローズだけが有効になります。また，対象となるリソースは，データソースだけです。

コネクションスイーパ

1.4モードとの機能差はありません。マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.7　コネクションスイーパ」を参照してください。

トランザクションタイムアウト

ローカル呼び出し最適化機能を使用するかどうかによって，トランザクションタイムアウト後のJTAおよびJDBCインタフェースにアクセスできない期間が異なります。
ローカル呼び出し最適化機能を使用しない場合，該当するトランザクションを含むリモートインタフェースのメソッドが終了すればアクセスできます。ローカル呼び出し最適化機能を使用する場合は，リクエスト終了するまでアクセスできません。

トランザクションタイムアウトが発生すると，トランザクションの状態がjavax.transaction.Status.STATUS_NO_TRANSACTIONになるため，Required属性，Supports属性，またはNever属性のビジネスメソッドが呼び出されます。トランザクションタイムアウト後にビジネスメソッドが呼び出されないようにするには，Mandatory属性を使用してください。ただし，ローカル呼び出し最適化機能を使用する場合は，トランザクションタイムアウト後に新しいトランザクションを開始できないので，タイムアウト後にRequired属性またはRequiresNew属性のビジネスメソッドは呼び出されません。

ローカル呼び出し最適化機能を使用して，タイムアウトの発生後にStateful Session Bean（BMT）を呼び出した場合，またはリモートインタフェースのメソッド呼び出し中（トランザクションがサスペンド中）にタイムアウトが発生した場合，J2EEアプリケーションにタイムアウトの発生を通知しません。
J2EEアプリケーションでこの内容を考慮していない場合，意図しないDBMSのアクセスによる，データの不整合などの問題が発生するおそれがあります。この問題を回避するため，ローカル呼び出し最適化機能を使用しないか，または次の対策を行ってください。
JTA，またはJDBCインタフェースのアクセスで例外が発生した場合，およびリモートインタフェースのメソッド呼び出しでRemoteException例外が発生した場合は，リクエストを終了させます。また，Stateful Session Bean（BMT）を使用する場合は，そのメソッド内で，JTA，JDBCインタフェースに対して，必ずアクセスします。

(7)　データソースを使用するときの注意

java.sql.Connectionを，複数のトランザクション間で再利用することはできません。java.sql.Connectionをトランザクション内で利用する場合には，トランザクションごとに，javax.sql.DataSourceからgetConnection()メソッドを使用してコネクションを取得してください。

java.sql.ConnectionのようなJDBCインタフェースのAPIでSQLException例外が発生すると，コネクションクローズで該当コネクションの接続が維持されていても，コネクションプールに戻さないで破棄します。その結果，余分なコネクション生成が発生して性能に影響を与えることがあります。

9.3.4　リソースへの接続テスト

データソースのプロパティ設定後，設定した内容が正しいかどうか，検証することができます。ここでは，接続テストでの検証項目と，接続テストの前提条件について説明します。

なお，接続テストの実行手順や，データソースの設定については，「9.4　ベーシックモードの利用方法」を参照してください。

接続テストで検証される内容は，接続するリソースごとに異なります。

ベーシックモードの場合に，リソースごとの接続テストで検証できる内容を，次の表に示します。

表9-24　接続テストでの検証内容

リソースの種類
接続方法
接続テストでの検証内容

データベース
データソース

Driverを使用していること

Cosminexus DABroker Libraryの設定が正しいこと

データベースとの接続を確立できること

SMTPサーバ
メールコンフィグレーション

SMTPサーバへの接続を確立できること

9.3.5　JTAによるトランザクション実装時の注意事項

JTAを使用してトランザクションを実装したプログラムは，J2EEサーバの動作モードによって異なる動作をする場合があります。ベーシックモードの場合のプログラムの処理内容，および動作を次に示します。1.4モードの場合については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.4.11　JTAによるトランザクション実装時の注意事項」を参照してください。

表9-25　ベーシックモードの場合のJTAの動作

処理の内容
動作

EJB呼び出しで，java.rmi.RemoteExceptionまたはjava.rmi.RemoteExceptionを継承した例外が発生した場合

CORBAのシステム例外が発生した場合

クライアント側のトランザクションは，ロールバックにマークされません。

トランザクションタイムアウト発生後に，javax.transaction.UserTransaction.commitメソッドを呼び出した場合
java.lang.IllegalStateException例外が発生します。

トランザクションタイムアウト発生後にjavax.transaction.UserTransaction.rollbackメソッドを呼び出した場合
java.lang.IllegalStateException例外が発生します。

トランザクションタイムアウト後のjavax.transaction.UserTransaction.getStatusメソッドの戻り値
javax.transaction.Status.STATUS_NO_TRANSACTIONが返されます。

javax.ejb.SessionSynchronizationを実装したEJBのbeforeCompletionメソッド，またはafterCompletionメソッドからのEJB呼び出し
呼び出せません。呼び出すと，javax.transaction.SystemException例外が発生します。

9.4　ベーシックモードの利用方法

ここでは，ベーシックモードの設定，およびデータソースの設定について説明します。

＜この節の構成＞

9.4.1　ベーシックモードの設定

9.4.2　データソースの設定

9.4.1　ベーシックモードの設定

動作モードは，usrconf.propertiesのejbserver.server.j2ee.featureキーで変更できます。ベーシックモードを使用する場合には，「ejbserver.server.j2ee.feature=1.3basic」を指定します。

なお，旧バージョンでベーシックモードを使用していた場合，アプリケーションサーバをアップグレードインストールしたときには，J2EEサーバの動作モードはベーシックモードになっています。新規インストールした場合には，J2EEサーバの動作モードは1.4モードになっています。

9.4.2　データソースの設定

ベーシックモードを使用する場合，データソースを使用してデータベースに接続できます。データソースを利用して接続できるデータベースには，HiRDB，Oracle9iがあります。なお，データソースを使用する場合，データベースとの接続にはCosminexus DABroker Libraryを使用します。また，使用できるトランザクションの種類は，ローカルトランザクションだけとなります。

注意

データソースもDB Connectorと同様の使用方法でJ2EEアプリケーションから利用できますが，データベース接続には1.4モードでのDB Connectorの使用をお勧めします。DB Connectorを利用したデータベース接続は，データソースを利用したデータベース接続と比較して，トランザクション管理のパフォーマンスを向上できます。

また，データベース接続にデータソースを使用できるのは，J2EEサーバの動作モードがベーシックモードの場合だけです。1.4モードでデータベースに接続する場合には，DB Connectorを使用してください。

アプリケーションサーバでは，データソースからDB Connectorへの移行をサポートしています。データソースからDB Connectorへの移行方法については，「9.6　データソースからDB Connectorへの移行方法」を参照してください。

運用管理ポータルでシステムを構築する場合と，ファイル編集とコマンド実行でシステムを構築する場合で，データソースの設定方法が異なります。それぞれの設定方法について説明します。

＜この項の構成＞

(1)　運用管理ポータルでシステムを構築する場合

(2)　ファイル編集とコマンド実行でシステムを構築する場合

(1)　運用管理ポータルでシステムを構築する場合

運用管理ポータルでは，開発環境（サーバ管理コマンドが動作する環境）で設定したデータソースを，運用環境（データソースを使用する環境）に移す作業をサポートしています。開発環境でサーバ管理コマンドを使用してデータソースのプロパティの設定，接続の確認などを実施したあとで，運用管理ポータルを使用して運用環境にデータソースをインポートします。

データソースの設定の流れを次の図に示します。

図9-1　データソースの設定の流れ（運用管理ポータルでのシステム構築）

図中の1.～5.について説明します。なお，ここでは，開発環境と運用環境は，同じホストにある別々のJ2EEサーバ上にあると仮定して説明します。

開発環境で，サーバ管理コマンドを使用してデータソースをインポートします。
cjimportresコマンドを使用して，データソースをインポートします。

開発環境で，サーバ管理コマンドを使用してデータソースのプロパティを定義します。
cjgetrespropコマンドでデータソース属性ファイルを取得し，ファイル編集後に，cjsetrespropコマンドで編集内容を反映させます。
なお，使用するデータベースの種類によって，プロパティの定義内容が異なります。

開発環境で，サーバ管理コマンドを使用してデータソースの接続テストを実施します。
cjtestresコマンドを使用して，データソースの接続テストを実施します。

運用環境で設定済みのデータソースから，サーバ管理コマンドを使用してデータソース属性ファイルを取得します。
cjgetrespropコマンドを使用して，データソース属性ファイルを取得します。

参考

同一のデータソースは，同一のJ2EEサーバにインポートできません。開発環境のJ2EEサーバと運用環境のJ2EEサーバが同一の場合は，運用環境のJ2EEサーバにデータソースをインポートする前に，開発環境のJ2EEサーバにあるデータソースを削除してください。

開発環境のホストと運用環境のホストが異なる場合には，開発環境のホストにあるデータソースを運用環境のホストに移動してください。
開発環境のホストにあるデータソースからcjgetrespropコマンドでデータソース属性ファイルを取得し，データソース設定ファイルを用意します。データソース設定ファイルの格納場所を次に示します。
Windowsの場合
　　<Cosminexusのインストールディレクトリ>¥CC¥admin¥templates
UNIXの場合
　　/opt/Cosminexus/CC/admin/templates
取得および用意したデータソース属性ファイルとデータソース設定ファイルを，運用環境のホスト（Management Server稼働ホスト）にコピーします。

運用管理ポータルの「論理サーバのアプリケーション管理」で，運用環境のJ2EEサーバにデータソースをインポートします。
［データソースのインポート］画面で，データソースをインポートします。なお，インポート時に指定するファイルは，JDBCドライバファイル，データソース属性ファイル，およびデータソース設定ファイルです。JDBCドライバファイルはJDBCドライバのクラスライブラリファイル，属性ファイルと設定ファイルはリソースのプロパティや使用するドライバのクラスなどの情報を定義したファイルです。

運用管理ポータルでの操作については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」を参照してください。サーバ管理コマンドでの操作については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」を参照してください。また，コマンドや属性ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」またはマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」を参照してください。

(2)　ファイル編集とコマンド実行でシステムを構築する場合

ファイル編集とコマンド実行でシステムを構築する場合，サーバ管理コマンドを使用してデータソースのプロパティの設定，接続の確認などを実施してください。

データソースの設定手順を次の図に示します。

図9-2　データソースの設定手順（ファイル編集とコマンド実行でのシステム構築）

図中の1.～3.について説明します。

サーバ管理コマンドを使用してデータソースをインポートします。
cjimportresコマンドを使用して，データソースをインポートします。

サーバ管理コマンドを使用してデータソースのプロパティを定義します。
cjgetrespropコマンドでデータソース属性ファイルを取得し，ファイル編集後に，cjsetrespropコマンドで編集内容を反映させます。
なお，使用するデータベースの種類によって，プロパティの定義内容が異なります。

サーバ管理コマンドを使用してデータソースの接続テストを実施します。
cjtestresコマンドを使用して，データソースの接続テストを実施します。

サーバ管理コマンドでの操作については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「3.　サーバ管理コマンドの基本操作」を参照してください。

参考

次のような場合，データソースをインポートすることで，効率良くデータソースを設定できます。

開発環境で設定したデータソースを，運用環境にインポートして使用する場合

運用環境ですでに動いているデータソースを，増設したJ2EEサーバにインポートして使用する場合

9.5　プロセスの依存関係とプロセスの再起動方法

ベーシックモードの場合，プロセスの依存関係とプロセスの再起動方法がJ2EEサーバモードの場合と異なります。プロセスの依存関係とプロセスの再起動方法を次に示します。

＜この節の構成＞

9.5.1　ベーシックモードの場合のプロセスの依存関係

9.5.2　ベーシックモードの場合のプロセスの再起動方法

9.5.1　ベーシックモードの場合のプロセスの依存関係

ベーシックモードの場合のプロセスの依存関係を次の表に示します。

表9-26　ベーシックモードの場合のプロセスの依存関係

プロセスの種類
前提プロセス

パフォーマンストレーサ
－

スマートエージェント※1
－

CTMドメインマネジャ※1
スマートエージェント

CORBAネーミングサービス
－

CTMデーモン※1

パフォーマンストレーサ

スマートエージェント

CTMドメインマネジャ

ネーミングサービス

SFOサーバ

パフォーマンストレーサ

J2EEサーバ

パフォーマンストレーサ

スマートエージェント※2

CTMドメインマネジャ※2

CORBAネーミングサービス

CTMデーモン※2

Webサーバ
－

（凡例）

－：前提プロセスがない

注※1

CTMを使用する場合に起動するプロセスです。

注※2

CTMを使用する場合に前提となるプロセスです。

9.5.2　ベーシックモードの場合のプロセスの再起動方法

ベーシックモードの場合のシステムでプロセスが異常終了時のプロセスの再起動方法について説明します。

なお，CTMに関連するプロセスが異常終了して再起動できない場合は，次の手順で対処してください。

ベーシックモードの場合のプロセスの再起動（回復）の手順を次に示します。

表9-27　ベーシックモードの場合の再起動の手順

異常プロセス
開始コマンド
再起動（回復）手順

データベースサーバ
－
DBサーバを再起動してください。

パフォーマンストレーサ
cprfstart
パフォーマンストレーサを再起動してください。

スマートエージェント※1
osagent
スマートエージェントを再起動してください。

CTMドメインマネジャ※1
ctmdmstart
CTMドメインマネジャを再起動してください。

CORBAネーミングサービス
nameserv
次に示す手順で対処してください。なお，CTMを使用しない場合，手順1および手順4は不要です。

CTMデーモンの強制停止

J2EEサーバの強制停止

CORBAネーミングサービスの再起動

CTMデーモンの再起動

J2EEサーバ再起動

CTMデーモン※1
ctmstart
次に示す手順で対処してください。

CORBAネーミングサービスの強制停止

J2EEサーバの強制停止

CORBAネーミングサービスの再起動

CTMデーモンの再起動

J2EEサーバの再起動

CTMレギュレータ
－
CTMデーモンによって自動再起動されるため，再起動は不要です。

SFOサーバ※2
cjstartsv
SFOサーバを再起動してください。

J2EEサーバ
cjstartsv
J2EEサーバを再起動してください。

Webサーバ
－
Webサーバを再起動してください。

（凡例）

－：使用する製品によって開始コマンドが異なる，または該当する開始コマンドがない

注※1

CTMを使用する場合に起動するプロセスです。

注※2

メモリセッションフェイルオーバ機能を使用する場合に起動するプロセスです。

9.6　データソースからDB Connectorへの移行方法

以前のバージョンで，データソースを使用していた場合，J2EEサーバの移行コマンドがデータソースをDB Connectorへ変換します。変換後にコマンドで取得したConnector属性ファイルと旧バージョンでコマンドを使用して取得したデータソース属性ファイルの対応関係を表に示します。表9-28から表9-30は，変換後にcjgetrarpropコマンドで取得したConnector属性ファイルの値を示します。表9-28から表9-30の「値」の列の括弧付きの数字は，表9-31または表9-32の括弧付きの数字に指定されていた値が設定されることを意味します。「デフォルト」はデフォルト値が設定されることを意味します。

表9-28　変換後にcjgetrarpropコマンドを使用して取得したConnector属性ファイル

タグ名 | 値
<hitachi-connector-property> | －
| <description> | 表9-31の(1)
| <display-name> | 表9-31の(2)
| <icon> | －
|  | <small-icon> | デフォルト
|  | <large-icon> | デフォルト
| <vender-name> | デフォルト
| <spec-version> | デフォルト
| <eis-type> | デフォルト
| <version> | デフォルト
| <license> | －
|  | <license-required> | デフォルト
| <resourceadapter> | －
|  | <managedconnectionfactory-class> | デフォルト
|  | <connectionfactory-interface> | デフォルト
|  | <connectionfactory-impl-class> | デフォルト
|  | <connection-interface> | デフォルト
|  | <connection-impl-class> | デフォルト
|  | <transaction-support> | デフォルト
|  | <config-property> | －
|  |  | <description> | デフォルト
|  |  | <config-property-name> | 指定されるプロパティについては表9-29参照
|  |  | <config-property-type> | デフォルト
|  |  | <config-property-value> | 指定される値については表9-29参照
|  | <reauthentication-support> | －
|  | <security-permission> | －
|  |  | <description> | デフォルト
|  |  | <security-permission-spec> | デフォルト
| <runtime> | －
|  | <property> | －
|  |  | <property-name> | 指定されるプロパティについては表9-30参照
|  |  | <property-type> | デフォルト
|  |  | <property-value> | 指定される値については表9-30参照
|  |  | <property-default-value> | デフォルト

（凡例）－：該当しない

表9-29　Connector属性ファイルの<config-property>タグに指定されるプロパティと値

<config-property-name>タグに指定されるプロパティ | <config-property-value>タグに指定される値
loginTimeout | 表9-32の(12)
networkProtocol | 表9-32の(13)
serverName | 表9-32の(14)
portNumber | 表9-32の(15)
databaseName | 表9-32の(16)
description | 表9-32の(17)
DBHostName | 表9-32の(18)
DBEnv | 表9-32の(19)
encodLang | 表9-32の(20)
JDBC_IF_TRC | 表9-32の(21)
SV_EVENT_TRC | 表9-32の(22)
TRC_NO | 表9-32の(23)
uapName | 表9-32の(24)
bufSize | 表9-32の(25)
rowSize | 表9-32の(26)
OSAuthorize | 表9-32の(27)
HiRDBCursorMode | 表9-32の(28)
blockUpdate | 表9-32の(29)
executeDirectMode | 表9-32の(30)
SQLWarningIgnore | 表9-32の(31)
LONGVARBINARY_Access | 表9-32の(32)
XAOpenString | 表9-32の(33)
XACloseString | 表9-32の(34)
RMID | 表9-32の(35)
XAThreadMode | 表9-32の(36)
XALocalCommitMode | 表9-32の(37)
PreparedStatementPoolSize | 0
CallableStatementPoolSize | 0
CancelStatement | false
logLevel | デフォルト

表9-30　Connector属性ファイルの<property>タグに指定されるプロパティと値

<property-name>タグに指定されるプロパティ | <property-value>タグに指定される値
MinPoolSize | 表9-31の(3)
MaxPoolSize | 表9-31の(4)
LogEnabled | デフォルト
User | 表9-32の(38)
Password | 表9-32の(39)
ValidationType | デフォルト
ValidationInterval | デフォルト
RetryCount | 表9-31の(10)
RetryInterval | 表9-31の(11)
ConnectionTimeout | ejbserver.connectionpool.connection.timeoutに値が指定されている場合はその値。指定されていない場合はデフォルト。
SweeperInterval | ejbserver.connectionpool.sweeper.intervalに値が指定されている場合はその値。指定されていない場合はデフォルト。
RequestQueueEnable | false
RequestQueueTimeout | デフォルト
WatchEnabled | デフォルト
WatchInterval | デフォルト
WatchThreshold | デフォルト
WatchWriteFileEnabled | デフォルト

表9-31　旧バージョンでcjgetrespropコマンドによって取得したデータソース属性ファイル

タグ名 | 項目番号
<hitachi-datasource-property> | －
| <description> | (1)
| <display-name> | (2)
| <property> | －
|  | <name> | 指定されるプロパティについては表9-32参照
|  | <XADataSource> | 指定される値については表9-32参照
| <PoolConfiguration> | －
|  | <MinimumSize> | (3)
|  | <MaximumSize> | (4)
|  | <Threshold> | (5)
|  | <GrowthIncrement> | (6)
|  | <WaitTimeout> | (7)
|  | <ConnectionTimeout> | (8)
|  | <SweeperInterval> | (9)
|  | <RetryCount> | (10)
|  | <RetryInterval> | (11)

（凡例）－：該当しない

表9-32　データソース属性ファイルの<property>タグに指定されるプロパティ

<name>タグに指定されるプロパティ | <XADataSource>タグに指定される値
LoginTimeout | (12)
NetworkProtocol | (13)
ServerName | (14)
PortNumber | (15)
DatabaseName | (16)
Description | (17)
DBHostName | (18)
DBEnv | (19)
EncodLang | (20)
JDBC_IF_TRC | (21)
SV_EVENT_TRC | (22)
TRC_NO | (23)
UapName | (24)
BufSize | (25)
RowSize | (26)
OSAuthorize | (27)
HiRDBCursorMode | (28)
BlockUpdate | (29)
ExecuteDirectMode | (30)
SQLWarningIgnore | (31)
LONGVARBINARY_Access | (32)
XAOpenString | (33)
XACloseString | (34)
RMID | (35)
XAThreadMode | (36)
XALocalCommitMode | (37)
User | (38)
Password | (39)

なお，移行コマンドでデータソースからDB Connectorへ変換するときに，すでに同一表示名称（display-name）のDB Connector，またはリソースアダプタが存在した場合には，表示名称の最後に連番を付与し，表示名称を一意にします。DB Connectorによる接続については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.6.1　DB Connectorによる接続の概要」を参照してください。

10.　旧バージョンとの互換用機能（サーブレットエンジンモード）

旧バージョンとの互換用機能としてのサーバの動作モードには，ベーシックモードとサーブレットエンジンモードがあります。この章では，サーブレットエンジンモードについて説明します。

＜この章の構成＞

10.1　サーブレットエンジンモードとは

10.2　使用できる機能の一覧

10.3　サーブレットエンジンモードとJ2EEサーバモードの比較

10.4　サーブレットエンジンモードで使用できるWebコンテナの機能

10.5　サーブレットエンジンモードでのリソース接続

10.6　サーブレットエンジンモードの利用方法

10.7　サーブレットエンジンモードでのシステム運用

10.1　サーブレットエンジンモードとは

1.4モードまたはベーシックモードではJ2EEコンテナ（EJBコンテナとWebコンテナ）を利用します。一方，サーブレットエンジンモードは，Webアプリケーションだけを動作させる（Enterprise Beanを使用しない）場合など，Webコンテナ部分だけを使用する構成のときに利用できる動作モードです。サーブレットエンジンモードでは，サーブレットエンジンだけが単独で動作します。サーブレットエンジンとは，サーブレット実行機能，JSP実行機能を持つサーバのことです。

このモードでは，WebアプリケーションからはJava Servlet Specification v2.3，JavaServer Pages Specification v1.2に示すAPIおよびCosminexus DABroker Libraryを通じ，Sun JDBC API仕様に従った方法によるデータベースアクセスが利用できます。

なお，サーブレットエンジンモードで実行したときのサーバをWebコンテナサーバと呼びます。

10.2　使用できる機能の一覧

サーブレットエンジンモードで使用できるJava EEおよびJ2EEの機能，ならびにアプリケーションサーバの機能について一覧に示します。

＜この節の構成＞

10.2.1　使用できるJava EEおよびJ2EEの機能

10.2.2　使用できるアプリケーションサーバの機能

10.2.1　使用できるJava EEおよびJ2EEの機能

サーブレットエンジンモードで使用できるJava EEおよびJ2EEの機能について，次の表に示します。

表10-1　サーブレットエンジンモードで使用できるJava EEおよびJ2EEの機能

Java EEおよびJ2EEの機能
サーブレットエンジンモード

Servlet 2.2
○

Servlet 2.3
○

Servlet 2.4
×

Servlet 2.5
×

JSP 1.2
○

JSP 2.0
×

JSP 2.1
×

EJB 2.0
×

Message-driven Bean
×

ローカルインタフェース
×

CMP 1.1
×

CMP 2.0
×

EJB 2.1
×

EJB 3.0
×

ビジネスインタフェース
アノテーション
DI
×

JDBC 2.0コア
JDBC 2.0オプションパッケージ
○

JDBC 3.0
×

JMS 1.0.2
×

JMS 1.1
×

Connector 1.0（JCA 1.0）
×

Connector 1.5（JCA 1.5）
×

JTA 1.0.1
×

local
×

global
×

JPA 1.0
×

JavaMail 1.2
×

JavaMail 1.3
×

Timer and Work Manager for Application Servers
×

（凡例）○：使用できる　×：使用できない

10.2.2　使用できるアプリケーションサーバの機能

サーブレットエンジンモードでの，アプリケーションサーバの各機能の使用可否について説明します。

＜この項の構成＞

(1)　Webコンテナの機能

(2)　Webサーバ連携の機能

(3)　インプロセスHTTPサーバの機能

(4)　EJBコンテナの機能

(5)　EJBクライアントの機能

(6)　ネーミング管理の機能

(7)　リソース接続とトランザクション管理の機能

(8)　OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

(9)　アプリケーションサーバで使用するJPAの機能

(10)　Cosminexus JPAプロバイダの機能

(11)　Cosminexus JMSプロバイダの機能

(12)　セキュリティ管理の機能

(13)　アノテーションの機能

(14)　J2EEアプリケーションの形式とデプロイの機能

(15)　コンテナ拡張ライブラリの機能

(16)　バッチアプリケーション実行時に使用する機能

(17)　CTMによるEnterprise Beanのスケジューリング機能

(18)　そのほかの拡張機能

(19)　システムの日常運用を支援する機能

(20)　システムの保守を支援する機能

(21)　J2EEアプリケーションの運用機能

(22)　システムの監査を支援する機能

(23)　JP1連携による運用管理機能

(24)　クラスタソフトウェアとの連携による系切り替え機能

(25)　システムの保守のための機能

(26)　日立固有のJavaVMの機能

(1)　Webコンテナの機能

Webコンテナの機能のサーブレットエンジンモードでの使用可否を次の表に示します。Webコンテナの機能については，「10.4　サーブレットエンジンモードで使用できるWebコンテナの機能」を参照してください。

表10-2　Webコンテナの機能のサーブレットエンジンモードでの使用可否

Webコンテナの機能 | サーブレットエンジンモードでの使用可否
Webアプリケーションの実行機能 | △
JSPの実行機能 | ×
JSPデバッグ機能 | ×
JSPの事前コンパイルとコンパイル結果の保持 | JSP事前コンパイル機能 | ×
JSP事前コンパイルを使用しない場合のJSPコンパイル結果 | ◎△
デフォルトの文字エンコーディング設定機能 | ×
セッション管理機能 | Webクライアントが保持する無効なセッションIDの削除 | ×
HttpSessionオブジェクト数の上限値の設定 | ×
セッションIDおよびCookieへのサーバIDの付加 | ◎
アプリケーションのイベントリスナ | ○
リクエストおよびレスポンスのフィルタリング | ○
HTTPレスポンス圧縮機能 | ○
EJBコンテナとの連携 | ◎△
データベースとの接続 | ◎△
Webコンテナによるスレッドの作成 | ◎△
ユーザスレッドの使用 | △※
同時実行スレッド数の制御 | Webコンテナ単位での同時実行スレッド数の制御 | ◎
Webアプリケーション単位での同時実行スレッド数の制御 | ×
URLグループ単位での同時実行スレッド数の制御 | ×
同時実行スレッド数の動的変更 | ×
エラーページのカスタマイズ | ◎
静的コンテンツのキャッシュ | ○
簡易Webサーバ機能 | 簡易WebサーバでのIPアドレス指定（バインド先アドレス設定機能） | ○
簡易Webサーバへのアクセスの制御 | ◎△
URIのデコード機能 | ◎
Webアプリケーションのバージョン設定機能 | ×

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※

ユーザスレッドで使用できる機能のうち，サーブレットエンジンモードで使用できる機能だけが使用できます。

(2)　Webサーバ連携の機能

Webサーバ連携の機能のサーブレットエンジンモードでの使用可否を次の表に示します。Webサーバ連携の機能については，「10.4　サーブレットエンジンモードで使用できるWebコンテナの機能」を参照してください。

表10-3　Webサーバ連携の機能のサーブレットエンジンモードでの使用可否

Webサーバ連携の機能 | サーブレットエンジンモードでの使用可否
Webサーバ（リダイレクタ）によるリクエストの振り分け | ◎
通信タイムアウト（Webサーバ連携） | ◎
IPアドレスの指定（Webサーバ連携） | ○
エラーページのカスタマイズ（Webサーバ連携） | ◎
ドメイン名指定でのトップページの表示 | ○
Webコンテナへのゲートウェイ情報の通知 | ○

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(3)　インプロセスHTTPサーバの機能

インプロセスHTTPサーバの機能は，サーブレットエンジンモードでは使用できません。

(4)　EJBコンテナの機能

EJBコンテナの機能は，サーブレットエンジンモードでは使用できません。

(5)　EJBクライアントの機能

EJBクライアントの機能は，サーブレットエンジンモードでは使用できません。

(6)　ネーミング管理の機能

ネーミング管理の機能のサーブレットエンジンモードでの使用可否を次の表に示します。ネーミング管理の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「2.　ネーミング管理」を参照してください。

表10-4　ネーミング管理の機能のサーブレットエンジンモードでの使用可否

ネーミング管理の機能 | サーブレットエンジンモードでの使用可否
JNDI名前空間へのオブジェクトのバインドとルックアップ | ×
Enterprise BeanまたはJ2EEリソースへの別名付与（ユーザ指定名前空間機能） | ×
ラウンドロビンポリシーによるCORBAネーミングサービスの検索 | ◎
ネーミング管理機能でのキャッシング | ◎
CORBAネーミングサービスの切り替え | ◎
EJBホームオブジェクトリファレンスの再利用（EJBホームオブジェクトへの再接続機能） | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

(7)　リソース接続とトランザクション管理の機能

リソース接続とトランザクション管理の機能のサーブレットエンジンモードでの使用可否を次の表に示します。リソース接続とトランザクション管理の機能については，「10.5　サーブレットエンジンモードでのリソース接続」を参照してください。

表10-5　リソース接続とトランザクション管理の機能のサーブレットエンジンモードでの使用可否

リソース接続とトランザクション管理の機能 | サーブレットエンジンモードでの使用可否
コネクションプーリング | ◎※1
コネクションプールのウォーミングアップ | ×
コネクションプール数調節機能 | ×
コネクションシェアリング・アソシエーション | コネクションシェアリング | －
コネクションアソシエーション | －
ステートメントプーリング | ×
ライトトランザクション | －
インプロセストランザクションサービス | －
DataSourceオブジェクトのキャッシング | ×
DB Connectorのコンテナ管理でのサインオンの最適化 | －
コネクションの障害検知 | ×
コネクション枯渇時のコネクション取得待ち | ×
コネクションの取得リトライ | ◎※1
コネクションプールの情報表示 | ◎※2
コネクションプールのクリア | ◎※2
コネクションの自動クローズ | Webコンテナによるコネクション自動クローズ | ×
EJBコンテナによるコネクション自動クローズ | ×
コネクションの強制クローズ | ◎※3
コネクションスイーパ | ×
トランザクションタイムアウトとステートメントキャンセル | －
トランザクションリカバリ | －
障害調査用SQLの出力 | ×
オブジェクトの自動クローズ | ×
リソースアダプタのライフサイクル管理 | ×
リソースアダプタのワーク管理 | ×
メッセージインフロー | ×
管理対象オブジェクトのルックアップ | ×
コネクション定義の複数指定 | ×
コネクションプールのクラスタ化（コネクションプールの一時停止・再開・状態表示） | ×
リソースへの接続テスト | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

－：該当しない

注※1　Webコンテナコネクションプーリング機能を利用する場合に使用できます。詳細については，「10.5.3　Webコンテナコネクションプール機能によるデータベース接続」を参照してください。

注※2　J2EEサーバモードの場合と実行するコマンドが異なります。

注※3　J2EEサーバモードの場合と実行するコマンドが異なります。コネクションの強制クローズについては，「10.5.3　Webコンテナコネクションプール機能によるデータベース接続」を参照してください。

(8)　OpenTP1からのアプリケーションサーバを呼び出す機能（TP1インバウンド連携機能）

TP1インバウンド連携機能は，サーブレットエンジンモードでは使用できません。

(9)　アプリケーションサーバで使用するJPAの機能

アプリケーションサーバで使用するJPAの機能は，サーブレットエンジンモードでは使用できません。

(10)　Cosminexus JPAプロバイダの機能

Cosminexus JPAプロバイダの機能は，サーブレットエンジンモードでは使用できません。

(11)　Cosminexus JMSプロバイダの機能

Cosminexus JMSプロバイダの機能は，サーブレットエンジンモードでは使用できません。

(12)　セキュリティ管理の機能

セキュリティ管理の機能のサーブレットエンジンモードでの使用可否を次の表に示します。セキュリティ管理の機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「9.　セキュリティ管理」を参照してください。

表10-6　セキュリティ管理の機能のサーブレットエンジンモードでの使用可否

セキュリティ管理の機能 | サーブレットエンジンモードでの使用可否
SSL使用による認証情報とデータの暗号化 | ◎
ロールに基づくWebコンテナのユーザ認証 | ◎△
SecurityManagerによるWebコンテナの実行時の保護 | ◎△
セキュリティアイデンティティを使用した認証 | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

(13)　アノテーションの機能

アノテーションの機能は，サーブレットエンジンモードでは使用できません。

(14)　J2EEアプリケーションの形式とデプロイの機能

J2EEアプリケーションの形式とデプロイの機能のサーブレットエンジンモードでの使用可否を次の表に示します。J2EEアプリケーションの形式とデプロイの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.　J2EEアプリケーションの形式とデプロイ」を参照してください。

表10-7　J2EEアプリケーションの形式とデプロイの機能のサーブレットエンジンモードでの使用可否

J2EEアプリケーションの形式とデプロイの機能 | サーブレットエンジンモードでの使用可否
アーカイブ形式によるJ2EEアプリケーションのデプロイ | ×
展開ディレクトリ形式によるJ2EEアプリケーションのデプロイ | ×
J2EEアプリケーションの入れ替え | ◎△※1
J2EEアプリケーションのリデプロイ | ×
J2EEアプリケーションの更新検知とリロード | ×
Webアプリケーションの更新検知とリロード | ◎△※2
リソースアダプタを含むJ2EEアプリケーションの操作 | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※1　機能差については，「(21)　J2EEアプリケーションの運用機能」を参照してください。

注※2　機能差については，「10.4.2　Webアプリケーションの更新検知とリロード」を参照してください。

(15)　コンテナ拡張ライブラリの機能

注意

コンテナ拡張ライブラリにはアクセス権が付与されません。

cjstartwebコマンドに-securityオプションを指定し，Webコンテナの実行時保護機能を有効にする場合は，SecurityManager定義ファイル（web.policy）に適切なアクセス権を設定してください。

コンテナ拡張ライブラリの機能のサーブレットエンジンモードでの使用可否を次の表に示します。コンテナ拡張ライブラリの機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「13.　コンテナ拡張ライブラリ」を参照してください。

表10-8　コンテナ拡張ライブラリの機能のサーブレットエンジンモードでの使用可否

コンテナ拡張ライブラリの機能 | サーブレットエンジンモードでの使用可否
コンテナ拡張ライブラリ | ◎
サーバ起動・停止フック機能 | ◎
スマートエージェント経由でのCORBAオブジェクトの呼び出し | ◎

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

(16)　バッチアプリケーション実行時に使用する機能

バッチアプリケーション実行時に使用する機能は，サーブレットエンジンモードでは使用できません。

(17)　CTMによるEnterprise Beanのスケジューリング機能

CTMによるEnterprise Beanのスケジューリング機能は，サーブレットエンジンモードでは使用できません。

(18)　そのほかの拡張機能

そのほかの拡張機能のサーブレットエンジンモードでの使用可否を次の表に示します。そのほかの拡張機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「1.2.3　そのほかの拡張機能」を参照してください。

表10-9　そのほかの拡張機能のサーブレットエンジンモードでの使用可否

そのほかの拡張機能 | サーブレットエンジンモードでの使用可否
バッチアプリケーションのスケジューリング | ×
セッションフェイルオーバ機能（データベースセッションフェイルオーバ） | ×
セッションフェイルオーバ機能（メモリセッションフェイルオーバ） | ×
明示管理ヒープ機能を使用したフルガーベージコレクションの抑止 | ×
クライアント性能の測定と分析 | ×
統合ユーザ管理 | ◎△※
ユーザログ出力 | ◎
スレッド非同期並行処理 | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※　リポジトリ管理およびリソース監視は使用できません。

(19)　システムの日常運用を支援する機能

システムの日常運用を支援する機能のサーブレットエンジンモードでの使用可否を次の表に示します。システムの日常運用を支援する機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.1　システムの日常運用を支援する機能」を参照してください。

表10-10　システムの日常運用を支援する機能のサーブレットエンジンモードでの使用可否

システムの日常運用を支援する機能 | サーブレットエンジンモードでの使用可否
システムの起動・停止 | ◎△※
稼働情報の監視（稼働情報収集機能） | ×
リソースの枯渇監視 | ×
運用管理コマンドによる稼働情報の出力 | ×
Managementイベントの通知とManagementアクションによる処理の自動実行 | ×
CTMの稼働統計情報の収集 | ×

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※　システムの起動・停止については，「10.3.7　システムの起動および停止方法」を参照してください。

(20)　システムの保守を支援する機能

システムの保守を支援する機能は，サーブレットエンジンモードで使用できません。

(21)　J2EEアプリケーションの運用機能

J2EEアプリケーションの運用機能のサーブレットエンジンモードでの使用可否を次の表に示します。J2EEアプリケーションの運用機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編」の「1.2.3　J2EEアプリケーションの運用機能」を参照してください。

表10-11　J2EEアプリケーションの運用機能のサーブレットエンジンモードでの使用可否

J2EEアプリケーションの運用機能 | サーブレットエンジンモードでの使用可否
J2EEアプリケーションの実行時間の監視とキャンセル | ×
J2EEアプリケーションのサービスの閉塞 | ◎
J2EEアプリケーションの停止 | 通常停止 | ○
強制停止 | ×
J2EEアプリケーションの入れ替え | Webアプリケーションのサービスの部分閉塞による入れ替え | ○※1
リデプロイによるJ2EEアプリケーションの入れ替え | ×
リロードによるJ2EEアプリケーションの入れ替え | ◎△※2
J2EEアプリケーションのテスト機能 | ×
J2EEアプリケーションからのネットワークリソースへのアクセス | ×

（凡例）

○：使用できる

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

△：使用できる。ただし，1.4モードと機能差がある

×：使用できない

注※1　WebサーバにHitachi Web Serverを使用している場合だけ使用できます。

注※2　機能差については，「10.4.2　Webアプリケーションの更新検知とリロード」を参照してください。

(22)　システムの監査を支援する機能

システムの監査を支援する機能は，サーブレットエンジンモードでは使用できません。

(23)　JP1連携による運用管理機能

JP1連携による運用管理機能は，サーブレットエンジンモードでは使用できません。

参考

サーブレットエンジンモードで動作しているサーバ（Webコンテナサーバ）はManagement Serverの管理対象にはなりません。JP1連携は，Management Serverを利用した運用をしていることが前提となる機能です。このため，サーブレットエンジンモードで動作しているサーバ（Webコンテナサーバ）はJP1連携による管理の対象にはなりません。なお，JP1連携による運用管理機能と動作モードは，直接関係ありません。

(24)　クラスタソフトウェアとの連携による系切り替え機能

クラスタソフトウェアとの連携による系切り替え機能は，サーブレットエンジンモードでは使用できません。

(25)　システムの保守のための機能

システムの保守のための機能のサーブレットエンジンモードでの使用可否を次の表に示します。

表10-12　システムの保守のための機能のサーブレットエンジンモードでの使用可否

システムの保守のための機能 | サーブレットエンジンモードでの使用可否 | 参照先
トラブルシューティング | ◎※ | 2章，3章，4章，5章
性能解析トレースを使用したシステムの性能解析 | ◎ | 6章，7章

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

注※　障害検知時コマンドは使用できません。

(26)　日立固有のJavaVMの機能

日立固有のJavaVMの機能のサーブレットエンジンモードでの使用可否を次の表に示します。

表10-13　日立固有のJavaVMの機能のサーブレットエンジンモードでの使用可否

日立固有のJavaVMの機能 | サーブレットエンジンモードでの使用可否 | 参照先
クラス別統計機能 | ◎ | 8.3
インスタンス統計機能 | ◎ | 8.4
STATICメンバ統計機能 | ◎ | 8.5
参照関係情報出力機能 | ◎ | 8.6
統計前のガーベージコレクション選択機能 | ◎ | 8.7
Tenured領域内不要オブジェクト統計機能 | × | 8.8
Tenured増加要因の基点オブジェクトリスト出力機能 | × | 8.9
クラス別統計情報解析機能 | × | 8.10
Survivor領域の年齢分布情報出力機能 | ◎ | 8.11
ファイナライズ滞留解消機能 | ◎ | 8.12
hndlwrap機能 | × | 8.13
JITコンパイル時のCヒープ確保量の上限値設定機能 | ◎ | 8.14
スレッド数の上限値設定機能 | ◎ | 8.15

（凡例）

◎：J2EEの機能に加えてアプリケーションサーバで拡張した機能を使用できる，またはアプリケーションサーバ独自の機能を使用できる

×：使用できない

10.3　サーブレットエンジンモードとJ2EEサーバモードの比較

サーブレットエンジンモードは互換用のサーバの動作モードです。旧バージョンでサーブレットエンジンモードを使用していた場合には，推奨の動作モードであるJ2EEサーバモードの1.4モード（以降，J2EEサーバモードと呼びます）への移行をお勧めします。ここでは，移行時の留意事項として，サーブレットエンジンモードとJ2EEサーバモードを比較し，機能の差異およびシステムの構築方法の差異について説明します。

サーブレットエンジンモードからJ2EEサーバモードへ移行する場合には，次の差異に留意する必要があります。

システムの構築方法

Webアプリケーションのデプロイと設定

Webサーバの使用方法

データベースとの接続

Webアプリケーションに組み込むサーブレットフィルタ

Webアプリケーションのリロード

システムの起動および停止

使用するメモリ，スレッド数，ポート番号

＜この節の構成＞

10.3.1　システムの構築方法

10.3.2　Webアプリケーションのデプロイと設定

10.3.3　Webサーバの使用方法

10.3.4　データベースとの接続

10.3.5　Webアプリケーションに組み込むサーブレットフィルタ

10.3.6　Webアプリケーションのリロード

10.3.7　システムの起動および停止方法

10.3.8　使用するメモリ，スレッド数，ポート番号

10.3.1　システムの構築方法

サーブレットエンジンモードでは，Webコンテナサーバ用のusrconf.propertiesやusrconf.cfgを編集し，cjwebsetupなどのコマンドを実行してシステムを構築しますが，J2EEサーバモードでは次に示すシステム構築方法があります。

セットアップウィザードを使用して構築する
セットアップウィザードを使用してシステムを構築します。システム構築の概要やシステム構築の詳細については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「2.　セットアップウィザードを使用したシステムのセットアップ」を参照してください。

Smart Composer機能を使用して構築する
Smart Composer機能で提供するファイルおよびコマンドを使用して，システムを構築します。システム構築の概要やシステム構築の詳細については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「1.5　Smart Composer機能の概要」を参照してください。

運用管理ポータルを使用して構築する
運用管理ポータルに設定内容を入力して，システムを構築します。システム構築の概要や運用管理ポータルでのシステム構築方法については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」を参照してください。

どの方法でシステムを構築するかは，どのようなシステムを構築してどのように運用するかによって決定します。システム構築方法の検討については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」を参照してください。

参考

これらのほかに，ファイル編集とコマンド実行を使用してシステムを構築する方法もあります。この場合，各サーバ用のusrconf.propertiesやusrconf.cfgを編集し，cjsetupなどのコマンドを実行してシステムを構築します。ファイル編集とコマンド実行でのシステム構築方法については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」を参照してください。

10.3.2　Webアプリケーションのデプロイと設定

サーブレットエンジンモードとJ2EEサーバモードでは，Webアプリケーションのデプロイおよび属性の設定方法が異なります。

＜この項の構成＞

(1)　Webアプリケーションのデプロイ

(2)　Webアプリケーションの属性の設定

(1)　Webアプリケーションのデプロイ

サーブレットエンジンモードとJ2EEサーバモードでは，Webアプリケーションのデプロイ方法が異なります。

サーブレットエンジンモードの場合
次のどちらかの方法で，WebアプリケーションをWebコンテナサーバにデプロイします。

WARファイルのコピー

ディレクトリのコピー

また，WARファイル，またはディレクトリを削除することで，アンデプロイできます。

J2EEサーバモードの場合
WebアプリケーションをJ2EEサーバにデプロイするためには，Webアプリケーションをアーカイブ形式，または展開ディレクトリ形式のJ2EEアプリケーションにしてからデプロイします。

Webアプリケーションからアーカイブ形式のJ2EEアプリケーションを作成し，J2EEサーバにインポートおよびデプロイします。

Webアプリケーションから展開ディレクトリ形式のJ2EEアプリケーションを作成し，J2EEサーバにインポートおよびデプロイします。

また，アーカイブ形式，または展開ディレクトリ形式のJ2EEアプリケーションをアンデプロイします。

サーブレットエンジンモードとJ2EEサーバモードのWebアプリケーションのデプロイおよびアンデプロイ方法の違いを次に示します。

項目 | サーブレットエンジンモードの場合 | J2EEサーバモードの場合
WARファイルのコピーの場合 | ディレクトリのコピーの場合 | アーカイブ形式の場合 | 展開ディレクトリ形式の場合
アセンブル | WAR形式にアセンブルする | アセンブルは不要 | EAR形式またはZIP形式にアセンブルする | アセンブルは不要
デプロイ／アンデプロイ単位 | WARファイル単位 | ディレクトリ単位 | EARファイルまたはZIPファイル単位 | ディレクトリ単位
入れ替えできる最小単位 | WARファイル単位 | JSPファイルやServletクラス単位 | EARファイルまたはZIPファイル単位 | JSPファイルやServletクラス単位
デプロイ／アンデプロイできるタイミング | Webコンテナサーバの起動中／停止中 | J2EEサーバの起動中
デプロイ／アンデプロイ結果の反映 | Webコンテナサーバの起動／再起動後 | デプロイ操作完了後

サーブレットエンジンモードからJ2EEサーバモードへ移行する場合には，サーブレットエンジンモードでのWebアプリケーションのデプロイ方法と操作性が近い，展開ディレクトリ形式によるデプロイ方法をお勧めします。

アーカイブ形式のJ2EEアプリケーションについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.3　アーカイブ形式のJ2EEアプリケーション」を参照してください。展開ディレクトリ形式のJ2EEアプリケーションについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.4　展開ディレクトリ形式のJ2EEアプリケーション」を参照してください。

(2)　Webアプリケーションの属性の設定

サーブレットエンジンモードの場合は，アプリケーション開発時にWebアプリケーションのDD（web.xml）を直接編集するか，またはhitachi_web.propertiesのキーを設定して，Webアプリケーションの属性を設定します。なお，WebアプリケーションのDD（web.xml）とhitachi_web.propertiesは，WebアプリケーションのWEB-INFディレクトリ下に置きます。

J2EEサーバモードの場合は，これらに加えて，次の手順でWebアプリケーションの属性を設定できます。

システム構築時に，サーバ管理コマンドでJ2EEアプリケーションをJ2EEサーバにインポートする。

属性ファイルを編集して属性を設定する。

サーバ管理コマンドでは，J2EEアプリケーションの実行時間の監視や同時実行スレッド数の制御など，J2EEサーバの拡張機能の設定ができます。J2EEサーバモードの場合は，サーバ管理コマンドで設定する方法をお勧めします。サーバ管理コマンドの操作方法，および設定内容については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「3.　サーバ管理コマンドの基本操作」を参照してください。

なお，hitachi_web.propertiesの設定内容は，サーブレットエンジンモードとJ2EEサーバモードで異なります。

サーブレットエンジンモードとJ2EEサーバモードで同じ場合
JSPファイルのコンパイル結果の保持（webserver.jsp.keepgenerated）とTLDファイルの妥当性チェック（webserver.xml.validate）は，hitachi_web.propertiesまたはusrconf.propertiesで設定します。

サーブレットエンジンモードとJ2EEサーバモードで異なる場合
サーブレットエンジンモードの場合，Webアプリケーションのリロードの設定は，hitachi_web.propertiesまたはusrconf.propertiesで設定します。
J2EEサーバモードの場合，Webアプリケーションのリロードの設定は，usrconf.propertiesで設定します。J2EEサーバ用のhitachi_web.propertiesでは，Webアプリケーションのリロードの設定はできません。

10.3.3　Webサーバの使用方法

サーブレットエンジンモードとJ2EEサーバモードでは，Webサーバの使用方法が異なります。

サーブレットエンジンモードの場合 | J2EEサーバモードの場合
Webサーバと連携して使用する | Webサーバと連携して使用する
Webコンテナサーバ内の簡易Webサーバを使用する | J2EEサーバ内のインプロセスHTTPサーバを使用する

Webサーバと連携して使用する方法の場合，サーブレットエンジンモードからJ2EEサーバモードに移行するときは，設定内容には差異はありません。ただし，システムの構築方法によって設定方法が異なります。

Smart Composer機能を使用してシステムを構築する場合，Smart Composer機能で提供するファイルでWebサーバの設定をします。

運用管理ポータルを使用してシステムを構築する場合，運用管理ポータル上でWebサーバの設定をします。また，論理Webサーバとして使用できるのは，Hitachi Web Serverです。

ファイル編集とコマンド実行によってシステムを構築する場合，設定方法はサーブレットエンジンモードと同じです。設定の変更などは必要ありません。

簡易Webサーバを使用する方法の場合，J2EEサーバモードのインプロセスHTTPサーバに移行するときは，設定内容および設定方法が異なります。

Smart Composer機能を使用してシステムを構築する場合，インプロセスHTTPサーバは使用できません。

運用管理ポータルを使用してシステムを構築する場合，運用管理ポータル上でインプロセスHTTPサーバの設定をします。

ファイル編集とコマンド実行によってシステムを構築する場合，J2EEサーバ用のusrconf.propertiesにインプロセスHTTPサーバの設定をします。なお，簡易Webサーバを使用する方法でWebコンテナサーバ用のusrconf.propertiesのwebserver.connector.http.で始まるキーに設定していた内容は，インプロセスHTTPサーバではJ2EEサーバ用のusrconf.propertiesのwebserver.connector.inprocess_http.で始まるキーに設定します。

なお，インプロセスHTTPサーバでは，サーブレットエンジンモードの簡易Webサーバよりも機能が多く，同時実行スレッド数の制御などの機能も使用できます。インプロセスHTTPサーバについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「4.　インプロセスHTTPサーバ」を参照してください。

10.3.4　データベースとの接続

WebアプリケーションからJDBCを使用してデータベースに接続をする場合，サーブレットエンジンモードとJ2EEサーバモードではWebアプリケーションの実装方法および設定方法が異なります。

＜この項の構成＞

(1)　データベースとの接続に使用できるクラスとインタフェース

(2)　ルックアップの方法

(3)　コネクションプーリングの方法

(1)　データベースとの接続に使用できるクラスとインタフェース

サーブレットエンジンモードのWebアプリケーションの場合，使用できるのはjava.sqlパッケージで定義されたクラス，インタフェースだけです。java.sql.DriverManagerクラスのgetConnectionメソッドを使ってデータベースコネクションを取得し，コネクションプール機能が使用できます。

J2EEサーバモードのWebアプリケーションの場合，java.sqlパッケージとjavax.sqlパッケージで定義されたクラス，インタフェースが使用できます。このうち，javax.sql.DataSourceクラスのgetConnectionメソッドを使ってデータベースコネクションを取得する方法をお勧めします。この場合，コネクションプール機能が使用でき，さらにローカルトランザクションやグローバルトランザクション配下でデータベースコネクションを使用できるようになります。

javax.sql.DataSourceクラスを使用してデータベースコネクションを取得する例を次に示します。

import javax.naming.InitialContext;
import javax.sql.DataSource;
import java.sql.Connection;

public void doPost(HttpServletRequest req, HttpServletResponse resp)
  throws ServletException, java.io.IOException {

・・・
 InitialContext ic = new InitialContext();              // JNDIの初期コンテキストの生成
 DataSource ds = (DataSource)ic.lookup(“java:comp/env/MyDB”);    // DataSourceをlookupにより取得
 Connection con = ds.getConnection();                   // DataSourceからコネクションを取得・・・
}

(2)　ルックアップの方法

J2EEサーバモードではjavax.sql.DataSourceクラスをJNDIのルックアップで取得します。ルックアップの実装および設定方法を次に示します。なお，ここでは，サーバ管理コマンドを使用した設定方法について説明します。

ルックアップ名称の定義
Webアプリケーションの開発時に，Webアプリケーションのlookupメソッドの引数に「java:comp/env/<<res-ref-name>タグ指定値>」と指定して実装します。

リソースの参照の定義
次のどちらかの方法でリソースの参照を定義します。

Webアプリケーションの開発時に定義します。WebアプリケーションのDD（web.xml）を編集し，<resource-ref>タグでリソースの参照を定義します。

システム構築時に定義します。サーバ管理コマンドでJ2EEアプリケーションをJ2EEサーバにインポートし，WebアプリケーションのWAR属性ファイルの<resource-ref>タグで，リソースの参照を定義します。

DB Connectorへの関連づけ
システム構築時に定義します。サーバ管理コマンドでJ2EEアプリケーションをJ2EEサーバにインポートし，WebアプリケーションのWAR属性ファイルの<resource-ref>タグ下の<linked-to>タグで，関連づけるDB Connectorの表示名を定義します。

なお，DB Connectorでは，ルックアップされるための設定は必要ありません。

(3)　コネクションプーリングの方法

J2EEサーバモードでは，WebアプリケーションはDB Connectorというリソースアダプタを経由してデータベースに接続します。DB Connectorは，Webアプリケーションに対してJDBCのインタフェースを提供します。また，DB Connectorを使用する場合，Webアプリケーションで開始したトランザクションの配下でデータベースに接続できます。

サーブレットエンジンモードで使用するjava.sql.DriverManagerでは，getConnectionメソッドの引数に与えるデータベースURLによって接続先データベースを指定しますが，J2EEサーバモードで使用するDB Connectorは，データベースとの接続方法やトランザクションの形態によって実装が分かれています。このため，用途に合わせてDB Connectorを選択し，接続先データベースやコネクションプーリングなどをDB Connectorのプロパティ（サーバ管理コマンドを使用する場合は，Connector属性ファイルに設定）に定義します。

サーブレットエンジンモードと同様にJ2EEサーバモードでもトランザクション管理なしでデータベースを使用する場合に，Cosminexus DABroker Libraryを使用するときは，次のDB Connectorを選択します。

DBConnector_DABJ_CP.rar
Cosminexus DABroker Library用のDB Connectorです。ローカルトランザクションを使用する場合，またはトランザクション管理なしで使用する場合（トランザクションのサポートレベルにLocalTransactionまたはNoTransactionを指定する場合）に選択します。Cosminexus DABroker LibraryのConnectionPoolDataSourceを使用してデータベースに接続します。接続可能なデータベースは，HiRDBとOracleです。

なお，DBConnector_DABJ_CP.rar以外のDB Connectorについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.6.1　DB Connectorによる接続の概要」を参照してください。

10.3.5　Webアプリケーションに組み込むサーブレットフィルタ

サーブレットエンジンモードとJ2EEサーバモードでは，使用できるサーブレットフィルタ（built-inフィルタ）の種類と設定方法が異なります。

＜この項の構成＞

(1)　built-inフィルタの種類

(2)　built-inフィルタの設定

(1)　built-inフィルタの種類

サーブレットエンジンモードでは，HTTPレスポンス圧縮フィルタを使用できますが，J2EEサーバモードの場合は，これらに加えて，次のbuilt-inフィルタも使用できます。

セッションフェイルオーバ用フィルタ
メモリセッションフェイルオーバ機能で使用するフィルタです。J2EEアプリケーションで実行中のセッション情報を管理します。

built-inフィルタについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.9.1　アプリケーションサーバが提供するサーブレットフィルタ（built-inフィルタ）」を参照してください。

(2)　built-inフィルタの設定

サーブレットエンジンモードの場合は，アプリケーション開発時にWebアプリケーションのDD（web.xml）を直接編集し，built-inフィルタをWebアプリケーションに組み込みます。J2EEサーバモードの場合は，これに加えて，次の手順でbuilt-inフィルタをWebアプリケーションに組み込むことができます。

システム構築時に，サーバ管理コマンドでJ2EEアプリケーションをJ2EEサーバにインポートする。

属性ファイルを編集してフィルタを組み込む。

J2EEサーバモードの場合は，サーバ管理コマンドを使用して設定する方法をお勧めします。

10.3.6　Webアプリケーションのリロード

サーブレットエンジンモードとJ2EEサーバモードでは，Webアプリケーションのリロード機能が異なります。サーブレットエンジンモードとJ2EEサーバモードでのリロード機能の違いを次に示します。

項目 | サーブレットエンジンモードの場合 | J2EEサーバモードの場合
リロード方法 | 更新検知によるリロード | 更新検知によるリロード，またはコマンド（cjreloadapp）によるリロード
リロードの対象範囲 | 更新があったファイル※1 | 更新があったファイルとそのファイルを参照するファイル
セッション情報の引き継ぎ | セッション情報を引き継ぐかどうか変更できる | 常にセッション情報を引き継ぐ
リロードの設定方法 | Webコンテナサーバのusrconf.properties，またはhitachi_web.properties | J2EEサーバのusrconf.properties※2

注※1

参照先のファイルが更新された場合，参照元のファイルは更新されません。

注※2

Smart Composer機能でシステムを構築する場合には，Smart Composer機能で提供するファイルにリロード機能の設定をします。運用管理ポータルでシステムを構築する場合には，運用管理ポータル上でリロード機能の設定をします。

リロード時のリクエストの処理や遅延実行など，このほかのWebアプリケーションのリロード機能には，違いはありません。

サーブレットエンジンモードのリロード機能については，「10.4.2　Webアプリケーションの更新検知とリロード」を参照してください。J2EEサーバモードのリロード機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.8　J2EEアプリケーションの更新検知とリロード」を参照してください。

サーブレットエンジンモードとJ2EEサーバモードのusrconf.propertiesで指定する，リロード機能のキーとそのデフォルト値の対応を次に示します。

設定項目
サーブレットエンジンモードでのusrconf.propertiesのデフォルト値※1
J2EEサーバモードでのusrconf.propertiesのデフォルト値

Webアプリケーションの更新検知
webserver.context.reloadable=false
ejbserver.deploy.context.reload_scope=none

Webアプリケーションの更新検知インターバル
webserver.context.check_interval=1
webserver.context.check_interval
デフォルト値はなし（ejbserver.deploy.context.check_intervalキーに設定した値（デフォルト値は0）を使用する）。

Webアプリケーションの構成ファイル更新用インターバル
webserver.context.update.interval=0
webserver.context.update.interval
デフォルト値はなし（ejbserver.deploy.context.update.intervalキーに設定した値（デフォルト値は0）を使用する）。

Webアプリケーションの遅延実行
webserver.context.reload_delay_timeout=0
webserver.context.reload_delay_timeout=0

JSPの更新検知インターバル
webserver.jsp.check_interval=1
webserver.jsp.check_interval
デフォルト値はなし（ejbserver.deploy.context.check_intervalキーに設定した値（デフォルト値は0）を使用する）。

JSPの構成ファイル更新用インターバル
webserver.jsp.update.interval=0
webserver.jsp.update.interval
デフォルト値はなし（ejbserver.deploy.context.update.intervalキーに設定した値（デフォルト値は0）を使用する）。

セッション情報の引き継ぎ
webserver.session.persistence.enabled=false
－※2

JSPの再コンパイルの有無
webserver.jsp.recompilable=false
－※2

（凡例）－：該当しない

注※1

hitachi_web.propertiesでもデフォルト値は同じです。ただし，webserver.context.check_intervalとwebserver.jsp.check_intervalは，hitachi_web.propertiesでは設定できません。

注※2

J2EEサーバモードのusrconf.propertiesには，対応するキーはありません。常にセッション情報が引き継がれます。JSPがリロード対象となっていて対象ファイルが更新された場合には，再コンパイルが実行されます。

サーブレットエンジンモードでの，Webアプリケーションの更新検知の有無（webserver.context.reloadable），およびJSPの再コンパイルの有無（webserver.jsp.recompilable）の組み合わせを次に示します。

リロード機能の動作 | webserver.context.reloadableキーの値 | webserver.jsp.recompilableキーの値
リロード機能を使用しない | false（デフォルト値） | false（デフォルト値）
サーブレットとJSPをリロードする | true | true
サーブレットだけをリロードする | true | false（デフォルト値）
JSPだけをリロードする | false（デフォルト値） | true

J2EEサーバモードでの，J2EEアプリケーションの適用の有無と適用範囲（ejbserver.deploy.context.reload_scope），Webアプリケーションの更新検知インターバル（webserver.context.check_interval），およびJSPの更新検知インターバル（webserver.jsp.check_interval）の組み合わせを次に示します。

リロード機能の動作 | ejbserver.deploy.context.reload_scopeキーの値 | webserver.context.check_intervalキーの値 | webserver.jsp.check_intervalキーの値
リロード機能を使用しない | none（デフォルト値） | 0 | 0
サーブレットとJSPをリロードする | web | 1以上 | 1以上
サーブレットだけをリロードする | web | 1以上 | 0
JSPだけをリロードする | web | 0 | 1以上

10.3.7　システムの起動および停止方法

サーブレットエンジンモードでシステムを起動および停止する場合には，cjstartwebコマンド，cjstopwebコマンド，cprfstartコマンドなどを使用します。

J2EEサーバモードの場合には，システムの構築方法によって，システムの起動および停止方法が異なります。

Smart Composer機能を使用して構築する場合
cmx_start_target，cmx_stop_targetなどのSmart Composer機能で提供するコマンドを使用して，Webシステム（サービスユニット，J2EEアプリケーション，リソースアダプタ）を一括起動，一括停止します。

運用管理ポータルを使用して構築する場合
運用管理ポータルの「論理サーバの起動／停止」と「論理サーバのアプリケーション管理」で，論理サーバ，J2EEアプリケーション，リソースアダプタを一括起動，一括停止します。

ファイル編集とコマンド実行によってシステムを構築する場合
cjstartsvコマンド，cjstopsvコマンドなどのコマンドを使用して，J2EEサーバなどの各サーバを一つずつ起動，停止します。サーバ管理コマンドを使用して，J2EEアプリケーション，リソースアダプタを起動，停止します。

注意

サーブレットエンジンモードとJ2EEサーバモードで，サーバ起動時の実行時保護機能のデフォルト値が異なるので注意してください。

サーブレットエンジンモードで，cjstartwebコマンドを使用してWebコンテナサーバを起動する場合，デフォルトでは実行時保護機能は無効（有効にする場合には-securityを指定）となっています。

J2EEサーバモードで，cjstartsvコマンドやcjstartrecoverコマンドを使用してJ2EEサーバを起動する場合，デフォルトでは実行時保護機能は有効（無効にする場合には-nosecurityを指定）となっています。

10.3.8　使用するメモリ，スレッド数，ポート番号

サーブレットエンジンモードとJ2EEサーバモードを比較する場合，J2EEサーバモードの方が，機能が多く，メモリやスレッド，ポートなどのリソースを多く消費します。このため，サーブレットエンジンモードからJ2EEサーバモードへ移行する場合には，注意してください。

各プロセスで使用するポートを次に示します。

WebコンテナサーバとJ2EEサーバのポートの対応

デフォルトのポート | 説明 | Webコンテナサーバプロセス | J2EEサーバプロセス※1
80（TCP） | インプロセスHTTPサーバのhttpポート | － | ○
8080（TCP） | 簡易Webサーバのhttpポート | ○ | －
管理用通信ポート | － | ○
8007（TCP） | Webサーバ（リダイレクタ）からのリクエスト受付ポート | ○ | ○
8005（TCP） | cjstopwebコマンドからのプロセス終了要求の受付ポート | ○ | －
900（TCP） | ネーミングサービスのリクエスト受付ポート | － | ○
浮動（TCP）※2 | EJBコンテナのリクエスト受付ポート | － | ○
浮動（TCP）※2 | サーバ管理コマンドのCUIとの通信ポート。 | － | ○
23152（TCP） | RMIレジストリのリクエスト受付ポート | － | ○
浮動（TCP）※2 | 運用監視エージェントの通信ポート | － | 　　○※3

（凡例）○：使用する　－：使用しない

注※1

ここではJ2EEサーバプロセスのポートだけを説明しています。J2EEサーバモードの場合，CTMを使用する場合などで使用するポートが増えます。

注※2

デフォルトの設定です。固定に変更できます。

注※3

Management Serverと連携する場合だけ使用するポートです。

Hitachi Web Serverのポート

デフォルトのポート | 説明
80（TCP） | Hitachi Web Serverのhttpポート
443（TCP） | Hitachi Web Serverのhttpsポート

Management Serverのポート

デフォルトのポート | 説明
28080（TCP） | Management Serverのhttpポート
28005（TCP） | Management Serverの終了要求ポート（ホスト内通信に必要）
28009（TCP） | Management Serverの内部通信ポート（ホスト内通信に必要）

運用管理エージェントのポート

デフォルトのポート | 説明
20295（TCP） | Management Serverとの通信に使用するポート

10.4　サーブレットエンジンモードで使用できるWebコンテナの機能

Webコンテナは，J2EEサーバモードおよびサーブレットエンジンモードで使用されますが，動作モードによって使用できる機能および機能の内容が異なります。この章では，サーブレットエンジンモードで使用できるWebコンテナの機能について説明します。

Webコンテナでは，Webアプリケーションの実行機能を提供するコンテナの機能と，Webサーバと連携するためのリダイレクタの機能を提供しています。

サーブレットエンジンモードで使用できるWebコンテナおよびWebサーバ連携関連の機能を次の表に示します。

表10-14　サーブレットエンジンモードで使用できるWebコンテナおよびWebサーバ連携関連の機能

WebコンテナおよびWebサーバ連携関連の機能 | 参照先マニュアル | 参照個所
Webアプリケーションの実行機能 | このマニュアル | 10.4.1
JSPの事前コンパイルとコンパイル結果の保持 | JSP事前コンパイルを使用しない場合のJSPコンパイル結果 | このマニュアル | 10.4.3
セッション管理機能 | セッションIDおよびCookieへのサーバIDの付加※1 | 基本・開発編(Webコンテナ) | 2.7
アプリケーションのイベントリスナ※2 | このマニュアル | 10.4.4
基本・開発編(Webコンテナ) | 2.8
リクエストおよびレスポンスのフィルタリング※2 | このマニュアル | 10.4.5
基本・開発編(Webコンテナ) | 2.9
HTTPレスポンス圧縮機能 | 基本・開発編(Webコンテナ) | 2.10
EJBコンテナとの連携※2 | このマニュアル | 10.4.7
基本・開発編(Webコンテナ) | 2.11
データベースとの接続 | このマニュアル | 10.4.8
Webコンテナによるスレッドの作成 | このマニュアル | 10.4.9
ユーザスレッドで使用できるアプリケーションサーバの機能※1 | このマニュアル | 10.4.11
同時実行スレッド数の制御※2 | Webコンテナ単位での同時実行スレッド数の制御 | このマニュアル | 10.4.10
基本・開発編(Webコンテナ) | 2.16
エラーページのカスタマイズ※1※3 | 基本・開発編(Webコンテナ) | 2.20
静的コンテンツのキャッシュ※2 | このマニュアル | 10.4.13
基本・開発編(Webコンテナ) | 2.21
簡易Webサーバ機能 | 簡易WebサーバでのIPアドレス指定（バインド先アドレス設定機能）※1 | 基本・開発編(Webコンテナ) | 2.22.1
簡易Webサーバへのアクセスの制御 | このマニュアル | 10.4.14
Webサーバ（リダイレクタ）によるリクエストの振り分け※1 | 基本・開発編(Webコンテナ) | 3.2
通信タイムアウト（Webサーバ連携）※1 | 3.6
IPアドレスの指定（Webサーバ連携）※1 | 3.7
エラーページのカスタマイズ（Webサーバ連携）※1※3 | 3.8
ドメイン名指定でのトップページの表示※2 | このマニュアル | 10.4.12
基本・開発編(Webコンテナ) | 3.9
Webコンテナへのゲートウェイ情報の通知※1 | 基本・開発編(Webコンテナ) | 3.10
SSL使用による認証情報とデータの暗号化※2 | このマニュアル | 10.4.6
基本・開発編(コンテナ共通機能) | 9.2
ロールに基づくWebコンテナのユーザ認証※2 | 9.3
SecurityManagerによるWebコンテナの実行時の保護※2 | 9.4
Webアプリケーションの更新検知とリロード | このマニュアル | 10.4.2

（凡例）

基本・開発編(Webコンテナ)：マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」を示す

基本・開発編(コンテナ共通機能)：マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」を示す

注※1

使用できる機能および使用方法は，J2EEサーバモードとの差異はありません。サーブレットエンジンモードの場合，J2EEサーバをWebコンテナサーバに置き換えてください。

注※2

これらの機能の概要については，動作モードの違いによる差異はありませんが，サーブレットエンジンモードの場合，使用方法や使用できる機能に差異があります。サーブレットエンジンモードの場合の差異については，次項以降を，機能の概要については，参照先に示したマニュアルを参照してください。

注※3

Webサーバとして，Hitachi Web Serverを使用する場合だけ使用できる機能です。Microsoft IISを使用する場合，この機能は使用できません。

アプリケーションサーバで提供するWebコンテナWebコンテナおよびWebサーバ連携関連の機能には，J2EEで規定された機能にアプリケーションサーバ独自の機能を拡張したものと，アプリケーションサーバ独自の機能として提供しているものがあります。アプリケーションサーバ独自の機能かどうかについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「1.2　システムの目的と機能の対応」を参照してください。

以降の節で，サーブレットエンジンモードで使用できるWebコンテナおよびWebサーバ連携関連の機能の詳細について説明します。

参考

アプリケーション開発時に，アプリケーションサーバが提供するcjjsp2javaコマンドを使用することで，JSPファイルからJavaソースファイルを生成し，JSPに記述ミスがないかを確認できます。

＜この節の構成＞

10.4.1　Webアプリケーションの実行

10.4.2　Webアプリケーションの更新検知とリロード

10.4.3　JSPファイルのコンパイル結果の保持

10.4.4　アプリケーションのイベントリスナ

10.4.5　リクエストおよびレスポンスのフィルタリング

10.4.6　Webコンテナのセキュリティ管理

10.4.7　EJBコンテナとの連携

10.4.8　データベースとの接続

10.4.9　Webコンテナによるスレッドの作成

10.4.10　同時実行スレッド数の制御

10.4.11　ユーザスレッドで使用できるアプリケーションサーバの機能

10.4.12　ドメイン名指定でのトップページの表示

10.4.13　静的コンテンツのキャッシュ

10.4.14　簡易Webサーバ機能

10.4.1　Webアプリケーションの実行

Webコンテナでは，Webアプリケーションを実行できます。ただし，サーブレットエンジンモードの場合，Java Servlet2.4仕様，およびJavaServer Pages（JSP）2.0仕様に準拠したWebアプリケーションは実行できません。また，Webコンテナを使用してWebアプリケーションを実行するには，必ずWebサーバとしてHitachi Web ServerまたはMicrosoft IISを使用する必要があります。

＜この項の構成＞

(1)　Webアプリケーションのデプロイとアンデプロイ

(2)　Webアプリケーションを実行する場合の留意事項

(1)　Webアプリケーションのデプロイとアンデプロイ

ここでは，サーブレットエンジンモードの場合のWebアプリケーションのデプロイおよびアンデプロイについて説明します。

(a)　Webアプリケーションのデプロイ

サーブレットエンジンモードの場合，WAR形式のWebアプリケーションをデプロイするには，次に示す二つの方法があります。

WARファイルのコピーによるデプロイ

ディレクトリのコピーによるデプロイ

Webアプリケーションのデプロイの手順については，「10.6.6　Webアプリケーションの設定」を参照してください。

複数のWebアプリケーションのデプロイ

複数のWebアプリケーションをデプロイした場合，Webアプリケーションごとに独立のクラスローダが作成されます。このため，異なるWebアプリケーションで同一のクラス名のクラス（Loginサーブレットなど）を用いた場合でも，別々のクラスローダ上で独立に扱われます。

(b)　Webアプリケーションのアンデプロイ

サーブレットエンジンモードの場合，次に示す二つの方法があります。

WARファイルの削除によるアンデプロイ

ディレクトリの削除によるアンデプロイ

Webアプリケーションのアンデプロイの手順については，「10.6.6　Webアプリケーションの設定」を参照してください。

(2)　Webアプリケーションを実行する場合の留意事項

ここでは，Webアプリケーションを実行する場合の留意事項について説明します。

(a)　サーブレット／JSPのデフォルトマッピングについて

Java Servlet Specification v2.3では，クライアントがリクエストするURLに対してどのサーブレットが呼び出されるかの設定（サーブレットマッピング）をDD（WEB-INF/web.xml）内に記述するように求めていますが，Webコンテナでは，これ以外にも次に示すマッピングをデフォルトで定義しています。

URL | 取り扱い
*.jsp | JSPファイルとして取り扱われます。
/servlet/* | WEB-INF/classes以下にあるサーブレットクラス，またはWEB-INF/lib以下にあるJARファイルに含まれるサーブレットクラスが呼び出されます。

(b)　DD（WEB-INF/web.xml）内のタグが設定されていない場合のデフォルト値について

Webコンテナでは，次に示すタグがDD（WEB-INF/web.xml）に設定されていない場合，次に示すデフォルト値を使用します。

タグ名
設定されていない場合のデフォルト値

welcome-file-list

<welcome-file-list>
   <welcome-file>
       index.jsp
   </welcome-file>
   <welcome-file>
       index.html
   </welcome-file>
   <welcome-file>
       index.htm
   </welcome-file>
</welcome-file-list>

session-timeout
30

mime-mapping
拡張子とMIMEタイプとの対応付け。

DD（WEB-INF/web.xml）にこれらのタグを設定している場合には，次の設定となります。

<welcome-file-list>タグに設定された値が追加されます。

<session-timeout>タグに設定された値で，デフォルト値を上書きします。

<mime-mapping>タグに定義した拡張子単位の設定で，デフォルト値を拡張子単位に上書きします。

なお，DD（WEB-INF/web.xml）のmime-mappingタグにデフォルトで設定されている拡張子とMIMEタイプの対応づけについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「付録B.1　拡張子とMIMEタイプの対応づけ」を参照してください。

(c)　サーブレットのインスタンス作成数

Webアプリケーション単位に同じクラスのサーブレットのインスタンスを一つ作成します。SingleThreadModelを継承したサーブレットのインスタンスも，一般のサーブレットと同様にWebアプリケーション単位に一つ作成します。

ただし，同一のサーブレットおよびJSPに対して，デフォルトのマッピングとDDに記述したマッピングの両方でアクセスすると，それぞれに別のインスタンスが生成されます。

また，SingleThreadModelを継承した単一のサーブレットに対して，Webアプリケーション単位にリクエストが並列に複数到着した場合，各スレッドがオーバラップしないで1スレッドずつ順に実行するように制御します。

(d)　クエリ文字列の解析について

クエリ文字列は，URLの?マーク以降に，"名前=値"の組が一つ以上組み合わさって構成されます。

アプリケーションサーバでは，"名前=値"の部分に複数の"="がある場合，最初の"="より前の文字列が名前，後ろの文字列が値となります。例えば，URLが「http://host/examples?a=b=c」の場合は，「名前"a"の値は"b=c"」と解析されます。

10.4.2　Webアプリケーションの更新検知とリロード

サーブレットエンジンモードでは，Webコンテナ上のアプリケーションの更新を検知し，更新したアプリケーションをリロードする機能を備えています。この機能によって，Webコンテナサーバを再起動することなく，デプロイ済みのサーブレットやJSPを動的に入れ替えることができます。この機能は，Webアプリケーション開発時のテストを支援する機能として利用します。

リロード機能には，次の二つがあります。

Webアプリケーションのリロード機能
Webコンテナサーバ起動中にWebアプリケーションを更新すると，WebコンテナはWebアプリケーションが更新されたことを検知し，更新後のWebアプリケーションをリロードします。

JSPファイルの再コンパイル機能
Webコンテナサーバ起動中にJSPを更新すると，WebコンテナはJSPが更新されたことを検知し，更新後のJSPを再コンパイルします。

これらの機能によって，Webコンテナサーバにロード済み※のサーブレットまたはJSPを，Webコンテナサーバ起動中に更新後のサーブレットまたはJSPに置き換えができます。

注※

Webコンテナサーバの起動後にアクセスされたサーブレット／JSP，またはweb.xmlの<load-on-startup>タグに指定されているサーブレット／JSPを指します。

更新検知の対象となるファイル
Webアプリケーションのリロード機能およびJSPファイルの再コンパイル機能の対象は，webapps下にデプロイされたWebアプリケーションのディレクトリ下のファイルです。
webappsは，次の場所にあります。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps

なお，WARファイルのコピーでのデプロイの場合，Webコンテナサーバ起動後に展開されたディレクトリ内のファイルが対象です。

Webアプリケーションのリロードと，JSPファイルの再コンパイルについて次に示します。

＜この項の構成＞

(1)　Webアプリケーションのリロード

(2)　リロードの動作に関する設定

(3)　JSPファイルの再コンパイル

(1)　Webアプリケーションのリロード

Webアプリケーションのリロードの条件について説明します。

(a)　Webアプリケーションのリロードの条件

Webコンテナサーバ起動後，更新検知対象のファイルが次に示す条件でリロードされます。

表10-15　リロードの条件

更新検知対象のファイル種別
リロードの条件

Windowsの場合

WEB-INF¥classesディレクトリ下のクラスファイルおよびリソースファイル（java.util.ResourceBundleによってロードされたファイルなど）

UNIXの場合

WEB-INF/classesディレクトリ下のクラスファイルおよびリソースファイル（java.util.ResourceBundleによってロードされたファイルなど）

ロード時の更新日時と異なる場合

ロードされたファイルが削除された場合

Windowsの場合

WEB-INF¥libディレクトリ下のJARファイル

UNIXの場合

WEB-INF/libディレクトリ下のJARファイル

ロード時の更新日時と異なる場合

JARファイルが追加された場合

JARファイルが削除された場合

(b)　リロード処理の流れ

Webアプリケーションの更新を検知して，リロードするまでの流れを次の図に示します。

図10-1　Webアプリケーションの更新検知からリロードまでの動作

Webアプリケーションを更新する

WebコンテナがWebアプリケーションの更新を検知する
Webコンテナは，設定した間隔でWebアプリケーションが更新されているかどうかチェックします。この間隔は，更新検知のインターバルで設定します。詳細については，「(2)(a)　更新検知のインターバル」を参照してください。
また，更新を検知してから，手順3.の処理を実施するまでのインターバルを設定できます。インターバルの設定については，「(2)(b)　リソース更新用インターバル」を参照してください。

新規リクエストを実行待ち状態にする
なお，処理中のリクエストはそのまま実行します。
デフォルトでは，新規リクエストを実行待ちにしますが，処理中のリクエストの処理が終わってから，新規リクエストを実行待ちにすることもできます。この場合，リロード遅延実行の設定が必要になります。リロード遅延実行については，「(2)(c)　リロード遅延実行（任意）」を参照してください。リロード遅延実行の設定は任意となります。

Webアプリケーションの終了処理をする
終了処理では次の処理が実行されます。

リロード前のクラスローダにローディングされたサーブレットのインスタンスが破棄されます。サーブレットがdestroyメソッドを実装している場合，destroyメソッドが実行されます。また，JSPファイルから生成されたサーブレットのインスタンスも破棄されます。この際，JSPファイルが，jspDestroyメソッドを実装している場合，jspDestroyメソッドが実行されます。

javax.servlet.ServletContextに登録されたオブジェクトは破棄されます。

セッション情報（javax.servlet.http.HttpSessionオブジェクトに登録したオブジェクト）をシリアライズ※し，セッション情報ファイルに出力する
セッション情報を引き継ぐかどうかを設定できます。セッション情報を引き継ぎたい場合に指定してください。詳細については，「(2)(d)　リロード時のセッション引き継ぎ（任意）」を参照してください。

Webアプリケーション単位のクラスローダを新規に作成する
Webアプリケーションのリロード処理が実行されると，Webアプリケーション単位のクラスローダが新たに作成され，リロード後のリクエスト処理で使用されます。すでにロードされているサーブレットについては，destroyメソッドが実行され，インスタンスを破棄します。

セッション情報ファイルからセッション情報を読み込み，デシリアライズ※する
セッション情報ファイルからセッション情報を読み込み，リロード後のクラスローダ上でデシリアライズします。セッション情報の引き継ぎを設定している場合だけ実施されます。

セッション情報ファイルを削除する
セッション引き継ぎを指定している場合だけ実施されます。

Webアプリケーションの開始処理をする
リロード後は，初回アクセス時に更新後のサーブレットのインスタンスが作成され，initメソッドが実行されます。

リクエスト処理を再開する
3.で実行待ちにしていたリクエストの処理を再開します。

注※

シリアライズ処理，およびデシリアライズ処理の時間は，リロードを実行しているWebアプリケーション上で生成されたセッション数，javax.servlet.http.HttpSessionオブジェクトに登録したオブジェクトの容量などに依存します。

(2)　リロードの動作に関する設定

アプリケーションの更新検知とリロード機能は，デフォルトの設定では実行されません。必要に応じて実行するように設定してください。

この機能では，次の動作をカスタマイズできます。

更新検知のインターバル

リソース更新用インターバル

リロード遅延実行（任意）

リロード時のセッション引き継ぎ（任意）

リロードの動作に関する設定は，Webコンテナサーバのプロパティ，またはWebコンテナ上で動作するWebアプリケーションプロパティとして設定します。アプリケーションの更新検知とリロードの設定については，「10.6.3　Webコンテナサーバの動作設定のカスタマイズ」を参照してください。

(a)　更新検知のインターバル

Webアプリケーションの更新を検知する間隔を設定できます。更新検知は，デーモンスレッドによって実行されます。デフォルトでは1秒間隔となっています。

更新検知インターバルの値を大きくすると，構成ファイルを監視する間隔が長くなり，ファイル更新後のリロードの反映が遅くなります。また，値を小さくすると，リロードの反映が早くなります。

ポイント

更新検知の対象となるファイル数が増えると，更新検知処理のオーバーヘッドが大きくなり，CPU使用率が高くなります。このような場合は，更新検知インターバルを変更することによって，性能への影響が小さくなります。更新検知インターバルの値は大きくすることをお勧めします。

(b)　リソース更新用インターバル

Webアプリケーションの更新を検知してから，処理中のリクエスト数の監視を実施するまでの時間を設定できます。

Webコンテナは，ファイル（リソース）の更新を検知すると，更新するファイルをコピーし，処理中のリクエスト数の監視を開始します。処理中のリクエストの処理が完了すると，コピーしたファイルをロードします。ファイルの容量が大きい場合，ネットワークを経由した場合や，ファイルが複数ある場合には，ファイルコピーなどの処理時間が長くなることがあります。このとき，ファイルコピーが完了する前に処理中のリクエストがなくなると，ファイルコピー中にロードが開始されて，ロードに失敗するおそれがあります。これを回避するため，ファイルコピーに掛かる時間を考慮してコピーが完了してからロードが開始されるように，構成ファイルの更新を検知してから処理中のリクエスト数の監視を開始するまでの時間をリソース更新用インターバルとして設定しておくことができます。

ポイント

リソース更新用インターバルには，実際に掛かるコピー時間にゆとりを持たせた時間を設定することをお勧めします。

複数のファイルを同時に更新する場合，複数のファイルの更新に掛かる時間を算出して，設定してください。

(c)　リロード遅延実行（任意）

ファイル（リソース）の更新を検知してから，リロードを開始するまでの時間を設定できます。リロード遅延実行の時間を設定している場合に，Webアプリケーションの更新を検知すると，リロードの開始を遅延実行に指定した時間まで遅らせます。指定した時間内に処理中のリクエストがなくなるか，または指定した時間がくると，アプリケーションのサービスを停止してリロードを開始します。これによって，処理中のリクエストの実行待ち時間を減らすことができるため，アプリケーションのサービス停止期間を最小限にできます。

なお，デフォルトでは，リロード遅延実行が設定されていません。デフォルトでは次のような動作となります。

Webコンテナがリソースの更新を検知すると，アプリケーションのサービスを停止する

リクエストを次のように処理する

新規のリクエスト：実行待ちにする

処理中のリクエスト：すべてのリクエストを処理する

処理中のリクエストの処理が完了すると，リロードが実施される

リロードの遅延実行が設定されていないと，アプリケーションのサービス停止の期間が長くなります。これを回避するため，リロード遅延実行を設定することをお勧めします。

リロード遅延実行を設定した場合と設定しない場合の，アプリケーションのサービス停止期間の違いを，次の図に示します。

図10-2　アプリケーションのサービスの停止期間の違い

(d)　リロード時のセッション引き継ぎ（任意）

Webアプリケーションのリロード実行前に生成したセッション情報を，リロード後も継続して利用するかどうかを設定できます。これによって，リロード前にjavax.servlet.http.HttpSessionオブジェクトに登録されているオブジェクトを，リロード後も引き続き利用できるようになります。セッションの情報は，シリアライズされてセッション情報ファイルに出力されます。セッション情報ファイルは，リロード処理開始時に作成されます。そして，リロード後にセッション情報がクラスローダ上でデシリアライズされ，セッション情報ファイルはリロード処理完了時に削除されます。

なお，セッション引き継ぎ機能を使用しない場合，リロード処理が実行されるとセッション情報はすべて失われます。

(e)　注意事項

Webアプリケーションのリロード機能を使用する際の，注意について説明します。

●リロード機能の使用に関する注意

Webアプリケーションのリロード機能を使用する場合，web.xmlに<error-page>タグを定義しないでください。

Webアプリケーションのリロード機能を使用する場合，WebアプリケーションからJNIを利用することはできません。リロード処理ではWebアプリケーション単位のクラスローダを置き換えますが，JNIの仕様では，異なるクラスローダ上で同じネイティブライブラリをロードできないという制限があるためです。

Webアプリケーションのリロード機能は，Webアプリケーション単位のクラスローダを入れ替えることによって，Webコンテナ起動中のWebアプリケーションの入れ替えを実現しています。そのため，リロード後にリロード前のWebアプリケーション単位のクラスローダ，またはWebアプリケーション単位のクラスローダでロードされたクラスが参照されるとメモリリークが発生します。
次に，該当する場合を示します。

スレッドの生成
スレッドはコンテキストクラスローダを保持しますが，デフォルトでは親スレッドのコンテキストクラスローダを保持します。Webアプリケーション実行時のスレッドは，Webアプリケーション単位のクラスローダをコンテキストクラスローダとしているため，生成されたスレッドはWebアプリケーション単位のクラスローダをコンテキストクラスローダとします。そのため，リロード後も該当スレッドが存在すると，リロード前のWebアプリケーション単位のクラスローダが解放されないでメモリリークが発生します。

java.lang.Threadクラスまたはその派生クラスのインスタンス生成
java.lang.Threadクラスまたはその派生クラス（以降，スレッドクラス）のインスタンスを作成すると，所属するスレッドグループから該当スレッドクラスのインスタンスが参照されます。スレッドグループからの参照は，スレッドの実行を終了（runメソッドの完了）すると解放されます。そのため，Webアプリケーション内でスレッドクラスのインスタンスを生成し，runメソッドを実行しなかった場合は，該当スレッドクラスのインスタンスが解放されません。また，スレッドはコンテキストクラスローダとしてWebアプリケーション単位のクラスローダを保持しているため，Webアプリケーション単位のクラスローダが解放されないでメモリリークが発生します。

スレッドローカル変数の使用
Webコンテナではリクエストを処理するスレッドはプールされていて，Webコンテナ終了時まで終了しません。そのため，スレッドローカル変数にWebアプリケーションに含まれるクラスのインスタンスを格納すると，メモリリークが発生します。

Webアプリケーション外からの参照
usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）のweb.add.class.pathキーで指定したクラスパスに存在するクラスは，システムクラスローダからロードされます。リロード実行時に該当クラスはアンロードされません。
このため，該当クラスのクラス変数からWebアプリケーション単位のクラスローダ，またはWebアプリケーション単位のクラスローダでロードされたクラスを参照すると，メモリリークが発生します。

Webアプリケーションのリロード機能と，JSPの再コンパイル機能を併用する場合，次のことに注意してください。

JSPファイルだけを更新した場合，Webアプリケーションのリロードは実行されません。

JSPファイルの再コンパイルが実行されている場合には，リロード処理でのJSPの再コンパイルは停止されることがあります。この場合，JSPファイルの再コンパイルは，リロード完了後の該当するJSPに対して初めてアクセスするときに実行されます。また，web.xmlの<load-on-startup>タグに該当するJSPファイルが指定されている場合は，リロード処理内のWebアプリケーションの初期化処理で実行されます。

●リソースの更新に関する注意

次の場合にはメモリ不足が発生するおそれがあるため，リソースの更新はリクエストのピーク時など負荷の高いときを避けて実施してください。

リロードの処理は，クラスローダを再作成してクラスをロードし直すため，メモリを多く消費します（ただし，消費するメモリ使用量は，Webアプリケーションの実装に依存します）。そのため，例えば，複数のWebアプリケーションで，同時にリロード処理を繰り返すと，メモリ不足が発生するおそれがあります。

リロード処理によって不要になったリソースがJavaVMから解放されるタイミングは，JavaVMのガーベージコレクションの実行のタイミングに依存します。リクエストのピーク時など，負荷が高いときにリロードを繰り返すと，ガーベージコレクションを実行するタイミングがなく，メモリ不足が発生するおそれがあります。

複数のリソースを更新する場合，リソース更新用インターバルに，複数のリソースの更新（ファイルコピー）に掛かる時間を指定してください。なお，いったん，リソースを更新したら，リロード処理が完了する前に別のリソースを更新しないようにしてください。

ロード済みのリソース（ファイル）を削除した場合もWebアプリケーションに対する変更と判断されるため，リロードが実行されます。このため，不用意にリソースを削除しないよう，注意してください。

●リロード処理実行時の注意

Webアプリケーションのリロード処理が実行されると，Webアプリケーション単位のクラスローダを置き換えるため，リロード前に作成されたインスタンスをリロード後のサーブレットから使用できません。

更新前のサーブレットがjavax.servlet.ServletContextに登録したオブジェクトはクリア（削除）されます。更新前のサーブレットが生成したセッションは破棄され，更新後のサーブレットにアクセスすると新しいセッションが生成されます。さらに，Webアプリケーションのリロード時には，そのときロードされているJSPもリロードされます。

Webアプリケーションのリロード機能を使用すると，更新検知処理のためのオーバーヘッドが発生し，監視対象のファイル数の増加に伴ってオーバーヘッドが大きくなるため，更新検知間隔を変更して性能への影響を小さくする必要があります。

リロード処理中に，cjstopwebコマンドでWebコンテナサーバに対して終了要求を発行した場合は，次のように動作します。

リロード処理内のWebアプリケーションの初期化処理の開始前の場合
リロード処理を中断し，終了処理が実行されます。

リロード処理内のWebアプリケーションの初期化処理の開始後の場合
リロード処理完了後に，Webコンテナサーバの終了処理が実行されます。このとき，リロード処理による実行待ちのリクエストはエラーになります。

●リロードの処理時間に関する注意

リロード処理時間は，Webアプリケーションの実装に大きく依存します。このため，次の点に注意が必要です。

セッション情報の容量は，シリアライズ処理時間，デシリアライズ処理時間に大きく影響します。シリアライズ対象となるセッション情報は，必要十分な容量にしてください。

リロード処理では，Webアプリケーションの終了処理，初期化処理が実行されます。終了処理，初期化処理が長い場合，リロードの処理時間も長くなり，Webアプリケーションのサービス停止期間にも影響があるため注意してください。ただし，リロード処理で初期化処理が実行されるのは，web.xmlの<load-on-startup>タグを設定したサーブレットやJSPだけです。<load-on-startup>タグを設定していないサーブレットやJSPの初期化処理は，リロード完了後の初回アクセス時に実行されます。

●セッション引き継ぎ機能を使用する場合の注意

リロード時のセッション引き継ぎ機能を使用する場合，javax.servlet.http.HttpSessionに登録するセッション情報は，シリアライズできるオブジェクトである必要があります。

HttpSessionオブジェクトに登録したオブジェクトから参照するオブジェクトは，transientで宣言されているか，またはシリアライズできるオブジェクトである必要があります。以降，参照するオブジェクトも同様です。シリアライズできるオブジェクトについての詳細は，J2SEの仕様書を参照してください。

セッション情報としてシリアライズできないオブジェクトを登録した場合は，エラーが発生します。エラーの内容はオブジェクトによって異なります。

javax.servlet.http.HttpSessionに登録したオブジェクトの場合
HttpSessionオブジェクトに登録したオブジェクトが，シリアライズできないオブジェクトである場合，該当するオブジェクトだけを破棄します。破棄されたオブジェクトは，リロードが完了したあとに使用することはできません。また，該当するオブジェクトが，javax.servlet.http. HttpSessionBindingListenerインタフェースを実装していても，Webコンテナからアンバインドされたイベントは通知されません。

javax.servlet.http.HttpSessionに登録したオブジェクトから参照されるオブジェクトの場合
HttpSessionに登録したオブジェクトから参照されるオブジェクトがシリアライズできないオブジェクトの場合，すべてのセッション情報が破棄されます。HttpSessionに登録したオブジェクトから参照されるオブジェクトが，HttpSessionに登録したオブジェクトの場合も同様に，すべてのセッション情報が破棄されます。

シリアライズ対象となるセッションに登録したオブジェクトのクラス，およびそこから参照されるオブジェクトのクラスを，デシリアライズできない構成に更新してリロードを実行した場合，セッションのデシリアライズに失敗します。デシリアライズに失敗すると，Webアプリケーション上のすべてのセッション情報が破棄されるので注意してください。

(3)　JSPファイルの再コンパイル

Webコンテナに配置されたJSPファイルの更新日時がロード時と異なる場合，再コンパイルされるように設定できます。ただし，JSPファイルから生成されたJavaファイル，またはクラスファイルを更新しても，再コンパイルの対象にはなりません。

JSPの再コンパイル機能は，デフォルトの設定では実行されません。必要に応じて実行するように設定してください。

この機能では，次の動作をカスタマイズできます。

更新検知のインターバル

JSPファイル更新用インターバル

JSPファイルの再コンパイルに関する設定は，Webコンテナサーバのプロパティ，またはWebコンテナ上で動作するWebアプリケーションプロパティとして設定します。アプリケーションの更新検知とリロードの設定については，「10.6.3　Webコンテナサーバの動作設定のカスタマイズ」を参照してください。

(a)　更新検知のインターバル

JSPファイルの更新を検知する間隔を指定できます。更新検知は，デーモンスレッドによって実行されます。デフォルトでは1秒間隔となっています。

ポイント

更新検知の対象となるファイル数が増えると，更新検知処理のオーバーヘッドが大きくなり，CPU使用率またはメモリ使用量が増加します。このような場合は，更新検知インターバルを変更することによって，性能への影響が小さくなります。更新検知インターバルの値は大きくすることをお勧めします。

(b)　JSPファイル更新用インターバル

JSPファイル更新用インターバルとは，JSPファイルの更新を検知してから，JSPファイルをコンパイルするまでの間隔を指します。

設定の指針

JSPファイル更新用インターバルには，実際にファイルのコピーに掛かる時間よりも長い時間を設定することをお勧めします。

複数のファイルを同時に更新する場合，複数のファイルの更新に掛かる時間を算出して，設定してください。

(c)　注意事項

JSPファイルの再コンパイル機能を使用すると，更新検知処理のためのオーバーヘッドが発生します。監視対象のJSPファイル数が増えると，オーバーヘッドも大きくなります。この場合は，更新検知間隔を長くすることで，性能への影響を少なくできます。

includeディレクティブを使用してインクルードされたJSPファイルを更新しても，インクルード元のJSPファイルは再コンパイルされません。再コンパイルを実行する場合には，インクルード元のJSPファイルを更新してください。

10.4.3　JSPファイルのコンパイル結果の保持

JSPは，Webコンテナ上でコンパイルされ，Javaソースファイルおよびクラスファイルが生成されます。Webコンテナでは，JSPのコンパイル結果である，Javaソースファイルおよびクラスファイルを，Webコンテナサーバの再起動時に保持するかどうか設定できます。

JSPのコンパイル結果の保持機能は，デフォルトの設定では実行されません。必要に応じて実行するように設定してください。

JSPのコンパイル結果の保持に関する設定は，Webコンテナサーバのプロパティをカスタマイズして設定します。設定については，「10.6.3　Webコンテナサーバの動作設定のカスタマイズ」を参照してください。

ここでは，コンパイル結果が生成，削除されるタイミングについて説明します。また，Webアプリケーションがアンデプロイされた場合，およびJSPファイルが更新された場合のJSPコンパイル結果の動作についても説明します。

＜この項の構成＞

(1)　コンパイル結果の生成

(2)　コンパイル結果の削除

(3)　Webアプリケーションアンデプロイ時の動作

(4)　JSPファイルを更新する場合の動作

(5)　JSPファイルがインクルードされた場合の注意事項

(1)　コンパイル結果の生成

JSPのコンパイル結果は，次のタイミングで生成されます。

JSPへの初回アクセス時

DD（web.xml）でJSPに対し<load-on-startup>が指定されているWebアプリケーションの開始時

(2)　コンパイル結果の削除

JSPのコンパイル結果は，次のタイミングで削除されます。

Webコンテナサーバの起動時※1

Webコンテナサーバの終了時※2

注※1

次のどちらかの場合にだけ削除されます。

JSPコンパイル結果を保持しない設定にしている場合

JSP用テンポラリディレクトリにJSPコンパイル結果が保持されている場合
これは，サーバが強制終了された場合に備えて実施されます。

注※2

JSPコンパイル結果保持を無効にした場合だけ削除します。

(3)　Webアプリケーションアンデプロイ時の動作

サーブレットエンジンモードの場合，WebアプリケーションをアンデプロイしてもJSPコンパイル結果は削除されません。このため，JSPのコンパイル結果を保持する設定でWebコンテナを稼働したあとにJSPコンパイル結果が不要となった場合，またはWebアプリケーションをアンデプロイした場合は，JSPのコンパイル結果を手動で削除する必要があります。削除方法について次に示します。

削除方法

JSPコンパイル結果の削除をするには，Webコンテナサーバ終了後に，削除対象のWebアプリケーションのJSP用テンポラリディレクトリに作成されるWebアプリケーション単位のディレクトリ以下を削除します。JSP用テンポラリディレクトリは，usrconf.propertiesで設定します。

(4)　JSPファイルを更新する場合の動作

サーブレットエンジンモードでは，JSPファイルを直接編集，またはファイルの上書きで更新できます。JSPコンパイル結果を保持している状態では，JSPの初回ロード時に，保持されたクラスファイルをロードする場合と，更新されたJSPファイルのコンパイル結果であるクラスファイルをロードする場合があります。どちらのクラスファイルをロードするかについては，更新されたJSPファイルと，保持されたクラスファイルの更新日時によって次のように決まります。

更新されたJSPファイルの更新日時が，保持されたクラスファイルの更新日時より新しい場合，保持されたクラスファイルは使用されません。このため，JSPのコンパイルが実行され，コンパイル後のクラスファイルがロードされます。

更新されたJSPファイルの更新日時が，保持されたクラスファイルの更新日時よりも古い場合，保持されたクラスファイルがそのままロードされます。

(5)　JSPファイルがインクルードされた場合の注意事項

includeディレクティブを使用してインクルードされたJSPファイルを更新しても，インクルード元のJSPファイルは再コンパイルされません。再コンパイルを実行する場合には，インクルード元のJSPファイルを更新してください。

10.4.4　アプリケーションのイベントリスナ

Webアプリケーション単位でのイベントリスナ機能があります。アプリケーションイベントリスナは，Webアプリケーションのデプロイ時にインスタンス化されます。インスタンス化されたアプリケーションイベントリスナは，サーブレットコンテキストオブジェクトまたはセッションオブジェクトのどちらか一方，または両方の状態変化イベントを受け取ります。リスナオブジェクトが受け取るイベントを次に示します。

セッションオブジェクトの新規生成

セッションオブジェクトのシリアライズ前※

セッションオブジェクトのデシリアライズ後※

セッションオブジェクトの抹消

セッションオブジェクトの属性の追加，削除，変更

サーブレットコンテキストオブジェクトの生成

サーブレットコンテキストオブジェクトの抹消

サーブレットコンテキストオブジェクトの属性の追加，削除，変更

注※

サーブレットエンジンのベンダ独自処理の都合で，セッションオブジェクトをシリアライズして格納，通信し，別の時点でデシリアライズして処理を再開することが，Servlet APIでは想定されています。

セッションオブジェクトに，これらのイベント通知が設けられている意図は，セッションオブジェクトにデータだけでなく，データベースコネクションやオブジェクトリファレンスなどの資源を持たせられるようにするためです。セッションオブジェクトに資源を持たせるような設計のアプリケーションでは，シリアライズの前にいったん資源を解放し，デシリアライズ後に再び獲得するようにしなければなりません。

セッションオブジェクトに資源を持たせるという構成は，注意深く利用しないとサーバ全体の必要資源量を大幅に増大させてしまい，資源が不足するおそれがあります。このため，イベントリスナ機能は，資源を確保できる場合に利用してください。

10.4.5　リクエストおよびレスポンスのフィルタリング

サーブレット／JSPの，リクエストやレスポンスに対してフィルタリングをする機能です。この機能によって，サーブレット／JSPの実行前のリクエスト，または実行後のレスポンスをラップして，データの変更，リソースに対するトレースの取得などができます。

アプリケーションサーバでは，アプリケーションサーバ独自の機能を使用するためのサーブレットフィルタを提供しています。アプリケーションサーバが提供するサーブレットフィルタを，built-inフィルタといいます。

アプリケーションサーバで提供しているサーブレットフィルタ（built-inフィルタ）のうち，サーブレットエンジンモードで使用できるのは，HTTPレスポンスの圧縮機能を使用するためのbuilt-inフィルタです。

サーブレットエンジンモードで使用できるbuilt-inフィルタの種類と，Webアプリケーションにbuilt-inフィルタを組み込むことによって使用できる機能を次の表に示します。

表10-16　サーブレットエンジンモードで使用できるbuilt-inフィルタの種類

built-inフィルタの種類 | 機能
HTTPレスポンス圧縮フィルタ | サーブレット，JSP，および静的コンテンツへのHTTPリクエストに対するHTTPレスポンスをgzip形式に圧縮します。

なお，built-inフィルタは，HTTPリクエストおよびHTTPレスポンスへの作用や，フィルタ連鎖の順序制約などを考慮して，Webアプリケーションに組み込む必要があります。built-inフィルタに関する制約，およびHTTPレスポンス圧縮フィルタについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.9.1　アプリケーションサーバが提供するサーブレットフィルタ（built-inフィルタ）」を参照してください。

10.4.6　Webコンテナのセキュリティ管理

Webコンテナのセキュリティ管理は，次の内容を除き，J2EEサーバモードの場合と同様です。このため，セキュリティ管理の概要については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「9.　セキュリティ管理」を参照してください。

ここでは，J2EEサーバモードとの差異のある機能について説明します。

＜この項の構成＞

(1)　ロールに基づくWebコンテナのユーザ認証

(2)　SecurityManagerによるWebコンテナの実行時の保護

(1)　ロールに基づくWebコンテナのユーザ認証

サーブレットエンジンモードの場合，Webコンテナのユーザ認証で使用するユーザ情報の管理方法が，J2EEサーバモードとは異なります。

Webコンテナでは，ユーザ情報として，各ユーザのユーザ名，パスワード，および所属するロールを保持，管理します。これらの情報を保持，管理するために，サーブレットエンジンモードでは，次に示す場所に各ユーザのユーザ名，パスワード，および所属するロールを記述します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web-users.xml

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web-users.xml

記述例を次に示します。

<web-users>
 <user name="user1"  password="user1" roles="regular" />
 <user name="admin" password="admin" roles="admin" />
</web-users>

なお，web-users.xmlの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.5　web-users.xml（ユーザ認証情報定義ファイル）」を参照してください。

(2)　SecurityManagerによるWebコンテナの実行時の保護

Java2のSecurityManagerに基づいたWebコンテナの実行時保護を実現します。これによって，次に示すような現象を防ぐことができます。

内部でSystem.exit()などを発行するような，不正なサーブレット，JSPによってWebコンテナ全体が勝手に終了する。

システムプロパティなどを勝手に書き換えるような不正なサーブレット，JSPによって，Webコンテナの実行に不具合が生じる。

サーブレットエンジンモードの場合，-securityオプションを指定して，cjstartwebコマンドを実行することでWebコンテナの保護が有効になります。なお，Webコンテナの実行時の保護機能を使用すると，サーブレットまたはJSPファイルから，EJBを呼び出すことができないので注意してください。

10.4.7　EJBコンテナとの連携

ここでは，サーブレットエンジンモードの場合のEJBコンテナとの連携について説明します。

＜この項の構成＞

(1)　Enterprise Beanの呼び出し方法

(2)　JSPからのEnterprise Beanを呼び出すときのRMI-IIOP通信のタイムアウトを設定するときの注意

(1)　Enterprise Beanの呼び出し方法

WebコンテナはEJBコンテナと連携して，J2EEサーバとして動作します。なお，EJBコンテナとの連携については，J2EEサーバモードの場合と同じです。

ここでは，サーブレットエンジンモード固有のEnterprise Beanの呼び出し方法についてだけ説明します。これ以外のEnterprise Beanの呼び出し方法については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.4　Enterprise Beanの呼び出し」を参照してください。また，Enterprise Bean呼び出しの準備については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.4.2　Enterprise Beanを呼び出すための実装」を参照してください。

Enterprise Beanを呼び出すサーブレット／JSPがWebコンテナサーバで動作している場合

Enterprise Beanを呼び出すサーブレットがWebコンテナサーバで動作しているとき，次の例に示すようにEnterprise Beanを呼び出します。例を次に示します。

例：

Context ctx = new InitialContext();
Object o =
ctx.lookup("HITACHI_EJB/SERVERS/MyServer/EJB/APName/Cart");
CartHome h = (CartHome)PortableRemoteObject.narrow(o, CartHome.class);
Cart c = h.create();
c.call();

(2)　JSPからのEnterprise Beanを呼び出すときのRMI-IIOP通信のタイムアウトを設定するときの注意

Enterprise Beanを呼び出すとき，RMI-IIOP通信にタイムアウトを設定できます。RMI-IIOP通信のタイムアウト時間の設定方法は，Enterprise Beanがどこから呼び出されるかによって異なります。

Enterprise Beanを呼び出すEJBクライアントの形態がJSPやサーブレットの場合で，サーブレットエンジンモードで動作するWebコンテナを利用するときは，クライアント側のJSP，サーブレットが動作するWebコンテナサーバのプロパティをカスタマイズして設定します。設定については，「10.6.3　Webコンテナサーバの動作設定のカスタマイズ」を参照してください。また，RMI-IIOP通信のタイムアウトの概要については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「2.11.5　RMI-IIOP通信のタイムアウト」を参照してください。

10.4.8　データベースとの接続

サーブレットエンジンモードでWebコンテナを利用している場合，WebアプリケーションからCosminexus DABroker Libraryを通じ，Sun JDBC API仕様に従ったデータベースアクセスができます。ただし，使用時には次に示す点に注意する必要があります。

java.sqlパッケージで定義されたクラス，インタフェースだけが使用できます。

java.sql.DriverManagerクラスのgetConnectionメソッドを使ってデータベースコネクションを取得します。

コネクションシェアリング，および分散トランザクションはサポートしていません。

コネクションプール機能を使用できます。コネクションプールの詳細については，「10.5.3(2)　パフォーマンスチューニングのための機能」を参照してください。

Cosminexus DABroker Libraryを使用したデータベースアクセスの詳細については，「11.　Cosminexus DABroker Libraryを使用したデータベース接続」を参照してください。

10.4.9　Webコンテナによるスレッドの作成

Webコンテナでは，Webサーバ連携のためのスレッド，Webアプリケーションのためのスレッドなどを作成します。これらのスレッドに対して，システムのリソースが十分であるか検討します。

ここでは，サーブレットエンジンモードの場合の，Webコンテナが作成するスレッドについて説明します。

＜この項の構成＞

(1)　作成されるスレッドの種類と数

(2)　作成されるスレッドの総数

(1)　作成されるスレッドの種類と数

Webコンテナが作成するスレッドを次に示します。

(a)　Webサーバ連携のためのスレッド

●Webコンテナの簡易Webサーバを使用する場合（任意）

作成するスレッド

TCPのコネクション接続要求を受信するスレッド，および受信したリクエスト処理用スレッドを作成します。

スレッドの数

TCPのコネクション接続要求を受信するスレッドは，1スレッドです。簡易Webサーバが受信したリクエスト処理用スレッドは，最小5スレッド，最大100スレッドです。

リクエスト処理用スレッドは，起動時に5スレッド作成し，同時実行スレッド数が起動済みスレッド数を超えた場合，100スレッドまで作成されます。

なお，サーブレットエンジンモードの場合，Webコンテナの簡易Webサーバの使用は任意となります。

●Webサーバ連携機能を使用する場合

作成するスレッド

リダイレクタからのコネクション接続要求を受信するスレッド，およびリダイレクタから受信したリクエスト処理用スレッドを作成します。

スレッドの数

リダイレクタからのコネクション接続要求を受信するスレッドは，1スレッドです。リダイレクタから受信したリクエスト処理用スレッドは，WebサーバとWebコンテナとのコネクション数分スレッドを作成します。

リダイレクタから受信したリクエスト処理用スレッドは，起動時にwebserver.connector.ajp13.max_threadsに指定された数分作成します（webserver.connector.ajp13.max_threadsのデフォルトは10）。

(b)　Webアプリケーションのためのスレッド

Webアプリケーション単位に次のスレッドを作成します。最小1スレッド，最大3スレッドです。

セッションの有効期限監視スレッド

Webアプリケーションのリロード監視スレッド
（webserver.context.reloadable=trueを設定した場合）

JSPの更新監視スレッド
（webserver.jsp.recompilable=trueを設定した場合）

(c)　メインスレッド

なお，サーブレットエンジンモードの場合，メインスレッドとして1スレッド作成します。

(2)　作成されるスレッドの総数

Webコンテナがデフォルトの設定でプロセス起動時に作成するスレッドの総数を次に示します。ただし，この数値にはWebコンテナ以外，およびJavaVMが作成するスレッドは含まれていません。

作成するスレッドの総数は，レスポンス送信時のタイムアウトを設定しているかどうかによって異なります。

レスポンス送信時のタイムアウトを設定しているとき

スレッド総数=A＋B＋C＋D＋E

レスポンス送信時のタイムアウトを設定していないとき

スレッド総数=A＋B＋C＋D

（凡例）

A：Webコンテナの簡易Webサーバを使用する場合のスレッド数

B：Webサーバ連携機能を使用する場合のスレッド数

C：Webアプリケーション単位のスレッド数

D：メインスレッド

E：レスポンス送信時のタイムアウトを監視するためのスレッド数

このため，プロセス起動時のスレッド総数は次のようになります。

レスポンス送信時のタイムアウトを設定しているときのスレッド総数

=6＋11＋（1×Webアプリケーション数）＋1＋1

=19＋Webアプリケーション数

レスポンス送信時のタイムアウトを設定していないときのスレッド総数

=6＋11＋（1×Webアプリケーション数）＋1

=18＋Webアプリケーション数

プロセス起動後，Webサーバとのコネクション数，簡易Webサーバの同時実行数によってスレッド数が増加します。

10.4.10　同時実行スレッド数の制御

Webコンテナでは，マルチスレッドでサーブレットのリクエストを処理します。このとき，同時に実行できるスレッド数に上限を設定できます。これによって，スラッシングなどによる，パフォーマンスの低下を防止できます。また，適切なスレッド数を設定することで，アクセス状況に従ったパフォーマンスチューニングができます。

サーブレットエンジンモードの場合，同時に実行できるスレッド数は，Webコンテナ単位で制御されます。Webアプリケーション単位でのスレッド数の制御およびURLグループ単位でのスレッド数の制御はできません。

Webコンテナ単位での同時実行スレッド数の制御には，J2EEサーバモードとの機能差異はありません。このため，機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.16　Webコンテナ単位での同時実行スレッド数の制御」を参照してください。

10.4.11　ユーザスレッドで使用できるアプリケーションサーバの機能

ここでは，サーブレットエンジンモードの場合，ユーザスレッドで使用できるアプリケーションサーバの機能について説明します。ユーザスレッドの使用方法については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「5.1　サーブレットおよびJSPの実装時の注意事項」を参照してください。

アプリケーションサーバで提供される各機能について，ユーザスレッドで使用できるかどうかを次に示します。

＜この項の構成＞

(1)　サーブレットAPI

(2)　リソース接続およびトランザクションサービス

(3)　ログ運用および障害検知

(4)　J2EEアプリケーション運用

(5)　コンテナ拡張ライブラリ

(1)　サーブレットAPI

サーブレットAPIをユーザスレッドで使用する場合，リクエストオブジェクトおよびレスポンスオブジェクトは使用できません。リクエスト処理スレッドでだけ使用してください。詳細は，サーブレット仕様書のThread Safetyの項を参照してください。

(2)　リソース接続およびトランザクションサービス

サーブレットエンジンモードで使用できるリソース接続およびトランザクションサービスとして提供される機能が，サーブレット／JSPおよびユーザスレッドで使用できるかどうかを次の表に示します。

表10-17　リソース接続およびトランザクション管理の機能の使用可否（ユーザスレッド）

分類／機能名 | サーブレット／JSP | ユーザスレッド
コネクションプーリング | Webコンテナコネクションプールによるコネクションプーリング | － | －
コネクションプールのウォーミングアップ | ○ | ○
Webコンテナコネクションプールによるコネクション取得リトライ | － | －
コネクションプールクリア | ○ | ○
コネクションのクローズ・解放 | コネクション強制クローズ | × | ×

（凡例）○：使用できる　×：使用できない　－：該当しない

ユーザスレッドでリソース接続およびトランザクションサービスを使用する場合の注意事項を示します。

SingleThreadModelインタフェースを実装したサーブレットで生成したスレッド上で，トランザクションの開始と決着，およびコネクションの取得と解放はできません。

スレッド生成時にトランザクションを引き継ぐことはできません。

トランザクションは，同じスレッド上で開始または決着してください。

スレッド間でコネクションを渡すことはできません。コネクションを使用すると，動作不正となります。

ユーザスレッドでコネクションを取得した場合，コネクションを取得したスレッド上で確実にコネクションをクローズしてください。

(3)　ログ運用および障害検知

サーブレットエンジンモードで使用できるログ運用および障害検知として提供される機能が，サーブレット／JSPおよびユーザスレッドで使用できるかどうかを次の表に示します。

表10-18　ログ運用および障害検知の機能の使用可否（ユーザスレッド）

分類／機能名 | サーブレット／JSP | ユーザスレッド
ユーザログ出力 | ○ | ○
性能解析トレース | ○ | ○

（凡例）○：使用できる

(4)　J2EEアプリケーション運用

J2EEアプリケーション運用機能として提供される機能のうち，Webアプリケーションの通常停止は，サーブレット／JSPおよびユーザスレッドで使用できます。ただし，コンテナでは，ユーザスレッドを停止しません。

(5)　コンテナ拡張ライブラリ

コンテナ拡張ライブラリは，サーブレット／JSPおよびユーザスレッドのどちらでも使用できます。

10.4.12　ドメイン名指定でのトップページの表示

デプロイしたWebアプリケーションにアクセスするとき，URLにドメイン名を指定するだけで，index.htmlやindex.jspなどの，Webアプリケーションのトップページを表示させることができます。

ドメイン名指定でのトップページの表示は，J2EEサーバモードと同じです。ドメイン名指定でのトップページの表示については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.9　ドメイン名指定でのトップページの表示」を参照してください。

ただし，サーブレットエンジンモードの場合は，Webアプリケーションのコンテキストルートを「ROOT」にしてデプロイする必要があります。

サーブレットエンジンモードの場合にドメイン名指定でのトップページの表示をするための設定については，「10.6.6　Webアプリケーションの設定」を参照してください。

10.4.13　静的コンテンツのキャッシュ

一度アクセスした静的コンテンツをメモリ上にキャッシュし，2回目以降のアクセスではキャッシュからブラウザにレスポンスを返すことで，静的コンテンツのレスポンスタイムを短縮できます。

静的コンテンツのキャッシュは，J2EEサーバモードの場合と同じです。静的コンテンツのキャッシュについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.21　静的コンテンツのキャッシュ」を参照してください。

なお，サーブレットエンジンモードの場合，リロード機能またはJSPファイルの再コンパイル機能が有効なときには，静的コンテンツのキャッシュは無効になります。

10.4.14　簡易Webサーバ機能

サーブレットエンジンモードの場合，簡易Webサーバは，Webアプリケーションの動作確認用に利用できます。

注意

簡易Webサーバは，本番運用時にサーブレット，JSPを実行するWebサーバとしては利用できませんので注意してください。

簡易Webサーバを利用するための設定は，Webコンテナサーバのプロパティをカスタマイズして設定します。設定については，「10.6.3　Webコンテナサーバの動作設定のカスタマイズ」を参照してください。

10.5　サーブレットエンジンモードでのリソース接続

ここでは，サーブレットエンジンモードでのリソース接続について説明します。

注意

Cosminexus DABroker Libraryを使用したデータベース接続は，サーブレットエンジンモードでは使用できません。

＜この節の構成＞

10.5.1　接続できるリソースとトランザクションの管理方法

10.5.2　データベース接続の前提条件

10.5.3　Webコンテナコネクションプール機能によるデータベース接続

10.5.1　接続できるリソースとトランザクションの管理方法

サーブレットエンジンモードの場合に接続できるリソースの種類とトランザクションの管理方法について説明します。

＜この項の構成＞

(1)　接続できるリソース

(2)　トランザクションの管理方法

(1)　接続できるリソース

サーブレットエンジンモードで接続できるリソースについて次の表に示します。

表10-19　接続できるリソース（サーブレットエンジンモード）

リソースの種類 | サーブレットエンジンモード
データベース | HiRDB | ○
Oracle | ○
SQL Server | ×
XDM/RD E2 | ×
データベース上のキュー | HiRDB | ×
Oracle | ×
OpenTP1 | SPP | ×
TP1/Message Queue | ×
SMTPサーバ | ×
JavaBeansリソース | ×

（凡例）○：接続できる　×：接続できない

参考

リソースアダプタがNon-Managed環境での使用に対応している場合には，接続できる場合があります。ただし，アプリケーションサーバによるコネクションプーリングやトランザクション管理は利用できません。

(2)　トランザクションの管理方法

サーブレットエンジンモードの場合，トランザクションはアプリケーションサーバで管理されません。

10.5.2　データベース接続の前提条件

サーブレットエンジンモードでデータベースに接続する場合の前提条件を，データベースの種類ごとに示します。

サーブレットエンジンモードの場合，データベース接続には，Webコンテナコネクションプール機能を使用します。

なお，サーブレットエンジンモードでは，次のデータベースには接続できません。

Oracle10g

Oracle11g

SQL Server

XDM/RD E2

＜この項の構成＞

(1)　HiRDBの場合

(2)　Oracle9iの場合

(1)　HiRDBの場合

使用できるJDBCドライバ
使用できるJDBCドライバはCosminexus DABroker Libraryとなります。
Cosminexus DABroker Libraryを使用する場合，HiRDBクライアントをインストールする必要があります。

接続方法
Webコンテナコネクションプール機能を使用して接続します。
なお，サーブレットエンジンモードの場合，トランザクションはアプリケーションサーバで管理されません。

(2)　Oracle9iの場合

使用できるJDBCドライバ
使用できるJDBCドライバはCosminexus DABroker Libraryとなります。Oracle JDBC Thin Driverでは接続できません。
JDBCドライバとしてCosminexus DABroker Libraryを使用する場合，Oracleクライアントをインストールする必要があります。

接続方法
Webコンテナコネクションプール機能を使用して接続します。
なお，サーブレットエンジンモードの場合，トランザクションはアプリケーションサーバで管理されません。

10.5.3　Webコンテナコネクションプール機能によるデータベース接続

サーブレットエンジンモード上で動作するWebアプリケーションからデータベースへ接続する場合，Webコンテナコネクションプーリング機能を利用してデータベースへの接続をプールできます。これによって，コネクション生成時のパフォーマンスを向上できます。

Webコンテナコネクションプール機能での，コネクションの取得方法には次の2とおりがあります。

java.sql.DriverManager.getDriverを使ってjava.sql.Driverのインスタンスを取得し，java.sql.Driver.connectを使ってコネクションを取得する方法

java.sql.DriverManager.getConnectionを使ってコネクションを取得する方法

なお，コネクションプールの詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.1　コネクションプーリング」を参照してください。

＜この項の構成＞

(1)　Webコンテナコネクションプール機能の利用方法

(2)　パフォーマンスチューニングのための機能

(3)　フォールトトレランスのための機能

(1)　Webコンテナコネクションプール機能の利用方法

Webコンテナコネクションプール機能を利用するためには，管理機能用のWebアプリケーションをデプロイし，プール管理情報を登録する必要があります。プール管理情報の登録をするためのコネクションプーリングの設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.1　コネクションプーリング」を参照してください。

また，コネクションの取得処理はWebアプリケーションで実施するため，ユーザ作成のアプリケーションに，コネクションを操作するための記述が必要になります。

コネクションを取得するには，次の2とおりの方法があります。同時に多数のユーザが接続するようなシステムの場合は，ドライバマネージャ内で待ちが発生するため，取得方法1の記述をお勧めします。

取得方法1

String className = "com.hitachi.software.web.jdbc.WccpDriver";
String url = "jdbc:hitachi:wccp://DBID=<データベースID>";

Properties info = new Properties();
info.put("user", "<ユーザID>");
info.put("password", "<パスワード>");

Class.forName(className);
Driver drv = DriverManager.getDriver(url);
Connection con = drv.connect(url, info);
con.close();

取得方法2

String className = "com.hitachi.software.web.jdbc.WccpDriver";
String url = "jdbc:hitachi:wccp://DBID=<データベースID>";
String user = "<ユーザID>";
String password = "<パスワード>";

Class.forName(className);
Connection con = DriverManager.getConnection(url, user, password);
con.close();

(2)　パフォーマンスチューニングのための機能

サーブレットエンジンモードでデータベースに接続する場合に，パフォーマンスチューニングのために使用できる機能を，次の表に示します。

表10-20　サーブレットエンジンモードでデータベースに接続する場合に使用できるパフォーマンスチューニングのための機能

機能 | 使用可否
コネクションプーリング | ○
コネクションシェアリング | ×
コネクションのアソシエーション | ×
ステートメントプーリング | ×
ライトトランザクション | ×
インプロセストランザクションサービス | ×
DataSourceオブジェクトのキャッシング | ×
DB Connectorのコンテナ管理でのサインオンの最適化 | ×
受信バッファのプーリング | ×

（凡例）○：使用できる　×：使用できない

サーブレットエンジンモードの場合のコネクションプーリングについて次に説明します。

コネクションプーリング

サーブレットエンジンモードの場合，プーリングの基本機能として，コネクションプールの生成初期化，コネクションの取得や解放などの機能を提供しています。

コネクションプールの生成および初期化
コネクションプールが生成・初期化されるタイミングは，リソースのスタート処理時または監視・制御機能で提供するAPIのクラスのインスタンスの生成時です。ただし，この時点ではコネクションは生成されません。
コネクションが最初に生成されるのは，最初のコネクション取得要求があったときです。以降，プールの最小値までコネクションをプールします。この動作は，非同期で実施されます。

コネクションの取得と解放
コネクションの取得要求があると，プールから未使用のコネクションを選択し，コネクションの状態を使用中にしてから，クライアントに渡します。
また，コネクションの解放要求があると，使用中になっているコネクションの状態を未使用に設定して，コネクションをプールに返します。なお，コネクションの状態が，再利用できない状態に設定されている場合は，データベースとの接続を切断して，コネクションを削除します。この場合，コネクションはプールに返されません。

例外が発生したコネクションの破棄
java.sql.ConnectionのようなJDBCインタフェースのAPIでSQLException例外が発生すると，コネクションクローズで該当コネクションの接続が維持されていても，コネクションプールに戻さないで破棄します。その結果，Webコンテナコネクションプーリングを使用している場合（java.sql.Connectionインタフェースだけ該当する）に，余分なコネクション生成が発生して性能に影響を与えることがあります。

(3)　フォールトトレランスのための機能

サーブレットエンジンモードでデータベースに接続する場合に，フォールトトレランスのために使用できる機能を，次の表に示します。

表10-21　サーブレットエンジンモードでデータベースに接続する場合に使用できるフォールトトレランスのための機能

機能 | 使用可否
コネクションの障害検知 | ×
コネクション枯渇時のコネクション取得待ち | ×
コネクションの取得リトライ※ | ○
コネクションプールの情報表示 | ○
コネクションプールのクリア | ○
コネクションの強制クローズ | ○
コネクションの自動クローズ | ×
コネクションスイーパ | ×
トランザクションタイムアウト | ×
トランザクションリカバリ | ×
障害調査用SQLの出力 | ×
コネクションプールのクラスタ化 | ×

（凡例）○：使用できる　×：使用できないまたは該当しない

注※　Webコンテナコネクションプールのコネクション取得リトライができます。

以降，サーブレットエンジンモードで使用できるフォールトトレランスのための機能について説明します。

なお，それぞれの機能の概要および目的については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15　フォールトトレランスのための機能」を参照してください。ここでは，サーブレットエンジンモードで特有の説明についてだけ説明します。

コネクションの取得リトライ

J2EEサーバモードとの機能差はありません。マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.3　コネクションの取得リトライ」を参照してください。

コネクションプールの情報表示

コネクションプール内のコネクションの情報を，コマンドを使用して表示できます。コネクションプール情報の表示には，cjweblistpoolコマンドを使用します。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjweblistpool（プール管理情報の一覧表示）」を参照してください。

コネクションプールのクリア

データベースサーバのダウンなどによって，コネクションが切断された場合，プールされているコネクションはコネクションプール内に残ってしまいます。これらのコネクションは，cjwebclearpoolコマンドによって削除できます。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjwebclearpool（プール内のコネクションのクリア）」を参照してください。

コネクションの強制クローズ

アプリケーションのConnection.closeメソッドの記述もれによってクローズされないコネクションは，コネクションプール内で使用中状態のまま再利用されません。これらのコネクションは，cjwebclosepoolコマンドを使用して強制クローズできます。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjwebclosepool（プール内のコネクションの強制切断）」を参照してください。

なお，ユーザスレッドでは使用できません。

10.6　サーブレットエンジンモードの利用方法

互換用のサーバの動作モードとして，Webコンテナだけを使用するサーブレットエンジンモードがあります。ここでは，サーブレットエンジンモードの利用について説明します。

なお，旧バージョンでサーブレットエンジンモードを使用していた場合には，J2EEサーバモードに移行することをお勧めします。

＜この節の構成＞

10.6.1　サーブレットエンジンモードでのシステム構築

10.6.2　Webコンテナサーバのセットアップ

10.6.3　Webコンテナサーバの動作設定のカスタマイズ

10.6.4　トラブルシューティングの資料取得の設定

10.6.5　統合ユーザ管理機能の設定

10.6.6　Webアプリケーションの設定

10.6.7　Webコンテナサーバの作業ディレクトリ

10.6.1　サーブレットエンジンモードでのシステム構築

サーブレットエンジンモードを使用する場合のインストール，システム構築の流れ，システム構築で使用するファイルについて説明します。なお，旧バージョンでサーブレットエンジンモードを使用していた場合の移行情報については，「12.2　サーブレットエンジンモードの場合の移行」を参照してください。

＜この項の構成＞

(1)　インストールと初期設定

(2)　システム構築の流れ

(3)　システム構築で使用するファイル

(1)　インストールと初期設定

サーブレットエンジンモードの場合，インストールと初期設定は，J2EEサーバの場合と同じです。J2EEサーバの場合のインストールと初期設定の概要については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.1　インストールと初期設定の概要」を参照してください。なお，サーブレットエンジンモードの場合には，次のように読み替えてください。

J2EEサーバ→Webコンテナサーバ

cjsetupコマンド→cjwebsetupコマンド

cjstartsvコマンド→cjstartwebコマンド

cjstopsvコマンド→cjstopwebコマンド

cjdumpsvコマンド→cjdumpwebコマンド

また，インストール後のディレクトリ構成については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.9　インストール後のディレクトリ構成」を参照してください。

ここでは，J2EEサーバモードの場合と異なる内容について説明します。

Webコンテナサーバの場合の，インストール方法ごとのユーザ環境の扱いを次の表に示します。

表10-22　インストール方法ごとのユーザ環境の扱い（Webコンテナサーバの場合）

インストール方法 | Webコンテナサーバのユーザ定義 | Webアプリケーション配置ディレクトリ | リダイレクタのユーザ定義
新規インストール | インストーラが，デフォルトのWebコンテナサーバをセットアップし，ユーザ定義を作成します。 | インストーラが，デフォルトのWebコンテナサーバをセットアップし，Webアプリケーション配置ディレクトリを作成します。 | インストーラが，デフォルトの定義を作成します。
上書きインストール | 引き継ぎます。 | 引き継ぎます。 | 引き継ぎます。
アップグレードインストール | 引き継ぎます。 | 引き継ぎます。 | 引き継ぎます。

(a)　インストールとアンインストール

Cosminexus Component Containerを上書きインストールすると，前の設定が自動的に引き継がれます。なお，デフォルトのWebコンテナサーバ（ホスト名称のサーバ）のディレクトリ（<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<ホスト名称>，または/opt/Cosminexus/CC/web/containers/<ホスト名称>）がない場合には，サーバが自動的にセットアップされます。

(b)　環境変数の設定

サーブレットエンジンモードの場合，環境変数の設定は，J2EEサーバモードで，CTMおよびトランザクションサービスの両方を使用しないときの設定と同じです。詳細については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.3　環境変数の設定」を参照してください。

(c)　見積もりと設定

Webコンテナサーバで使用するリソースの見積もり方法を次に示します。

スレッド数
最大スレッド数 = （8＋A＋B＋C＋D＋E＋F）/ 0.8
（凡例）

A：Webサーバの同時接続クライアント数（ただし，Webサーバの同時接続クライアント数がWebコンテナの最大同時実行スレッド数（usrconf.propertiesのwebserver.connector.ajp13.max_threadsキーに指定した値）以下の場合は，Webコンテナの最大同時実行スレッド数を指定する）

B：簡易Webサーバを有効にしている場合は1，無効にしている場合は0

C：簡易Webサーバへの同時接続クライアント数（ただし，簡易Webサーバへの同時接続クライアント数が5以下の場合は5，100以上の場合は100を指定する）

D：デプロイ済みのWebアプリケーションの数

E：Webアプリケーションのリロード機能を使用するWebアプリケーション数（ただし，usrconf.propertiesのwebserver.context.reloadableキーにtrueを指定している場合は，Webアプリケーションのリロード機能を使用するWebアプリケーション数を指定する）

F：JSPファイルの再コンパイル機能を使用するWebアプリケーション数（ただし，usrconf.propertiesのwebserver.jsp.recompilableキーにtrueを指定している場合は，JSPファイルの再コンパイル機能を使用するWebアプリケーション数を指定する）

ファイルディスクリプタ数
最大ファイルディスクリプタ数 = （55＋A＋B＋C＋D×2＋E＋F）/ 0.8
（凡例）

A：Webサーバの同時接続クライアント数（ただし，Webサーバの同時接続クライアント数がWebコンテナの最大同時実行スレッド数（usrconf.propertiesのwebserver.connector.ajp13.max_threadsキーに指定した値）より大きい場合は，Webサーバの同時接続クライアント数+1を指定する）

B：Webコンテナの最大同時実行スレッド数

C：簡易Webサーバを有効にしている場合は1，無効にしている場合は0

D：簡易Webサーバへの同時接続クライアント数

E：Webアプリケーションに含むJARファイルの数

F：usrconf.cfgのadd.class.pathキーに指定したJARファイルの数

(d)　作業ディレクトリ

Webコンテナサーバの作業ディレクトリについては，「10.6.7　Webコンテナサーバの作業ディレクトリ」を参照してください。

(2)　システム構築の流れ

サーブレットエンジンモードでのシステム構築の流れを次の図に示します。

図10-3　システム構築の流れ（サーブレットエンジンモードの場合）

注※

それぞれの参照先については，次の表に示した個所を参照してください。

参照先のマニュアル名は，「Cosminexus アプリケーションサーバ 機能解説」を省略しています。

項番 | 参照先マニュアル | 参照個所
1 | このマニュアル | 10.6.2
2 | 基本・開発編（Webコンテナ） | 付録D.3
3 | このマニュアル | 10.6.3
4 | このマニュアル | 10.6.4
5 | 基本・開発編（Webコンテナ） | 3章
6 | このマニュアル | 10.6.5
7 | このマニュアル | 10.6.6
8 | 運用／監視／連携編 | 2章

図中の1.～8.について説明します。

サーバをセットアップします。
デフォルトの設定のままで利用する場合は，セットアップ不要です。インストール時にセットアップ済みのWebコンテナサーバとは別のサーバ名称を使用したい場合，Webコンテナサーバをセットアップしてください。

Webサーバの設定をします。
使用するWebサーバとして，Hitachi Web Server，またはMicrosoft IIS（Windowsの場合）の設定をします。

サーバをカスタマイズします。
デフォルトの設定のままで利用する場合は，カスタマイズ不要です。Webコンテナサーバが使用するネーミングサービス，JavaVMの起動オプションなどを変更したい場合や，コンテナ拡張ライブラリ，コネクションプーリングなど特定の機能を使用したい場合には，アプリケーションサーバが提供するユーザ定義ファイルやコマンドを使用して，Webコンテナサーバの動作を設定，カスタマイズします。

トラブルシューティングの資料取得の設定をします。
デフォルトの設定のままで利用する場合は，設定不要です。ただし，OSの統計情報，ユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合），JavaVMのガーベージコレクションのログは，事前に取得のための設定をしておかないと，取得できません。これらの資料はトラブルシューティングで必要となるため，取得することをお勧めします。
これらの資料を取得する場合や，ほかの資料の取得設定を変更したい場合に，トラブルシューティングの資料取得の設定をしてください。

Webサーバとの連携の設定をします。
Webサーバと連携しない場合は，設定不要です。リダイレクタを利用したリクエストの振り分け，通信タイムアウト，エラーページのカスタマイズなど，Webサーバと連携するための設定をします。

統合ユーザ管理機能の設定をします。
統合ユーザ管理機能を使用しない場合は，設定不要です。アプリケーションサーバのシステムにログインするユーザを統合管理するための設定をします。ユーザ認証情報を格納するLDAPディレクトリサーバや，統合ユーザ管理のコンフィグレーションファイルを設定します。

Webアプリケーションの設定をします。
WARファイルをWebコンテナサーバにデプロイします。

システムを起動して，システムの動作を確認します。

参考

運用支援機能を持つプログラムを利用することで，システムで運用操作の一括実行や自動実行などの運用方法を実現することもできます。この場合には，図10-3の環境構築に加えて，運用支援機能を持つプログラムの設定が必要になります。運用支援機能を持つほかのプログラムを使用する場合には，使用しているプログラムのマニュアルなどを参照して，環境を構築してください。

(3)　システム構築で使用するファイル

ここでは，システムの構築で使用するファイルのうち，主なファイルについて説明します。ここで説明していないファイルについては，システム構築の手順の中で適宜説明します。

注意

ファイルを変更する場合は，Webコンテナサーバを停止してください。Webコンテナサーバの稼働中にファイルの内容を変更した場合の動作は保証されません。

usrconf.properties（ユーザプロパティファイル）
Webコンテナサーバのユーザプロパティを定義するファイルです。
ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥usrconf.properties

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties

usrconf.cfg（オプション定義ファイル）
WebコンテナサーバのJavaVMの起動オプションを定義するファイルです。
ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥usrconf.cfg

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/usrconf.cfg

web.policy（セキュリティポリシーファイル）
Webコンテナサーバのセキュリティポリシーを定義するファイルです。
ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web.policy

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web.policy

hitachi_web.properties（Webアプリケーションプロパティファイル）
WebアプリケーションごとのプロパティをWebコンテナサーバのプロパティに指定するファイルです。
ファイルの格納場所を次に示します。

Windowsの場合
<WebアプリケーションのWEB-INFディレクトリ>¥hitachi_web.properties

UNIXの場合
<WebアプリケーションのWEB-INFディレクトリ>/hitachi_web.properties

hitachi_web.propertiesを変更した場合，WARファイルを作成，インポートし直してください。

web-users.xml（ユーザ認証情報定義ファイル）
ユーザ名，パスワード，所属するロールなどのユーザ認証情報を定義するファイルです。
ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web-users.xml

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web-users.xml

10.6.2　Webコンテナサーバのセットアップ

Webコンテナサーバは，製品のインストール時にセットアップ済みです。デフォルトの設定では，Webコンテナサーバ名はホスト名です。デフォルトの設定を変更したい場合には，Webコンテナサーバをセットアップしてください。また，同じホスト内で複数のWebコンテナサーバを起動する場合には，それぞれのWebコンテナサーバに別のサーバ名を割り当てる必要があるため，Webコンテナサーバをセットアップしてください。

Webコンテナサーバはサーバ名称によって識別されます。各コマンドの引数にサーバ名称を指定することで，複数のWebコンテナを開始したり，管理したりできます。また，Webコンテナサーバのサーバ名称は，J2EEサーバの名称とは独立して管理されます。

Webコンテナサーバでは，次に示すファイル，ディレクトリがサーバ名称ごとに独立に管理されます。

ユーザ定義ファイル

Webアプリケーション配置ディレクトリ

ログファイル格納ディレクトリ

一時ファイル格納ディレクトリ

インストール時には，インストールされたマシンのホスト名がデフォルトのサーバ名称として設定されます。新たにサーバ名称を設定するには，cjwebsetupコマンドを実行します。なお，UNIXの場合，コマンドの実行には，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）が必要です。

Windowsの場合

"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjwebsetup サーバ名称"

UNIXの場合

#　/opt/Cosminexus/CC/web/bin/cjwebsetup サーバ名称

なお，同一マシン内では，同じサーバ名称でcjwebsetupコマンドを複数回実行してはいけません。実行した場合エラーになります。Webコンテナサーバを再セットアップする場合，cjwebsetup -d <サーバ名称>でサーバの環境をいったん削除してから再度セットアップコマンドを実行してください。cjwebsetupコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjwebsetup（Webコンテナサーバのセットアップとアンセットアップ）」を参照してください。

同一マシンで複数のWebコンテナを同時に起動する場合，使用するポート番号が重ならないように，usrconf.propertiesのユーザ定義を正しく設定する必要があります。また，webserver.connector.ajp13.portキーで設定されているポート番号に対し，同時に起動するWebコンテナ間で異なる値を使用するように設定してください。webserver.connector.http.portキーについても，同様に異なるポート番号を設定するか，またはwebserver.connector.http.enabledキーにfalseを設定することで，ポート番号を使用しないようにする必要があります。さらに，webserver.shutdown.portキーについても，ポート番号が重ならないように注意する必要があります。

10.6.3　Webコンテナサーバの動作設定のカスタマイズ

ここでは，Webコンテナサーバの動作設定のカスタマイズについて説明します。

デフォルトで設定されているWebコンテナサーバの動作設定を変更したい場合には，ユーザ定義ファイルを編集して，Webコンテナサーバの動作をカスタマイズする必要があります。例えば，Webコンテナサーバが使用するコンテナ，ログなどの設定を変更したい場合には，usrconf.propertiesを編集してください。また，WebコンテナサーバのJavaVMの起動オプションなどを変更したい場合には，usrconf.cfgを編集してください。

＜この項の構成＞

(1)　Webコンテナサーバの動作設定のカスタマイズの方法

(2)　コンテナ拡張ライブラリの設定

(3)　JSPファイルのコンパイル結果の保持の設定

(4)　アプリケーションの更新検知とリロードの設定

(5)　コネクションプーリングの設定

(1)　Webコンテナサーバの動作設定のカスタマイズの方法

Webコンテナサーバの動作設定のカスタマイズでは，ユーザ定義ファイルを編集して，サーバ名で識別されるWebコンテナサーバ単位に，Webコンテナサーバの動作をカスタマイズします。

(a)　カスタマイズの前提

カスタマイズ対象のWebコンテナサーバのセットアップが完了していることが前提になります。また，UNIXの場合，カスタマイズにはroot権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）が必要です。

(b)　カスタマイズ対象のユーザ定義ファイル

次の五つのユーザ定義ファイルをテキストエディタなどで編集して，Webコンテナサーバの動作をカスタマイズします。

usrconf.properties（ユーザプロパティファイル）

usrconf.cfg（オプション定義ファイル）

web.policy（セキュリティポリシーファイル）

hitachi_web.properties（Webアプリケーションプロパティファイル）

web-users.xml（ユーザ認証情報定義ファイル）

これらのユーザ定義ファイルの詳細については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.6　web.policy（SecurityManager定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.2　hitachi_web.properties（Webコンテナサーバ用Webアプリケーションプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.5　web-users.xml（ユーザ認証情報定義ファイル）」

(c)　Webコンテナサーバのカスタマイズで設定できる主な項目

Webコンテナサーバのカスタマイズでユーザ定義ファイルを編集して設定できる項目のうち，主な項目とその項目を設定するユーザ定義ファイルおよびキーを次の表に示します。キーの詳細，およびここで説明していないキーについては，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.1　Webコンテナサーバで使用するファイルの一覧」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.2　hitachi_web.properties（Webコンテナサーバ用Webアプリケーションプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.5　web-users.xml（ユーザ認証情報定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.6　web.policy（SecurityManager定義ファイル）」

表10-23　ユーザ定義ファイルのカスタマイズで設定できる主な項目（サーブレットエンジンモードの場合）

分類
項目
設定ファイル
設定内容

ネーミングサービス
ネーミングのキャッシング
usrconf.properties
次のキーを指定します。

ejbserver.jndi.cacheキーに，ネーミングでのキャッシングを有効にするかどうかを指定します。

ejbserver.jndi.cache.intervalキーに，キャッシュクリアの間隔を設定します。

ejbserver.jndi.cache.interval.clear.optionキーに，キャッシュクリアの範囲を指定します。

ネーミングサービスの通信タイムアウト
usrconf.properties
ejbserver.jndi.request.timeoutキーに，ネーミングサービスとの通信タイムアウト時間を指定します。

コンテナ
コンテナ拡張ライブラリ
usrconf.cfg
usrconf.cfgで，コンテナ拡張ライブラリ用のJARファイルのパスをWebコンテナサーバのシステムクラスパスに追加します。詳細については，「(2)　コンテナ拡張ライブラリの設定」を参照してください。

RMI-IIOP通信のタイムアウト
usrconf.properties
ejbserver.rmi.request.timeoutキーに，RMI-IIOP通信のクライアントとサーバ間の通信タイムアウト時間を指定します。

Webコンテナ単位での同時実行スレッド数の制御
usrconf.properties
webserver.connector.ajp13.max_threadsキーに，Webコンテナ単位での同時実行スレッド数を指定します。

Webコンテナの通信タイムアウト
usrconf.properties
webserver.connector.ajp13.receive_timeoutキーに，Webサーバからのリクエスト待ち時間（秒）を設定します。詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.6.5　リクエスト送受信時の通信タイムアウトの設定（Smart Composer機能を使用しない場合）」を参照してください。

JSPファイルのコンパイル結果の保持
usrconf.properties
次のキーを指定します。

webserver.work.cleanキーに，コンパイル結果を保持するかどうかを指定します。

webserver.work.directoryキーに，コンパイル結果の出力先を指定します。

設定方法については，「(3)　JSPファイルのコンパイル結果の保持の設定」を参照してください。

静的コンテンツのキャッシュ
－
サーブレットエンジンモードの場合は，WebアプリケーションのDD（web.xml）を直接編集して静的コンテンツのキャッシュの設定をします。DD（web.xml）を直接編集して，Webコンテナ単位で静的コンテンツのキャッシュ機能を使用するかどうか，キャッシュを許可する静的コンテンツのメモリサイズ，およびファイルサイズの上限値を指定します。静的コンテンツのキャッシュ機能を使用する場合のDDの定義については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.21　静的コンテンツのキャッシュ」を参照してください。

アプリケーションの更新検知とリロード
usrconf.properties
hitachi_web.properties
Webアプリケーションが更新された場合に検知する機能，およびJSPファイルが更新された場合にリロードする設定を，usrconf.propertiesまたはhitachi_web.propertiesに指定します。設定方法については，「(4)　アプリケーションの更新検知とリロードの設定」を参照してください。

リモートインタフェースでの通信障害発生時のEJBクライアントの動作
usrconf.properties
WebコンテナサーバがEJBクライアントの場合に，ejbserver.container.rebindpolicyキーに障害発生時の動作を指定します。

Webコンテナコネクションプーリング機能
プール管理情報設定ファイル
Webアプリケーションからデータベースへ接続する場合，Webコンテナコネクションプーリング機能を利用してデータベースへの接続をプールできます。設定方法については，「(5)　コネクションプーリングの設定」を参照してください。

Webサーバ
通信路の暗号化レベルの要請
usrconf.properties
webserver.connector.redirect_https.portキーに，転送先のhttpsのポート番号を指定します。
また，通信路の暗号化レベルを要請するには，さらに，通信路の暗号化レベルの要請をDD（WEB-INF/web.xml）内に指定する必要があります。

簡易Webサーバ機能を使用するかどうかの設定
usrconf.properties
webserver.connector.http.enabledキーに，簡易Webサーバ機能を使用するかどうかを指定します。デフォルトでは使用しない設定になっています。

簡易Webサーバへのアクセス許可
usrconf.properties
webserver.connector.http.permitted.hostsキーに，簡易Webサーバへのアクセスを許可するホストのIPアドレスまたはホスト名を指定します。
デフォルトでは次のように設定されています。

ポート番号

8080

同一ホスト内で複数のWebコンテナを開始する場合，各Webコンテナで使用するポート番号が重複しないように，次に示すユーザ定義用カスタマイズキーで設定してください。

ドキュメントルート

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public

UNIXの場合
/opt/Cosminexus/CC/server/public

ログ
ログの出力先や出力レベルの変更
usrconf.cfg，
usrconf.properties
usrconf.cfgのweb.server.log.directoryキーに，ログの出力先を指定します。また，usrconf.propertiesのejbserver.loggerから始まるキーに，ログサイズとログレベルを指定します。詳細については，「10.6.4(2)　Webコンテナサーバのログ取得の設定」を参照してください。

Webアプリケーションのユーザログ出力
usrconf.properties，
web.policy
ejbserver.applicationから始まるキーに，ログの出力先，ログレベル，ログ面数，使用するフィルタ，フォーマッタなどを指定します。また，web.policyファイルにセキュリティポリシーを指定します。詳細については，「10.6.4(10)　Webアプリケーションのユーザログ出力の設定」を参照してください。

ユーザスレッドの生成
ユーザスレッド生成のための権限
web.policy
cjstartwebコマンドに-security オプションを指定し，Webコンテナサーバの実行時保護機能を有効にした場合，ユーザがプログラムの中で明示して生成するスレッド（ユーザスレッド）を生成するためには，対象となるサーブレットやJSPにスレッドの生成権限を与える必要があります。
詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.14.2　ユーザスレッド生成のための権限の設定」を参照してください。ただし，サーブレットエンジンモードの場合は，server.policyファイルではなくweb.policyファイルに設定してください。

（凡例）－：該当しない

(2)　コンテナ拡張ライブラリの設定

コンテナ拡張ライブラリは，Enterprise Bean，サーブレット，JSPが利用する共通のライブラリです。コンテナ拡張ライブラリを利用することで，Enterprise Bean，サーブレット，JSPから共通のライブラリを呼び出せるようになります。

ここでは，コンテナ拡張ライブラリを使用するための設定について説明します。機能の詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「13.　コンテナ拡張ライブラリ」を参照してください。なお，コンテナ拡張ライブラリがJNIを利用する場合は，サーバ起動・停止フック機能を使用します。サーバ起動・停止フック機能の実装については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「13.4　サーバ起動・停止フック機能」を参照してください。

コンテナ拡張ライブラリを使用するためには，次の設定が必要です。

コンテナ拡張ライブラリ用のJARファイルを作成します。
コンテナ拡張ライブラリについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「13.2　コンテナ拡張ライブラリの利用」を参照してください。

Webコンテナサーバ用のusrconf.cfgのweb.add.class.pathキーで，手順1.で作成したJARファイルのパスをWebコンテナサーバのシステムクラスパスに指定します。

コンテナ拡張ライブラリからJNI機能を使用する場合は，Webコンテナサーバ用のusrconf.cfgのadd.library.pathキーで，JNI用ライブラリの検索パスを指定します。

コンテナ拡張ライブラリからJNI機能を使用する場合は，Webコンテナサーバ用のusrconf.propertiesのejbserver.application.InitTermProcessClassesキーに，サーバ起動・停止フック機能のクラス名を指定します。

ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」を参照してください。

ユーザ定義ファイルの設定例を示します。この例では，コンテナ拡張ライブラリのJARファイルは「extended_container.jar」で，そのコンテナ拡張ライブラリがJNIを使用して「extended_container.dll」（UNIXの場合，extended_container）を呼び出します。

Webコンテナサーバ用のusrconf.cfgの設定例を次に示します。

Windowsの場合

# system classpath
web.add.class.path=c:¥jar¥extended_container.jar

# ADM service
web.adm.service=false

# library path
add.library.path=c:¥lib

UNIXの場合

# system classpath
web.add.class.path=/work/classes/extended_container.jar

# library path
add.library.path=/work/lib

(3)　JSPファイルのコンパイル結果の保持の設定

ここでは，JSPコンパイル結果の保持に関する設定について説明します。

(a)　JSPコンパイル結果保持の設定方法

JSPのコンパイル結果は，デフォルトでは保持する設定となっています。この設定は，usrconf.propertiesのwebserver.work.cleanキーでの指定で，変更できます。

デフォルトでは，次のように設定されています。

webserver.work.clean=false

webserver.work.cleanキーにfalseが設定されていると，コンパイル結果を保持します。サーバ終了時にJSPコンパイル結果を削除する場合は，webserver.work.cleanキーにtrueを設定します。

usrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」を参照してください。

(b)　JSPコンパイル結果の出力先の設定

JSPコンパイル結果は，JSP用テンポラリディレクトリ下に出力されます。JSP用テンポラリディレクトリは，usrconf.propertiesのwebserver.work.directoryキーに設定します。デフォルトの出力先を次に示します。

デフォルトの出力先

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥work

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/work

JSP用テンポラリディレクトリ下にはWebアプリケーション単位でディレクトリが作成され，該当するWebアプリケーション内のJSPコンパイル結果が出力されます。

Webアプリケーション単位の出力先

JSP用テンポラリディレクトリ下に作成されるWebアプリケーション単位のディレクトリは，コンテキストルート名を基に次の規則に従ったディレクトリ名となります。

コンテキストルート名にドル記号（$），パーセント（%），プラス記号（+）が含まれる場合は，次に示す文字に変換します。なお，サーブレットエンジンモードの場合は，コンテキストルート名にスラッシュ（/）は使用できません。

変換前の文字 | 変換後の文字
$ | $24
% | $25
+ | $2b

例：

サーブレットエンジンモードで，JSP用テンポラリディレクトリがデフォルト，コンテキストルート名が「J2EE_AP1%WEB_AP1_war」である場合，該当するWebアプリケーションのJSPコンパイル結果の出力先を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥work¥J2EE_AP1$25WEB_AP1_war

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/work/J2EE_AP1$25WEB_AP1_war

注意

JSP用テンポラリディレクトリの設定を変更する場合

JSPコンパイル結果を保持する設定でWebコンテナを稼働したあと，JSP用テンポラリディレクトリの設定を変更した場合，変更前のJSP用テンポラリディレクトリは削除されません。このため，手動で削除する必要があります。

(4)　アプリケーションの更新検知とリロードの設定

サーブレットエンジンモードでは，Webアプリケーション開発時のテストを支援する機能として，Webコンテナ上のアプリケーションの更新を検知し，更新したアプリケーションをリロードする機能を備えています。

ここでは，アプリケーションの更新を検知し，リロードする機能を使用する場合の設定について説明します。また，JSPファイルが更新された場合に，更新後のJSPを再コンパイルする機能の設定についても説明します。

(a)　リロードの動作に関する設定

Webアプリケーションのリロード機能を使用するためには，次に示す設定が必要となります。設定内容と設定ファイルについて説明します。

●リロード機能を使用するための設定

Webアプリケーションのリロード機能を使用する場合は，usrconf.propertiesまたはhitachi_web.propertiesに次の指定をします。

webserver.context.reloadable=true

●更新検知のインターバル

Webアプリケーションの更新を検知する間隔を指定できます。更新検知は，デーモンスレッドによって実行されます。デフォルトでは1秒間隔となっています。

デーモンスレッドの実行間隔を変更する場合，usrconf.propertiesのwebserver.context.check_intervalキーに値（単位：秒）を指定します。

ポイント

更新検知の対象となるファイル数が増えると，更新検知処理のオーバーヘッドが大きくなり，CPU使用率が高くなります。このような場合は，更新検知インターバルを変更することによって，性能への影響が小さくなります。更新検知インターバルの値は大きくすることをお勧めします。

●リソース更新用インターバル

リソース更新用インターバルとは，Webアプリケーションの更新を検知してから，処理中のリクエスト数の監視を実施するまでの時間を指します。

リソース更新用インターバルは，usrconf.propertiesまたはhitachi_web.propertiesのwebserver.context.update.intervalキーに値（単位：秒）を指定します。

●リロード遅延実行（任意）

リロード遅延実行機能を使用する場合は，ファイル（リソース）の更新を検知してから，リロードを開始するまでの時間を設定します。

リロード遅延実行は，usrconf.propertiesまたはhitachi_web.propertiesのwebserver.context.reload_delay_timeoutキーに値（単位：秒）を指定します。

●リロード時のセッション引き継ぎ（任意）

Webアプリケーションのリロード実行前に生成したセッション情報を，リロード後も継続して利用するかどうかを設定します。

セッション情報を引き継ぐかどうかの指定は，usrconf.propertiesまたはhitachi_web.propertiesのwebserver.context.reload_enabledキーに指定します。セッション情報を引き継ぐ場合は「true」，引き継がない場合は「false」を指定します。デフォルトは「false」で，セッション情報は引き継ぎません。

なお，セッション情報を引き継ぐ場合，セッション情報は，シリアライズされて，セッション情報ファイルに出力されます。次に，セッション情報ファイルの出力先と，出力先ディレクトリの変更方法について説明します。

セッション情報ファイルの出力先

セッション情報ファイルはデフォルトでは次のディレクトリに作成されます。

ディレクトリ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名>¥work¥<コンテキストルート名>¥cjwebsession.dat

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/work/<コンテキストルート名>/cjwebsession.dat

なお，出力先ディレクトリはWebコンテナサーバ起動時に作成されます。作成されたディレクトリは，Webコンテナサーバを終了しても削除されません。ディレクトリが不要になった場合は，手動で削除してください。

セッション情報ファイルの出力先ディレクトリの変更

セッション情報ファイルの出力先は変更できます。変更するには，usrconf.propertiesのwebserver.session.work.directoryキーに，変更後の出力先ディレクトリを指定します。

出力先のディレクトリを変更するときの設定例を次に示します。

出力先ディレクトリ変更の設定例

Windowsの場合（C:¥tmp¥session_workに変更する場合）
webserver.session.work.directory=C:/tmp/session_work

UNIXの場合（/usr/tmp/session_workに変更する場合）
webserver.session.work.directory=/usr/tmp/session_work

なお，この例の場合，コンテキストルートが“examples”のWebアプリケーションのセッション情報ファイルは，次に示すパスに生成されます。

Windowsの場合
C:¥tmp¥session_work¥examples¥cjwebsession.dat

UNIXの場合
/usr/tmp/session_work/examples/cjwebsession.dat

●設定ファイル

リロードに関する設定は，usrconf.propertiesまたはhitachi_web.propertiesのどちらかで設定します。なお，両方のファイルに設定している場合は，hitachi_web.propertiesの指定が優先されます。設定項目と，設定できるファイルを次の表に示します。

表10-24　リロードに関する設定項目と設定ファイル

設定項目 | ファイル名
usrconf.properties | hitachi_web.properties
リロード機能を使用するための設定 | ○ | ○
更新検知のインターバル | ○ | ×
リソース更新用インターバル | ○ | ○
リロード遅延実行 | ○ | ○
セッション情報の引き継ぎ | ○ | ○
セッション情報ファイルの出力先 | ○ | ×

（凡例）○：設定できる　×：設定できない

usrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」を参照してください。hitachi_web.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.2　hitachi_web.properties（Webコンテナサーバ用Webアプリケーションプロパティファイル）」を参照してください。

(b)　JSPファイルの再コンパイルに関する設定

JSPファイルの再コンパイル機能を使用するためには，次に示す設定が必要となります。設定内容と設定ファイルについて説明します。

●再コンパイル機能を使用するための設定

JSPファイルの再コンパイル機能を使用する場合は，usrconf.propertiesまたはhitachi_web.propertiesに次の内容を指定します。

webserver.jsp.recompilable=true

●更新検知のインターバル

JSPファイルの更新を検知する間隔を変更する場合は，usrconf.propertiesのwebserver.jsp.check_intervalキーに値（秒単位）を指定します。デフォルトでは1秒間隔となっています。

●JSPファイル更新用インターバル

JSPファイル更新用インターバルとは，JSPファイルの更新を検知してから，JSPファイルをコンパイルするまでの間隔を指します。

JSPファイル更新用インターバルは，usrconf.propertiesまたはhitachi_web.propertiesのwebserver.jsp.update.intervalキーに値（単位：秒）を指定します。

●設定ファイル

JSPファイルの再コンパイルに関する設定は，usrconf.propertiesまたはhitachi_web.propertiesのどちらかで設定します。なお，両方のファイルに設定している場合は，hitachi_web.propertiesの指定が優先されます。設定項目と，設定できるファイルを次の表に示します。

表10-25　JSPファイルの再コンパイルに関する設定項目と設定ファイル

設定項目 | ファイル名
usrconf.properties | hitachi_web.properties
JSPファイル再コンパイル機能を使用するための設定 | ○ | ○
更新検知のインターバル | ○ | ×
JSPファイル更新用インターバル | ○ | ○

（凡例）○：設定できる　×：設定できない

(5)　コネクションプーリングの設定

サーブレットエンジンモード上で動作するWebアプリケーションからデータベースへ接続する場合，Webコンテナコネクションプーリング機能を利用してデータベースへの接続をプールできます。これによって，コネクション生成時のパフォーマンスを向上できます。Webコンテナコネクションプーリング機能を利用するには，管理機能用のWebアプリケーションをデプロイし，プール管理情報を登録してください。

Webコンテナコネクションプーリング機能を利用するための手順を次に示します。

プール管理情報設定ファイルを作成します。
プール管理情報設定ファイルは，プール管理情報を登録するときに使用するファイルです。プール管理情報設定ファイルには次の情報を記述します。

一意のデータベースID
プール管理情報の登録で登録した一意のデータベースIDを指定します。

Cosminexus DABroker LibraryのクラスおよびデータベースURL（Cosminexus DABroker Libraryを利用する場合）
クラス名には，「Class.forName」に渡すクラス名として「com.hitachi.software.web.jdbc.WccpDriver」を指定します。また，URLには，データベースURLとして，「jdbc:hitachi:wccp://DBID=<データベースURL>」を指定します。

コネクションの最小値と最大値など

プール管理情報設定ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「4.5　プール管理情報設定ファイル」を参照してください。

管理機能用のWebアプリケーションをデプロイします。
管理機能用のWebアプリケーションの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥jdbc¥cjwebconpool.war

UNIXの場合
/opt/Cosminexus/CC/web/jdbc/cjwebconpool.war

Webアプリケーションのデプロイについては，「10.6.6(1)　Webアプリケーションのデプロイ」を参照してください。

Webコンテナサーバを起動します。
Webコンテナサーバの起動については，「10.7.2　システムの起動」を参照してください。

cjwebeditpoolコマンドの引数にプール管理情報設定ファイルを指定して，プール管理情報を登録します。
cjwebeditpoolコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjwebeditpool（プール管理情報の登録と変更）」を参照してください。

ユーザ作成のWebアプリケーションをデプロイします。
Webアプリケーションのデプロイについては，「10.6.6(1)　Webアプリケーションのデプロイ」を参照してください。
なお，コネクションの取得処理は，Webアプリケーションで実施します。このため，ユーザ作成のWebアプリケーションに，コネクションを操作するための記述が必要になります。Webアプリケーションの記述方法については，「10.5.3　Webコンテナコネクションプール機能によるデータベース接続」を参照してください。

10.6.4　トラブルシューティングの資料取得の設定

ここでは，トラブルシューティングの資料を取得するための設定方法について説明します。

＜この項の構成＞

(1)　資料取得の設定の概要

(2)　Webコンテナサーバのログ取得の設定

(3)　リダイレクタのログ取得の設定

(4)　Cosminexus TPBrokerのログ取得の設定

(5)　Cosminexus DABroker Libraryのログ取得の設定

(6)　OSの統計情報取得の設定

(7)　ユーザダンプ取得の設定

(8)　coreダンプ取得の設定

(9)　JavaVMの資料取得の設定

(10)　Webアプリケーションのユーザログ出力の設定

(1)　資料取得の設定の概要

トラブルシューティングに必要な資料のうち，一部の資料は，運用を開始する前に資料取得のための設定をしておく必要があります。例えば，OSの統計情報，ユーザダンプ（Windowsの場合）またはcoreダンプ（UNIXの場合），JavaVMのガーベージコレクションのログなどは，事前に取得のための設定をしておかないと，取得できません。これらの資料はトラブルシューティングで必要となるため，取得することをお勧めします。

デフォルトの設定で取得できるようになっている資料については，特に設定は不要ですが，ログの出力先やサイズなどを変更したい場合には，ユーザ定義ファイルを編集して，設定を変更してください。

トラブルシューティングの資料取得のための設定を次の表に示します。

表10-26　トラブルシューティングの資料取得のための設定（サーブレットエンジンモードの場合）

資料の種類
資料取得のための設定
設定の要否
設定方法の参照先

性能解析トレースファイル
事前に，取得のための設定をしておく必要はありません。日常的なシステム運用の作業で，cprfedコマンドを実行するときに取得条件などを指定します。性能解析トレースファイルの取得については，「10.7.4　システムの処理性能の解析」を参照してください。
×
－

Webコンテナサーバのログ
Webコンテナサーバ用のusrconf.cfgとusrconf.propertiesで，ログの出力レベル，サイズ，面数などを設定します。
△
(2)

リダイレクタのログ
mod_jk.conf（Hitachi Web Serverの場合）またはisapi_redirect.conf（Microsoft IISの場合）で，ログの出力レベル，サイズ，面数などを設定します。
△
(3)

Cosminexus TPBrokerのトレースファイル
Webコンテナサーバ用のusrconf.cfgとusrconf.propertiesで，トレースファイルの出力先や面数などを設定します。
△
(4)

Cosminexus DABroker Libraryのログ
環境設定ユティリティまたはCosminexus DABroker Library動作環境定義ファイルで，ログファイルサイズなどを設定します。
△
(5)

OSの統計情報
Windowsの場合，Windowsのシステムモニタでシステムリソースのパフォーマンスデータ取得の設定をします。
○
(6)

ユーザダンプ
Windowsの場合，ワトソン博士または環境変数（CJMEMDUMP_PATH）で，ユーザダンプ取得の設定をします。
○
(7)

coreダンプ
UNIXの場合，usrconf.cfgやシェルコマンドで，coreファイル取得の設定をします。
○
(8)

JavaVMの資料
Webコンテナサーバ用のusrconf.cfgで，JavaVMのスレッドダンプや日立固有のJavaVMログ（日立JavaVMログファイル）の出力方法や出力内容などの設定をします。
○
(9)

Webアプリケーションのユーザログ
Webコンテナサーバ用のusrconf.propertiesで，ロガーやハンドラの設定，ログの出力レベル，サイズ，面数などを設定します。また，web.policyで，セキュリティポリシーを設定します。
設定方法は，J2EEアプリケーションの場合と同じです。Webアプリケーションのユーザログ出力については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.　アプリケーションのユーザログ出力」を参照してください。ただし，サーブレットエンジンモードの場合は，簡易構築定義ファイルではなく，Webコンテナサーバ用のusrconf.propertiesで設定します。設定時には，簡易構築定義ファイルで設定するパラメタを，Webコンテナサーバ用のusrconf.propertiesのキーに読み替えてください。Webコンテナサーバ用のusrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」を参照してください。
○
(10)

（凡例）

○：資料を取得する場合には，設定が必要

△：デフォルトの設定をカスタマイズする場合だけ，設定が必要

×：設定は不要

－：該当しない

なお，次のログはログ出力先を変更できません。

セットアップ時に作成されるinstall.log，移行コマンドなどのログファイル

次のディレクトリに出力されるJavaのスレッドダンプファイル

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥<サーバ名称>

UNIXの場合
/opt/Cosminexus/CC/web/<サーバ名称>

(2)　Webコンテナサーバのログ取得の設定

Webコンテナサーバのログの出力先，ログサイズ，ログレベルの変更について説明します。変更できる項目と，項目に対応するユーザ定義ファイルとキーを次の表に示します。

表10-27　Webコンテナサーバのログ取得の設定項目

項目
対応するユーザ定義ファイルとキー

ログの出力先
usrconf.cfgのweb.server.log.directoryキー

ログサイズ
usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filenumキー
usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filesizeキー

ログレベル
usrconf.propertiesのejbserver.logger.enabled.*キー

ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.1　Webコンテナサーバで使用するファイルの一覧」を参照してください。キーの詳細については，次の個所を参照してください。

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.2　hitachi_web.properties（Webコンテナサーバ用Webアプリケーションプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.5　web-users.xml（ユーザ認証情報定義ファイル）」

マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.6　web.policy（SecurityManager定義ファイル）」

(a)　ログの出力先の変更

デフォルトのログ出力先を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs

ログの出力先を変更する場合は，usrconf.cfgのweb.server.log.directoryキーでログの出力先ディレクトリを指定します。

設定例

Windowsの場合
web.server.log.directory=C:¥CClogs¥web¥YourServer

UNIXの場合
web.server.log.directory=/CClogs/web/YourServer

カレントディレクトリ

ログ出力先を相対パスで指定する場合のカレントディレクトリを次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>

注意事項

ログの出力先を変更した場合は，Webコンテナサーバを起動する前に，変更後のログの出力先ディレクトリを作成しておいてください。変更後のログの出力先ディレクトリがない場合は，Webコンテナサーバのサーバ起動時にKDJE40024-Eのメッセージが出力されて異常終了します。

同じマシン内で複数のWebコンテナサーバを起動させている場合は，ログ出力先が同じディレクトリにならないように，ディレクトリにサーバ名称を含めるなど，サーバごとにユニークなディレクトリ名になるようにしてください。なお，キーの値に同じディレクトリを指定した場合は，動作の保証はしません。

ログの出力先を変更して作業ディレクトリ以外にログを出力する場合，ログファイルはサーバのアンセットアップ時に削除されません。ログファイルを削除したい場合には，手動で削除してください。

ユーザ定義ファイルでログの出力先を設定していても，次の設定が優先されますので，注意してください。
usrconf.cfgに，add.jvm.arg=-XX:HitachiJavaLog:<JavaVMの保守情報およびガーベージコレクションのログ出力先>キーを指定している場合は，JavaVMの保守情報およびガーベージコレクションのログ出力先に設定したディレクトリに，JavaVMの保守情報およびガーベージコレクションのログファイルが出力されます。

ログ出力先には，UNC名を含むパスは指定できません。

(b)　ログサイズの変更

ログサイズを変更する場合は，usrconf.propertiesで，ログファイルの面数，およびログファイル1面当たりの最大サイズを設定します。

ログファイル面数の変更

ログファイルの面数は，usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filenumキーで設定します。

記述例

ejbserver.logger.channels.define.MessageLogFile.filenum=3

ログファイル1面当たりの最大サイズの変更

ログファイル1面当たりの最大サイズは（単位：バイト），usrconf.propertiesのejbserver.logger.channels.define.<チャネル名>.filesizeキーで設定します。

記述例

ejbserver.logger.channels.define.MessageLogFile.filesize=2097152

(c)　ログレベルの変更

ログレベルは，ログの重要度を表します。ログレベルには，「Error」，「Warning」，「Information」，「Debug」の四つがあります。ログレベルを設定すると，設定したレベルのログが出力されます。デフォルトでは，Errorレベルのログだけが取得されます。通常はデフォルトのまま利用してください。

ログレベルは，Webコンテナサーバ用のusrconf.propertiesのejbserver.logger.enabled.*キーで設定します。

ejbserver.logger.enabled.*=<レベル名>

レベル名には，「Error」，「Warning」，「Information」，「Debug」の文字列を一つ，または複数設定します。複数設定する場合には，レベル名の文字列の間をコンマ（,）で区切ります。

記述例

ejbserver.logger.enabled.*=Error

ejbserver.logger.enabled.*=Error,Warning

ejbserver.logger.enabled.*=Error,Warning,Information

ejbserver.logger.enabled.*=Error,Warning,Information,Debug

注意事項

記述例の1.，2.，3.，4.，の順に，取得できるログの件数が増加していきます。複数のログレベルを設定してログを取得すると，性能が劣化し，ログファイルの面の切り替えが頻繁に起こるようになります。

レベル名に「Error」，「Warning」，「Information」，「Debug」以外の文字列，または空の値を設定した場合は，KDJE90009-Wのメッセージが出力されます（Errorレベルのログは取得されます）。

ログレベルの推奨設定

ログレベルの推奨設定を次に示します。

通常運用時
「ejbserver.logger.enabled.*=Error」を指定します。

通常運用時（verbose）
通常運用時よりも詳細な情報を取得する場合には，「ejbserver.logger.enabled.*=Error,Warning」を指定します。

テスト時
「ejbserver.logger.enabled.*=Error,Warning,Information」を指定します。

障害調査時
「ejbserver.logger.enabled.*=Error,Warning,Information,Debug」を指定します。

(3)　リダイレクタのログ取得の設定

リダイレクタの出力するログの出力先やログ出力レベルなどの変更について説明します。なお，ファイルの詳細およびキーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2　isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル）」を参照してください。

リダイレクタが出力するログは，メッセージログと保守用トレースログの二つに分けて出力されます。メッセージログには，障害発生時のログなどのメッセージが出力されます。保守用トレースログには，HTTPリクエストを受信し，レスポンスを送信するまでのトレース情報が出力されます。

保守用トレースログのログサイズは，見積もりの計算式に従い，障害発生時から障害を検知しログを収集するまで保持されるサイズにカスタマイズすることをお勧めします。

注意事項

ログファイル初期化処理の開始時および終了時には，メッセージログにそれぞれKDJE41029-I，KDJE41030-Iのメッセージが出力されます。Webサーバの起動時には，ログファイル初期化処理が正常に終了したことを確認するため，メッセージログにKDJE41029-I，KDJE41030-Iのメッセージが出力されていることを確認してください。

UNIXの場合，mod_jk.confに設定されたファイルサイズ，およびファイル面数のログファイルは，Webサーバとの連携の設定後の初回起動時に作成されます。ログファイルの作成は，ログファイルサイズおよびファイル面数に比例した処理時間が必要となります。ログファイルサイズを大きく設定した場合，またはファイル面数を増やした場合などは，ログファイルの作成処理に数分掛かる場合があります。

(a)　Hitachi Web Serverの場合

Hitachi Web Serverを使用している場合は，mod_jk.confでリダイレクタのログ取得の設定を変更できます。なお，UNIXの場合，設定を変更できるのは，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）を持つユーザです。

●変更した設定を有効にする方法

変更した設定を有効にする方法について，OSごとに説明します。

Windowsの場合

変更したリダイレクタのログ取得の設定を有効にするには，Hitachi Web Serverを再起動してください。

UNIXの場合

変更したリダイレクタのログ取得の設定を有効にする方法は，ファイルサイズまたはファイル面数の変更の有無によって異なります。

ファイルサイズまたはファイル面数を変更する場合

ファイルサイズまたはファイル面数を変更する場合に，変更したリダイレクタのログ取得の設定を有効にする方法を次に示します。

Hitachi Web Serverを停止します。

ログファイルおよび管理ファイルを移動または削除します。
メッセージログファイルの場合：メッセージログファイルおよびHNTRLibが使用する管理ファイル（<JkLogFilePrefixの設定値>.mm）を移動，または削除します。
保守用トレースログファイルの場合：保守用トレースログファイルおよびHNTRLibが使用する管理ファイル（<JkTrcaeLogFilePrefixの設定値>.mm）を移動，または削除します。

Hitachi Web Serverを再起動します。

なお，HNTRLibが使用する管理ファイルのデフォルトの格納場所は次のとおりです。

/opt/Cosminexus/CC/web/redirector/logs/mmap

ファイルサイズまたはファイル面数を変更しない場合

ファイルサイズまたはファイル面数を変更しない場合は，Hitachi Web Serverを再起動してください。

●変更できる設定項目

変更できる設定項目と，項目に対応するユーザ定義ファイルとキーを次の表に示します。

表10-28　Hitachi Web Serverでのリダイレクタのログ取得の設定項目（サーブレットエンジンモードの場合）

項目 | mod_jk.confのキー
メッセージログ，保守用トレースログのログ出力レベル | JkLogLevel
メッセージログ出力先 | JkLogFileDir
メッセージログファイルサイズ | JkLogFileSize
メッセージログファイル面数 | JkLogFileNum
メッセージログファイル名のプリフィックス | JkLogFilePrefix
保守用トレースログ出力の有無 | JkTraceLog
保守用トレースログ出力先 | JkTraceLogFileDir※
保守用トレースログファイルサイズ | JkTraceLogFileSize
保守用トレースログファイル面数 | JkTraceLogFileNum
保守用トレースログファイル名のプリフィックス | JkTrcaeLogFilePrefix※

注※　保守用トレースログの出力先とプリフィックスには，同じ値を指定しないでください。同じ値を指定した場合は，リダイレクタが動作しません。

メッセージログ，および保守用トレースログのデフォルトの出力先

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

ログレベルのレベル名

ログレベルのレベル名には，重要度の高い順に「emerg」※，「error」，「info」，「debug」のどれかを指定できます。

emerg：通常運用時に指定します。常に出力する必要がある重要度の高いメッセージだけが出力されます。※

error：通常運用時に指定します。

info：テスト時に指定します。

debug：障害調査時に指定します。

ログレベルは，単独で指定してください（コンマ区切りで複数のログレベルを指定しないでください）。あるログレベルを指定すると，指定されたログレベルおよびそれよりも重要度の高いログが出力されます。

注※　Windowsの場合に指定できます。

ログサイズの見積もりの計算式

GETリクエスト，POSTリクエストの1HTTPアクセス当たりのログサイズは，次の計算式で見積もってください。

GETによる1HTTPアクセス当たりのログサイズ
= 1.75 +（平均レスポンスボディサイズ / 16）* 0.25

POSTによる1HTTPアクセス当たりのログサイズ
= 2.00 +（平均POSTデータサイズ / 16）* 0.5 +（平均レスポンスボディサイズ / 16）* 0.25

なお，単位はすべてキロバイト，除算結果の小数点以下の値はすべて切り捨てです。また，計算式ではリクエストURLとクエリー文字列の平均サイズは，それぞれ100バイトとしています。リクエストURLとクエリー文字列の平均サイズが100バイトを超えた場合は，計算式の最初の値に，超える分のサイズを加えて計算してください。

(b)　Microsoft IISの場合

Microsoft IISを使用している場合は，isapi_redirect.confでリダイレクタのログ取得の設定を変更できます。

注意事項

isapi_redirect.confに設定されたファイルサイズ，およびファイル面数のログファイルは，Webサーバとの連携の設定後の初回リクエスト時に作成されます。ログファイルの作成は，ログファイルサイズおよびファイル面数に比例した処理時間が必要となります。ログファイルサイズを大きく設定した場合，またはファイル面数を増やした場合などは，ログファイルの作成処理に数分掛かる場合があります。

Webサーバとの連携の設定後およびログファイルの設定変更後の初回リクエストは，運用を開始する前に実施しておくことをお勧めします。

●変更した設定を有効にする方法

変更したリダイレクタのログ取得の設定を有効にする方法は，Microsoft IISのバージョンによって異なります。

ファイルサイズまたはファイル面数を変更する場合に，変更したリダイレクタのログ取得の設定を有効にするための手順を次に示します。

Microsoft IISを停止します。

ログファイルおよび管理ファイルを移動または削除します。
メッセージログファイルの場合：メッセージログファイルおよびHNTRLibが使用する管理ファイル（<log_file_prefixの設定値>.mm）を移動，または削除します。
保守用トレースログファイルの場合：保守用トレースログファイルおよびHNTRLibが使用する管理ファイル（< trace_log_file_prefixの設定値>.mm）を移動，または削除します。
なお，HNTRLibが使用する管理ファイルのデフォルトの格納場所は次のとおりです。
<Cosminexus のインストールディレクトリ>¥CC¥web¥redirector¥logs¥mmap

Microsoft IISを起動します。
ファイルサイズおよびファイル面数を変更しない場合に，変更したリダイレクタのログ取得の設定を有効にするための手順を次に示します。

Microsoft IISを再起動するか，またはワーカプロセスのリサイクルを行います。
Microsoft IISの「インフォメーション サービス マネージャ」を使用して，ワーカプロセスのリサイクルができます。

●変更できる設定項目

変更できる設定項目と，項目に対応するユーザ定義ファイルとキーを次の表に示します。なお，Microsoft IISのバージョンによっては，キーに指定する値が異なります。isapi_redirect.confについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2　isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル）」を参照してください。

表10-29　Microsoft IISでのリダイレクタのログ取得の設定項目（サーブレットエンジンモードの場合）

項目 | isapi_redirect.confのキー
メッセージログ，保守用トレースログのログ出力レベル | log_level
メッセージログ出力先 | log_file_dir
メッセージログファイルサイズ | log_file_size
メッセージログファイル面数 | log_file_num
メッセージログファイル名のプリフィックス | log_file_prefix
保守用トレースログ出力の有無 | trace_log
保守用トレースログ出力先 | trace_log_file_dir※
保守用トレースログファイルサイズ | trace_log_file_size
保守用トレースログファイル面数 | trace_log_file_num
保守用トレースログファイル名のプリフィックス | trace_log_file_prefix※

注※　保守用トレースログの出力先とプリフィックスには，同じ値を指定しないでください。同じ値を指定した場合は，リダイレクタが動作しません。

メッセージログ，および保守用トレースログのデフォルトの出力先

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

ログレベルのレベル名

ログレベルのレベル名には，重要度の高い順に「emerg」，「error」，「info」，「debug」のどれかを指定できます。

emerg：通常運用時に指定します。常に出力する必要がある重要度の高いメッセージだけが出力されます。

error：通常運用時に指定します。

info：テスト時に指定します。

debug：障害調査時に指定します。

ログレベルは，単独で指定してください（コンマ区切りで複数のログレベルを指定しないでください）。あるログレベルを指定すると，指定されたログレベルおよびそれよりも重要度の高いログが出力されます。

ログサイズの見積もりの計算式

GETリクエスト，POSTリクエストの1HTTPアクセス当たりのログサイズは，次の計算式で見積もってください。

GETによる1HTTPアクセス当たりのログサイズ
= 2.25 + (平均レスポンスボディサイズ / 16) * 0.25

POSTによる1HTTPアクセス当たりのログサイズ
= 2.50 + (平均POSTデータサイズ / 16) * 0.5 + (平均レスポンスボディサイズ / 16) * 0.25

なお，単位はすべてキロバイト，除算結果の小数点以下の値はすべて切り捨てです。また，計算式ではリクエストURLとクエリー文字列の平均サイズは，それぞれ100バイトとしています。リクエストURLとクエリー文字列の平均サイズが100バイトを超えた場合は，計算式の最初の値に，超える分のサイズを加えて計算してください。

(4)　Cosminexus TPBrokerのログ取得の設定

Cosminexus TPBrokerのトレースファイルの出力先，ファイル数，エントリ数の変更について説明します。

Cosminexus TPBrokerのトレースファイルのデフォルトの出力先は次のとおりです。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥TPB¥logj

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/TPB/logj

変更できる項目と，項目に対応するユーザ定義ファイルとキーを次に示します。

項目
対応するユーザ定義ファイルとキー

トレースファイルの出力先
usrconf.cfgのweb.server.log.directoryキー
または
usrconf.propertiesのvbroker.orb.htc.tracePathキー

トレースファイルのファイル数
usrconf.propertiesのvbroker.orb.htc.comt.fileCountキー

トレースファイルのエントリ数
usrconf.propertiesのvbroker.orb.htc.comt.entryCountキー

ファイルおよびキーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。

注意事項

トレースファイルの出力先を変更する場合は，変更後のトレースファイル出力先ディレクトリのサブディレクトリとしてcomtrcとmdltrcをあらかじめ作成しておく必要があります。出力先を変更すると，変更後のログ出力先ディレクトリ下のcomtrcとmdltrcにトレースファイルが出力されます。

usrconf.cfgのweb.server.log.directoryキーと，usrconf.propertiesのvbroker.orb.htc.tracePathキーをどちらも設定した場合は，usrconf.propertiesのvbroker.orb.htc.tracePathキーの設定が優先されます。

(5)　Cosminexus DABroker Libraryのログ取得の設定

環境設定ユティリティまたはCosminexus DABroker Library動作環境定義ファイルで，ログファイルサイズなどを設定します。環境設定ユティリティまたはCosminexus DABroker Library動作環境定義ファイルの設定については，「11.2　Cosminexus DABroker Libraryの初期設定」を参照してください。

(6)　OSの統計情報取得の設定

Windowsのシステムモニタを使用して，システムリソースのパフォーマンスデータを取得できます。システムリソースのパフォーマンスデータを取得するための設定方法は，運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」および「3.3.16　OSの統計情報取得の設定」を参照してください。

(7)　ユーザダンプ取得の設定

ユーザダンプを取得するための設定は，OSごとに異なります。

●Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）およびWindows XPの場合

ユーザダンプを取得するためには，ワトソン博士を使用できるように設定しておいてください。ユーザダンプを取得するための設定方法は，運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」および「3.3.17　ユーザダンプ取得の設定」を参照してください。

●Windows Server 2008，Windows 7，またはWindows Vistaの場合

cjstopwebコマンドの-fdオプションを使用してユーザダンプを取得する場合には，環境変数「CJMEMDUMP_PATH」にユーザダンプの出力先ディレクトリを指定しておいてください。ユーザダンプのファイル名は，cjmemdump.dmpです。

環境変数「CJMEMDUMP_PATH」の設定例を次に示します。

環境変数「CJMEMDUMP_PATH」の設定例

set CJMEMDUMP_PATH=C:¥temp

この例の場合，C:¥tempの下にcjmemdump.dmpが作成されます。

なお，環境変数「CJMEMDUMP_PATH」を指定する場合には，次の点に注意してください。

保存先のディスクに十分な空き容量があることを確認してください。ユーザダンプのファイルサイズはWebコンテナサーバの実メモリ所要量以上になります。

日本語などのマルチバイト文字を含むディレクトリを指定しないでください。ユーザダンプの出力に失敗する場合があります。

ユーザダンプの出力先ディレクトリには，存在するディレクトリを指定してください。

(8)　coreダンプ取得の設定

coreダンプを取得するための設定方法は，運用管理ポータルでシステムを構築する場合の設定方法と同じです。詳細については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」および「3.3.18　coreダンプ取得の設定」を参照してください。ただし，サーブレットエンジンモードの場合は，簡易構築定義ファイルではなく，Webコンテナサーバ用のusrconf.cfgで設定します。設定時には，簡易構築定義ファイルで設定するパラメタを，Webコンテナサーバ用のusrconf.cfgのキーに読み替えてください。Webコンテナサーバ用のusrconf.cfgについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」を参照してください。

(9)　JavaVMの資料取得の設定

ここでは，次に示すJavaVMの資料を取得するための設定について説明します。

JavaVMのスレッドダンプ

日立固有のJavaVMログ（日立JavaVMログファイル）

(a)　JavaVMのスレッドダンプ取得の設定

JavaVMのスレッドダンプを取得するための設定について説明します。

JavaVMのスレッドダンプに出力される内容は，usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）のadd.jvm.argキーに指定しているJavaVMの起動オプションによって異なります。

JavaVMのスレッドダンプを出力する場合に指定するオプションを次の表に示します。

表10-30　JavaVMのスレッドダンプを取得するために指定するオプション（サーブレットエンジンモードの場合）

オプション
説明

-XX:+HitachiThreadDump
拡張スレッドダンプを出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpToStdout
拡張スレッドダンプを標準出力に出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithHashCode
スレッド情報にスレッドのハッシュコードを出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithCpuTime
スレッド情報にスレッドを開始してからのユーザCPU時間，およびカーネルCPU時間を出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiThreadDumpWithBlockCount
スレッド情報にスレッドが処理をブロックした回数，および処理が待ち状態になった回数を出力します。デフォルトの状態では，出力するように設定されています。

-XX:+HitachiOutOfMemoryAbort
-XX:+HitachiOutOfMemoryAbortThreadDump
どちらも設定されている場合は，OutOfMemoryErrorによって強制終了した時に，スレッドダンプを出力します。ただし，J2SEクラスライブラリでCヒープ不足が発生した場合，およびJavaVMの処理中にCヒープ不足が発生した場合は，スレッドダンプを出力しません。

-XX:+HitachiOutOfMemoryAbortThreadDumpWithJHeapProf
OutOfMemoryErrorによって強制終了した時に出力されるスレッドダンプに，クラス別統計情報を出力します。デフォルトでは出力されません。

(b)　日立固有のJavaVMログ取得の設定

日立固有のJavaVMログを取得するための設定について説明します。

日立固有のJavaVMログとは，日立が標準のJavaVMに追加した拡張オプションを使用して取得できるログです。標準のJavaVMよりも，多くのトラブルシュート情報が取得できます。このログファイルを，日立JavaVMログファイルといいます。

日立JavaVMログファイルを取得するためには，usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）のadd.jvm.argキーにJavaVMの起動オプションを指定します。

日立JavaVMログファイルを取得するために指定するオプションを次の表に示します。

表10-31　日立固有のJavaVMログ（日立JavaVMログファイル）を取得するために指定するオプション（サーブレットエンジンモードの場合）

オプション
説明

-XX:+HitachiOutOfMemoryStackTrace
-XX:+HitachiVerboseGC
-XX:+HitachiJavaClassLibTrace
三つのオプションのうちどれかを指定している場合に，日立JavaVMログファイルを出力します。

-XX:+HitachiOutOfMemoryStackTraceを指定している場合は，例外情報とスタックトレースを日立JavaVMログファイルに出力します。なお，このオプションを指定すると，-XX:+HitachiOutOfMemorySizeおよび-XX:+HitachiOutOfMemoryCauseも同時に指定されます。

-XX:+HitachiVerboseGCを指定している場合は，ガーベージコレクションが発生したときに，拡張verbosegc情報を日立JavaVMログファイルに出力します。

-XX:+HitachiJavaClassLibTraceを指定している場合は，クラスライブラリのスタックトレースを日立JavaVMログファイルに出力します。

必要に応じて，次の拡張オプションを指定して，日立JavaVMログファイルの出力方法や出力内容を設定してください。

日立JavaVMログファイルのファイルサイズやファイル数

拡張verbosegc機能オプション

OutOfMemoryError発生時の拡張機能オプション

クラスライブラリトレース機能オプション

ローカル変数情報出力機能オプション

スワップ領域の予約オプション　など

JavaVMのオプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」を参照してください。

(c)　拡張verbosegc機能オプションの設定

ここでは，JavaVMの保守情報（Javaヒープの情報）およびガーベージコレクションのログに拡張verbosegc情報を出力するための設定について説明します。次の表に示すオプションで，拡張verbosegc情報の出力を有効にして，拡張verbosegc情報の出力形式を指定してください。

表10-32　拡張verbosegc情報を出力するために指定するオプション（サーブレットエンジンモードの場合）

オプション | 説明
-XX:+HitachiVerboseGC | 拡張verbosegc情報を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintDate | 拡張verbosegc情報の各行に日付を出力します。
-XX:+HitachiVerboseGCCpuTime※ | ガーベージコレクションの開始から終了までの間で，ガーベージコレクションを実行したスレッドのCPU利用時間を出力します。CPU利用時間は，ユーザモードで費やしたCPU時間とカーネルモードで費やしたCPU時間に分けて出力されます。
-XX:HitachiVerboseGCIntervalTime=<時間間隔(秒)> | 拡張verbosegc情報の出力間隔を指定します。
-XX:+HitachiVerboseGCPrintCause | 拡張verbosegc情報に，ガーベージコレクションが発生した要因を出力します。
-XX:+HitachiOutputMilliTime | 拡張verbosegc情報の各行に日時（ミリ秒まで）を出力します。
-XX:+HitachiCommaVerboseGC | 拡張verbosegc情報をCSV形式で出力します。
-XX:+HitachiVerboseGCPrintTenuringDistribution | Survivor領域の年齢分布情報を出力します。出力形式や出力情報については，「8.11　Survivor領域の年齢分布情報出力機能」を参照してください。
-XX:+HitachiVerboseGCPrintJVMInternalMemory | JavaVM内部で管理しているヒープ情報を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintThreadCount | Javaスレッドの数を監視するために，Javaスレッドの数を日立JavaVMログファイルに出力します。
-XX:+HitachiVerboseGCPrintDeleteOnExit | java.io.File.deleteOnExit()を呼び出したことによってJavaVMが確保した累積のヒープサイズとメソッドの呼び出し回数を，日立JavaVMログファイルに出力します。

注※

HP-UXの場合，このオプションは使用できません。オプションを指定しても無視されます。

拡張verbosegc情報から，そのサーバで必要とするJavaヒープ領域サイズ，Perm領域サイズなどを見積もるための情報を取得できます。

(10)　Webアプリケーションのユーザログ出力の設定

ここでは，Webアプリケーションが出力するログを，日立トレース共通ライブラリ形式で出力するための設定方法について説明します。Webアプリケーションのユーザログを出力しない場合は，この設定は不要です。

アプリケーションサーバでは，日立トレース共通ライブラリを使用して，Webアプリケーションが出力するログをアプリケーションサーバの構成ソフトウェアが出力するログと同じ形式（日立トレース共通ライブラリ形式）で出力できます。これによって，システムのログとWebアプリケーションのログを同じ形式で扱うことができるようになり，システム全体のログ運用の信頼性とログ出力の性能を高められます。

Webアプリケーションが出力するログを，日立トレース共通ライブラリ形式で出力する場合は，Webアプリケーションを開発する際に，ログ出力処理を設定する必要があります。また，usrconf.propertiesを編集して，ハンドラからのログの出力先，ログレベル，ログ面数，使用するフィルタ，フォーマッタなどを指定する必要があります。

ユーザログを出力するための設定方法については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「12.　アプリケーションのユーザログ出力」を参照してください。ただし，次の点に注意してください。ただし，サーブレットエンジンモードの場合は，簡易構築定義ファイルではなく，Webコンテナサーバ用のusrconf.propertiesで設定します。設定時には，簡易構築定義ファイルで設定するパラメタを，Webコンテナサーバ用のusrconf.propertiesのキーに読み替えてください。Webコンテナサーバ用のusrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.4　usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）」を参照してください。

サーブレットエンジンモードの場合は，usrconf.propertiesの格納場所が異なります。サーブレットエンジンモードのusrconf.propertiesの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥usrconf.properties

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties

サーブレットエンジンモードの場合は，セキュリティポリシーをweb.policyに指定してください。web.policyの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web.policy

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web.policy

10.6.5　統合ユーザ管理機能の設定

ここでは，サーブレットエンジンモードの場合の，統合ユーザ管理機能の設定について説明します。統合ユーザ管理機能を使用しない場合は，この設定は不要です。

＜この項の構成＞

(1)　統合ユーザ管理機能の設定手順

(2)　統合ユーザ管理機能の設定方法

(1)　統合ユーザ管理機能の設定手順

統合ユーザ管理機能の設定手順について説明します。

アプリケーションサーバでは，アプリケーションサーバで構築したシステムにログインするユーザを統合管理できます。統合ユーザ管理では，それぞれのJ2EEアプリケーションが管理しているユーザの情報が関連づけて管理され，一度のログイン処理でさまざまなJ2EEアプリケーションにログインできるようになります。統合ユーザ管理機能を使用する場合は，ユーザ認証情報を格納するLDAPディレクトリサーバや，統合ユーザ管理のコンフィグレーションファイルを設定する必要があります。

統合ユーザ管理機能を使用するための設定手順は，運用管理ポータルを使用してシステムを構築するときの設定手順とほとんど同じです。運用管理ポータルを使用したシステム構築の場合の統合ユーザ管理機能の設定手順については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」を参照してください。

(2)　統合ユーザ管理機能の設定方法

統合ユーザ管理機能の設定方法について説明します。

統合ユーザ管理機能を使用するための設定方法は，運用管理ポータルを使用してシステムを構築するときの設定方法とほとんど同じです。運用管理ポータルを使用したシステム構築の場合の統合ユーザ管理機能の設定方法については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「3.5　統合ユーザ管理の設定」を参照してください。ただし，サーブレットエンジンモードの場合では，設定方法が少し異なります。設定方法の差異を次に示します。

(a)　サーバ名について

サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(b)　ユーザ情報の登録について

サーブレットエンジンモードの場合は，統合ユーザ管理GUI（Management Serverの運用管理ポータルの「リポジトリ管理」）でのユーザ情報の登録はできません。ユーザ情報は，コマンド，ユーザ認証ライブラリまたはシングルサインオンライブラリのAPIを使用して登録してください。

(c)　JavaVMのプロパティの設定について

統合ユーザ管理機能を使用する場合は，JavaVMの起動時に，J2EEサーバのusrconf.propertiesとweb.policyの設定が必要です。ここでは，各ファイルでの設定内容の概要について説明します。

●usrconf.propertiesでの設定

usrconf.propertiesでは，次の内容を設定します。

java.security.auth.login.configキーで，jaas.confの格納場所を指定します。

com.cosminexus.admin.auth.configキーで，ua.confの格納場所を指定します。

com.cosminexus.admin.auth.passwordScramble.enableキーで，uachpwコマンドでスクランブル化したパスワードの復号化機能の有効または無効を指定します。

なお，uachpwコマンドでパスワードをスクランブル化する場合には，必ずusrconf.propertiesでcom.cosminexus.admin.auth.passwordScramble.enable=trueを指定し，スクランブル化されたパスワードの復号化機能を有効にしておいてください。

usrconf.propertiesの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥usrconf.properties

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties

usrconf.propertiesの設定例をOSごとに示します。

Windowsの場合

java.security.auth.login.config==C:/Program Files/Hitachi/Cosminexus/manager/config/jaas.conf
com.cosminexus.admin.auth.config=C:/Program Files/Hitachi/Cosminexus/manager/config/ua.conf
com.cosminexus.admin.auth.passwordScramble.enable=true

このうち，「C:/Program Files/Hitachi/Cosminexus/」はCosminexusの標準インストールディレクトリです。異なるディレクトリにインストールした場合は，この部分をインストールディレクトリに変更してください。

UNIXの場合

java.security.auth.login.config==/opt/Cosminexus/manager/config/jaas.conf
com.cosminexus.admin.auth.config=/opt/Cosminexus/manager/config/ua.conf
com.cosminexus.admin.auth.passwordScramble.enable=true

●web.policyでの設定

web.policyでは，WebアプリケーションでLoginContextクラスを操作するためのアクセス権を設定します。設定するアクセス権の詳細については，javax.security.auth.AuthPermissionクラスを参照してください。

また，カスタムログインモジュールやパスワード認証時の暗号拡張機能を使用する場合，各クラスを操作するために，アクセス権の設定が必要です。

web.policyの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web.policy

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web.policy

JavaVM起動時のweb.policyのプロパティの設定例については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.6　web.policy（SecurityManager定義ファイル）」を参照してください。

(d)　ファイルのデプロイについて

サーブレットエンジンモードの場合は，デプロイする統合ユーザ管理用の「EARファイル（uastartup.ear）」を「WARファイル（uastartup.war）」と読み替えてください。また，WARファイルのデプロイについては，「10.6.6(1)　Webアプリケーションのデプロイ」を参照してください。uastartup.warは，次に示すディレクトリにインストールされています。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config

UNIXの場合
/opt/Cosminexus/manager/config

(e)　JSPタグライブラリを使用している場合の設定について

Webコンテナサーバにデプロイ済みのWebアプリケーションで，JSPタグライブラリを使用している場合には，ファイルのコピーや編集が必要です。

JSPタグライブラリ用のJARファイル（uatags.jar）とタグライブラリ記述子ファイル（uatags.tld）をコピーして，WebアプリケーションのDD（web.xml）を編集してください。手順を次に示します。

uatags.jarを，<デプロイ先ディレクトリ>¥<Webアプリケーション名>¥WEB-INF¥lib（Windowsの場合），または<デプロイ先ディレクトリ>/<Webアプリケーション名>/WEB-INF/lib（UNIXの場合）にコピーします。
例えば，uCosminexus Portal Frameworkを使用する場合，<Webアプリケーション名>は，Portalです。

uatags.tldを，<デプロイ先ディレクトリ>¥<Webアプリケーション名>¥WEB-INF（Windowsの場合），または<デプロイ先ディレクトリ>/<Webアプリケーション名>/WEB-INF（UNIXの場合）にコピーします。

web.xmlの適切な位置に次の記述を追加します。

<taglib>
<taglib-uri>http://cosminexus.com/admin/auth/uatags</taglib-uri>
<taglib-location>/WEB-INF/uatags.tld</taglib-location>
</taglib>

web.xmlは次の場所に格納されています。

Windowsの場合
<デプロイ先ディレクトリ>¥<Webアプリケーション名>¥WEB-INF¥web.xml

UNIXの場合
<デプロイ先ディレクトリ>/<Webアプリケーション名>/WEB-INF/web.xml

<デプロイ先ディレクトリ>については，「10.6.7　Webコンテナサーバの作業ディレクトリ」を参照してください。

参考

JSPタグライブラリを使用したWebアプリケーションの作成については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「10.11　タグライブラリを使用したユーザ認証の実装」を参照してください。なお，JSPタグライブラリを使用する場合は，上記の手順3.に従ってweb.xmlを編集してください。

10.6.6　Webアプリケーションの設定

サーブレットエンジンモードの環境では，Webアプリケーションを実行する前に，Webコンテナサーバにデプロイします。Webアプリケーションのデプロイについては，「(1)　Webアプリケーションのデプロイ」を参照してください。Webアプリケーションのアンデプロイについては，「(2)　Webアプリケーションのアンデプロイ」を参照してください。また，Webアプリケーションへのサーブレットフィルタの追加については，「(3)　Webアプリケーションに組み込むサーブレットフィルタの設定」を参照してください。

なお，Webアプリケーションは，DeveloperやIDEなどを使用して，あらかじめ作成しておいてください。DeveloperやIDEによるWebアプリケーションの作成については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション開発ガイド」を参照してください。

＜この項の構成＞

(1)　Webアプリケーションのデプロイ

(2)　Webアプリケーションのアンデプロイ

(3)　Webアプリケーションに組み込むサーブレットフィルタの設定

(1)　Webアプリケーションのデプロイ

Webアプリケーションのデプロイ方法は，次の2種類あります。

WARファイルのコピーによるデプロイ

ディレクトリのコピーによるデプロイ

それぞれのデプロイ方法について説明します。また，ルートコンテキストを使用し，ドメイン名を指定してWebアプリケーションのトップページを表示させる方法についても説明します。

(a)　WARファイルのコピーによるデプロイ

WARファイルのコピーによるデプロイの手順を次に示します。

WARファイルを次に示す場所にコピーします。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps"

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps

cjstartwebコマンドを実行して，Webコンテナサーバを起動します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstartweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstartweb <サーバ名称>

これによって，WARファイルが自動展開され，Webアプリケーションを利用できるようになります。デプロイ後は，手順1.で示した場所にWARファイル名の拡張子（.war）を除いた名前のディレクトリが作成されます。このディレクトリ名が，コンテキスト名として使用されます。
cjstartwebコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstartweb（Webコンテナサーバの開始）」を参照してください。

(b)　ディレクトリのコピーによるデプロイ

ディレクトリのコピーによるデプロイの手順を次に示します。

次に示す場所にWebアプリケーションのディレクトリ階層をコピーします。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps"

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps

cjstartwebコマンドを実行して，Webコンテナサーバを起動します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstartweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstartweb <サーバ名称>

これによって，Webアプリケーションを利用できるようになります。コンテキスト名としては，コピーされたディレクトリ名がそのまま使用されます。
cjstartwebコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstartweb（Webコンテナサーバの開始）」を参照してください。

(c)　ドメイン名指定でのトップページの表示

デプロイしたWebアプリケーションにアクセスするとき，URLにドメイン名を指定するだけで，Webアプリケーションのトップページを表示させるには，次の設定が必要です。

リダイレクタのURLマッピング定義で，ルートコンテキストにリクエストが振り分けられるように設定する必要があります。リダイレクタでの設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.2　Webサーバ（リダイレクタ）によるリクエストの振り分け」を参照してください。
なお，サーブレットエンジンモードの場合は，Webアプリケーションをデプロイするときにルートコンテキストを指定します。

index.htmlやindex.jspなどのWebアプリケーションのトップページをルートコンテキストに配置する必要があります。Webアプリケーションのコンテキストルートを「ROOT」にしてデプロイしてください。

WARファイルのコピーによるデプロイの場合

WARファイル名を「ROOT.war」にしてデプロイしてください。

なお，拡張子（.war）を除いたWARの名前はすべて大文字の「ROOT」にします。「Root」や「root」のように小文字を含んでいる場合は，拡張子（.war）を除いたWARの名前がコンテキストルートとなります。例えば，WARファイル名が「Root.war」の場合，ルートコンテキストではなく，コンテキストルートが「Root」のコンテキストになります。

ディレクトリのコピーによるデプロイの場合

ディレクトリ名を「ROOT」にしてデプロイしてください。

なお，ディレクトリ名「ROOT」はすべて大文字にします。「Root」や「root」のように小文字を含んでいる場合は，指定したディレクトリの名前がコンテキストルートとなります。例えば，ディレクトリ名が「Root」の場合，ルートコンテキストではなく，コンテキストルートが「Root」のコンテキストになります。

(2)　Webアプリケーションのアンデプロイ

Webアプリケーションのアンデプロイ方法は，次の2種類あります。

WARファイルの削除によるアンデプロイ

ディレクトリの削除によるアンデプロイ

それぞれのアンデプロイ方法について説明します。

(a)　WARファイルの削除によるアンデプロイ

WARファイルの削除によるアンデプロイの手順を次に示します。

cjstopwebコマンドを実行して，Webコンテナサーバを停止します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstopweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstopweb <サーバ名称>

該当するWARファイル，および次に示す場所に自動展開されたディレクトリを削除します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps"

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps

Webコンテナサーバを再起動します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstartweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstartweb <サーバ名称>

これによって，Webアプリケーションのアンデプロイが有効になります。

(b)　ディレクトリの削除によるアンデプロイ

ディレクトリの削除によるアンデプロイの手順を次に示します。

cjstopwebコマンドを実行して，Webコンテナサーバを停止します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstopweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstopweb <サーバ名称>

次に示す場所にコピーしたディレクトリを削除します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps"

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps

Webコンテナサーバを再起動します。

Windowsの場合
"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstartweb <サーバ名称>"

UNIXの場合
/opt/Cosminexus/CC/web/bin/cjstartweb <サーバ名称>

これによって，Webアプリケーションのアンデプロイが有効になります。

(3)　Webアプリケーションに組み込むサーブレットフィルタの設定

アプリケーションサーバでは，アプリケーションサーバ独自の機能を使用するためのサーブレットフィルタを提供しています。アプリケーションサーバが提供するサーブレットフィルタをbuilt-inフィルタといいます。

アプリケーションサーバで提供しているbuilt-inフィルタのうち，サーブレットエンジンモードで使用できるフィルタは，HTTPレスポンス圧縮フィルタだけです。

各built-inフィルタの処理内容，およびbuilt-inフィルタの組み込み順序については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.9.1　アプリケーションサーバが提供するサーブレットフィルタ（built-inフィルタ）」を参照してください。

サーブレットエンジンモードの場合は，WebアプリケーションのDD（web.xml）を直接編集してフィルタを組み込む必要があります。built-inフィルタの組み込みについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.10.3　HTTPレスポンス圧縮フィルタを使用するアプリケーションの実装」を参照してください。

10.6.7　Webコンテナサーバの作業ディレクトリ

Webコンテナサーバは作業ディレクトリ中にサーバ名やWebアプリケーションのコンテキストルート名，WARファイル中のファイルなどを用いてディレクトリやファイルを生成します。ディレクトリ名やファイル名，パス全体の長さには上限があり，作業ディレクトリ全体がパス全体の上限に収まらないとWebコンテナサーバは正常に動作できません。ここでは，Webコンテナサーバの作業ディレクトリの構成と作業ディレクトリのパス長の見積もり式を説明します。

＜この項の構成＞

(1)　作業ディレクトリの構成

(2)　作業ディレクトリのパス長の見積もり式

(1)　作業ディレクトリの構成

Webコンテナサーバの作業ディレクトリは，Webコンテナサーバが動作する上で必要な作業領域です。この領域には，ユーザ定義ファイル，ログ，Webアプリケーションなどの情報が格納されます。

Webコンテナサーバには，次の作業ディレクトリがあります。

Webアプリケーション

JSP用一時ディレクトリ

上記の作業ディレクトリの構成についてそれぞれ説明します。

ディレクトリ構成を図で示したあと，各ディレクトリを説明します。なお，図中の番号と説明の番号は対応しています。

(a)　Webアプリケーション

Webアプリケーションのディレクトリ構成を次の図に示します。

図10-4　Webアプリケーションのディレクトリ構成

WARファイル名の拡張子（.war）を除いた名前のディレクトリが作成されます。

WARファイルに含まれているファイルがここに解凍されます。

(b)　JSP用一時ディレクトリ

JSP用一時ディレクトリのディレクトリ構成を次の図に示します。

図10-5　JSP用一時ディレクトリのディレクトリ構成

WARファイル名の拡張子（.war）を除いた名前のディレクトリが作成されます。

JSPをコンパイルして作成されたクラスファイルが格納されます。JSPのファイル名に英数字以外の文字が含まれている場合は，それぞれ6文字の文字列に置き換えられます。また，ファイル名が数字で始まる場合は1文字付加されます。

(2)　作業ディレクトリのパス長の見積もり式

作業ディレクトリのパス長の見積もり式は次のようになります（単位：バイト）。これらの式がすべて満たされるように，各種パラメタを調整してください。なお，見積もり式中の「最大パス長」とは，OSで規定されているパス長の制限のことです。OSのパス長の制限については，ご使用のOSのドキュメントなどで確認してください。

A+B+C+D+25≦最大パス長

A'+C+E+2≦最大パス長

（凡例）

A：インストールディレクトリのパスの長さ

A'：JSP用一時ディレクトリまでのパスの長さ

B：最も長いサーバ名の長さ

C：最も長いコンテキストルートの長さ

D：WARファイル内で最も長いパスの長さ

E：最も長いJSPのファイル名（WARファイル内のパスを含む。英数字以外を含む場合は英数字以外の文字×6で換算。JSPファイルが数字で始まる場合は1を加算）の長さ

10.7　サーブレットエンジンモードでのシステム運用

ここでは，サーブレットエンジンモードを使用してシステムを運用する場合の方法について説明します。

＜この節の構成＞

10.7.1　Component Container管理者による運用に関する留意事項

10.7.2　システムの起動

10.7.3　システムの停止

10.7.4　システムの処理性能の解析

10.7.5　トラブルシューティング

10.7.6　資料の調査

10.7.7　トラブルへの対処と回復

10.7.8　トラブルシューティングに関連する留意事項

10.7.9　資料の取得方法

10.7.1　Component Container管理者による運用に関する留意事項

UNIXでComponent Container管理者を設定している場合の留意事項について説明します。Component Container管理者とは，UNIXを使用している場合に，Webコンテナサーバの構築・運用に関する操作を実行できる権限を持つユーザです。Component Container管理者を設定することで，root権限を持たないユーザでも， Webコンテナサーバの起動・停止やサーバ管理コマンドの実行など，システム運用時の操作を実行できるようになります。

注意

Component Container管理者を設定している場合，Component Container管理者が実行できる操作は，一部の操作を除き，スーパーユーザでは操作できなくなるので注意してください。詳細については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.2.3　Component Container管理者の設定（UNIXの場合）」を参照してください。

なお，Component Container管理者の設定，およびComponent Container管理者を設定している場合にパーミッションが変更されるディレクトリについては，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.2.3　Component Container管理者の設定（UNIXの場合）」を参照してください。

Component Container管理者が実施できるシステム運用時の操作について説明します。

＜この項の構成＞

(1)　Component Container管理者が実施できるシステム運用時の操作

(1)　Component Container管理者が実施できるシステム運用時の操作

Component Container管理者を設定した場合に，スーパーユーザおよびComponent Container管理者が実施できるシステム運用時の操作を次の表に示します。

表10-33　Component Container管理者が実施できるシステム運用時の操作

操作
スーパーユーザ
Component Container管理者

Webコンテナサーバの起動／停止
（cjstartwebコマンド， cjstopwebコマンド）
×
○

サーバ管理コマンドの実行
○
○

スレッドダンプの取得（cjdumpwebコマンド）
○
○

OS状態情報の取得（cjgetsysinfoコマンド）
○
○

（凡例）○：できる　×：できない

なお，Component Container管理者を設定しない場合は，スーパーユーザが運用管理者となるため，Component Container管理者の操作もスーパーユーザが実施します。

10.7.2　システムの起動

ここでは，サーブレットエンジンモードでのシステムの起動の手順について説明します。

なお，データベース，LDAPディレクトリサーバなどの関連製品は起動済みであることを前提に説明します。データベース，LDAPディレクトリサーバなどを使用している場合は，必要に応じてあらかじめ起動しておいてください。システムの起動手順を次に示します。

PRFデーモンを起動します。
cprfstartコマンドでPRFデーモンを起動します。起動方法については，「(1)　PRFデーモンの起動」を参照してください。

Webコンテナサーバを起動します。
cjstartwebコマンドでWebコンテナサーバを起動します。起動方法については，「(2)　Webコンテナサーバの起動」を参照してください。

Webサーバを起動します。
起動方法については，ご使用のWebサーバのマニュアルを参照してください。

Webアプリケーションの動作を確認します。
システムが起動できたら，Webアプリケーションが正常に動作することを確認してください。

＜この項の構成＞

(1)　PRFデーモンの起動

(2)　Webコンテナサーバの起動

(1)　PRFデーモンの起動

PRFデーモンの起動手順を次に示します。

cdコマンドでカレントディレクトリを移動します。

Windowsの場合

cd "<Cosminexusのインストールディレクトリ>¥PRF¥bin"

UNIXの場合

# cd /opt/Cosminexus/PRF/bin

cprfstartコマンドでPRFデーモンを起動します。

Windowsの場合

cprfstart

UNIXの場合

# cprfstart

なお，cprfstartコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprfstart（PRFデーモンの開始）」を参照してください。

(2)　Webコンテナサーバの起動

Webコンテナサーバの起動方法について説明します。

Webコンテナサーバを起動するには，次に示すコマンドを実行します。

Windowsの場合

"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstartweb サーバ名称"

なお，Windowsの場合，コマンドの実行には，Administrator権限が必要です。

UNIXの場合

"/opt/Cosminexus/CC/web/bin/cjstartweb <サーバ名称>"

なお，UNIXの場合，コマンドの実行には，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）が必要です。

同一ホストで複数のWebコンテナを同時に起動する場合のポート番号については，Webコンテナサーバのセットアップで設定します。詳細については，「10.6.2　Webコンテナサーバのセットアップ」を参照してください。

なお，SecurityManagerによるWebコンテナの保護をするには，-securityオプションを追加してください。

cjstartwebコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstartweb（Webコンテナサーバの開始）」を参照してください。

10.7.3　システムの停止

ここでは，サーブレットエンジンモードのシステムの停止手順について説明します。

なお，データベース，LDAPディレクトリサーバなどを使用している場合は，必要に応じて停止してください。システムの停止手順を次に示します。

Webサーバを停止します。
停止方法については，ご使用のWebサーバのマニュアルを参照してください。

Webコンテナサーバを停止します。
cjstopwebコマンドでWebコンテナサーバを停止します。停止方法については，「(1)　Webコンテナサーバの停止」を参照してください。

PRFデーモンを停止します。
cprfstopコマンドでPRFデーモンを停止します。停止方法については，「(2)　PRFデーモンの停止」を参照してください。

＜この項の構成＞

(1)　Webコンテナサーバの停止

(2)　PRFデーモンの停止

(1)　Webコンテナサーバの停止

Webコンテナサーバの停止方法について説明します。

Webコンテナサーバを停止するには，次に示すコマンドを実行します。

Windowsの場合

"<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjstopweb サーバ名称"

なお，Windowsの場合，コマンドの実行には，Administrator権限が必要です。

UNIXの場合

"/opt/Cosminexus/CC/web/bin/cjstopweb <サーバ名称>"

なお，UNIXの場合，コマンドの実行には，root権限（Component Container管理者を設定していない場合），またはComponent Container管理者の権限（Component Container管理者を設定している場合）が必要です。

Webコンテナサーバを停止しても，Webコンテナサーバの停止処理が完了しない場合があります。この場合，Webコンテナサーバを強制的に停止する必要があります。Webコンテナサーバを強制停止する場合，cjstopwebコマンドに-fオプションまたは-fdオプションを指定して実行します。-fdオプションを指定すると，Webコンテナサーバの障害情報を取得したあと，Webコンテナサーバを強制停止します。

なお，cjstopwebコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjstopweb（Webコンテナサーバの停止）」を参照してください。

(2)　PRFデーモンの停止

PRFデーモンの停止手順を次に示します。

cdコマンドでカレントディレクトリを移動します。

Windowsの場合

cd "<Cosminexusのインストールディレクトリ>¥PRF¥bin"

UNIXの場合

# cd /opt/Cosminexus/PRF/bin

cprfstopコマンドでPRFデーモンを停止します。
cprfstartコマンドを実行したユーザが実行してください

Windowsの場合

cprfstop

UNIXの場合

# cprfstop

PRFデーモンを停止しても，PRFデーモンの停止処理が完了しない場合があります。この場合，PRFデーモンを強制的に停止する必要があります。PRFデーモンを強制停止する場合，cprfstopコマンドに-Forceオプションを指定して実行します。

なお，cprfstopコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprfstop（PRFデーモンの停止）」を参照してください。

10.7.4　システムの処理性能の解析

ここでは，サーブレットエンジンモードで動作するシステムでの処理性能の解析方法について説明します。

アプリケーションサーバで構築したシステムの処理性能は，クライアントからデータベースなどのEISまで，およびその処理結果がクライアントに返却されるまでのリクエストの一連の処理で，リダイレクタやWebコンテナなどから出力されるトレース情報を基に解析できます。トレース情報を出力するリダイレクタやWebコンテナなどを，機能レイヤといいます。サーブレットエンジンモードで動作するシステムでのリクエストの処理過程では，次に示す機能レイヤからトレース情報が出力されます。

リダイレクタ

Webコンテナ

各機能レイヤでは決まった処理のポイント（トレース取得ポイント）でトレース情報を出力します。各機能レイヤが出力するトレース情報は，パフォーマンストレーサ（Cosminexus Performance Tracer）のPRFデーモンによって，トレースファイル（PRFトレースファイル）に出力されます。PRFデーモンにはトレース取得レベル（標準または詳細）を設定できます。PRFデーモンに設定するトレース取得レベルをPRFトレース取得レベルといいます。各機能レイヤのトレース取得ポイントおよびPRFトレース取得レベルの詳細については，「7.　性能解析トレースのトレース取得ポイントとPRFトレース取得レベル」を参照してください。

なお，各機能レイヤのトレース情報はバイナリ形式でPRFトレースファイルに出力されます。システムの処理性能を解析する際は，PRFトレースファイルをテキスト形式（CSV形式）に変換したファイル（性能解析トレースファイル）を使用します。

サーブレットエンジンモードの場合，システムの処理性能を解析する作業は，パフォーマンストレーサのコマンドで実行します。

システムの処理性能を解析する場合に実施する作業を次に示します。詳細については，参照先の説明を参照してください。

表10-34　システムの処理性能を解析する場合に実施する作業（サーブレットエンジンモードの場合）

作業の目的
作業の概要
パフォーマンストレーサのコマンド
参照先

性能解析トレースファイルを収集する
PRFトレースファイルを出力して，CSV形式に変換します。
cprfflush
cprfed
－

収集した性能解析トレースファイルを利用してシステムの処理性能を解析する
Webサーバのレスポンスタイムを解析します。
－※
6.6.2

アプリケーションサーバ内でのリクエストの処理状況を調査します。
－※
6.6.3

セッションのライフサイクルを調査します。
－※
6.6.4

タイムアウトしたトランザクションを特定します。
－※
6.6.5

タイムアウトしたリクエストを特定します。
－※
6.6.6

ルートアプリケーション情報を利用してログを調査します。
－※
6.6.7

データベースとの接続中にトラブルが発生したコネクションを特定します。
－※
6.6.8

（凡例）－：該当しない

注※

cprfedコマンドを使用して出力された性能解析トレースファイルを使用します。

cprfflushの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprfflush（バッファ内容の強制ファイル出力）」を参照してください。cprfedの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cprfed（性能解析トレース情報の編集出力）」を参照してください。

10.7.5　トラブルシューティング

ここでは，サーブレットエンジンモードでシステムを運用している場合に発生したトラブルに対処する方法について説明します。

＜この項の構成＞

(1)　対処の手順（サーブレットエンジンモードの場合）

(2)　取得が必要な資料の種類

(3)　資料の取得

(1)　対処の手順（サーブレットエンジンモードの場合）

ここでは，アプリケーションサーバのシステムの運用中に，トラブルが発生した場合の対処の手順について説明します。

なお，トラブル発生時に取得する情報のうち，次に示す情報を取得するためには，運用開始前の準備が必要です。

日立JavaVM固有ログ
このファイルには，JavaVMのガーベージコレクションのログも出力されます。

ユーザダンプ（Windowsの場合）

coreダンプ（UNIXの場合）

OSの統計情報（Windowsの場合）

これらの情報については，必要に応じてシステム構築時に取得準備をしてください。詳細については，「10.6.4　トラブルシューティングの資料取得の設定」を参照してください。

システムの運用中にトラブルが発生した場合，次の図に示す手順で対処します。

図10-6　トラブル発生時の対処の流れ

資料取得
トラブルシューティングに必要な資料をすべて取得します。
取得が必要な資料については，「(2)　取得が必要な資料の種類」を参照してください。なお，メモリダンプは，Webコンテナサーバを再起動する場合にだけ必要な資料です。
また，資料の取得方法については，「(3)　資料の取得」を参照してください。

トラブル原因の判別（一次判別）
トラブルの原因を判別します。判別には，取得した資料を使用します。資料の調査方法については，「10.7.6　資料の調査」を参照してください。

トラブルへの対処と回復
トラブルに対処して，回復します。
なお，トラブルの種類ごとの対処方法については，「10.7.7　トラブルへの対処と回復」を参照してください。

トラブル原因の解析（二次解析）
必要に応じてトラブル原因をさらに分析します。なお，この解析作業は保守員が実施します。

(2)　取得が必要な資料の種類

ここでは，トラブル発生時に取得が必要な資料の種類を示します。

トラブル発生時に取得が必要な資料の種類については，「2.4　取得が必要な資料の種類」を参照してください。

ただし，サーブレットエンジンモードの場合，snapshotログの取得方法と，デフォルトの設定でsnapshotログとして取得できる情報の種類が異なります。

また，資料を個別で取得するとき，次の資料の取得内容または取得方法が，運用管理ポータルを使用して構築したシステムの場合と異なります。

アプリケーションサーバのログ

性能解析トレース

(3)　資料の取得

ここでは，トラブル発生時の資料の取得方法について説明します。

トラブルシュートに必要な資料は，次のどちらかの方法で取得できます。

snapshotlogコマンドを利用して一括取得する

それぞれの情報を個別に収集する

snapshotログはsnapshotlogコマンドを実行して収集します。snapshotlogコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「snapshotlog（snapshotログの収集）」を参照してください。

それぞれの情報を個別に収集する場合，次の資料を取得します。

アプリケーションサーバのログ

Cosminexus Component Containerのログ

Cosminexus Performance Tracerのログ

Cosminexus DABroker Libraryのログ

Webアプリケーションのログ

性能解析トレース

JavaVMのスレッドダンプ

JavaVMのガーベージコレクションログ

メモリダンプ

アプリケーションサーバの定義情報

Webコンテナサーバの作業ディレクトリの内容

Webサーバログ

そのほかの情報

それぞれの情報の取得方法については「10.7.9　資料の取得方法」を参照してください。

10.7.6　資料の調査

ここでは，トラブルシューティングで，取得した資料を調査して，トラブルの原因を判別する方法について説明します。

トラブルシューティングに必要な資料の調査方法は，J2EEサーバモードの場合と同様です。

資料の調査方法については，「5.　トラブルシューティング（資料の出力内容）」を参照してください。

10.7.7　トラブルへの対処と回復

ここでは，次のようなトラブルが発生した場合に実施する，トラブルの内容に応じた対処方法および回復方法について説明します。

構成ソフトウェアのプロセスが異常終了した場合

データベースと接続中にトラブルが発生した場合

JavaVMが異常終了した場合

＜この項の構成＞

(1)　構成ソフトウェアのプロセスが異常終了した場合（サーブレットエンジンモードの場合）

(2)　データベースと接続中にトラブルが発生した場合（サーブレットエンジンモードの場合）

(3)　JavaVMが異常終了した場合（サーブレットエンジンモードの場合）

(1)　構成ソフトウェアのプロセスが異常終了した場合（サーブレットエンジンモードの場合）

システムの運用中に構成ソフトウェアが異常終了して再起動を実行する場合，異常終了した構成ソフトウェアの起動順序に依存関係があるときは，前提となる構成ソフトウェアが起動していることを確認してから再起動する必要があります。前提となる構成ソフトウェアは，システムの運用形態によって異なります。以降で，構成ソフトウェアの起動順序の依存関係，および構成ソフトウェアの再起動方法について説明します。

(a)　構成ソフトウェアの起動順序の依存関係

アプリケーションサーバで構築したシステムを構成する構成ソフトウェアの起動順序の依存関係について説明します。

サーブレットエンジンモードの場合のプロセスの依存関係を次に示します。

表10-35　サーブレットエンジンモードの場合のプロセスの依存関係

プロセスの種類 | 前提プロセス
PRFデーモン | －
Webコンテナサーバ | PRFデーモン
Webサーバ | －

（凡例）－：前提プロセスがない

(b)　プロセスの再起動方法

システムでプロセスが異常終了した場合のプロセスの再起動方法について説明します。

サーブレットエンジンモードの場合のプロセスの再起動（回復）の手順は次のとおりです。

表10-36　サーブレットエンジンモードの場合の再起動の手順

異常プロセス | 開始コマンド | 再起動（回復）手順
データベースサーバ | － | DBサーバを再起動してください。
PRFデーモン | cprfstart | パフォーマンストレーサを再起動してください。
Webコンテナサーバ | cjstartweb | Webコンテナサーバを再起動してください。
Webサーバ | － | Webサーバを再起動してください。

（凡例）

－：使用する製品によって開始コマンドが異なる，または該当する開始コマンドがない

(2)　データベースと接続中にトラブルが発生した場合（サーブレットエンジンモードの場合）

データベースとの接続中に，アプリケーションサーバの構成ソフトウェアであるCosminexus DABroker Libraryでトラブルが発生した場合，Cosminexus DABroker Libraryによってデータベースとの接続は切り離されます。また，Cosminexus DABroker Libraryを強制終了した場合も同様です。

これらのトラブルへの対処方法は，J2EEサーバモードの場合と同様です。対処方法については，「付録E.4　データベースと接続中にトラブルが発生した場合」を参照してください。

(3)　JavaVMが異常終了した場合（サーブレットエンジンモードの場合）

JavaVMでは，次のようなトラブルが発生する場合があります。

Cヒープ不足

内部論理エラー

OutOfMemoryError

これらのトラブルへの対処方法は，J2EEサーバモードの場合と同様です。対処方法については，「2.5.6　JavaVMが異常終了した場合」を参照してください。

10.7.8　トラブルシューティングに関連する留意事項

トラブルシューティングに関連する留意事項は，J2EEサーバモードの場合と同様です。留意事項については，「2.6　トラブルシューティングに関連する留意事項」を参照してください。

10.7.9　資料の取得方法

＜この項の構成＞

(1)　Cosminexus Component Containerのログ

(2)　性能解析トレースの取得（サーブレットエンジンモードの場合）

(3)　JavaVMのスレッドダンプの取得（サーブレットエンジンモードの場合）

(4)　JavaVMのガーベージコレクションログの取得（サーブレットエンジンモードの場合）

(5)　メモリダンプの取得（Webコンテナサーバを再起動する場合）

(6)　アプリケーションサーバの定義情報の取得（サーブレットエンジンモードの場合）

(7)　Webコンテナサーバの作業ディレクトリの内容取得（サーブレットエンジンモードの場合）

(8)　Webサーバログの取得

(9)　そのほかの情報の取得（サーブレットエンジンモードの場合）

(1)　Cosminexus Component Containerのログ

Cosminexus Component Containerのログとして取得する資料の出力先を次に示します。それぞれの資料の詳細については，「5.2　アプリケーションサーバのログの内容」を参照してください。

表10-37　Webコンテナサーバおよびリダイレクタのログの出力先（デフォルト）

分類
内容
ログ出力先およびログファイル名※1
デフォルトのサイズ×面数
チャネル名

メッセージログ
稼働ログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_message[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_message[n].log

1MB×2
WebMessageLogFile

リダイレクタのメッセージログ
ディレクトリ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

4MB×5
－

ファイル名

Windowsの場合
isapi_redirect[n].log（Microsoft IIS）
hws_redirect[n].log（Hitachi Web Server）

UNIXの場合
hws_redirect[n].log（Hitachi Web Server）

ユーザログ
Webサーブレットログ※3

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥web_servlet[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/web_servlet[n].log

4MB×4
WebServletLogFile

ユーザ出力ログ※4

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥user_out[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/user_out[n].log

1MB×2
UserOutLogFile

ユーザエラーログ※4

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥user_err[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/user_err[n].log

1MB×2
UserErrLogFile

JavaVMの保守情報およびガーベージコレクションのログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥javalog[nn].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/javalog[nn].log

256KB×4
－

例外ログ
障害発生時の例外情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_exception[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_exception[n].log

12MB×4
WebExceptionLogFile

保守用ログ
保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_maintenance[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_maintenance[n].log

1MB×2
WebMaintenanceLogFile

Webコンテナの保守情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjwebcontainer[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjwebcontainer[n].log

1MB×2
WebContainerLogFile

起動プロセス標準出力情報※5

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjstdout.log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjstdout.log

－
－

起動プロセス標準エラー情報※5

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjstderr.log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjstderr.log

－
－

終了プロセス情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_shutdown[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_shutdown[n].log

1MB×2
WebShutdownLogFile

Webコンテナ保守用トレースログ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs¥cjweb_access[n].log

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs/cjweb_access[n].log

2MB×16
WebAccessLogFile

リダイレクタの保守用トレースログ
ディレクトリ※2

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs

UNIXの場合
/opt/Cosminexus/CC/web/redirector/logs

16MB×2
－

ファイル名※2

Windowsの場合
hws_rd_trace[n].log（Hitachi Web Server）
isapi_rd_trace[n].log（Microsoft IIS）

UNIXの場合
hws_rd_trace[n].log

（凡例）－：該当しない

注

チャネル名は，ログの出力先を識別する名称です。ログの属性（サイズ，面数）を変更する場合のキー値として使用します。

注※1

［n］：ログファイル名の［n］部分には，面の番号（1から面数（最大16）まで）が付きます。また，［nn］の部分には01～99の通し番号が付きます。

注※2

ディレクトリ，ファイル名は，isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル），またはmod_jk.conf（Hitachi Web Server用リダイレクタ動作定義ファイル）で設定できます。リダイレクタのログ取得の設定については，「10.6.4　トラブルシューティングの資料取得の設定」を参照してください。isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル）については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.2　isapi_redirect.conf（Microsoft IIS用リダイレクタ動作定義ファイル）」を参照してください。mod_jk.conf（Hitachi Web Server用リダイレクタ動作定義ファイル）については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「9.3　mod_jk.conf（Hitachi Web Server用リダイレクタ動作定義ファイル）」を参照してください。

注※3

サーブレット，JSPで発生した例外のスタックトレースについても出力されます。

注※4

標準出力にも出力されます。また，サーブレット，JSPでのSystem.out，およびSystem.errへの出力はユーザ出力ログ，およびユーザエラーログに出力されます。

注※5

起動プロセス情報だけを取得するログです。主にWebコンテナサーバの起動または終了時に出力されるため，オンライン中に出力されることはほとんどありません。ファイルのサイズが上限に達したときは，<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs下（Windowsの場合），または/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs下（UNIXの場合）のcjstdout_save.logまたはcjstderr_save.logに退避されます。すでにcjstdout_save.logまたはcjstderr_save.logがあったときは，上書きされます。

注意

WebサーバとしてMicrosoft IISを使用している場合，リダイレクタのログファイルは，Webサーバへの初回アクセス時に，isapi_redirect.confで指定したファイルサイズで，指定した面数分，すべて作成されます。このとき，トレースファイルは空白(0x20)で初期化されます。デフォルトのファイルサイズと面数で運用している場合，ログの出力先に指定したディレクトリに，52メガバイトのディスク容量が必要になります。

なお，Webコンテナサーバおよびリダイレクタのログの出力先を変更している場合は，次の表に示す，ログの出力先を設定するユーザ定義ファイルを参照して出力先を確認してください。

表10-38　ログの出力先を設定するユーザ定義ファイル（サーブレットエンジンモードの場合）

分類
ユーザ定義ファイルの格納場所

Webコンテナサーバ
格納場所は，usrconf.cfgファイルのweb.server.log.directoryキーで指定します。キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥logs」（Windowsの場合），または「/opt/Cosminexus/CC/web/containers/<サーバ名称>/logs」（UNIXの場合）です。

リダイレクタ（Windowsの場合）

Hitachi Web Serverの場合

［メッセージログ］

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥mod_jk.confのJkLogFileDirキー

キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

［保守用トレースログ］

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥mod_jk.confのJkTraceLogFileDirキー

キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

Microsoft IISの場合

［メッセージログ］

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥isapi_redirect.confのlog_file_dirキー

キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

［保守用トレースログ］

<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥isapi_redirect.confのtrace_log_file_dirキー

キーのデフォルトは，「<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector¥logs」です。

リダイレクタ（UNIXの場合）

メッセージログ

/opt/Cosminexus/CC/web/redirector/mod_jk.confのJkLogFileDirキー

キーのデフォルトは，「/opt/Cosminexus/CC/web/redirector/logs」です。

保守用トレースログ

/opt/Cosminexus/CC/web/redirector/mod_jk.confのJkTraceLogFileDirキー

キーのデフォルトは，「/opt/Cosminexus/CC/web/redirector/logs」です。

ログの出力先の変更方法など，トラブルシューティングの資料取得の設定については，「10.6.4　トラブルシューティングの資料取得の設定」を参照してください。

(a)　Cosminexus Performance Tracerのログ

Cosminexus Performance Tracerのログの出力先を次に示します。

それぞれの資料の詳細については，「5.2　アプリケーションサーバのログの内容」を参照してください。

表10-39　Cosminexus Performance Tracerのログの出力先

内容
出力先ディレクトリ

PRFデーモンおよびPRFコマンドのログ

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥log¥<PRF識別子>¥ctmlog[n]

UNIXの場合
$PRFSPOOL/log/<PRF識別子>/ctmlog[n]

モジュールトレース

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥utt¥umt

UNIXの場合
$PRFSPOOL/utt/umt

構造化例外発生ログ

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥oslttrc

UNIXの場合
$PRFSPOOL/oslttrc

注

[n]には「01」または「02」が表示されます。

(b)　Cosminexus DABroker Libraryのログ

それぞれの資料の詳細については，「付録F　Cosminexus DABroker Libraryのスプール情報の内容」を参照してください。

Cosminexus DABroker Libraryでは，トラブルシューティングに使用するログとして，スプール情報を取得します。

次のディレクトリ下のすべてのファイルをコピーして保存してください。

Windowsの場合
<Cosminexus DABroker Libraryの運用ディレクトリ>¥spool

UNIXの場合
<Cosminexus DABroker Libraryの運用ディレクトリ>/spool

参考

Cosminexus DABroker Libraryでは，スプール情報のほかに次のJDBCドライバのトレースも取得できます。

JDBCインタフェースメソッドトレース

Cosminexus DABroker Libraryとのイベントトレース

ただし，JDBCドライバで次のトレースを取得するためには，アプリケーション開発時にあらかじめ指定されている必要があります。トレースを取得するための情報の設定については，「11.6　Cosminexus DABroker Library を使用したデータベース接続の実装」を参照してください。

(c)　Webアプリケーションのログ

Webアプリケーションのログは，日立トレース共通ライブラリ形式で出力するように設定している場合に取得できます。

Webアプリケーションのログの出力先については，usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）のejbserver.application.userlog.CJLogHandler.<ハンドラ名>.pathキーの値を参照してください。なお，<ハンドラ名>には，キーの値を区別するためのハンドラ名が指定されています。

usrconf.propertiesファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥usrconf.properties

UNIXの場合
/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties

なお，Webアプリケーションのユーザログ出力の設定については，「10.6.4(10)　Webアプリケーションのユーザログ出力の設定」を参照してください。

(2)　性能解析トレースの取得（サーブレットエンジンモードの場合）

性能解析トレースの収集方法については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。セッショントレースも同様に取得できます。

性能解析トレースの格納場所は次のとおりです。

Windowsの場合
<環境変数PRFSPOOLの設定ディレクトリ>¥utt¥prf¥<PRF識別子>

UNIXの場合
$PRFSPOOL/utt/prf/<PRF識別子>

(3)　JavaVMのスレッドダンプの取得（サーブレットエンジンモードの場合）

ここでは，JavaVMのスレッドダンプを取得する方法について説明します。

なお，Webコンテナサーバの起動オプションとして-XX:+HitachiThreadDumpが設定されている場合，拡張スレッドダンプを取得できます。-XX:+HitachiThreadDumpToStdoutが設定されている場合，スレッドダンプは標準出力にも出力されます。

また，-XX:+HitachiOutOfMemoryAbortが設定されている場合に，-XX:+HitachiOutOfMemoryAbortThreadDumpが設定されていると，OutOfMemoryErrorによって強制終了した時に，スレッドダンプが出力されます。ただし，次の場合は除きます。

J2SEクラスライブラリ内でCヒープ不足が発生した場合

JavaVMの処理中にCヒープ不足が発生した場合

cjstartwebプロセスが存在する場合のスレッドダンプの取得方法を次に示します。

Windowsの場合
cjstartwebプロセスが存在する場合，次を実行します（3秒おきに10回程度）。

<Cosminexusのインストールディレクトリ>¥CC¥web¥bin¥cjdumpweb <Webコンテナサーバ名>

UNIXの場合
cjstartwebプロセスが存在する場合，cjdumpwebコマンドまたはkillコマンドを使用してWebコンテナサーバのスレッドダンプを取得します（3秒おきに10回程度）。

cjdumpwebコマンドを使用する場合

/opt/Cosminexus/CC/web/bin/cjdumpweb <Webコンテナサーバ名>

killコマンドを使用する場合

ps -ef | grep cjstartweb
kill -3 <WebコンテナサーバのプロセスID>

スレッドダンプは，「/opt/Cosminexus/CC/web/containers/<サーバ名称>/javacore*.txt」，およびサーバ標準出力ログ（cjstdout.log）に出力されます。

また，javacore<プロセス番号>.<コマンド実行日時>.txtファイルの出力先は，環境変数JAVACOREDIRで変更できます。ただし，指定したディレクトリへの書き込みに失敗した場合は，カレントディレクトリに出力されます。このディレクトリにも出力できなかった場合は，標準エラー出力にだけ出力されます。

cjdumpwebコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjdumpweb（Webコンテナサーバのスレッドダンプの取得）」を参照してください。

参考

スレッドダンプが出力されると，標準出力に，次のメッセージが出力されます。そのあと，javaプログラムの実行が継続されます。このメッセージは，-XX:+HitachiThreadDumpToStdoutの設定とは関係なく出力されます。

Writing Java core to <ファイル名（フルパス）>...OK

(4)　JavaVMのガーベージコレクションログの取得（サーブレットエンジンモードの場合）

JavaVMのガーベージコレクションログは，JavaVMまたはWebコンテナサーバ起動前にログ出力先が設定されている場合にだけ取得できます。

ユーザ定義ファイルを使用して設定している場合は，usrconf.cfgファイルのweb.server.log.directoryのキーを確認してください。

また，実行中のJavaプロセスでガーベージコレクションを発生させたい場合は，javagcコマンドを実行してください。javagcコマンドは，トラブル発生時の要因調査のほか，1トランザクション当たりのメモリ使用量の測定，メモリリークの調査，アプリケーションのデバッグなどの目的でも使用できます。

実行中のJavaプロセスを指定してガーベージコレクションを発生させる場合，javagcコマンドは，次の形式で実行します。なお，これ以外に指定できるオプションについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「javagc（ガーベージコレクションの強制発生）」を参照してください。

javagc -p プロセスID

実行結果として，次のログが出力されます。なお，これは，オプションとして，-XX:+HitachiVerboseGCPrintCauseが指定されている場合の例です。

Windowsの場合

[VGC]<Wed Mar 17 00:42:30 2004>(Skip Full:0,Copy:0)[ Full GC 149K->149K(1984K),0.0786038
secs] [ DefNew::Eden:264K->0K(512K)] [ DefNew::Survivor:0K->63K(64K)] [ Tenured:
85K->149K(1408K)] [ Perm:1300K->1300K(1536K)] [ cause:System.gc]

UNIXの場合

[VGC]<Wed Mar 17 00:42:30 2004>(Skip Full:0,Copy:0)[ Full GC 149K->149K(1984K),0.0786038
secs] [ DefNew::Eden:264K->0K(512K)] [ DefNew::Survivor:0K->63K(64K)] [ Tenured:
85K->149K(1408K)] [ Perm:1300K->1300K(1536K)] [ cause:JavaGC Command]

javagcコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「javagc（ガーベージコレクションの強制発生）」を参照してください。

なお，-XX:+HitachiVerboseGCPrintCauseオプションは，usrconf.cfgに指定します。オプションの設定方法については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:[+|-]HitachiVerboseGCPrintCause（ガーベージコレクション要因内容出力オプション）」を参照してください。

(5)　メモリダンプの取得（Webコンテナサーバを再起動する場合）

メモリダンプの取得の取得方法についてOSごとに説明します。

(a)　Windowsの場合

Webコンテナサーバを再起動するときに，メモリダンプを取得します。メモリダンプは，システムでトラブルが発生したときに，保守員が障害解析するために使用します。

Webコンテナサーバが稼働している場合（cjstartwebプロセスが存在する場合），タスクマネージャからcjstartwebのプロセスIDを取得します。userdump.exe <プロセスID> を実行し，メモリダンプ（user.dump）を採取します。

(b)　UNIXの場合

Webコンテナサーバを再起動するときに，メモリダンプとして，Webコンテナサーバのcoreダンプを取得します。メモリダンプは，システムでトラブルが発生したときに，保守員が障害解析するために使用します。

cjstartwebプロセスがダウンした場合，「/opt/Cosminexus/CC/web/containers/<サーバ名称>/core*」に出力されたcoreダンプを取得します。

coreダンプのファイル名は，cjstartwebプロセスの再起動時に「core.<出力日時※>」（AIX，HP-UX，Solarisの場合）または「core.<プロセスID>.<出力日時※>」（Linuxの場合）にリネームされます。cjstartwebプロセスの再起動時にcoreダンプが上書き保存されないため，障害発生時のcoreダンプを保存できます。

注※

出力日時は「YYMMDDhhmmss」の形式で出力されます。

YY：西暦（下2けた）　MM：月（2けた）　DD：日（2けた）

hh：時（2けた[24時間表記]）　mm：分（2けた）　ss：秒（2けた）

なお，保存するcoreダンプは上限値を設定できます。cjstartwebプロセスの再起動時に「/opt/Cosminexus/CC/web/containers/<サーバ名称>/」に出力されるcoreダンプファイルの合計が上限値を超えた場合，出力日時が古い順に削除されます。上限値は，usrconf.cfgのweb.server.corefilenumキーに指定します。なお，ファイルの削除はcjstartwebプロセスの再起動時に実行されます。usrconf.cfgの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「18.3　usrconf.cfg（Webコンテナサーバ用オプション定義ファイル）」を参照してください。

coreダンプを取得したあとに，coreダンプからスタックトレース情報だけを取得する場合は，javatraceコマンドを実行してください。スタックトレース情報は，JavaVMの異常終了の原因を究明するために必要な情報です。スタックトレース情報の取得方法は，J2EEサーバモードの場合と同様です。「4.18　JavaVMのスタックトレース情報」を参照してください。

coreダンプは次のような場合にも取得できます。それぞれの場合の取得方法について説明します。

cjstartwebプロセスが稼働している状態でcoreダンプを取得する場合

実行中のJavaプロセスでcoreダンプとスレッドダンプを同時に取得する場合

cjstartwebプロセスが稼働している状態でcoreダンプを取得する場合

cjstartwebプロセス（Webコンテナサーバ）が稼働している状態でcoreダンプを取得する場合，cjstartwebプロセスのプロセスIDを確認して，killコマンドを実行します。killコマンドは次の形式で実行してください。なお，killコマンドを実行するとプロセスが終了するため，再起動する前にkillコマンドを実行することを推奨します。

kill -6 <cjstartwebプロセスID>

実行中のJavaプロセスでcoreダンプとスレッドダンプを同時に取得する場合

実行中のJavaプロセスでcoreダンプとスレッドダンプを同時に取得する方法は，J2EEサーバモードの場合と同様です。「4.9　メモリダンプ」を参照してください。

(6)　アプリケーションサーバの定義情報の取得（サーブレットエンジンモードの場合）

アプリケーションサーバの定義を取得します。この情報を使用して，発生した障害によって定義の設定を確認します。

Webコンテナサーバに関する定義情報

次のディレクトリ下に格納されているファイル一式を取得します。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf下すべて

UNIXの場合

/opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf下すべて

Cosminexus DABroker Libraryに関する定義情報

次のファイルを取得します。

Windowsの場合

<Cosminexus DABroker Library運用ディレクトリ>¥conf¥dasys.conf（Cosminexus DABroker Library動作環境定義ファイル）

<Cosminexus DABroker Library運用ディレクトリ>¥conf¥dabenv（接続先データベース定義ファイル）

UNIXの場合

<Cosminexus DABroker Library運用ディレクトリ>/conf/dasys.conf（Cosminexus DABroker Library動作環境定義ファイル）

<Cosminexus DABroker Library運用ディレクトリ>/conf/dabenv（接続先データベース定義ファイル）

なお，トラブルシューティング用に保存するファイルからは，パスワードなどの公開できない情報を削除することをお勧めします。

(7)　Webコンテナサーバの作業ディレクトリの内容取得（サーブレットエンジンモードの場合）

システムでトラブルが発生した場合に，保守員による原因究明のため作業ディレクトリを調査に使用する場合があります。

環境変数「PRFSPOOL」の設定ディレクトリ下すべて※

<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥webapps下すべて（Windowsの場合）

/opt/Cosminexus/CC/web/containers/<サーバ名称>/webapps下すべて（UNIXの場合）

注※

環境変数「PRFSPOOL」未設定の場合は，「<Cosminexusのインストールディレクトリ>¥PRF¥spool下すべて」（Windowsの場合），または「/opt/Cosminexus/PRF/spool下すべて」（UNIXの場合）になります。

設定を確認の上，トラブルが発生した場合に保存しておいてください。

(8)　Webサーバログの取得

システムで使用しているWebサーバ（Hitachi Web ServerまたはMicrosoft IIS）のログを取得します。

Hitachi Web Serverを使用している場合，ログの格納場所は「<Cosminexusのインストールディレクトリ>¥httpsd¥logs」（Windowsの場合），「/opt/hitachi/httpsd/logs」（UNIXの場合）です。

Microsoft IISを使用している場合，ログの格納場所は「C:¥WINNT¥system32¥LogFiles¥W3SVC1」です（C:の部分にはシステムドライブを指定します）。

(9)　そのほかの情報の取得（サーブレットエンジンモードの場合）

そのほかの情報を取得するための方法は，すべてJ2EEサーバモードの場合と同様です。参照先を次に示します。

表10-40　取得する情報の種類と参照先

取得する情報 | 参照先
日立固有のJavaVMログ | 4.10
JavaVM出力メッセージログ（標準出力またはエラーリポートファイル） | 4.11
OSの状態情報とOSのログ | 4.12
OSの統計情報 | 4.13

11.　Cosminexus DABroker Libraryを使用したデータベース接続

この章では，Cosminexus DABroker Libraryを使用したデータベース接続について説明します。

＜この章の構成＞

11.1　Cosminexus DABroker Libraryの機能概要

11.2　Cosminexus DABroker Libraryの初期設定

11.3　データベースとアプリケーション間の文字コードの変換

11.4　受信バッファのプーリングの設定

11.5　Cosminexus DABroker Libraryを使用する場合のトラブルシュート

11.6　Cosminexus DABroker Libraryを使用したデータベース接続の実装

11.7　DB Connectorを使用したデータベースとの接続

11.8　DB Connector for Cosminexus RMを使用したデータベース上のキューへの接続

11.9　Cosminexus DABroker Libraryを使用する場合の注意事項

11.1　Cosminexus DABroker Libraryの機能概要

Cosminexus DABroker Libraryは，データベース連携機能を提供する構成ソフトウェアです。JDBCインタフェースをサポートしたデータベースにアクセスするライブラリを提供します。これによって，複数のDBMSに一つのインタフェースでアクセスできる統一的なデータベースアクセスを実現できます。

＜この節の構成＞

11.1.1　Cosminexus DABroker Libraryを使用してデータベースに接続する方法

11.1.2　接続できるデータベース

11.1.1　Cosminexus DABroker Libraryを使用してデータベースに接続する方法

アプリケーションサーバでCosminexus DABroker Libraryを使用してデータベースに接続する方法には，次の2種類があります。

Cosminexus DABroker LibraryのAPIを使用して実装したアプリケーションによってデータベースに接続する方法

アプリケーションサーバが提供するリソースアダプタ（DB ConnectorまたはDB Connector for Cosminexus RM）を使用してデータベースに接続する方法

この章の構成と，データベースへの接続方法ごとに参照する節について，次の表に示します。

表11-1　この章の構成とデータベースへの接続方法ごとに参照する節

タイトル | データベースへの接続方法 | 参照先
APIを使用して実装したアプリケーションを使用 | リソースアダプタを使用
Cosminexus DABroker Libraryの機能概要 | ○ | ○ | 11.1※
Cosminexus DABroker Libraryの初期設定 | ○ | ○ | 11.2
データベースとアプリケーション間の文字コードの変換 | ○ | ○ | 11.3
受信バッファのプーリングの設定 | ○ | ○ | 11.4
Cosminexus DABroker Libraryを使用する場合のトラブルシュート | ○ | ○ | 11.5
Cosminexus DABroker Libraryを使用したデータベース接続の実装 | ○ | － | 11.6
DB Connectorを使用したデータベースとの接続 | － | ○ | 11.7
DB Connector for Cosminexus RMを使用したデータベース上のキューへの接続 | － | ○ | 11.8
Cosminexus DABroker Libraryを使用する場合の注意事項 | ○ | ○ | 11.9

（凡例）○：参照する　－：参照しない

注※　この節です。

11.1.2　接続できるデータベース

Cosminexus DABroker LibraryをJDBCドライバとして使用してJ2EEサーバから接続できるデータベース，および接続に使用するインタフェースの対応を，次の表に示します。

表11-2　J2EEサーバから接続できるデータベース

データベース
JDBCインタフェース
JMSインタフェースおよびJDBCインタフェース

ローカルトランザクション
グローバルトランザクション
ローカルトランザクション
グローバルトランザクション

HiRDB Version 8
○
○
○
○

HiRDB Version 7
○
○
○
○

XDM/RD E2※
○
－
－
－

Oracle 10g R2
10.2.0
○
○
－
－

Oracle 10g
10.1.0
○
○
－
－

Oracle9i R2
9.2.0
○
○
－
－

Oracle9i
9.0.1
○
－
－
－

（凡例）○：使用できます。　－：使用できません。

注※　Database Connection Server経由で接続します。HiRDBクライアントが前提です。

11.2　Cosminexus DABroker Libraryの初期設定

ここでは，Cosminexus DABroker Libraryを使用する場合の初期設定について，OSごとに説明します。

なお，以降，この章では，Cosminexus DABroker Libraryのインストールディレクトリのことを，Cosminexus DABroker Library運用ディレクトリといいます。

初期設定では，インストールおよびインストール後の環境設定を実施します。Cosminexus DABroker Libraryを使用する場合のインストール後の環境設定の流れを次に示します。

Cosminexus DABroker Libraryのセットアップ（UNIXの場合）

Cosminexus DABroker Libraryの動作環境の設定

データベース接続のための設定

J2EEアプリケーション運用のための設定

なお，これらの設定は，次の環境構築が済んでいることを前提にしています。

DBMSを使用できる環境が構築されていること

開発したJ2EEアプリケーションを組み込むホスト，およびCosminexus DABroker Libraryを組み込むホストをネットワーク上で使用できる環境が構築されていること

設定後，Cosminexus DABroker Libraryを使用したプロセス（J2EEサーバなど）が起動しているときには，設定を変更できません。該当するプロセスを停止してから，設定を変更してください。

＜この節の構成＞

11.2.1　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（Windowsの場合）

11.2.2　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（UNIXの場合）

11.2.3　データベースの設定

11.2.1　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（Windowsの場合）

ここでは，WindowsでCosminexus DABroker Libraryを使用するためのインストールおよび動作環境の設定について説明します。

＜この項の構成＞

(1)　インストール

(2)　インストール後のCosminexus DABroker Libraryのディレクトリ構成

(3)　Cosminexus DABroker Libraryの動作環境の設定

(4)　データベース接続のための設定

(5)　J2EEアプリケーション運用のための設定

(1)　インストール

製品のインストールには，日立総合インストーラを使用します。

なお，Windowsの場合には，すべての構成製品のインストールが終わると，再起動を促すダイアログが表示されます。ただし，Cosminexus DABroker Libraryの設定後にも再起動が必要になるため，Cosminexus DABroker Libraryの設定が終了したあとに再起動することをお勧めします。

(2)　インストール後のCosminexus DABroker Libraryのディレクトリ構成

Windowsの場合のインストール後のCosminexus DABroker Libraryのディレクトリ構成を次の表に示します。これらのディレクトリは，<Cosminexusのインストールディレクトリ>下に作成されます。

表11-3　Cosminexus DABroker Libraryのディレクトリ構成（Windowsの場合）

ディレクトリ | 説明
DAB | － | Cosminexus DABroker Libraryのインストールディレクトリです。
bin | ヘルプファイル格納用ディレクトリです。
lib | ライブラリ格納用ディレクトリです。
msg | メッセージファイル格納用ディレクトリです。
spool | － | トレースファイル，ログファイル格納用ディレクトリです。
dabcltrc | －
dabdump | －
db_access | －
tmp | 作業ディレクトリです。
DABJ | － | Cosminexus DABroker LibraryのJDBCドライバのインストールディレクトリです。

（凡例）－：該当しません。

(3)　Cosminexus DABroker Libraryの動作環境の設定

Cosminexus DABroker Libraryの動作環境は，環境設定ユティリティで設定します。

環境設定ユティリティにはオンラインヘルプがありますので，設定内容の詳細については，オンラインヘルプを参照してください。［スタート］メニューの［プログラム］から［Cosminexus※］－［DABrokerLibrary］－［ヘルプ］を選択すると，Cosminexus DABroker Libraryのオンラインヘルプが表示されます。

注※

プログラムフォルダ名を変更している場合，任意のプログラムフォルダから，選択してください。

また，環境設定ユティリティでは，トレース取得の設定ができます。Cosminexus DABroker Libraryで取得できるトレースについては，「11.5.3　Cosminexus DABroker Libraryで取得できるトレース」を参照してください。

ここでは，Cosminexus DABroker Libraryの動作環境の設定について説明します。

(a)　Cosminexus DABroker Libraryの動作環境の設定手順

Cosminexus DABroker Libraryの動作環境の設定手順を次に示します。

環境変数を設定します。
システム環境変数のPATHに「<Cosminexusのインストールディレクトリ>¥DAB¥lib」を設定してください。設定されていない場合，環境設定ユティリティは起動できません。

［スタート］メニューの［プログラム］から［Cosminexus］－［DABrokerLibrary］－［環境設定］を選択します。
［DABroker動作環境設定］ダイアログが表示されます。

［DABroker動作環境設定］ダイアログで必要事項を設定して，［適用］ボタンをクリックします。
［DABroker動作環境設定］ダイアログには次の三つのタブがあります。

［共通設定］タブ

［リモートアクセス設定］タブ

［for C++設定］タブ

各タブの設定内容については，以降で説明します。

［DABroker動作環境設定］ダイアログでの必要事項の設定が終わったら，［OK］ボタンをクリックしてダイアログを閉じます。

システムを再起動します。

(b)　［共通設定］タブの設定内容

ここでは，［共通設定］タブの設定内容について説明します。Cosminexus DABroker Libraryを使用する場合の［共通設定］タブの設定内容を次に示します。

「作業ディレクトリ」に，作業ディレクトリ（例：「C:¥Program Files¥Hitachi¥Cosminexus¥DAB¥tmp」）が表示されていることを確認します。

「使用するORACLEのバージョン」に，Oracleのバージョン（例：ORACLE9i）を指定します。

拡張データベースアクセストレースを取得する場合は，［拡張データベースアクセストレースを取得する］チェックボックスをチェックします。

拡張データベースアクセストレースを取得する場合は，［データベースアクセストレース設定］ボタンをクリックします。
［アクセストレース設定］ダイアログが表示されます。

［アクセストレース設定］ダイアログで，取得しない情報の項目のチェックを外して，［OK］ボタンをクリックします。
［DABroker動作環境設定］ダイアログに戻ります。

XAトレースを取得する場合は，［XAトレースを取得する］チェックボックスをチェックします。

［適用］ボタンをクリックします。

(c)　［リモートアクセス設定］タブの設定内容

ここでは，［リモートアクセス設定］タブの設定内容について説明します。Cosminexus DABroker Libraryを使用する場合の［リモートアクセス設定］タブの設定内容を次に示します。

次の項目を設定します。

HiRDBのBLOB型データ受取バッファサイズ

ORACLEのLONG型データ受取バッファサイズ

漢字コードセット

［適用］ボタンをクリックします。

(d)　［for C++設定］タブの設定内容

ここでは，［for C++設定］タブの設定内容について説明します。Cosminexus DABroker Libraryがインストールされている環境で，DABroker for C++をインストールし，DABroker for C++を使用してデータベースにアクセスする場合の設定です。

［for C++設定］タブでは，DABroker for C++を使用して開発したJ2EEアプリケーションからのアクセスでエラーが発生した場合の，DABroker for C++のイベントトレースの取得について設定します。エラーが発生した場合にイベントトレースを取得しておくことで，トレースを参照してエラーに対処できるようになります。

Cosminexus DABroker Libraryを使用する場合の［for C++設定］タブの設定内容を次に示します。

イベントトレースの取得の有無，取得する場合のトレース取得サイズやトレース取得レベルを設定します。

取得するトレースの種別を設定します。

［適用］ボタンをクリックします。

DABroker for C++のイベントトレースの詳細については，マニュアル「DABroker for C++」を参照してください。

(e)　環境設定ユティリティとファイルとの対応

環境設定ユティリティで設定した内容は，Cosminexus DABroker Library動作環境定義ファイルに反映されます。環境設定ユティリティとCosminexus DABroker Library動作環境定義ファイルの対応を次の表に示します。

表11-4　環境設定ユティリティとCosminexus DABroker Library動作環境定義ファイルの対応

環境設定ユティリティ | Cosminexus DABroker Library動作環境定義ファイルの項目名
タブ名 | 項目名
［共通設定］タブ | 作業ディレクトリ | DABTMP
データベースアクセス処理終了待ちタイムアウト | DABDBA_TIMEOUT
表検索カラム数 | DABSELECTCOLCNT
更新・検索条件カラム数 | DABSELECTINFCNT
ログファイルサイズ［dabsv.log］ | DABSVLOGSIZE
使用するORACLEのバージョン | DABORACLE_TYPE
HiRDBのディクショナリ表のデータ属性 | DABSQL_HiRDB_DICTIONARY_DATATYPE
HiRDB環境変数区切り文字 | DAB_HIRDB_DBINF_ESC
拡張データベースアクセストレースを取得する | DABEXSQL_TRCLINE
トレースファイルサイズ | DABEXSQL_TRC_LINE
XAトレースを取得する | DABXA_LOG_ERROR
［リモートアクセス設定］タブ | HiRDBのBLOB型データ受取バッファサイズ | DABHIRDBA_BLOBBUFSIZE
ORACLEのLONG型データ受取バッファサイズ | DABORADBA_LONGBUFSIZE
漢字コードセット | DABLANGMODE
［for C++設定］タブ | DABroker for C++のトレース取得サイズ | DABCPP_EVTTRC_SIZE
DABroker for C++のトレース取得レベル | DABCPP_EVTTRC_LEVEL
DABroker for C++のトレース取得種別 | DABCPP_EVTTRC_nn

環境設定ユティリティの［アクセストレース設定］ダイアログの項目とCosminexus DABroker Library動作環境定義ファイルの対応を次の表に示します。

表11-5　［アクセストレース設定］ダイアログの項目とCosminexus DABroker Library動作環境定義ファイルの対応

項目名（アクセストレースの種類） | Cosminexus DABroker Library動作環境定義ファイルの項目名
CANCEL | DABSQL_TRC_CANCEL
CLOSE | DABSQL_TRC_CLOSE
COMMIT | DABSQL_TRC_COMMIT
CONNECT | DABSQL_TRC_CONNECT
DECLARE | DABSQL_TRC_DECLARE
DESCRIBE | DABSQL_TRC_DESCRIBE
DISCONNECT | DABSQL_TRC_DISCONNECT
EXECUTE | DABSQL_TRC_EXECUTE
FETCH | DABSQL_TRC_FETCH
LOGGING | DABSQL_TRC_LOGGING
LOGLESS | DABSQL_TRC_LOGLESS
PREPARE | DABSQL_TRC_PREPARE
ROLLBACK | DABSQL_TRC_ROLLBACK
OPEN | DABSQL_TRC_OPEN
AUTO_COMMIT_OFF | DABSQL_TRC_AUTO_COMMIT_OFF
AUTO_COMMIT_ON | DABSQL_TRC_AUTO_COMMIT_ON
ATTACH | DABSQL_TRC_ATTACH
ATTRGET | DABSQL_TRC_ATTRGET
ATTRSET | DABSQL_TRC_ATTRSET
BIND | DABSQL_TRC_BIND
CHARFORM | DABSQL_TRC_CHARFORM
CHARID | DABSQL_TRC_CHARID
DEFINE | DABSQL_TRC_DEFINE
DESALLOC | DABSQL_TRC_DESALLOC
DESCANY | DABSQL_TRC_DESCANY
DESFREE | DABSQL_TRC_DESFREE
DETACH | DABSQL_TRC_DETACH
ENVCREATE | DABSQL_TRC_ENVCREATE
ERRGET | DABSQL_TRC_ERRGET
GETPIECE | DABSQL_TRC_GETPIECE
HDLALLOC | DABSQL_TRC_HDLALLOC
HDLFREE | DABSQL_TRC_HDLFREE
LOBCLOSE | DABSQL_TRC_LOBCLOSE
LOBLEN | DABSQL_TRC_LOBLEN
LOBOPEN | DABSQL_TRC_LOBOPEN
LOBREAD | DABSQL_TRC_LOBREAD
LOBWRITE | DABSQL_TRC_LOBWRITE
PARAMGET | DABSQL_TRC_PARAMGET
SESBEGIN | DABSQL_TRC_SESBEGIN
SESEND | DABSQL_TRC_SESEND
SETPIECE | DABSQL_TRC_SETPIECE
GETDIAG | DABSQL_TRC_GETDIAG
GET_INFO | DABSQL_TRC_GET_INFO
SET_INFO | DABSQL_TRC_SET_INFO
EXECUTE_DIRECT | DABSQL_TRC_EXECUTE_DIRECT

Cosminexus DABroker Library動作環境定義ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「17.2　Cosminexus DABroker Library動作環境定義ファイル」を参照してください。

(4)　データベース接続のための設定

Cosminexus DABroker Libraryがインストールされている環境で，DABroker for C++をインストールし，DABroker for C++を使用してデータベースに接続する場合には，接続先データベースの定義が必要です。

DABroker for C++を使用してデータベースに接続する場合は，接続先データベース定義ユティリティで設定したデータベース種別名，およびデータベース名を使用してデータベースにアクセスします。接続先データベース定義ユティリティで設定した情報を使用すると，接続条件などが変更されてもアプリケーションを変更する必要がありません。ただし，OTS機能，またはJTS機能を使用する場合は，接続先データベース定義ユティリティで設定した情報を使用できません。

(a)　接続先データベース定義の設定

接続先データベース定義ユティリティは，プログラムフォルダに登録された「DABroker接続先データベース定義」から起動します。「DABroker接続先データベース定義」は，すべてのユーザが操作できます。

接続先データベース定義ユティリティで設定した内容は，接続先データベース定義ファイル（<Cosminexus DABroker Library運用ディレクトリ>¥conf¥dabenv）に出力されます。なお，Cosminexus DABroker Library運用ディレクトリは，Cosminexus DABroker Libraryのインストールディレクトリ（<Cosminexusのインストールディレクトリ>¥DAB）です。

接続先データベース定義の設定手順を次に示します。

プログラムフォルダに登録された［接続先データベース定義］を起動します。
［DABroker接続先データベース定義］ダイアログが表示されます。

使用するデータベースの製品名が記載されたタブを選択し，接続情報を設定します。
次の情報を定義します。

データベース種別名
使用するデータベースに対して付ける任意の名称です。

データベース名
データベースごとに異なる情報の集まりに対して付ける任意の名称です。

データベース名のグループに定義する情報
データベース名のグループに定義する情報は，データベースごとに異なります。詳細については，「(b)　データベース名のグループに定義する情報」を参照してください。

［接続先データベース定義］ダイアログでの必要事項の設定が終わったら，［OK］ボタンをクリックしてダイアログを閉じます。

なお，［接続先データベース定義］ダイアログで設定する，データベース種別名，データベース名，およびデータベース名のグループに定義する情報は，次のような親子関係になります。

この例で示すように，データベース名は，同一データベース種別名に対して，複数定義できます。例えば，ホスト名が異なる二つのHiRDBを，一つのデータベース種別として定義し，アプリケーションでは，データベース名でホストの異なるHiRDBを使い分けられます。このような場合の［接続先データベース定義］ダイアログでの設定方法を次に示します。

データベース種別名，データベース名を新規登録する場合
設定後，［追加］ボタンを選択します。

同一データベース種別名に対して，別のデータベース名を登録する場合
設定後，［追加］ボタンを選択します。

登録されている情報を変更する場合
登録内容を変更したあと，［追加］ボタンを選択します。

データベース種別名またはデータベース名を削除する場合
削除するデータベース種別またはデータベース名を選択して［削除］ボタンを選択してください。

(b)　データベース名のグループに定義する情報

データベース名のグループに定義する情報について，データベースごとに説明します。

●HiRDBまたはXDM/RD E2を使用する場合

HiRDBまたはXDM/RD E2を使用する場合に，データベース名のグループに定義する情報を次の表に示します。

表11-6　データベース名のグループに定義する情報（HiRDBまたはXDM/RD E2を使用する場合）

設定項目名
指定内容

データベース種別名
使用するデータベースに対して付ける任意の名称を指定します。設定規則を次に示します。

接続先データベース定義ユティリティ内でユニークな名称にしてください。

23文字まで指定できます。2バイト文字，半角カタカナ文字は使用しないでください。

データベース名
データベースごとに異なる情報の集まりに対して付ける任意の名称を指定します。設定規則を次に示します。

同一データベース種別名内でユニークな名称にしてください。

23文字まで指定できます。2バイト文字，半角カタカナ文字は使用しないでください。

接続先ホスト名（DBHOST）
HiRDBのホスト名を指定します。

接続先ポート番号（DBNAME）
ポート番号を指定します。

ユーザID（USERID）
接続ユーザIDを指定します。※

パスワード（PASSWD）
パスワードを指定します。※

環境変数
HiRDBクライアントへ渡す環境変数を指定します。設定規則を次に示します。

1,024文字まで指定できます。2バイト文字，および半角カタカナ文字は使用しないでください。

各環境変数の先頭に，必ず区切り文字（@）を記述してください。

PDHOST（ホスト名称，またはIPアドレス），およびPDNAMEPORT（接続するポート番号）は，必ず先頭か末尾で指定してください。

PDHOST，およびPDNAMEPORTは，重複して指定しないでください。PDHOST，およびPDNAMEPORT以外の環境変数は，Cosminexus DABroker Libraryで設定した値をそのまま使えます。

Cosminexus DABroker Libraryでは，指定した環境変数の妥当性はチェックしません。

環境変数グループ
HiRDBクライアントへ渡す環境変数グループ名を指定します。設定規則を次に示します。

30文字まで指定できます。2バイト文字，および半角カタカナ文字は使用しないでください。

Cosminexus DABroker Libraryでは，指定した環境変数グループが有効かどうかはチェックしません。

注※

J2EEアプリケーションでユーザIDとパスワードを指定していない場合は，ここで指定したユーザID，パスワードを使用してデータベースにアクセスします。Cosminexus DABroker Libraryでは，接続先データベース定義ファイルの出力時にパスワードを暗号化していないため，パスワードはJ2EEアプリケーション側で指定するようにしてください。

なお，接続先データベース定義ユティリティで複数定義したデータベース種別名がユニークでも，実際のデータベース種別が同じ場合，同じプログラムから同時に接続できません。

●Oracleを使用する場合

Oracleを使用する場合に，データベース名のグループに定義する情報を次の表に示します。

表11-7　データベース名のグループに定義する情報（Oracleを使用する場合）

設定項目名
指定内容

データベース種別名
使用するデータベースに対して付ける任意の名称を指定します。設定規則を次に示します。

接続先データベース定義ユティリティ内でユニークな名称にしてください。

23文字まで指定できます。2バイト文字，半角カタカナ文字は使用しないでください。

データベース名
データベースごとに異なる情報の集まりに対して付ける任意の名称を指定します。設定規則を次に示します。

同一データベース種別名内でユニークな名称にしてください。

23文字まで指定できます。2バイト文字，半角カタカナ文字は使用しないでください。

リスナー名（DBNAME）
SQL*NET経由でアクセスするOracleのリスナー名称を指定します。ただし，リモートアクセスしない場合は省略します。

ユーザID（USERID）
接続ユーザIDを指定します。※

パスワード（PASSWD）
パスワードを指定します。※

注※

J2EEアプリケーションでユーザIDとパスワードを指定していない場合は，ここで指定したユーザID，パスワードを使用してデータベースにアクセスします。Cosminexus DABroker Libraryでは，接続先データベース定義ファイルの出力時にパスワードを暗号化していないため，パスワードはJ2EEアプリケーション側で指定するようにしてください。

なお，接続先データベース定義ユティリティで複数定義したデータベース種別名がユニークでも，実際のデータベース種別が同じ場合，同じプログラムから同時に接続できません。

(5)　J2EEアプリケーション運用のための設定

J2EEアプリケーションを運用する前に，次の設定をしてください。

J2EEアプリケーションの組み込み

J2EEアプリケーションのインタフェースの定義

サーバで動作するJ2EEアプリケーションの動作環境の設定

(a)　J2EEアプリケーションの組み込み

Cosminexus DABroker Libraryが組み込まれたサーバにJ2EEアプリケーションを格納します。また，次に示すクラスパスを指定します。

<Cosminexusのインストールディレクトリ>¥DABJ¥JdbcDbpsv.jar

<Cosminexusのインストールディレクトリ>¥DABJ¥JdbcDbpsvEx.jar※

注※

Cosminexus DABroker LibraryでJDBC2.0拡張機能を使用する場合に，このパスを指定してください。

ここでは，例として，「<Cosminexusのインストールディレクトリ>¥DABJ¥JdbcDbpsvEx.jar」をクラスパスとして指定します。

簡易構築定義ファイルでは，物理ティアの定義（<tier>タグの定義）のJ2EEサーバの定義で，<configuration>タグにクラスパスの設定を追加します。なお，指定するパラメタの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6.2　簡易構築定義ファイルの指定内容」を参照してください。

<?xml version="1.0" encoding="UTF-8"?>
<model-definition xmlns="http://www.cosminexus.com/mngsvr/schema/ModelDefinition-2.5">
 <!-- Webシステムの属性定義 -->
 <web-system>
   <name>MyWebSystem</name>
     :
   <!-- 物理ティア(combined-tier)の定義 -->
   <tier>
     <tier-type>combined-tier</tier-type>
     <!-- J2EEアプリケーションの組み込みの設定 -->
     <configuration>
       <logical-server-type>j2ee-server</logical-server-type>
       <param>
          <param-name>add.class.path</param-name>
          <param-value><Cosminexusのインストールディレクトリ>¥DABJ¥JdbcDbpsvEx.jar</param-value>
       </param>
     </configuration>
   </tier>
     :
 </web-system>
 <host>
   :
</model-definition>

注　太字の部分が編集部分です。

(b)　J2EEアプリケーションのインタフェースの定義

J2EEアプリケーションのインタフェースを定義します。

(c)　サーバで動作するJ2EEアプリケーションの動作環境の設定

Cosminexus DABroker Libraryでは，JNIを使ってDABrokerの提供するネイティブライブラリを使用します。Cosminexus DABroker Libraryをサーバで動作するJavaアプリケーションとして動作させるときは，次の設定が必要です。

ネイティブライブラリの動作環境の設定

データベースクライアントライブラリの動作環境の設定

●ネイティブライブラリの動作環境の設定

ネイティブライブラリはJDBCドライバを実行する（呼び出す）プロセス上で読み込まれて動作するので，ネイティブライブラリ実行のための動作環境を設定する必要があります。

設定内容

システム環境変数のPATHに「<Cosminexus DABroker Library運用ディレクトリ>¥lib」を設定します。

●データベースクライアントライブラリの動作環境の設定

ネイティブライブラリは，データベースにアクセスする場合に，各データベースが提供するクライアントライブラリを呼び出します。データベースクライアントライブラリの動作環境の設定を次に示します。

データベースライブラリのパスを設定します。
特別な設定は必要ありません。ただし，接続するデータベースによっては動作環境の設定が必要な場合があります。詳細については，接続するデータベースのマニュアルなどを参照してください。
PATHに，次の値を設定します。

HiRDB，またはXDM/RD E2の場合：HiRDBクライアントライブラリのパス名

Oracleの場合：Oracleライブラリ（libclntsh）のパス名

データベースの提供する環境変数を設定します。
JDBCドライバを実行する（呼び出す）プロセス上で有効な環境変数として，各データベースの提供する環境変数を設定する必要があります。
詳細については，「11.2.3　データベースの設定」，接続するデータベースのマニュアルなどを参照してください。

11.2.2　Cosminexus DABroker Libraryのインストールおよび動作環境の設定（UNIXの場合）

ここでは，UNIXでCosminexus DABroker Libraryを使用するためのインストールおよび動作環境の設定について説明します。

＜この項の構成＞

(1)　インストール

(2)　インストール後のCosminexus DABroker Libraryのディレクトリ構成

(3)　Cosminexus DABroker Libraryのセットアップ

(4)　Cosminexus DABroker Libraryの動作環境の設定

(5)　データベース接続のための設定

(6)　J2EEアプリケーション運用のための設定

(1)　インストール

製品のインストールには，日立PPインストーラを使用します。

(2)　インストール後のCosminexus DABroker Libraryのディレクトリ構成

UNIXの場合のインストール後のCosminexus DABroker Libraryのディレクトリ構成を次の表に示します。

表11-8　Cosminexus DABroker Libraryのディレクトリ構成（UNIXの場合）

ディレクトリ | 説明
/opt/Cosminexus | DABJ | Cosminexus DABroker LibraryのJDBCドライバのインストールディレクトリです。
/opt/DABroker | － | Cosminexus DABroker Libraryのインストールディレクトリです。
bin | 実行コマンド格納用ディレクトリです。
lib | ライブラリ格納用ディレクトリです。
obj | オブジェクトファイル格納用ディレクトリです。
AGT | エージェント処理用ディレクトリです。
AGTGRP | グループ管理用ディレクトリです。
msg | メッセージファイル格納用ディレクトリです。
sample | サンプルファイル格納用ディレクトリです。
conf | 定義ファイル格納用ディレクトリです。
spool | トレースファイル，ログファイル格納用ディレクトリです。

（凡例）－：該当しません。

注意

Cosminexus DABroker Libraryをアンインストールする場合，/opt/Cosminexus/DABJは削除されないので，手動で削除してください。

(3)　Cosminexus DABroker Libraryのセットアップ

セットアップでは，Cosminexus DABroker Libraryを管理するユーザをOSに登録し，Cosminexus DABroker Libraryの運用ディレクトリを作成します。セットアップの手順を次に示します。

Cosminexus DABroker Libraryを管理するユーザ（UNIXログインユーザ）をOSに登録します。
ユーザID登録後，パスワードも登録してください。登録方法はOSのマニュアルを参照してください。ここで登録したユーザを，Cosminexus DABroker Libraryの管理ユーザと呼びます。Cosminexus DABroker Libraryの管理ユーザに与えられる権限は，次のとおりです。

Cosminexus DABroker Libraryで提供するファイルおよびディレクトリの所有者としてのアクセス権

Cosminexus DABroker Libraryの運用コマンドの実行権

注　Oracleにアクセスする場合は，登録するユーザのUIDを「3」以上にしてください。

Cosminexus DABroker Libraryのインストールディレクトリのグループおよびユーザを，手順1.で登録した管理グループおよびユーザに変更します。

Cosminexus DABroker Libraryセットアップコマンド（dabsetup）を実行します。
スーパーユーザで，/opt/DABroker/binディレクトリにあるdabsetupを実行します。
(例)　dabsetup /home
dabsetupコマンドは，Cosminexus DABroker Library運用ディレクトリを指定するコマンドです。このコマンドを実行すると，インストールディレクトリのディレクトリおよびファイルが，<パス名>に指定した運用ディレクトリに移動されます。<パス名>を省略した場合，運用ディレクトリはCosminexus DABroker Libraryのインストールディレクトリ（/opt/DABroker）となります。また，dabsetupコマンドに-dオプションを指定すると，運用ディレクトリの削除もできます。

注意

AIXの場合で，Cosminexus Component ContainerをCロケールで動作させるときは，環境変数「LC__FASTMSG」に「false」が指定されているか確認してください。Cosminexus DABroker Libraryを使用してDBにアクセスし，かつCosminexus Component ContainerをCロケールで動作させる場合には，環境変数「LC__FASTMSG」に「false」を指定する必要があります。

(4)　Cosminexus DABroker Libraryの動作環境の設定

Cosminexus DABroker Libraryの動作環境は，Cosminexus DABroker Library動作環境定義ファイルで設定します。また，Cosminexus DABroker Library動作環境定義ファイルでは，トレース取得の設定ができます。Cosminexus DABroker Libraryで取得できるトレースについては，「11.5.3　Cosminexus DABroker Libraryで取得できるトレース」を参照してください。

ここでは，Cosminexus DABroker Libraryの動作環境の設定について説明します。

Cosminexus DABroker Libraryの動作環境は，Cosminexus DABroker Library動作環境定義ファイルで設定します。動作環境定義ファイルは，インストール時に提供されるサンプルを使用して作成します。

提供されるサンプルファイル
/opt/DABroker/sample/dasysconf

動作環境定義ファイルの格納先
<Cosminexus DABroker Library運用ディレクトリ>/conf

Cosminexus DABroker Libraryの動作環境の設定手順を次に示します。

サンプルファイルを動作環境定義ファイルの格納先へコピーします。

コピーしたサンプルファイルを編集します。
必要に応じて，標準値の変更や値の追加をしてください。

共通設定項目（作業ディレクトリ，Oracleのバージョン，拡張データベースアクセストレースの取得の有無など）

リモートアクセス設定項目（データの受け取りバッファサイズなど）

HiRDB設定項目

Oracle設定項目

なお，Cosminexus DABroker Library動作環境定義ファイルは，「DAB」ブロックと「OTHERS」ブロックで構成されます。

「DAB」ブロック

共通設定項目やリモートアクセス設定項目を指定するブロックです。Cosminexus DABroker Libraryはこのブロックの設定項目をチェックするため，不正な名称などを指定していた場合はエラーになります。

「OTHERS」ブロック

HiRDB設定項目やOracle設定項目を指定するブロックです。Cosminexus DABroker Libraryはこのブロックの設定項目をチェックしません。指定したすべての項目が有効となります。

Cosminexus DABroker Library動作環境定義ファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「17.2　Cosminexus DABroker Library動作環境定義ファイル」を参照してください。

ファイルを保存します。

なお，作成済みのCosminexus DABroker Library動作環境定義ファイルの内容を変更する場合は，J2EEサーバを停止してください。

(5)　データベース接続のための設定

ここでは，Cosminexus DABroker Libraryを使用してデータベースに接続するために必要な設定について説明します。

HiRDBの言語モードの設定

Cosminexus DABroker LibraryおよびJDBCでの言語モードの設定

(a)　HiRDBの言語モードの設定

データベースとしてHiRDBを使用する場合は，言語モードを設定してください。Cosminexus DABroker Libraryの言語モードとHiRDBの言語モードの対応を次の表に示します。なお，Cosminexus DABroker Libraryの言語モードとは，Cosminexus DABroker Library動作環境定義ファイルのDAB_LANG（LANG環境変数）のことです。

表11-9　Cosminexus DABroker Libraryの言語モードとHiRDBの言語モードの対応

Cosminexus DABroker Libraryの言語モード | HiRDBの言語モード
OS | 言語モード | DAB_LANGの指定値 | SJIS | EUC日本語 | ASCII | UTF-8
AIX | SJIS | Ja_JP | ○ | － | － | －
Ja_JP.IBM-932 | ○ | － | － | －
Ja_JP.IBM-943 | ○ | － | － | －
EUC | ja_JP | － | ○ | － | －
ja_JP.IBM-eucJP | － | ○ | － | －
ASCII | C※ | － | － | ○ | －
UTF-8 | UTF-8 | － | － | － | ○
HP-UX | SJIS | ja_JP.SJIS※ | ○ | － | － | －
EUC | ja_JP.EUC | － | ○ | － | －
ja_JP.UJIS | － | ○ | － | －
ja_JP.eucJP | － | ○ | － | －
ASCII | C | － | － | ○ | －
UTF-8 | UTF-8 | － | － | － | ○
Linux | EUC | ja_JP | － | ○ | － | －
ja_JP.ujis | － | ○ | － | －
japanese | － | ○ | － | －
japanese.euc | － | ○ | － | －
ja_JP.eucjp | － | ○ | － | －
Ja_JP | － | ○ | － | －
ASCII | C※ | － | － | ○ | －
UTF-8 | UTF-8 | － | － | － | ○
Solaris | SJIS | ja_JP.PCK※ | ○ | － | － | －
EUC | ja | － | ○ | － | －
japanese | － | ○ | － | －
ASCII | C | － | － | ○ | －
UTF-8 | UTF-8 | － | － | － | ○

（凡例）　○：使用できる　－：使用できない

注※　DAB_LANGの標準値を示します。

(b)　Cosminexus DABroker LibraryおよびJDBCでの言語モードの設定

ENCODELANG，またはsetEncodLangに指定する言語モードは，Cosminexus DABroker Libraryの言語モードと合わせる必要があります。ENCODELANG，またはsetEncodLangの指定方法について次に説明します。

OSの言語モードとCosminexus DABroker Libraryの言語モードが同じ場合

ENCODELANG，またはsetEncodLangの指定は必要ありません。

OSの言語モードとCosminexus DABroker Libraryの言語モードが異なる場合

ENCODELANG，またはsetEncodLangに，Cosminexus DABroker Libraryの言語モードと同等の値を指定する必要があります。

注意事項

Cosminexus DABroker Libraryの言語モードと，データベースの言語モードは必ず合わせてください。

データベースの言語モードをCosminexus DABroker Libraryがサポートしていない場合，Cosminexus DABroker Libraryの言語モードにはASCIIモードを設定し，ENCODELANGまたはsetEncodLangにデータベースの言語モードを指定してください。

(6)　J2EEアプリケーション運用のための設定

J2EEアプリケーションを運用する前に，次の設定をしてください。

J2EEアプリケーションの組み込み

J2EEアプリケーションのインタフェースの定義

サーバで動作するJ2EEアプリケーションの動作環境の設定

(a)　J2EEアプリケーションの組み込み

Cosminexus DABroker Libraryが組み込まれたサーバにJ2EEアプリケーションを格納します。また，環境変数「CLASSPATH」に次に示すパスを追加します。

/opt/Cosminexus/DABJ/JdbcDbpsv.jar

/opt/Cosminexus/DABJ/JdbcDbpsvEx.jar※

注※

Cosminexus DABroker LibraryでJDBC2.0拡張機能を使用する場合に，このパスを指定してください。

(b)　J2EEアプリケーションのインタフェースの定義

J2EEアプリケーションのインタフェースを定義します。

(c)　サーバで動作するJ2EEアプリケーションの動作環境の設定

Cosminexus DABroker Libraryでは，JNIを使ってDABrokerの提供するネイティブライブラリを使用します。Cosminexus DABroker Libraryをサーバで動作するJavaアプリケーションとして動作させるときは，次の設定が必要です。

ネイティブライブラリの動作環境の設定

データベースクライアントライブラリの動作環境の設定

●ネイティブライブラリの動作環境の設定

ネイティブライブラリはJDBCドライバを実行する（呼び出す）プロセス上で読み込まれて動作するので，ネイティブライブラリ実行のための動作環境を設定する必要があります。

設定内容

ライブラリ検索パスを指定する環境変数に，「<Cosminexus DABroker Library運用ディレクトリ>/lib」を設定します。設定する環境変数はOSによって異なります。

LIBPATH（AIXの場合）

LD_LIBRARY_PATH（HP-UX，Linux，およびSolarisの場合）

●データベースクライアントライブラリの動作環境の設定

ネイティブライブラリは，データベースにアクセスする場合に，各データベースが提供するクライアントライブラリを呼び出します。データベースクライアントライブラリの動作環境の設定を次に示します。

データベースライブラリのパスを設定します。
特別な設定は必要ありません。ただし，接続するデータベースによっては動作環境の設定が必要な場合があります。詳細については，接続するデータベースのマニュアルなどを参照してください。
ライブラリ検索パスを指定する環境変数に，次の値を指定します。設定する環境変数はOSによって異なります。

LIBPATH（AIXの場合）

LD_LIBRARY_PATH（HP-UX，Linux，およびSolarisの場合）

使用しているOSの環境変数に次のパスを設定してください。

HiRDB，またはXDM/RD E2の場合：HiRDBクライアントライブラリのパス名

Oracleの場合：Oracleライブラリ（libclntsh）のパス名

データベースの提供する環境変数を設定します。
JDBCドライバを実行する（呼び出す）プロセス上で有効な環境変数として，各データベースの提供する環境変数を設定する必要があります。
詳細については，「11.2.3　データベースの設定」，接続するデータベースのマニュアルなどを参照してください。

11.2.3　データベースの設定

ここでは，Cosminexus DABroker Libraryを使用してデータベースに接続する場合に必要な設定について説明します。

Cosminexus DABroker Libraryを使用する場合に接続できるデータベースと，必要な設定についての参照先を次に示します。

表11-10　Cosminexus DABroker Libraryを使用する場合に接続できるデータベースと，必要な設定についての参照先

使用できるデータベース | 必要な設定についての参照先
HiRDB | (1)
Oracle | (2)
XDM/RD E2 | (3)

＜この項の構成＞

(1)　HiRDBの設定

(2)　Oracleの設定

(3)　XDM/RD E2の設定

(1)　HiRDBの設定

Cosminexus DABroker Libraryを使用してHiRDBに接続する場合の設定について説明します。なお，データベースとしてHiRDBを使用する場合は，HiRDBをインストールして初期設定を済ませておいてください。詳細については，マニュアル「HiRDB システム導入・設計ガイド」を参照してください。Cosminexus DABroker Libraryの設定については，「11.2　Cosminexus DABroker Libraryの初期設定」を参照してください。

ここでは，Cosminexus DABroker Libraryを使用して，HiRDBでJ2EEリソースを扱う場合に必要な次の設定について説明します。

環境変数の設定

環境変数のグループ登録

タイムアウトの設定

なお，同一の環境変数を環境変数グループと環境変数の両方に設定した場合は，環境変数グループで設定した環境変数が優先されます。

(a)　環境変数の設定

次の環境変数を設定する必要があります。環境変数の詳細については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

PATH（Windowsの場合）

HiRDBのクライアントライブラリとして，次の値を指定します。通常，HiRDBのインストーラによってシステム環境変数に設定されます。

<HiRDBのホームディレクトリ>¥client¥lib

LIBPATH（AIXの場合）

HiRDBのクライアントライブラリとして，次の値を指定します。

<HiRDBのホームディレクトリ>/client/lib

LD_LIBRARY_PATH（HP-UX，Linux，およびSolarisの場合）

HiRDBのクライアントライブラリとして，次の値を指定します。

<HiRDBのホームディレクトリ>/client/lib

PDXAMODE※¹

「1」を指定します。

PDTXACANUM※¹

（HiRDBにアクセスするJ2EEコンポーネントの同時実行数）×（J2EEコンポーネントでアクセスする可能性があるHiRDB数）を指定します。

PDHOST※²

データベースのホスト名またはIPアドレスを指定します。

PDUSER※²

データベースのユーザ名およびデータベースのパスワードを指定します。

PDNAMEPORT※²

データベースのポート番号を指定します。

PDSWAITTIME※²

リクエスト間隔タイムアウトを指定します。

PDCWAITTIME※²

レスポンスタイムアウトを指定します。

PDSWATCHTIME※²

「0」を指定します。コネクションプーリング機能を使用する場合は，「0」を指定してください。

注※1

グローバルトランザクションを使用する場合に設定します。この環境変数は，HiRDBのクライアント環境変数グループには登録できません。

注※2

これらの環境変数は，HiRDBのクライアント環境変数グループとして登録することもできます。登録方法については，「(b)　環境変数のグループ登録」で説明します。

(b)　環境変数のグループ登録

環境変数のグループは，次の方法で登録します。

Windowsの場合
HiRDBのクライアント環境変数登録ツールで「システムグループ」を選択して，環境変数のグループを登録します。この場合，DB Connectorのプロパティ定義では，ここで登録したグループ名を指定してください。

UNIXの場合
HiRDBのクライアント環境変数グループの設定ファイルに登録します。この場合，DB Connectorのプロパティ定義では，ここで登録した環境変数グループの設定ファイルのパスを指定してください。

なお，環境変数のグループ登録の詳細については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

(c)　タイムアウトの設定

HiRDBのタイムアウトは，次に示すHiRDBのクライアント環境変数に設定します。

PDSWAITTIME

PDCWAITTIME

PDCONNECTWAITTIME

PDNBLOCKWAITTIME

HiRDBのクライアント環境変数の設定については，「(a)　環境変数の設定」を参照してください。

タイムアウトの設定については，マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「8.6.5　データベースでのタイムアウトを設定する」，マニュアル「HiRDB システム定義」，およびマニュアル「HiRDB UAP開発ガイド」を参照してください。

(2)　Oracleの設定

Cosminexus DABroker Libraryを使用してOracleに接続する場合の設定について説明します。なお，データベースとしてOracleを使用する場合は，Oracleをインストールして初期設定を済ませておいてください。詳細については，Oracleのマニュアルを参照してください。Cosminexus DABroker Libraryの設定については，「11.2　Cosminexus DABroker Libraryの初期設定」を参照してください。

ここでは，Cosminexus DABroker Libraryを使用して，OracleでJ2EEリソースを扱う場合に必要な次の設定について説明します。

環境変数の設定

トランザクションリカバリを行うための権限の設定

タイムアウトの設定

(a)　環境変数の設定

次の環境変数を設定する必要があります。

PATH（Windowsの場合）

Oracleのクライアントライブラリとして，次の値を指定します。通常，Oracleのインストーラによってシステム環境変数に設定されます。

<Oracleのホームディレクトリ>¥bin

LIBPATH（AIXの場合）

Oracleのクライアントライブラリとして，次の値を指定します。

<Oracleのホームディレクトリ>/lib32

LD_LIBRARY_PATH（HP-UX，Linux，およびSolarisの場合）

Oracleのクライアントライブラリとして，次の値を指定します。

<Oracleのホームディレクトリ>/lib32

NLS_LANG（UNIXの場合）

Oracleのクライアントで使用する言語を設定します。

設定値の例

japanese_japan.ja16sjis
Japanese_Japan.UTF8

(b)　トランザクションリカバリを行うための権限の設定

Oracleへの接続でグローバルトランザクションを使用する場合には，Oracleの接続ユーザにトランザクションリカバリを行うための権限を付与する必要があります。

付与する権限

SYS.DBA_PENDING_TRANSACTIONSのSELECT権限

FORCE_ANY_TRANSACTION権限

権限の付与の方法

次のどちらかの方法で権限を付与します。

Oracle Enterprise Managerコンソールを使用する

sqlplusを使用する

次に，Oracle 9.2.0で権限を付与する場合の例を示します。なお，権限を付与する方法の詳細については，Oracleのマニュアルを参照してください。

Oracle Enterprise Managerコンソールを使用する場合の例
Oracle Enterprise Managerコンソールを使用して権限を付与する場合の手順を次に示します。

sysユーザでデータベースに接続します。

［セキュリティ］－［ユーザー］－［<権限を付与するユーザ名>］－［オブジェクト権限］を開きます。

［SYS］－［ビュー］－［DBA_PENDING_TRANSACTIONS］を選択して，SELECT権限を付与します。

sqlplusを使用する場合の例
sqlplusを使用して権限を付与する場合の手順を次に示します。

sysユーザでデータベースに接続します。

次のSQL文を発行します。
grant select on DBA_PENDING_TRANSACTIONS to <権限を付与するユーザ名>;
commit;

(c)　タイムアウトの設定

必要に応じて，Oracleのタイムアウトを設定してください。タイムアウトは，Oracleのサーバ定義のDISTRIBUTED_LOCK_TIMEOUTパラメタに設定します。

なお，このほか，XAOpenStringのSesTmパラメタの設定がタイムアウトに影響します。このパラメタは，チューニングできません。

詳細については，マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「8.6　タイムアウトを設定する」またはマニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「9.3　タイムアウトを設定する」，およびOracleのマニュアルを参照してください。

(d)　動的パフォーマンスビューの参照権の設定

Oracleに接続するユーザは，動的パフォーマンスビューの参照権を持っている必要があります。次のどちらかの方法でOracleに接続するユーザに動的パフォーマンスビューの参照権を設定してください。

「GRANT SELECT_CATALOG_ROLE TO <ユーザ名>;」を実行する。

「GRANT SELECT ON V_$INSTANCE TO <ユーザ名>;」，「GRANT SELECT ON V_$PROCESS TO <ユーザ名>;」，および「GRANT SELECT ON V_$SESSION TO <ユーザ名>;」を実行する。

(3)　XDM/RD E2の設定

Cosminexus DABroker Libraryを使用してXDM/RD E2に接続する場合の設定は，HiRDB Type4 JDBC Driverを使用して接続する場合の設定と同じです。HiRDB Type4 JDBC Driverを使用してXDM/RD E2に接続する場合の設定については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「付録C.1　XDM/RD E2の設定」を参照してください。

なお，Cosminexus DABroker Libraryの設定については，「11.2　Cosminexus DABroker Libraryの初期設定」を参照してください。

11.3　データベースとアプリケーション間の文字コードの変換

アプリケーションからデータベースに文字データを格納するときには，Unicodeからデータベースに設定されている文字コードに変換して格納する必要があります。文字コード変換はJDBCドライバによって行われますが，次に示す内容に従って，あらかじめJDBCドライバに使用する文字コードを設定しておく必要があります。

ここでは，データベースへの接続方法ごとの文字コードの設定方法について説明します。

＜この節の構成＞

(1)　APIを使用して実装したアプリケーションでデータベースに接続する場合

(2)　DB Connectorを使用してデータベースに接続する場合

(1)　APIを使用して実装したアプリケーションでデータベースに接続する場合

JDBCコネクションを取得するとき，ENCODELANGキーに該当値を設定したプロパティを作成し，Cosminexus DABroker Libraryのjava.sql.Driver.connectメソッドまたはjava.sql.DriverManager.getConnectionメソッドの引数に渡してください。

(2)　DB Connectorを使用してデータベースに接続する場合

Connector属性ファイルのencodLangプロパティで指定します。

ベーシックモードでは，ejbserver.jdbc.propertyInfo.ENCODELANGプロパティに使用する文字コードを指定してください。このプロパティに値が指定されている場合，J2EEサーバがJDBCコネクションを取得するときに，ENCODELANGキーに該当値を設定したプロパティを作成し，Cosminexus DABroker Libraryのjava.sql.Driver.connectの引数に渡します。

11.4　受信バッファのプーリングの設定

Cosminexus DABroker Libraryを使用する場合，実行したSQLに対して返却される実行結果を格納する領域をプールして再利用できます。この領域を受信バッファといいます。また，受信バッファをプールするための領域を受信バッファプールといいます。受信バッファをプールすることによって，SQL実行時に受信バッファが頻繁に作成，破棄されることで発生する負荷を削減できます。

また，プールする受信バッファの数を指定できるため，ステートメントプーリング使用時のメモリ占有量を抑制できます。

ここでは，受信バッファの管理と，受信バッファプール数の指定について説明します。

＜この節の構成＞

11.4.1　受信バッファの管理

11.4.2　受信バッファプール数の指定

11.4.1　受信バッファの管理

受信バッファの管理では，プールする受信バッファ数を指定する場合と指定しない場合とで，受信バッファの再利用のしかたが異なります。ここでは，プールする受信バッファ数を指定しない，デフォルトの場合について説明します。受信バッファ数を指定する場合については，「11.4.2　受信バッファプール数の指定」を参照してください。

受信バッファは，Statementごとに受信バッファプールに生成されます。生成された受信バッファはセクションIDで管理され，同一のStatementで再利用されます。なお，ここでは，Statement，PreparedStatement，およびCallableStatementをStatementと総称します。

受信バッファプールの管理の概要を次の図に示します。

図11-1　受信バッファプールの管理の概要（受信バッファプール数を指定しない場合）

受信バッファが生成されるタイミング

Statementの受信バッファはデータベースとの接続時に一つ生成され，そのセクションIDは「1」になります。これ以降はSQL実行時に受信バッファが生成されます。受信バッファが生成されると，受信バッファプールに登録されます。

受信バッファの保持期間

受信バッファプールに登録された受信バッファは，コネクションがクローズされるまで保持されます。ステートメントをクローズしても，受信バッファは破棄されません。

プールする受信バッファの数

プールできる受信バッファの数は，最大1,024個です。

SQLを実行するメソッド

次のメソッドを実行するとSQLが実行され，受信バッファが生成されます。

表11-11　4SQLを実行するメソッド

クラス | メソッド
Connection | prepareCall(String sql)
prepareCall(String sql, int resultSetType, int resultSetConcurrency)
prepareStatement(String sql)
prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
DatabaseMetaData | getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)
getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
getSchemas()
getTableTypes()
getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)
getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)
getPrimaryKeys(String catalog, String schema, String table)
getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)
Statement | executeBatch()
execute(String sql)
executeQuery(String sql)
executeUpdate(String sql)
PreparedStatement | execute()
executeQuery()
executeUpdate()

11.4.2　受信バッファプール数の指定

受信バッファプールに登録してプールする受信バッファの数を指定できます。この数のことを受信バッファプール数といいます。受信バッファプール数を指定することによってSQL実行時の性能を向上でき，メモリ占有量を軽減できます。

受信バッファプール数は，1～1,024個の範囲で指定できます。受信バッファプール数を指定すると，同一コネクション内で受信バッファが再利用されます。そのため，セッションIDが異なるStatementでも，同一コネクションであれば受信バッファを再利用できます。受信バッファが，指定した受信バッファプール数よりも多く必要になった場合は，一時的に受信バッファを生成し，Cosminexus DABroker Libraryから実行結果のデータを受信したあとに破棄します。このような一時的に生成した受信バッファは，受信バッファプールには登録されません。

受信バッファプール数を指定した場合の，受信バッファプールの管理の概要を次の図に示します。

図11-2　受信バッファプールの管理の概要（受信バッファプール数を指定した場合）

受信バッファが生成されるタイミング

受信バッファが生成されるタイミングは，受信バッファプール数を指定しない場合と同じです。詳細については，「11.4.1　受信バッファの管理」を参照してください。

受信バッファを取得または返却するタイミング

受信バッファプールから受信バッファを取得するタイミング，および受信バッファを受信バッファプールに返却するタイミングは，SQLを実行するメソッドによって異なります。

各メソッドの動作は次の三つに分類されます。

表11-12　メソッドの動作の分類

動作 | 説明
1 | メソッド実行時に受信バッファを受信バッファプールから取得する。メソッド終了後，受信バッファを受信バッファプールに戻す。
2 | 動作2に分類されるメソッドのうち，最初に実行するメソッドで受信バッファを受信バッファプールから取得する。メソッドが終了しても，受信バッファは受信バッファプールに戻さない。
3 | 動作2に分類されるメソッドで取得した受信バッファを受信バッファプールに戻す。新たな受信バッファは取得しない。

受信バッファを再利用する際に受信バッファを取得または返却するメソッド，およびメソッドの動作を次の表に示します。動作の列の数字は，上記の表と対応しています。

表11-13　SQLを実行するメソッド，およびメソッドの動作

クラス | メソッド | 動作
Connection | prepareCall(String sql) | 1
prepareCall(String sql, int resultSetType, int resultSetConcurrency) | 1
prepareStatement(String sql) | 1
prepareStatement(String sql, int resultSetType, int resultSetConcurrency) | 1
DatabaseMetaData | getProcedures(String catalog, String schemaPattern, String procedureNamePattern) | 1
getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern) | 1
getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types) | 1
getSchemas() | 1
getTableTypes() | 1
getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) | 1
getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern) | 1
getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern) | 1
getPrimaryKeys(String catalog, String schema, String table) | 1
getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate) | 1
Statement | executeBatch() | 1
execute(String sql) | 1
executeQuery(String sql) | 1
executeUpdate(String sql) | 1
close()※ | 3
PreparedStatement | execute() | 1
executeQuery() | 1
executeUpdate() | 1
ResultSet | absolute(int row) | 2
afterLast() | 2
first() | 2
next() | 2
close() | 3

注※　ResultSet#close()メソッドを実行していない場合だけ使用できます。

＜この項の構成＞

(1)　受信バッファプール数の指定方法

(2)　受信バッファプール数の目安

(1)　受信バッファプール数の指定方法

受信バッファプール数は，次のどれかの方法で指定します。また，これらを同時に指定した場合，1，2，3の優先度順に決定されます。

DataSource#setBufferPoolSize()メソッドで指定する。

接続するデータベースの設定で，getConnectionメソッドおよびconnectメソッドの引数Properties infoに，キーワード「BUF_POOL_SIZE」を指定する。

データベースの各種情報の設定で，引数URLに「BUF_POOL_SIZE」を指定する。

指定方法の詳細については，「11.6.4　データベース接続の設定」を参照してください。

(2)　受信バッファプール数の目安

受信バッファプール数は，次の式で求められる数以上の数を目安に設定します。

検索処理に必要な受信バッファ数+更新処理に必要な受信バッファ数

検索処理に必要な受信バッファ数

アプリケーションの中で同時に使用するResultSetの数です。

実行するStatementが4個のアプリケーションの場合の，ResultSetの数の例を次の図に示します。

図11-3　アプリケーション中で同時に使用するResultSetの数

この図の場合，アプリケーションの開始から終了までの間に同時に使用するResultSetの数は3のため，検索処理に必要な受信バッファ数は3となります。

更新処理に必要な受信バッファ数

次のどちらかで求めます。

更新処理を単一スレッドで逐次実行する場合は，1

更新処理をマルチスレッドで同時実行する場合は，アプリケーションの中で同時実行する更新SQLの数

実際に必要な受信バッファ数が，この式を基に設定した受信バッファ数を超えた場合，受信バッファを新たに生成し，使用後に破棄します。このとき，生成した受信バッファは受信バッファプールに登録されません。この場合，オブジェクトの作成，破棄が頻発するため，性能が劣化することがあります。ただし，設定した受信バッファ数を超えた分の受信バッファは使用後に破棄するため，式を基に設定した場合よりメモリ占有量は軽減します。

11.5　Cosminexus DABroker Libraryを使用する場合のトラブルシュート

ここでは，Cosminexus DABroker Libraryを使用する場合のトラブルシュートについて説明します。

＜この節の構成＞

11.5.1　snapshotログとして収集できる資料

11.5.2　資料取得のための設定

11.5.3　Cosminexus DABroker Libraryで取得できるトレース

11.5.1　snapshotログとして収集できる資料

Cosminexus DABroker Libraryの資料は，snapshotログとして収集できます。

Cosminexus DABroker Libraryのログの出力先，ログ取得の設定，出力される内容などについては，「付録E　Cosminexus DABroker Libraryでのトラブルシューティング」および「付録F　Cosminexus DABroker Libraryのスプール情報の内容」を参照してください。

11.5.2　資料取得のための設定

Cosminexus DABroker Libraryのログは，トラブルシューティングに必要な資料です。

環境設定ユティリティまたはCosminexus DABroker Library動作環境定義ファイルで，ログファイルサイズなどを設定してください。なお，デフォルトの資料取得の設定から変更しない場合は，設定は不要です。

詳細は，「付録E.2　Cosminexus DABroker Libraryのログ取得の設定」を参照してください。

11.5.3　Cosminexus DABroker Libraryで取得できるトレース

Cosminexus DABroker Libraryの動作環境設定で，必要に応じて，トレース取得の設定をしてください。取得できるトレースを次に示します。

拡張データベースアクセストレース

XAトレース

拡張データベースアクセストレース

通常の運用ではトレースは採取しませんが，障害などの不具合の調査が必要なときに，拡張データベースアクセストレースを取得します。

拡張データベースアクセストレースは，データベースへの接続から切断までのアクセス情報を出力したトレースです。データベースへの接続ごとに出力されます。

拡張データベースアクセストレースは，次のように利用できます。

データベースのアクセス中に発生したトラブルの迅速な切り分け

24時間稼働に対応するJ2EEアプリケーションの稼働状態でのトラブル調査

マルチスレッド環境でJ2EEアプリケーションが動作している場合のスレッドごとのデータベースアクセス履歴取得

コネクションプーリングなどの機能を使用している場合のデータベースへの接続ごとのデータベースアクセス履歴取得

トラブルが再現調査できない場合の常時トレース取得

XAトレース

XAトレースはXAインタフェースでエラーを検知した場合に，エラートレースを取得します。XAインタフェースでエラーが発生した場合にエラーの内容をトレースできるように，XAトレースの取得を設定してください。

11.6　Cosminexus DABroker Libraryを使用したデータベース接続の実装

ここでは，Cosminexus DABroker Libraryが提供する機能を使用してデータベース接続をする場合の実装方法や注意事項について説明します。

＜この節の構成＞

11.6.1　Cosminexus DABroker Libraryで開発するアプリケーション

11.6.2　JDBC2.0の概要

11.6.3　JDBC2.0拡張機能の概要

11.6.4　データベース接続の設定

11.6.5　JDBC2.0拡張機能を使用したデータベース接続の設定

11.6.6　エラー時のJDBCドライバの処理

11.6.7　データ型の対応

11.6.1　Cosminexus DABroker Libraryで開発するアプリケーション

Cosminexus DABroker Libraryは，JDBCドライバとDABrokerのデータベース接続部品から構成されたデータベースに接続するミドルウェアです。

Cosminexus DABroker Libraryを利用して開発したアプリケーションは，JDKが対応するWWWブラウザで動作します。開発したアプリケーションを組み込むマシンには，Cosminexus DABroker Libraryが提供するJDBCドライバが必要です。Cosminexus DABroker Libraryはサーバで動作するアプリケーションだけサポートしています。

アプリケーションサーバを利用したデータベース接続の流れを次の図に示します。

図11-4　アプリケーションサーバを利用したデータベース接続

Cosminexus DABroker Libraryで開発したアプリケーションは，アプリケーションサーバに組み込んで使用します。アプリケーションからの要求は，アプリケーションサーバ上にあるJDBCドライバを経由し，Cosminexus DABroker Libraryで処理されます。

アプリケーションサーバのアプリケーションの動作時には，Cosminexus DABroker Libraryで提供するネイティブライブラリがアプリケーションサーバ上に動的にロードされます。ネイティブライブラリがロードされると，Java標準のネイティブライブラリインタフェースである，JNIを使用してアプリケーションとCosminexus DABroker Libraryを接続します。ネイティブライブラリを使用することで，アプリケーションとCosminexus DABroker Libraryとの接続処理を高速化し，高性能なデータベース接続を実現します。また，同一マシン上にアプリケーション，JDBCドライバ，Cosminexus DABroker Libraryがあるため，通信処理のオーバーヘッドがなく，Javaアプレットやクライアントで動作するアプリケーションに比べて高性能な処理を実現します。

11.6.2　JDBC2.0の概要

ここでは，Cosminexus DABroker Libraryで提供する，JDBC2.0基本規格に沿った機能の概要と注意事項について説明します。JDBC1.0が提供するクラスとメソッドの機能，およびJDBC2.0で規格化されていないDBPドライバだけの機能については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」を参照してください。

＜この項の構成＞

(1)　ResultSetの拡張

(2)　バッチ更新

(3)　JDBC SQLタイプの扱い

(1)　ResultSetの拡張

JDBC2.0基本規格では，ResultSet（ResultSetクラス）の拡張機能として，「スクロール」と「並行処理」が追加されています。

(a)　スクロールタイプ

ResultSetのスクロールタイプには，次の3種類があります。

順方向専用型
JDBC1.0からの標準のスクロールタイプです。ResultSet内を，順方向（上から下）にだけスクロールできます。

スクロール非反映型
JDBC2.0で導入されたスクロールタイプです。ResultSet内を，順方向，逆方向にスクロールできます。また，現在の位置からの相対位置指定の移動，絶対位置への移動もできます。
「非反映型」とは，ResultSetが開かれている間に加えられた変更が，そのResultSetに反映されないことを意味します。つまり，基盤となるデータの静的なビューを提供するだけで，ResultSetに含まれる行，その順序，および列の値は，ResultSetの作成時に固定されます。

スクロール反映型
JDBC2.0で導入されたスクロールタイプです。Cosminexus DABroker Libraryではサポートしていません。ResultSetが開かれている間に加えられた変更が，そのResultSetに反映される点がスクロール非反映型とは異なります。
「変更の反映」という点では，「そのResultSet自身による変更の反映」，「同一トランザクション内での，ほかのResultSetでの変更の反映」，「ほかのトランザクションによる変更の反映」などがありますが，どこまで保証するかはドライバの実装レベル，およびDBMSのトランザクション遮断レベルに依存します。

(b)　並行処理タイプ

ResultSetの並行処理タイプには，次の種類があります。

読み取り専用型
JDBC1.0からの標準の並行処理タイプです。ResultSetからの更新はできません。

更新可能型
JDBC2.0で導入された並行処理タイプです。ResultSetからの更新（UPDATE，INSERT，DELETE）ができます。Cosminexus DABroker Libraryではサポートしていません。

(c)　ResultSetタイプ

スクロールタイプと並行処理タイプを組み合わせることで，ResultSetには6種類のタイプがあります。Cosminexus DABroker Libraryでは，このうち2種類をサポートしています。ResultSetタイプは，ConnectionクラスのcreateStatementメソッド，prepareStatementメソッド，またはprepareCallメソッドで，Statementクラス（またはそのサブクラス）のインスタンスを取得する時に指定します。

6種類のResultSetタイプとCosminexus DABroker Libraryでのサポートを，次の表に示します。

表11-14　ResultSetのタイプ

ResultSetタイプ | Cosminexus DABroker Libraryでのサポート
スクロールタイプ | 並行処理タイプ
順方向専用型 | 読み取り専用型 | ○
更新可能型 | ×
スクロール非反映型 | 読み取り専用型 | ○
更新可能型 | ×
スクロール反映型 | 読み取り専用型 | ×
更新可能型 | ×

（凡例）

○：サポートしている

×：サポートしていない

サポートしていないResultSetタイプが指定された場合，エラーにはしないで，指定されたResultSetタイプにいちばん近いResultSetタイプを使用してStatementクラス（またはそのサブクラス）のインスタンスを生成します。また，警告メッセージをConnectionクラスのSQLWarningに格納します。

更新可能型の並行処理タイプはサポートしていないため，ResultSetクラスに使用できないメソッドがあります。これらの使用できないメソッドが呼び出された場合は，無条件にSQLExceptionをthrowします。どのメソッドが使用できないかについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」の「14.7　ResultSetクラス」を参照してください。

(d)　スクロール型ResultSet使用時の注意点

スクロール型ResultSetでは，Cosminexus DABroker Library内ですべての検索データをキャッシングします。データ量が大量な場合は，メモリ不足や性能劣化が発生する可能性が大きくなります。このため，スクロール型ResultSetを使用する場合は，「SQLに条件を付加する」，「StatementクラスのsetMaxRowsメソッドを呼び出す」など，検索データ量をあらかじめ抑制してください。

(2)　バッチ更新

JDBC2.0基本規格では，Statementクラス，PreparedStatementクラス，およびCallableStatementクラスにバッチ更新機能が追加されています。バッチ更新機能を使うと，複数のSQL，または複数のパラメタ値を登録し，一括で実行できます。

注意

バッチ更新機能を使用する場合，ConnectionクラスのAUTOコミットモードをOFFにしてください。これは，バッチ更新の途中でエラーが発生した場合，そのトランザクションの有効・無効をアプリケーション側で制御する必要があるためです。AUTOコミットモードがON（初期状態）の場合，バッチ更新の途中でエラーが発生しても，エラーが発生する一つ前までのSQL実行は有効となるため，注意が必要です。アプリケーションサーバでJTAトランザクションを使用している場合，AUTOコミットモードはOFFになります。

(a)　Statementクラスでのバッチ更新

概要

複数の更新系SQLをaddBatchメソッドで登録します。

登録した更新系SQLを，executeBatchメソッドを使用して一括で実行します。

一括実行の結果として，それぞれの更新系SQLによって更新された行数の配列を返します。

一括実行の途中でエラーが発生した場合，BatchUpdateExceptionをthrowします。

登録したSQL中に検索系SQLがある場合，executeBatchメソッド呼び出し時にBatchUpdateExceptionをthrowします。

注意事項

DABrokerとのインタフェース上，複数のSQLを一括実行できないため，Cosminexus DABroker Libraryでは，登録されたSQLを逐次実行することでバッチ更新を実現しています。

(b)　PreparedStatementクラスでのバッチ更新

概要

PreparedStatementインスタンス生成時に指定した，更新系SQLに対する？パラメタを，通常の手順（setXXXメソッド）で設定します。

addBatchメソッドで，？パラメタのセットを登録します。

登録した複数セットの？パラメタを，executeBatchメソッドで一括実行します。

一括実行の結果として，それぞれの？パラメタのセットで更新された行数の配列を返します。

一括実行の途中でエラーが発生した場合，BatchUpdateExceptionをthrowします。

PreparedStatementインスタンス生成時に指定したSQLが検索系SQLである場合，executeBatchメソッド呼び出し時にBatchUpdateExceptionをthrowします。

注意事項

定義系および制御系SQLについては，addBatchメソッドを実行しないでください。

(c)　CallableStatementクラスでのバッチ更新

概要

CallableStatementインスタンス生成時に指定した，SQLに対する？パラメタを，通常の手順（setXXXメソッド）で設定します。

addBatchメソッドで，入力パラメタのセットを登録します。

登録した複数セットの入力パラメタを，executeBatchメソッドで一括実行します。

一括実行の結果として，それぞれの入力パラメタのセットで実行された，SQLの返却値（更新行数）の配列を返します。

一括実行の途中でエラーが発生した場合，BatchUpdateExceptionをthrowします。

CallableStatementインスタンス生成時に指定したSQLが更新行数を返さない場合，および出力パラメタか入出力パラメタを持つ場合，executeBatchメソッド呼び出し時にBatchUpdateExceptionをthrowします。

注意事項

定義系および制御系SQLについては，addBatchメソッドを実行しないでください。

(d)　HiRDBの場合のバッチ更新

HiRDBの場合のバッチ更新処理は，次の2種類に分けられます。

逐次実行
複数のSQLに分けて実行する更新処理です。

一括実行
HiRDBの配列更新機能を使用して実行する更新処理です。

HiRDBの配列更新機能とは，データベースにより提供される次の機能を指します。

HiRDBの配列を使用したINSERT機能

HiRDBの配列を使用したUPDATE機能

HiRDBの配列を使用したDELETE機能

HiRDBクライアント経由XDM／RD E2で使用するXDM／RD E2の配列を使用したINSERT機能

HiRDBクライアント経由XDM／RD E2で使用するXDM／RD E2の配列を使用したUPDATE機能

HiRDBクライアント経由XDM／RD E2で使用するXDM／RD E2の配列を使用したDELETE機能

HiRDBの配列更新機能では，複数の?パラメタセットを配列形式で扱い，一度に処理することができます。そのため，データベースとの通信回数が減り，大量のデータを高速に更新できます。

HiRDBの配列更新機能を使用するには，BlockUpdate設定をtrueにします。ただし，接続するHiRDBのバージョンによって使用できない場合があります。HiRDBの配列更新機能の詳細については，マニュアル「HiRDB UAP開発ガイド」およびマニュアル「HiRDB SQLリファレンス」を参照してください。

●addBatchメソッド－executeBatchメソッド使用時の仕様

次に，バッチ更新時に使用するaddBatchメソッド－executeBatchメソッド使用時の仕様を，BlockUpdate設定がtrueの場合とfalseの場合に分けて示します。

表11-15　addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がtrue，HiRDBの場合）

実行するSQL文
DABrokerの仕様（処理方法）

HiRDB Version 6
HiRDB Version 7 07-00以降かつ07-00-/K以前
HiRDB Version 7 07-00-/L以降かつHiRDB Version 7 07-01未満
HiRDB Version 7 07-01以降

INSERT文
（VALUES句指定）
逐次実行
一括実行
一括実行
一括実行

INSERT文
（SELECT句指定）
逐次実行
KFPA19408-E
逐次実行
一括実行

UPDATE文
逐次実行
KFPA19408-E
逐次実行
一括実行

DELETE文
逐次実行
KFPA19408-E
逐次実行
一括実行

CALL文（OUTまたはINOUTパラメタあり）
KFDJ00010-E
KFDJ00010-E
KFDJ00010-E
KFDJ00010-E

CALL文（INパラメタだけ）
逐次実行
逐次実行
逐次実行
逐次実行

（凡例）

一括実行：HiRDBの配列更新機能を使用してSQLを一括実行する

逐次実行：HiRDBの配列更新機能を使用しないでSQLを分けて実行する

KFPA19408-E：エラー（KFPA19408-E）が発生する。HiRDBの配列更新機能は使用できない

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれていた場合，例外となる

表11-16　 addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がfalseまたは指定なし，HiRDBの場合）

実行するSQL文 | DABrokerの仕様（処理方法）
INSERT文（VALUES句指定） | 逐次実行
INSERT文（SELECT句指定） | 逐次実行
UPDATE文 | 逐次実行
DELETE文 | 逐次実行
SELECT文 | KFDJ00010-E
CALL文（OUTまたはINOUTパラメタあり） | KFDJ00010-E
CALL文（INパラメタだけ） | 逐次実行

（凡例）

逐次実行：HiRDBの配列更新機能を使用しないでSQLを分けて実行する

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれていた場合，例外となる

表11-17　addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がtrue，HiRDBクライアント経由XDM/RD E2の場合）

実行するSQL | DABrokerの仕様（処理方式）
HiRDBクライアント08-02未満 | HiRDBクライアント08-02以降
XDM／RD E2（11-03未満） | XDM／RD E2（11-03以降）
INSERT文（VALUES句指定） | 逐次実行 | 逐次実行 | 一括実行
INSERT文（SELECT句指定） | 逐次実行 | 逐次実行 | 一括実行
UPDATE文 | 逐次実行 | 逐次実行 | 一括実行
DELETE文 | 逐次実行 | 逐次実行 | 一括実行
SELECT文 | KFDJ00010-E | KFDJ00010-E | KFDJ00010-E
CALL文（OUT，またはINOUTパラメタ有） | KFDJ00010-E | KFDJ00010-E | KFDJ00010-E
CALL文（INパラメタだけ） | 逐次実行 | 逐次実行 | 逐次実行

（凡例）

一括実行：HiRDBの配列更新機能を使用してSQLを一括実行する

逐次実行：HiRDBの配列更新機能を使用しないでSQLを分けて実行する

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれている場合，例外となる

表11-18　addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がfalseまたは指定なし，HiRDBクライアント経由XDM/RD E2の場合）

実行するSQL文 | DABrokerの仕様
INSERT文（VALUES句指定） | 逐次実行
INSERT文（SELECT句指定） | 逐次実行
UPDATE文 | 逐次実行
DELETE文 | 逐次実行
SELECT文 | KFDJ00010-E
CALL文（OUT，またはINOUTパラメタあり） | KFDJ00010-E
CALL文（INパラメタだけ） | 逐次実行

（凡例）

逐次実行：HiRDBの配列更新機能を使用しないでSQLを分けて実行する

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれている場合，例外となる

●HiRDBの配列更新機能の使用方法

HiRDBの配列更新機能の使用方法を次に示します。

BlockUpdate設定をtrueにします。
Connect時に，プロパティとしてBLOCK_UPDATE=TRUEを指定するか（DataSourceを使用する場合はsetBlockUpdate(true)），JdbcDbpsvPreparedStatementのsetBlockUpdate(true)を指定します。

パラメタが一つ以上あるSQLを前処理します。

PreparedStatementクラス，またはCallableStatementクラスのsetメソッドで，?パラメタに対する値を設定します。

addBatchメソッドで，?パラメタセットを追加します。

executeBatchメソッドで，バッチ更新を実行します。

●HiRDBの配列更新機能使用時の注意事項

共通項目
サポートするHiRDB全バージョン共通の注意事項を次に示します。

HiRDBの配列更新機能を使用するには，接続時のプロパティ情報，またはデータソースのBlockUpdateをtrueで設定するか，PreparedStatementのsetBlockUpdateメソッドをtrueに設定する必要があります。

HiRDBの配列更新機能は，?パラメタを持つSQL文に対して有効です。プロシジャやStatementクラスのaddBatch(String sql)を使用した場合は有効となりません。

パラメタセットを登録する場合，PreparedStatement，またはCallableStatementのaddBatchメソッドを使用してください。StatementのaddBatch(String sql)を使用するとエラーになります。

HiRDBの配列更新機能は，addBatchメソッドで登録したパラメタセットが2件以上ある場合に有効です。1件の場合はHiRDBの配列更新機能を使用しないで実行されます。

実行するSQLには，?パラメタが一つ以上必要です。?パラメタがない場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

XA環境下のHiRDBに接続してバッチ更新を実行する場合，setAutoCommit(false)を設定する必要があります。setAutoCommit(false)を設定しないで実行するとHiRDBでエラーになります。

DECIMAL型データをパラメタセットに設定する場合，配列に指定するDECIMAL型データの精度，および位取りはHiRDBの表定義属性に合わせられます。整数部のけた数がHiRDBの表定義の整数部のけた数より大きいと，けたあふれが発生してエラーになります。

SMALLINT型，INTEGER型，またはDECIMAL型の列に，setInt，またはsetStringを使用して範囲外のデータを設定するとエラーになります。

配列更新の途中でエラーが発生した場合，エラーが発生する直前までの実行もすべて無効になります。

?パラメタにHiRDBの繰り返し列（複数要素を格納できる列）を指定している場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

setNullメソッドで，HiRDBの表定義の列属性がCHAR，NCHAR，MCHAR，DATE，TIME，またはTIMESTAMPの場合，列属性と同じjava.sql.Typesを指定していると，HiRDBの配列更新機能は使用されないで，逐次実行されます。

setNullメソッドで，HiRDBの表定義の列属性と異なるjava.sql.Typesを指定している場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。ただし，次の場合は，HiRDBの配列更新機能が実行されます。
・HiRDBの表定義の列属性がCHAR，NCHAR，またはMCHARで，java.sql.Typesにjava.sqlTypes.VARCHARを指定した場合
・HiRDBの表定義の列属性がDATE，TIME，またはTIMESTAMPで，java.sql.Typesにjava.sql.Types.CHARを指定した場合

HiRDBのバージョンが07-00の場合の注意事項
HiRDBのバージョンが07-00の場合，次に示すバージョン固有の注意事項がありま
す。共通項目と合わせて注意してください。

HiRDBのバージョンが07-00の場合，使用できるHiRDBの配列更新機能は，「配列を使用したINSERT機能（INSERT VALUE句だけ）」です。「配列を使用したINSERT機能（INSERT VALUE句以外）」，「配列を使用したUPDATE機能」，および「配列を使用したDELETE機能」は使用できません。

?パラメタにHiRDBのBLOB型の列，または定義長32,001バイト以上のBINARY型の列を指定している場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

WITH DEFAULT指定のBLOB型の列，またはWITH DEFAULT指定で定義長32,001バイト以上のBINARY型の列の場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

HiRDBの行単位トリガを定義した表に対して更新する場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

HiRDBのバージョンが07-01以降の場合の注意事項
HiRDBのバージョンが07-01以降の場合，次に示すバージョン固有の注意事項があります。共通項目と合わせて注意してください。

「配列を使用したINSERT機能」，「配列を使用したUPDATE機能」，および「配列を使用したDELETE機能」が使用できます。

?パラメタにデータ長が32,001バイト以上のBINARYデータを指定している場合，HiRDBの配列更新機能は使用されないで，逐次実行されます。

HiRDBのBLOB型列に対して32,001バイト以上のデータを指定している場合，HiRDBの配列更新機能は使用され，逐次実行されます。

(e)　Oracleの場合のバッチ更新

ここでは，Oracleの場合のバッチ更新について説明します。

●addBatchメソッド－executeBatchメソッド使用時の仕様

次に，PreparedStatementおよびCallableStatementでのaddBatchメソッド－executeBatchメソッド使用時の仕様を，BlockUpdate設定がtrueの場合，falseの場合に分けて示します。

表11-19　 addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がtrue，Oracleの場合）

実行するSQL文 | DABrokerの仕様（処理方法）
INSERT文（VALUES句指定） | 逐次実行
INSERT文（SELECT句指定） | 逐次実行
UPDATE文 | 逐次実行
DELETE文 | 逐次実行
SELECT文 | KFDJ00010-E
BEGIN文（OUTまたはINOUTパラメタあり） | KFDJ00010-E
BEGIN文（INパラメタだけ） | 逐次実行

（凡例）

逐次実行：SQLを分けて実行する

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれていた場合，例外となる

表11-20　 addBatchメソッド－executeBatchメソッド使用時の仕様（BlockUpdate設定がfalseまたは指定なし，Oracleの場合）

実行するSQL文 | DABrokerの仕様（処理方法）
INSERT文（VALUES句指定） | 逐次実行
INSERT文（SELECT句指定） | 逐次実行
UPDATE文 | 逐次実行
DELETE文 | 逐次実行
SELECT文 | KFDJ00010-E
BEGIN文（OUTまたはINOUTパラメタあり） | KFDJ00010-E
BEGIN文（INパラメタだけ） | 逐次実行

（凡例）

逐次実行：SQLを分けて実行する

KFDJ00010-E：エラー（KFDJ00010-E）が発生する。JDBC2.0規格では，executeBatchメソッドで更新行数を返さないもの（SELECTなど）が含まれていた場合，例外となる

●addBatchメソッド使用時の注意事項

実行するSQLに?パラメタを一つ以上含めてください。

配列に指定するデータ型が異なる場合にはエラーとなります。

アプリケーションサーバから使用する場合は，PreparedStatementクラスのsetBlockUpdateメソッドは使用できません。

(3)　JDBC SQLタイプの扱い

JDBC2.0基本規格では，幾つかの新しいJDBC SQLタイプが追加されています。追加されたJDBC SQLタイプとCosminexus DABroker Libraryでのサポートを，次の表に示します。

表11-21　 追加されたJDBC SQLタイプとCosminexus DABroker Libraryでのサポート

追加されたJDBC SQLタイプ | Cosminexus DABroker Libraryでのサポート
BLOB | ○
CLOB | △
ARRAY | ×
REF | ×
DISTINCT | ×
STRUCT | ×
JAVA OBJECT | ×

（凡例）

○：Oracle9i，Oracle10g，およびHiRDBでサポートしている

△：Oracle9i，およびOracle10gでだけサポートしている

×：サポートしていない

(a)　検索データ取得時のデータ変換

追加されたJDBC SQLタイプと，ResultSetクラスのgetXXXメソッドとのデータ変換について，次の表に示します。変換できないJDBC SQLタイプに対してgetXXXメソッドが呼び出された場合は，SQLExceptionをthrowします。接続データベースがどのJDBC SQLタイプをサポートしているかは，「11.6.7　データ型の対応」を参照してください。

なお，JDBC2.0規格ではgetUnicodeStreamメソッドが推奨されないメソッドとなったため，代わりにgetCharacterStreamが追加されています。

表11-22　 ResultSetクラスのgetXXXメソッドとJDBC SQLタイプとのデータ変換 （1）

getXXXメソッド
JDBC SQLタイプ

B
I
T
T
I
N
Y
I
N
T
S
M
A
L
L
I
N
T
I
N
T
E
G
E
R
B
I
G
I
N
T
F
L
O
A
T
R
E
A
L
D
O
U
B
L
E
N
U
M
E
R
I
C
D
E
C
I
M
A
L
C
H
A
R
V
A
R
C
H
A
R
L
O
N
G
V
A
R
C
H
A
R

getByte
○
◎
○
○
○
○
○
○
○
○
○
○
○

getShort
○
○
◎
○
○
○
○
○
○
○
○
○
○

getInt
○
○
○
◎
○
○
○
○
○
○
○
○
○

getLong
○
○
○
○
◎
○
○
○
○
○
○
○
○

getFloat
○
○
○
○
○
○
◎
○
○
○
○
○
○

getDouble
○
○
○
○
○
◎
○
◎
○
○
○
○
○

getBigDecimal
○
○
○
○
○
○
○
○
◎
◎
■
○
○

getBoolean
◎
○
○
○
○
○
○
○
○
○
○
○
○

getString
○
○
○
○
○
○
○
○
○
○
◎
◎
○

getBytes
－
－
－
－
－
－
－
－
－
－
－
－
－

getDate※1
－
－
－
－
－
－
－
－
－
－
○
○
○

getTime※1
－
－
－
－
－
－
－
－
－
－
○
○
○

getTimestamp※1
－
－
－
－
－
－
－
－
－
－
○
○
○

getAsciiStream
－
－
－
－
－
－
－
－
－
－
○
○
◎

getUnicodeStream
－
－
－
－
－
－
－
－
－
－
○
○
◎

getBinaryStream
－
－
－
－
－
－
－
－
－
－
－
－
－

getObject
○
○
○
○
○
○
○
○
○
○
○
○
○

getCharacter
Stream
－
－
－
－
－
－
－
－
－
－
○
○
◎

getArray
（未サポート）
－
－
－
－
－
－
－
－
－
－
－
－
－

getBlob※2
－
－
－
－
－
－
－
－
－
－
－
－
－

getClob※3
－
－
－
－
－
－
－
－
－
－
－
－
－

getRef
（未サポート）
－
－
－
－
－
－
－
－
－
－
－
－
－

（凡例）

◎：完全に変換できる

○：変換できる。ただし，変換元のデータの内容によってはデータの欠落や変換エラーとなることがある

■：設定値が定義長に満たない場合，エラーが発生する

－：変換できない

注※1

引数にjava.util.Calendarオブジェクトを指定するgetDate，getTimeおよびgetTimestampメソッドを実行すると，データベースに格納されたデータが指定したjava.util.Calendarオブジェクトのタイムゾーンであるとして，実行しているアプリケーションのデフォルトのタイムゾーンに変換して取得します。

注※2

Oracle9i，Oracle10g，およびHiRDBでサポートしています。

注※3

Oracle9i，およびOracle10gでサポートしています。

表11-23　 ResultSetクラスのgetXXXメソッドとJDBC SQLタイプとのデータ変換 （2）

getXXXメソッド
JDBC SQLタイプ

D
A
T
E
T
I
M
E
T
I
M
E
S
T
A
M
P
B
I
N
A
R
Y
V
A
R
B
I
N
A
R
Y
L
O
N
G
V
A
R
B
I
N
A
R
Y
J
A
V
A
O
B
J
E
C
T
S
T
R
U
C
T
A
R
R
A
Y
B
L
O
B
C
L
O
B
R
E
F

getByte
－
－
－
－
－
－
－
－
－
－
－
－

getShort
－
－
－
－
－
－
－
－
－
－
－
－

getInt
－
－
－
－
－
－
－
－
－
－
－
－

getLong
－
－
－
－
－
－
－
－
－
－
－
－

getFloat
－
－
－
－
－
－
－
－
－
－
－
－

getDouble
－
－
－
－
－
－
－
－
－
－
－
－

getBigDecimal
－
－
－
－
－
－
－
－
－
－
－
－

getBoolean
－
－
－
－
－
－
－
－
－
－
－
－

getString
○
○
○
○
○
○
－
－
－
－
－
－

getBytes
－
－
－
◎
◎
○
－
－
－
－
－
－

getDate※1
◎
－
○
－
－
－
－
－
－
－
－
－

getTime※1
－
◎
○
－
－
－
－
－
－
－
－
－

getTimestamp※1
○
－
◎
－
－
－
－
－
－
－
－
－

getAsciiStream
－
－
－
○
○
○
－
－
－
－
－
－

getUnicodeStream
－
－
－
○
○
○
－
－
－
－
－
－

getBinaryStream
－
－
－
○
○
◎
－
－
－
－
－
－

getObject
○
○
○
○
○
○
▲
▲
△
▼
▼
△

getCharacter
Stream
－
－
－
○
○
○
－
－
－
－
－
－

getArray
（未サポート）
－
－
－
－
－
－
－
－
▲
－
－
－

getBlob※2
－
－
－
－
－
○※4
－
－
－
●
－
－

getClob※3
－
－
－
－
－
－
－
－
－
－
●
－

getRef
（未サポート）
－
－
－
－
－
－
－
－
－
－
－
▲

（凡例）

◎：完全に変換できる

○：変換できる。ただし，変換元のデータの内容によってはデータの欠落や変換エラーとなることがある

●：完全に変換できる組み合わせは，接続するデータベースがOracle9iまたはOracle10gの場合以外では，JDBC SQLタイプが未サポートのため使えない

▼：変換できる組み合わせは，接続するデータベースがOracle9iまたはOracle10gの場合以外では，JDBC SQLタイプが未サポートのため使えない

▲：完全に変換できる組み合わせは，JDBC SQLタイプが未サポートのため使えない

△：変換できる組み合わせは，JDBC SQLタイプが未サポートのため使えない

－：変換できない

注※1

引数にjava.util.Calendarオブジェクトを指定するgetDate，getTimeおよびgetTimestampメソッドを実行すると，データベースに格納されたデータが指定したjava.util.Calendarオブジェクトのタイムゾーンであるとして，実行しているアプリケーションのデフォルトのタイムゾーンに変換して取得します。

注※2

Oracle9i，Oracle10g，およびHiRDBでサポートしています。

注※3

Oracle9i，およびOracle10gでサポートしています。

注※4

HiRDBでだけサポートしています。

(b)　？パラメタ設定時のデータ変換

追加されたJDBC SQLタイプと，PreparedStatementクラスのsetXXXメソッドとのデータ変換について，次の表に示します。JDBC SQLタイプをサポートしていない場合，setXXXメソッドはSQLExceptionをthrowします。接続データベースがどのJDBC SQLタイプをサポートしているかは，「11.6.7　データ型の対応」を参照してください。

なお，JDBC2.0規格では，setUnicodeStreamメソッドが推奨されないメソッドとなったため，代わりにsetCharacterStreamが追加されています。

表11-24　 追加されたJDBC SQLタイプとsetXXXメソッド

setXXXメソッド | データ変換されるJDBC SQLタイプ
setCharacterStream | CHAR，VARCHAR，またはLONGVARCHAR
setRef（未サポート） | REF
setBlob※1 | BLOB，LONGVARBINARY
setClob※2 | CLOB
setArray（未サポート） | ARRAY

注※1

Oracle9i，Oracle10g，およびHiRDBでサポートしています。

注※2

Oracle9i，およびOracle10gでサポートしています。

表11-25　 setXXXメソッドとJDBC SQLタイプとのデータ変換 （1）

setXXXメソッド
JDBC SQLタイプ

B
I
T
T
I
N
Y
I
N
T
S
M
A
L
L
I
N
T
I
N
T
E
G
E
R
B
I
G
I
N
T
F
L
O
A
T
R
E
A
L
D
O
U
B
L
E
N
U
M
E
R
I
C
D
E
C
I
M
A
L
C
H
A
R
V
A
R
C
H
A
R
L
O
N
G
V
A
R
C
H
A
R

setByte
○
◎
○
○
○
○
○
○
○
○
○
○
○

setShort
○
○
◎
○
○
○
○
○
○
○
○
○
○

setInt
○
○
○
◎
○
○
○
○
○
○
○
○
○

setLong
○
○
○
○
◎
○
○
○
○
○
○
○
○

setFloat
○
○
○
○
○
○
◎
○
○
○
○
○
○

setDouble
○
○
○
○
○
◎
○
◎
○
○
○
○
○

setBigDecimal
○
○
○
○
○
○
○
○
◎
◎
○
○
○

setBoolean
◎
○
○
○
○
○
○
○
○
○
○
○
○

setString
○
○
○
○
○
○
○
○
○
○
◎
◎
○

setBytes
－
－
－
－
－
－
－
－
－
－
－
－
－

setDate
－
－
－
－
－
－
－
－
－
－
○
○
○

setTime
－
－
－
－
－
－
－
－
－
－
○
○
○

setTimestamp
－
－
－
－
－
－
－
－
－
－
○
○
○

setAsciiStream
－
－
－
－
－
－
－
－
－
－
○※4
○※4
○※4

setUnicodeStream※1
－
－
－
－
－
－
－
－
－
－
○
○
○

setBinaryStream
－
－
－
－
－
－
－
－
－
－
－
－
－

setObject
○
○
○
○
○
○
○
○
○
○
○
○
○

setCharacterStream
－
－
－
－
－
－
－
－
－
－
○※5
○※5
○※5

setArray
（未サポート）
－
－
－
－
－
－
－
－
－
－
－
－
－

setBlob※2
－
－
－
－
－
－
－
－
－
－
－
－
－

setClob※3
－
－
－
－
－
－
－
－
－
－
－
－
－

setRef
（未サポート）
－
－
－
－
－
－
－
－
－
－
－
－
－

（凡例）

◎：完全に変換できる

○：変換できる。ただし，変換元のデータの内容によってはデータの欠落や変換エラーとなることがある

－：変換できない

注※1

Oracle9i，Oracle10g，およびHiRDBでサポートしています。

注※2

Oracle9i，およびOracle10gでサポートしています。

注※3

長さが0のデータを設定するとエラーになります。

注※4

接続データベースがOracleの場合，長さが0のデータを設定すると，NULL値に変換します。

注※5

java.io.Readerオブジェクトから取得できるデータの長さが引数で指定した長さより短い場合，次のように引数で指定した長さまで0を補完します。

表11-26　 setXXXメソッドとJDBC SQLタイプとのデータ変換（2）

setXXXメソッド
JDBC SQLタイプ

D
A
T
E
T
I
M
E
T
I
M
E
S
T
A
M
P
B
I
N
A
R
Y
V
A
R
B
I
N
A
R
Y
L
O
N
G
V
A
R
B
I
N
A
R
Y
J
A
V
A
O
B
J
E
C
T
S
T
R
U
C
T
A
R
R
A
Y
B
L
O
B
C
L
O
B
R
E
F

setByte
－
－
－
－
－
－
－
－
－
－
－
－

setShort
－
－
－
－
－
－
－
－
－
－
－
－

setInt
－
－
－
－
－
－
－
－
－
－
－
－

setLong
－
－
－
－
－
－
－
－
－
－
－
－

setFloat
－
－
－
－
－
－
－
－
－
－
－
－

setDouble
－
－
－
－
－
－
－
－
－
－
－
－

setBigDecimal
－
－
－
－
－
－
－
－
－
－
－
－

setBoolean
－
－
－
－
－
－
－
－
－
－
－
－

setString
○
○
○
○
○
○
－
－
－
－
－
－

setBytes
－
－
－
◎
◎
○
－
－
－
－
－
－

setDate
◎
－
○
－
－
－
－
－
－
－
－
－

setTime
－
◎
○
－
－
－
－
－
－
－
－
－

setTimestamp
○
－
◎
－
－
－
－
－
－
－
－
－

setAsciiStream
－
－
－
○
○※4
○※4
－
－
－
－
－
－

setUnicodeStream※3
－
－
－
○
○
○
－
－
－
－
－
－

setBinaryStream
－
－
－
○
○※4
○※4
－
－
－
－
－
－

setObject
○
○
○
○
○
○
▲
▲
△
▼
▼
△

setCharacterStream
－
－
－
○※5
○※5
○※5
－
－
－
－
－
－

setArray（未サポート）
－
－
－
－
－
－
－
－
▲
－
－
－

setBlob※1
－
－
－
－
－
○※1
－
－
－
●※2※4
－
－

setClob※2
－
－
－
－
－
－
－
－
－
－
●※4
－

setRef（未サポート）
－
－
－
－
－
－
－
－
－
－
－
▲

（凡例）

◎：完全に変換できる

○：変換できる。ただし，変換元のデータの内容によってはデータの欠落や変換エラーとなることがある

●：完全に変換できる組み合わせは，接続するデータベースがOracle9iまたはOracle10gの場合以外では，JDBC SQLタイプが未サポートのため使えない

▼：変換できる組み合わせは，接続するデータベースがOracle9iまたはOracle10gの場合以外では，JDBC SQLタイプが未サポートのため使えない

▲：完全に変換できる組み合わせは，JDBC SQLタイプが未サポートのため使えない

△：変換できる組み合わせは，JDBC SQLタイプが未サポートのため使えない

－：変換できない

注※1

Oracle9i，Oracle10g，およびHiRDBでサポートしています。

注※2

Oracle9i，およびOracle10gでサポートしています。

注※3

長さが0のデータを設定するとエラーになります。

注※4

接続データベースがOracleである場合，長さが0であるデータを設定するとNULL値に変換します。

注※5

java.io.Readerオブジェクトから取得できるデータの長さが引数で指定した長さより短い場合，次のように引数で指定した長さまで0を補完します。

11.6.3　JDBC2.0拡張機能の概要

ここでは，Cosminexus DABroker Libraryで提供するJDBC2.0拡張機能の概要を説明します。各メソッドでの制限事項については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」の「14.　Cosminexus DABroker Libraryで使用するAPI」を参照してください。

＜この項の構成＞

(1)　JNDI連携

(2)　接続プール

(3)　分散トランザクション機能

(1)　JNDI連携

JNDI連携とは，DBMSとの接続情報をJNDIに登録し，登録した接続情報を使用してDBMSと接続する機能です。一度接続情報を登録すれば，DBMSとの接続時に接続情報を設定する必要がなくなります。JNDI連携の操作については，「11.6.5　JDBC2.0拡張機能を使用したデータベース接続の設定」を参照してください。

(2)　接続プール

接続プール機能は，DataSourceオブジェクトとJNDIを使用してデータベースと接続した場合だけ使用できます。

データベースとの接続をためる（プール）機能の概要について説明します。

(a)　概要

DBMSとの接続をプールします。この機能は，DBMSとの接続および解放によるオーバーヘッドを縮小し，サーバアプリケーションの性能向上に役立ちます。

アプリケーションに影響を与えないため，接続プールの有無を意識する必要がない。

システム構築時に，接続プール機能を任意に選択できる（ユーザが作成する，アプリケーションサーバのベンダが提供するものを使用する，またはJDBCのベンダが提供するものを使用する）。

接続プール機能では，アプリケーションとのインタフェースとして，DataSourceクラスを提供する。

JDBC2.0拡張機能では，接続プール機能とのインタフェースとして，ConnectionPoolDataSourceクラスとPooledConnectionクラスを提供する。

ConnectionPoolDataSourceクラスは，JDBC2.0拡張機能が提供するDataSourceクラスと同様に，接続情報の設定および取得用のメソッドを提供する。

(b)　関連するクラス

接続プール機能に関連するクラスを次の表に示します。

表11-27　 接続プールに関連するクラス

クラス
概要

javax.sql.
ConnectionEventListener

接続プール機能が提供

接続プール機能で，接続の切断，SQLエラーなどをこのクラスのオブジェクトから検知※1

javax.sql.DataSource

接続プール機能が提供

データベース接続時のアプリケーションとのインタフェース

接続プールを制御

JNDIに登録して使用

javax.sql.
ConnectionPoolDataSource

JDBC2.0拡張機能が提供※2

データベース接続に必要な接続情報の設定および取得用のメソッドを提供

接続プール機能が使用

JNDIに登録して使用

このクラスのオブジェクトからPooledConnectionオブジェクトを取得

javax.sql.PooledConnection

JDBC2.0拡張機能が提供※2

接続プール機能が使用

このクラスのオブジェクトがプール対象

このクラスのオブジェクトからConnectionオブジェクトを取得

注※1

connectionErrorOccurredが返されるのは次のエラーコードの場合です。

接続データベースがHiRDB：-720，-722，-723，-728，-732，-932，-1700

接続データベースがOracle：28，1012，3113，3114，12571

注※2

JDBC2.0拡張機能が提供するパッケージ名称とクラス名称を次に示します。

種類 | 名称
パッケージ | JP.co.Hitachi.soft.DBPSV_Driver
ConnectionPoolDataSourceクラス | JdbcDbpsvConnectionPoolDataSource
PooledConnectionクラス | JdbcDbpsvPooledConnection

(3)　分散トランザクション機能

分散トランザクション機能とは，Sun Microsystemsの提唱するJava Transaction API（JTA）規格を基に，トランザクションマネージャと連携する，接続プール機能の拡張機能です。

分散トランザクション機能は，XADataSourceクラスとJNDIを使用してデータベースと接続した場合だけ使用できます。

分散トランザクション機能の概要について説明します。

(a)　概要

JTSおよびJTAとの連携によって，Sun Microsystemsの提唱するJava Transaction API（JTA）規格に沿った，分散トランザクションを構築できます。

システム構築時に，トランザクション連携機能を任意に選択できます（ユーザが作成する，APServerベンダ提供のものを使用する，またはJDBCベンダが提供するものを使用する）。

トランザクション連携機能は，接続プールの拡張機能として，トランザクションマネージャが提供する，JTAやJTSを使用します。

トランザクション連携機能では，アプリケーションとのインタフェースとして，DataSourceクラスを提供します。

JDBC2.0拡張機能では，トランザクション連携機能とのインタフェースとして，XADataSourceクラスとXAConnectionクラスを提供します。また，トランザクションマネージャとのインタフェースとして，XAResourceクラスを提供します。

XADataSourceクラスは，JDBC2.0拡張機能が提供するDataSourceクラスと同様に，接続情報の設定および取得用のメソッドを提供します。

接続プールの場合と同様に，アプリケーションが使用するConnectionオブジェクトはXAConnectionクラスが生成しますが，PooledConnectionクラスやJDBC2.0拡張機能が提供するDataSourceクラスが生成するConnectionオブジェクトと比べて，次の点が異なります。

接続情報にXALocalCommitMode(true)を設定していない場合には，XADataSourceクラス使用時，AutoCommitのモードはOFFになります。また，AutoCommitのモードをONにしたり（ConnectionクラスのsetAutoCommit(true)メソッドの発行），Connectionクラスのcommitメソッド，またはrollbackメソッドを実行したりすると，SQLExceptionとなります。ただし，XALocalCommitMode(true)をプロパティに設定している場合だけAutoCommitのモードはONとなります。

一つのXAResourceに対して複数のConnectionクラスを生成してもトランザクションは一つになります。XAResource，Connectionは一対一で使用するようにしてください。トランザクションがローカルトランザクション※1の場合，ConnectionクラスのsetAutoCommit(true)メソッド，commitメソッド，およびrollbackメソッドを呼び出せます。同じXAResourceを使用するトランザクションがグローバルトランザクション※2を開始すると，自動的にAutoCommitのモードはOFFになります。再び，トランザクションがローカルトランザクションに移行すると，開始前のAutoCommitのモードに変更されます。複数のConnectionを使用して，トランザクションがローカルトランザクションのときにsetAutoCommitメソッドでAutoCommitのモードを変更する場合は，すべてのConnectionクラスのオブジェクトに対してそれぞれsetAutoCommitメソッドを呼び出してAutoCommitのモードを統一させる必要があります。現在のトランザクションがローカルトランザクションで，AutoCommitのモードがOFFの状態で新たにConnectionを生成した場合，新しいConnectionクラスのオブジェクトに対してsetAutoCommit(false)を実行してください。

注※1

ローカルトランザクションとは，XAResourceクラスのstart実行前，またはXAResourceクラスのend実行後の状態にあるトランザクションのことです。

注※2

グローバルトランザクションとは，XAResourceクラスのstart実行後，またはXAResourceクラスのendを実行するまでの状態にあるトランザクションのことで，トランザクションマネージャがトランザクション制御を行っている状態を指します。

次の状態のとき，Connectionクラスのcloseメソッドを実行しても，接続しているデータベースによってトランザクションが決着されないことがあります。

接続情報にXALocalCommitMode(true)を設定している。

AutoCommitのモードをOFFにしている。

ローカルトランザクション内でSQLを実行し，Connectionクラスのcommitメソッド，またはrollbackメソッドを実行しない。

トランザクションを決着させるには，Connectionクラスのcloseメソッドを実行する前に，明示的にConnectionクラスのcommitメソッド，またはrollbackメソッドを実行する必要があります。

HiRDBの配列更新機能を使用するには，setXALocalCommitMode(true)，およびsetBlockUpdate(true)に設定してHiRDBに接続後，AutoCommit(false)を指定する必要があります。HiRDBにsetXALocalCommitMode(true)を設定して接続し，HiRDBの配列更新機能を使用する例を次に示します。
なお，HiRDBの配列更新機能については，「11.6.2(2)　バッチ更新」を参照してください。

XADataSource xads = new XADataSource();
xads.setDatabaseName("HIRDB");
xads.setXALocalCommitMode(true);
               ・
               ・
Connection con = xaconnection.getConnection();
String sql = "INSERT INTO SAMPLE VALUES(?)";
PreparedStatement pst = con.prepareStatement(sql);
con.setAutoCommit(false);
pst.setInt(1,10);
pst.addBatch();
pst.setInt(1,20);
pst.addBatch();
pst.executeBatch();
con.commit();

Cosminexus DABroker Libraryは，SQLの前処理を複数のCommit，Rollbackにわたって保持します。
この機能をXA環境下で使用できるデータベースは，HiRDBのバージョンが07-01以降です。また，SQLの前処理の保持機能が使用できるのは，グローバルトランザクション，およびローカルトランザクションを混在せずに使用している場合だけです。
ローカルトランザクションとグローバルトランザクションを混在させて使用すると，ローカルトランザクションSQLの前処理の保持機能は使用できません。
XA環境下でローカルトランザクションとグローバルトランザクションが混在したJavaUPの場合の前処理保持状態を次に示します。

図11-5　XA環境下でローカルトランザクションとグローバルトランザクションが混在したJavaUPの場合の前処理保持状態

(b)　関連するクラス

分散トランザクション機能に関連するクラスを次の表に示します。

表11-28　 分散トランザクションに関連するクラス

クラス
概要

javax.sql.
ConnectionEventListener

トランザクション連携機能が提供

トランザクション連携機能で，接続の切断，SQLエラーなどをこのクラスのオブジェクトから検知※1

javax.sql.DataSource

トランザクション連携機能が提供

データベース接続時のアプリケーションとのインタフェース

トランザクションマネージャとの連携および接続プールを制御

JNDIに登録して使用

javax.sql.XADataSource

JDBC2.0拡張機能が提供※2

データベース接続に必要な接続情報の設定および取得用のメソッドを提供

トランザクション連携機能が使用

JNDIに登録して使用

このクラスのオブジェクトからXAConnectionオブジェクトを取得

javax.sql.XAConnection

JDBC2.0拡張機能が提供※2

PooledConnectionクラスのサブクラス

トランザクション連携機能が使用

このクラスのオブジェクトがプール対象

このクラスのオブジェクトからConnectionオブジェクトを取得

javax.transaction.xa.
XAResource

JDBC2.0拡張機能が提供※2

トランザクションマネージャが使用するXA関連メソッドを提供

javax.transaction.xa.Xid

JDBC2.0拡張機能※2およびトランザクションマネージャが提供

XAResourceクラスの引数および戻り値として使用

注※1

connectionErrorOccurredが返されるのは次のエラーコードの場合です。

接続データベースがHiRDB：-720，-722，-723，-728，-732，-932，-1700

接続データベースがOracle：28，1012，3113，3114，12571

注※2

JDBC2.0拡張機能が提供するパッケージ名称とクラス名称を次に示します。

種類 | 名称
パッケージ | JP.co.Hitachi.soft.DBPSV_Driver
XADataSourceクラス | JdbcDbpsvXADataSource
XAConnectionクラス | JdbcDbpsvXAConnection
XAResourceクラス | JdbcDbpsvXAResource
Xidクラス | JdbcDbpsvXid

11.6.4　データベース接続の設定

Cosminexus DABroker Libraryで開発するアプリケーションでは，次の項目を設定します。ただし，トレースを取得するための情報の設定は任意です。

使用するJDBCドライバの設定

接続するデータベースの設定

データベースに接続するための各種情報の設定

トレースを取得するための情報の設定（任意）

ここでは，それぞれの設定内容について説明します。

なお，アプリケーション運用時に必要となる，アプリケーションの組み込みやインタフェースの定義については，「11.2.1(5)　J2EEアプリケーション運用のための設定」を参照してください。

＜この項の構成＞

(1)　使用するJDBCドライバの設定

(2)　接続するデータベースの設定

(3)　データベースに接続するための各種情報の設定

(4)　トレースを取得するための情報の設定

(1)　使用するJDBCドライバの設定

JDBCドライバのロードに，次のドライバ名称およびパッケージ名称を設定します。

設定項目 | 設定値
ドライバ名称 | JdbcDbpsvDriver
パッケージ名称 | JP.co.Hitachi.soft.DBPSV_Driver

ドライバ名称およびパッケージ名称は，次のどちらかの方法で設定してください。

Class.forNameメソッドでの設定
Class.forNameメソッドでアプリケーションからJDBCドライバを登録します。
アプリケーション内に次のように記述してください。

Class.forName("JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDriver")

システム（java.lang.System）プロパティのjdbc.driversでの指定
システムプロパティにJDBCドライバを登録します。
システムプロパティでの指定方法は，Javaの各処理系の仕様に依存します。
次に，システムプロパティへの登録方法を示します。

Appletviewerでの指定－Javaアプレットの場合
[JAVA_HOME]/.hotjava/propertiesファイルに次の記述を追加してください。複数のドライバを使用する場合は，「:（コロン）」で区切って記述してください。なお，［JAVA_HOME］とは，環境変数PATHに設定した値のことです。［JAVA_HOME］は，Java実行環境によって異なります。

jdbc.drivers="JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDriver"

Javaのメソッドでの設定
System.setPropertyメソッドを使用してシステムプロパティに登録してください。次のように記述してください。

System.setProperty("jdbc.drivers", "JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDriver") ;

JDBCドライバの使用方法の詳細については，JDBC関連ドキュメントを参照してください。

(2)　接続するデータベースの設定

Cosminexus DABroker Libraryで開発するアプリケーションは，DABrokerに接続してデータベースに接続します。DABrokerおよびデータベースは，次のどちらかの方法で設定してください。

Driver.connectメソッドの直接呼び出し

DriverManager.getConnectionメソッドの使用

同時に多数のユーザが接続するシステムの場合，ドライバマネージャを使用する接続方法では，ドライバマネージャ内で待ちが発生することがあります。多数のユーザが同時に接続することが想定されるシステムでは，Driver.connectメソッドの直接呼び出しの接続方法でアプリケーションを開発することをお勧めします。

Driver.connectメソッドの直接呼び出しによる接続方法
次のように，Driverクラスのconnectメソッドを直接呼び出すことができます。

Driver drv = new JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDriver();
Connection con = drv.connect(String url,Properties info);

DriverManager.getConnectionメソッドの使用による接続方法
DABrokerとの接続は，DriverManager.getConnectionメソッドを使用します。引数のパターンは，次のどちらかです。

DriverManager.getConnection(String url,String user,String password);
DriverManager.getConnection(String url,Properties info);

次の表に，DriverManager.getConnectionメソッド，およびDriver.connectメソッドの引数の内容を示します。

表11-29　 getConnectionメソッドおよびconnectメソッドの引数の内容

引数
設定内容
指定

String url
データベースに接続するための各種情報の設定用URL構文（「(3)　データベースに接続するための各種情報の設定」参照）
必須

String user
データベース接続のユーザID※¹
必須

String password
データベース接続のパスワード※¹
任意

Properties info
データベース接続のユーザID※¹
（キーワード："user"）
必須

データベース接続のパスワード※¹
（キーワード："password"）
任意

アプリケーションの名称※²
（キーワード："UAPNAME"）
任意

DABrokerからの受信データのバッファ長※³
（キーワード："BUF_SIZE"）
任意

トレース取得の有無
（キーワード："JDBC_IF，SV_EVENT，TRC_NO"，
「(4)　トレースを取得するための情報の設定」参照）
任意

エンコード文字形態※⁴
（キーワード："ENCODELANG"）
任意

JDBCで取り扱うバッファ長※⁵
（キーワード："ROW_SIZE"）
任意

OS認証機能使用の有無※6
（キーワード："DAB_OSAUTH"）
任意

警告の保持※7
（キーワード："SQLWARNING_IGNORE"）
任意

HiRDBのカーソルの保持※8
（キーワード："HIRDB_CURSOR"）
任意

複数のパラメタセットの処理方法※9
（キーワード："BLOCK_UPDATE"）
任意

Execute Direct機能使用の有無※10
（キーワード："EXECUTE_DIRECT_MODE"）
任意

LONGVARBINARY型データアクセスモード※11
（キーワード："LONGVARBINARY_ACCESS"）
任意

DABrokerからの受信データのバッファプール数※12
（キーワード："BUF_POOL_SIZE"）
任意

注※1

データベースに接続するためのユーザID，およびパスワードは，あらかじめデータベースに登録しておいてください。

なお，ユーザIDだけを指定し，パスワードの指定を省略した場合でも，データベースに接続できます。ただし，ユーザIDの指定を省略し，パスワードだけを指定した場合は，データベースに接続できません（データベースの仕様に従っています）。

注※2

開発するアプリケーションを一意に識別するための名称です。DABrokerで取得する，アプリケーションとの通信トレースのPAPNAMEに使用されます。指定を省略した場合は，「DABroker for Java Version 2」が使用されます。

アプリケーションの名称は，30バイト以内の文字列で指定してください。31バイト以上の文字列を指定した場合，31バイト以降は切り捨てられます。

注※3

DABrokerからの受信データを格納するためのバッファ長を，キロバイト単位の数字文字列で指定します。BLOBデータなどの長大データを使用する場合，想定されるデータ長以上の値をこの項目に指定します。

指定値

1～16000

指定を省略した場合，数字以外を指定した場合，または1より小さい値を指定した場合は64が仮定されます。16000より大きい値を指定した場合は16000が仮定されます。

値が仮定されたときは，Exceptionトレースログに値が仮定されたことを表すメッセージ（KFDJ01009-W）が出力されます。出力される契機はDriverManager.getConnectionメソッドなどでConnectionオブジェクトを取得するときです。メッセージについては，マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」の「KFDJ01009-W」を参照してください。

ただし，BUF_SIZEの上限が16,000キロバイトのため，BLOBデータなどの16,000キロバイトを超えるデータに一度にアクセスすることはできません。データベース種別がHiRDBの場合は，指定したバイト数を取り出すSTRING のインタフェース（BLOBデータの部分抽出機能）があるため，ここで指定したサイズ以下のサイズに分割して取り出してください。BLOBデータの部分抽出機能の詳細については，マニュアル「HiRDB UAP開発ガイド」，およびマニュアル「HiRDB SQLリファレンス」を参照してください。

注※4

Stringクラスで文字変換に使用するエンコード文字形態を指定します。

指定値

Javaがサポートしている文字エンコーディング：

MS932など，指定したエンコード文字形態を使用します。

OFF：

JavaVMがサポートしている標準エンコードを使用します。

次にDABrokerの漢字コードセットの値とJDBC内のエンコーディングの対応を示します。

DABroker（UNIX）のDAB_LANGの値，またはDABroker（Windows）のDABLANGMODEの漢字コードセットの値 | JDBC内の文字エンコーディング
SJIS（シフトJIS）モード | VMの標準エンコードを使用します。
EUCモード | EUCJIS
ASCIIモード | 8859_1
UTF-8モード | UTF-8

指定を省略した場合，OFFが仮定されます。

注※5

JDBCで取り扱うバッファ長を指定します。指定はメガバイト単位の数字文字列で指定します。利用するデータベースの1レコードの長さより大きい値を指定してください。

指定値

16～512

指定を省略した場合，数字以外を指定した場合，または16より小さい値を指定した場合は16が仮定されます。

512より大きい値を指定した場合は512が仮定されます。

注※6

OS認証機能を使用したデータベース接続をするかどうか指定します。

指定値

TRUE ：使用します。

FALSE：使用しません。

指定を省略した場合は，FALSEが仮定されます。この指定は，Oracle9i 9.2.0に接続する場合だけ有効です。それ以外のバージョンのOracleに対して指定した場合は動作を保証しません。接続するデータベースがOracle以外の場合は，指定値に関係なく，OS認証機能を使用しません。

注※7

データベースから返される警告を，Connectionクラスで保持するかどうかを指定します。

指定値

TRUE ：保持しません。

FALSE：保持します。

指定を省略した場合は，FALSEが仮定されます。

注※8

HiRDBでの検索時，カーソルが複数のCommitにわたって有効かどうかを指定します。

指定値

TRUE：カーソルは保持されます。アプリケーションは，続けてFetchできます（LOCK TABLE UNTIL DISCONNECTが前提です）。

FALSE：カーソルはクローズされます。

指定を省略した場合は，FALSEが仮定されます。Oracleでは，カーソルは常に複数のCommit，またはRollbackにわたって有効です。通常，Fetch時，DABrokerにFetchデータをバッファリングするため，Commit直後のFetchでエラーが発生するとは限りません。

MetaDataを取得する場合，「TRUE」を指定してLOCK TABLE UNTIL DISCONNECTをしないで，複数のCommitにわたってFetchを行うとエラーが発生します。MetaDataを取得する場合は，「TRUE」を設定しないでください。

MetaDataを取得する場合，「FALSE」，またはデフォルトの状態でResultSetのFetch実行中にCommitを実行するとエラーが発生します。

この機能については，マニュアル「HiRDB SQLリファレンス」を参照してください。

注※9

接続データベースがHiRDBの場合，?パラメタを使用したデータベースの更新で，複数のパラメタセットを一度に処理するかどうかを指定します。

指定値

TRUE ：一度に処理します。

FALSE：パラメタセットを一つずつ分割して処理します。

指定を省略した場合は，FALSEが仮定されます。この指定は，接続データベースがHiRDBのときだけ有効です。HiRDB以外のデータベースの場合は，常にパラメタセットを一つずつ分割して処理します。また，実際にパラメタセットが一度に処理されるかどうかは，DABrokerおよびHiRDBの仕様に従います。

注※10

接続データベースがHiRDBの場合，INSERT，UPDATE，DELETEなど，Statementクラスを使用したデータベースの更新でHiRDBのEXECUTE DIRECT機能を使用するかどうかを指定します。

指定値

TRUE ：EXECUTE DIRECT機能を使用します。

FALSE：EXECUTE DIRECT機能を使用しません。

指定を省略した場合は，FALSEが仮定されます。この指定は，接続データベースがHiRDBのときだけ有効であり，HiRDB以外のデータベースの場合は，常にEXECUTE DIRECT機能を使用しません。

注※11

LONGVARBINARY（列属性BLOB，列属性BINARY）のデータベースのアクセス方法を指定します。

指定値

REAL：実データでアクセスします（デフォルト）。

LOCATOR：HiRDBの位置づけ子（locator）機能を使用してアクセスします。

上記以外：「REAL」を指定したものとします。なお，次のどれかの場合，「LOCATOR」を指定しても「REAL」が指定されたと見なします。

接続先DBがHiRDB 以外

接続先DBであるHiRDBのHiRDBサーバ，またはHiRDBクライアントライブラリのバージョンが07-00以前

LONGVARBINARY_ACCESSを指定した場合の注意事項を次に示します。

BUF_SIZEとLONGVARBINARY_ACCESSを指定した場合
BUF_SIZEおよびLONGVARBINARY_ACCESSの指定によって，BLOB／BINARYデータの取得方法が変化します。BLOB／BINARYデータの取得方法については，「(3)(b)　URLに指定する各種情報」の「BLOB／BINARYデータの取得方法」を参照してください。

実行性能
LONGVARBINARY_ACCESSに「REAL」を指定すると，データベースへのアクセスは，ResultSet.nextまたはCallableStatement.execute実行時に1回行われるのに対し，「LOCATOR」を指定すると，ResultSet.nextまたはCallableStatement.execute実行時と，getBytesなどのデータを取得するメソッド実行時の2回行われます。そのため，「LOCATOR」を指定すると「REAL」を指定した場合に比べて性能が低下する場合があります。

AUTOコミット
LONGVARBINARY_ACCESSが「LOCATOR」でかつ，AUTOコミットが有効の場合，ストアドプロシジャのBLOB／BINARY型出力パラメタを受け取れません（getBytesなどでデータを取得できません）。ストアドプロシジャの出力パラメタを受け取るにはAUTOコミットを無効にしてください。

トランザクション終了後のデータ操作
LONGVARBINARY_ACCESSが「LOCATOR」の場合，SQLの実行結果取得（ResultSet.next，CallableStatement.execute）からデータ操作（Blob.getBytes，InputStream.readなど）までにトランザクションが終了すると，データ操作ができません。また，HIRDB_CURSORが「TRUE」であってもトランザクション終了後のデータ操作は実行できません。
そのため，データ操作はトランザクション終了前に行ってください。

注※12

DABrokerからの受信データを格納するためのバッファプール数を設定します。指定しない場合は，0（デフォルト）が仮定されます。受信バッファプール数指定機能については，「11.4.2　受信バッファプール数の指定」を参照してください。

指定値

0（デフォルト）
受信バッファプール数指定機能を使用しません。受信バッファをすべてプールします。

1～1024
引数に指定された値を受信バッファプール数に設定します。ただし，接続するデータベースがHiRDBまたはORACLE以外の場合は，受信バッファプール数は1～64になります。この場合，64より大きい値を指定しても64個までしかプールできません。

上記以外
0より小さい値を指定した場合，または数字以外を指定した場合は0が仮定されます。1024より大きい値を設定した場合は1024が仮定されます。
値が仮定されたときは，Exceptionトレースログにメッセージ（KFDJ01011-W）が出力されます。このメッセージが出力される契機はDriverManager.getConnectionメソッドなどでConnectionオブジェクトを取得するときです。メッセージについては，マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」の「KFDJ01011-W」を参照してください。
ただし，SQLWarnningは作成されません。

(3)　データベースに接続するための各種情報の設定

ここでは，DABrokerおよびデータベースの各種情報の設定について説明します。

(a)　URLの指定形式

引数URLは，次の形式で指定します。

なお，任意に指定する項目については，［］（角括弧）で示しています。

jdbc:hitachi:dbplib://DB =データベース種別[,DBID = データベースの接続情報][,DBENV = 接続先データベース定義情報][,DBHOST = データベース(HiRDB)のホスト名][,BUF_SIZE = 受信バッファ長][,ENCODELANG = 変換文字指定]
[,HIRDB_CURSOR = HiRDBカーソル動作モード]

必須の指定を省略した場合は，エラー（SQLExceptionをthrowする）となります。

URLで指定する項目の中または項目の間でスペースを指定すると，指定値が無効となります。

(b)　URLに指定する各種情報

各種情報に指定する内容を，次に示します。

●URLでの指定項目

表11-30　URLでの指定項目

各種情報
指定内容

データベース種別
（DB=）
DABrokerから接続するデータベースの種別を指定します。
指定値：表11-31参照
指定は必須です。

データベースの
接続情報
（DBID=）
接続するデータベース情報を指定します。
指定値：表11-32参照

接続先データベース定義情報
（DBENV=）
DABrokerの接続先データベース定義情報を次の形式で指定します。
データベース種別名：データベース名
データベース種別がDABroker－Database Connection Serverの場合は，必ずこの項目を指定します。それ以外のデータベース種別の場合は，ここでの指定値は無視されます。

データベースのホスト名
（DBHOST=）
データベースの種別にHiRDBを指定する場合，HiRDBのホスト名を指定します。なお，HiRDB以外のデータベースを指定する場合，ここでの指定値は無視されます。
指定値：ホスト名
指定は任意です。

受信バッファ長
（BUF_SIZE=）
DABrokerからの受信データを格納するためのバッファ長を，キロバイト単位の数字文字列で指定します。BLOBデータなどの長大データを使用する場合，想定されるデータ長以上の値をこの項目に指定します。
指定値：1～16000
指定を省略した場合，数字以外を指定した場合，または1より小さい値を指定した場合は64が仮定されます。16000より大きい値を指定した場合は16000が仮定されます。
値が仮定されたときは，Exceptionトレースログに値が仮定されたことを表すメッセージ（KFDJ01009-W）が出力されます。出力される契機はDriverManager.getConnectionメソッドなどでConnectionオブジェクトを取得するときです。メッセージについては，マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」の「KFDJ01009-W」を参照してください。
ただし，BUF_SIZEの上限が16,000キロバイトのため，BLOBデータなどの16,000キロバイトを超えるデータに一度にアクセスすることはできません。データベース種別がHiRDBの場合は，指定したバイト数を取り出すSTRING のインタフェース（BLOBデータの部分抽出機能）があるため，ここで指定したサイズ以下のサイズに分割して取り出してください。BLOBデータの部分抽出機能の詳細については，マニュアル「HiRDB UAP開発ガイド」，およびマニュアル「HiRDB SQLリファレンス」を参照してください。

受信バッファプール数（BUF_POOL_SIZE）
DABrokerからの受信データを格納するためのバッファプール数を設定します。指定しない場合は，0（デフォルト）が仮定されます。受信バッファプール数指定機能については，「11.4.2　受信バッファプール数の指定」を参照してください。
指定値：

0（デフォルト）

受信バッファプール数指定機能を使用しません。受信バッファをすべてプールします。

1～1024

引数に指定された値を受信バッファプール数に設定します。ただし，接続するデータベースがHiRDBまたはORACLE以外の場合は，受信バッファプール数は1～64になります。この場合，64より大きい値を指定しても64個までしかプールできません。

上記以外

0より小さい値を指定した場合，または数字以外を指定した場合は0が仮定されます。1024より大きい値を設定した場合は1024が仮定されます。

値が仮定されたときは，Exceptionトレースログにメッセージ（KFDJ01011-W）が出力されます。このメッセージが出力される契機はDriverManager.getConnectionメソッドなどでConnectionオブジェクトを取得するときです。メッセージについては，マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」の「KFDJ01011-W」を参照してください。
ただし，SQLWarnningは作成されません。

変換文字指定
（ENCODELANG=）
Stringクラスで文字変換に使用するエンコード文字形態を指定します。
指定値：Javaがサポートしている文字エンコーディング（MS932など），またはOFF（JavaVMがサポートしている標準エンコードを使用します）
指定は任意です。指定を省略した場合，OFFが仮定されます。

HiRDBカーソル動作モード
（HIRDB_CURSOR=）
HiRDBでの検索時，カーソルが複数のCommitにわたって有効かどうかを指定します。
指定値：

TRUE

カーソルは保持されます。アプリケーションは，続けてFetchできます（LOCK TABLE UNTIL DISCONNECTが前提です）。

FALSE

カーソルはクローズされます。

指定を省略した場合は，FALSEが仮定されます。Oracleでは，カーソルは常に複数のCommit，またはRollbackにわたって有効です。通常，Fetch時，DABrokerにFetchデータをバッファリングするため，Commit直後のFetchでエラーが発生するとは限りません。
MetaDataを取得する場合，「TRUE」を指定してLOCK TABLE UNTIL DISCONNECTをしないで，複数のCommitにわたってFetchを行うとエラーが発生します。MetaDataを取得する場合は，「TRUE」を設定しないでください。
MetaDataを取得する場合，「FALSE」またはデフォルトの状態で，ResultSetのFetch実行中にCommitを実行するとエラーが発生します。
接続データベースがHiRDBで検索SQL（SELECT文）に「UNTIL DISCONNECT」を記述した場合は，「TRUE」を指定するか，DataSourceクラスのsetHiRDBCursorModeメソッドで「true」を設定してください。設定しない場合，Commitをわたった検索中のResultSetクラスオブジェクトに対してcloseメソッドを実行してもカーソルをクローズしません。
この機能を使用する場合，マニュアル「HiRDB SQLリファレンス」を参照してください。

●データベースの指定値

表11-31　データベース種別の指定値

データベース種別 | データベース種別の指定値
Oracle | oracleまたはORACLE
Oracle8i※ | oracle8iまたはORACLE8I
HiRDB | hirdbまたはHIRDB

注

指定値の文字列は，大文字，小文字のどちらでもかまいません。

「=」の前後に，空白またはタブ文字を指定した場合は，エラー（SQLExceptionをthrowする）となります。

注※

データベース種別にOracle8iの指定値を指定して，DABroker環境設定の「使用するOracleのバージョン」にOracle9iを指定した場合はOracle9iに，Oracle10gを指定した場合はOracle10gに接続できます。

表11-32　データベースの接続情報の指定値

データベース種別 | データベースの接続情報の指定内容 | 指定の省略可否
Oracle | SQL*Netの接続文字列※¹ | 任意※¹
Oracle8i
HiRDB | HiRDBのシステムポート番号※¹※² | 任意※¹

注

「=」の前後に，空白またはタブ文字を指定した場合は，エラー（SQLExceptionをthrowする）となります。

「DB=データベース種別」との区切りに「,（コンマ）」を使用します。

「,（コンマ）」を2回以上指定した場合は，最後の「,（コンマ）」以降がデータベースの接続情報の指定となります。

データの区切りに「,（コンマ）」以外のキーを使用した場合は，データベース接続情報の指定は無効となります。

注※1

指定を省略する場合は，DABrokerの動作環境定義ファイルでの指定が有効になります。

注※2

HiRDBクライアントの環境変数グループ名を指定する場合は，グループ名の先頭に@を付加します。

（例1）

Windowsの場合

HiRDBクライアントの環境変数グループ名がHiRDB_ENV_GROUPのときは，次のように指定します。

DBID=@DABENVGRP=HiRDB_ENV_GROUP

（例2）

UNIXの場合

HiRDBクライアントの環境変数グループ名のパスが/HiRDB_P/Client/HiRDB.iniのときは，次のように指定します。

DBID=@DABENVGRP=/HiRDB_P/Client/HiRDB.ini

DBID=@DABENVGRP=＜環境変数グループ名＞を指定する場合は，指定内容に半角の空白を含めないでください。指定内容が次に示す例のどれかに該当する場合，DBIDは正しく設定されません。

（例）

DBID=@DABENVGRP=＜環境変数グループ名＞の指定内容に半角スペースを含みます。OSはWindowsで，環境変数グループ名はHiRDB_ENV_GROUPとします。

半角の空白を△で示します。

DBID△=@DABENVGRP=HiRDB_ENV_GROUP

DBID=△@DABENVGRP=HiRDB_ENV_GROUP

DBID=@△DABENVGRP=HiRDB_ENV_GROUP

DBID=@DABENVGRP△=HiRDB_ENV_GROUP

DBID=@DABENVGRP=△HiRDB_ENV_GROUP

DBID=@DABENVGRP=HiRDB_ENV_GROUP△

●BLOB／BINARYデータの取得方法

LONGVARBINARY_ACCESSを指定した場合の各メソッド実行時の動作を次に示します。

接続先データベースにHiRDBを指定した場合

表11-33　BLOB／BINARYデータの取得方法（1）

指定値
CallableStatement.execute
および
ResultSet.next
CallableStatement.getBytes
および
ResultSet.getBytes
Blob.getBytes

REAL
BLOB／BINARYデータの全体を接続先データベースから取得します。
ResultSet.nextで取得したBLOB／BINARYデータを使用します。
ResultSet.nextで取得したBLOB／BINARYデータから，引数で指定された範囲を切り出して取得します。

LOCATOR
BLOB／BINARYデータの全体ではなく，接続先データベース内のBLOB／BINARYデータを示すロケータを取得します。
BLOB／BINARYデータの全体を接続先データベースからBUF_SIZE×1,024バイト単位に分割して取得します。
引数で指定された範囲のBLOB／BINARYデータを接続先データベースからBUF_SIZE×1,024バイト単位に分割して取得します。

表11-34　BLOB／BINARYデータの取得方法（2）

指定値
CallableStatement.getBinaryStream
および
ResultSet.getBinaryStreamBlob.getBinaryStream
Blob.length
Blob.position

REAL
getBinaryStreamによって取得したInputStreamのreadメソッドを実行した場合，ResultSet.nextで取得したBLOB／BINARYデータから抽出して取得します。
ResultSet.nextメソッドで取得したBLOB／BINARYデータから，データ長を取得します。
ResultSet.nextで取得したBLOB／BINARYデータから，検索パターンに一致する位置を取得します。

LOCATOR
getBinaryStreamによって取得したInputStreamのreadメソッドを実行した場合，接続先データベースからデータを取得します。
接続先データベースからデータ長を取得します。
接続先データベースから，検索パターンに一致する位置を取得します。

表11-35　BLOB／BINARYデータの取得方法（3）

指定値 | InputStream.available※ | InputStream.skip※
REAL | ロケータの示す実データの長さ以下の値を返します。 | ロケータの示す実データの長さ以下の値を返します。
LOCATOR | BUF_SIZE×1,024バイト以下の値を返します。 | BUF_SIZE×1,024バイト以下の値を返します。

注※

CallableStatement.getBinaryStream，ResultSet.getBinaryStream，またはBlob.getBinaryStreamで取得したInputStreamです。

接続先データベースにOracleを指定した場合

表11-36　BLOB／BINARYデータの取得方法（4）

指定値
CallableStatement.execute
および
ResultSet.next
CallableStatement.getBytes
および
ResultSet.getBytes
Blob.getBytes

REAL
BLOB／BINARYデータの全体を接続先データベースからBUF_SIZE ×1,024バイト単位に分割して取得します。
ResultSet.nextで取得したBLOB／BINARYデータを使用します。
ResultSet.nextで取得したBLOB／BINARYデータから，引数で指定された範囲を切り出して取得します。

LOCATOR

表11-37　BLOB／BINARYデータの取得方法（5）

指定値
CallableStatement.getBinaryStream
および
ResultSet.getBinaryStreamBlob.getBinaryStream
Blob.length
Blob.position

REAL
ResultSet.nextで取得したBLOB／BINARYデータを使用します。
ResultSet.nextで取得したBLOB／BINARYデータから，データ長を取得します。
ResultSet.nextで取得したBLOB／BINARYデータから，検索パターンに一致する位置を取得します。

LOCATOR

表11-38　BLOB／BINARYデータの取得方法（6）

指定値 | InputStream.available※ | InputStream.skip※
REAL | ロケータの示す実データの長さ以下の値を返します。 | ロケータの示す実データの長さ以下の値を返します。
LOCATOR

注※

CallableStatement.getBinaryStream，ResultSet.getBinaryStream，またはBlob.getBinaryStreamで取得したInputStreamです。

(4)　トレースを取得するための情報の設定

JDBCドライバでは，次のトレースを取得できます。トレースの出力内容については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

JDBCインタフェースメソッドトレース

DABrokerとのイベントトレース

(a)　トレースの取得および出力ストリームの設定方法

次の項目を指定して，トレースの取得を設定してください。次の項目が指定されていない場合は，トレースを取得できません。

DriverManager.getConnectionメソッドまたはDriver.connectメソッドの引数Properties infoでのトレース取得有無の指定

DriverManager.setLogWriterメソッドでの，トレースの出力ストリームの指定

1.のProperties infoで指定する値を次の表に示します。1.のメソッドと引数については，「(3)　データベースに接続するための各種情報の設定」を参照してください。

表11-39　 トレースを取得するための指定値

トレースの種類
およびトレース関連項目
Properties infoの
キーワード
Properties infoの値

JDBCインタフェースメソッド
トレース※¹
JDBC_IF
指定値
ON：トレースを取得する
OFF：トレースを取得しない

DABrokerとのイベント
トレース※¹
SV_EVENT
指定値
ON：トレースを取得する
OFF：トレースを取得しない

各トレースのエントリ数※²
TRC_NO
デフォルト値
500（エントリ）
指定範囲
10～1000（エントリ）

注※1

ONまたはOFF以外の値を指定した場合は「トレースを取得しない」設定となります。

注※2

数字以外の値を指定した場合は「トレースを取得しない」設定となります。

(b)　指定したストリームへの出力タイミング

トレースは，各トレースのエントリ数分，JDBCドライバで保持されます。

保持されたトレースは，次のタイミングでDriverManager.setLogWriterメソッドで指定した出力ストリームに出力されます。

Connection.Closeメソッドの呼び出し（正常終了時）

エラー発生時（SQLExceptionのthrow時）

(c)　JDBCドライバでのトレース取得時の注意事項

JDBCドライバは，JDBCドライバ内でトレース情報の数がエントリ数を超えた場合は，トレースの古い順にトレース情報を上書きします。

JDBCインタフェースメソッドトレース（キーワード：JDBC_IF）は，EntryおよびReturnでそれぞれ1エントリのトレース領域を使用します。

DABrokerとのイベントトレース（キーワード：SV_EVENT）は，送信または受信イベントでそれぞれ1エントリのトレース領域を使用します。

11.6.5　JDBC2.0拡張機能を使用したデータベース接続の設定

JDBC2.0拡張機能で提供するJNDI連携機能を使用した，データベースへ接続する操作について説明します。この機能はアプリケーションサーバのJ2EEサーバモード，DB Connectorを使用する場合は，アプリケーションで設定する必要はありません。

＜この項の構成＞

(1)　DataSourceオブジェクトの生成

(2)　データベースに接続するための各種情報の設定

(3)　JNDIへの情報の登録

(4)　JNDIからの情報の取得

(5)　データベースへの接続

(6)　JDBC2.0拡張機能で提供する機能のトレースを取得するための情報の指定

(1)　DataSourceオブジェクトの生成

接続情報の設定は，DataSourceオブジェクトで実行します。

DataSourceオブジェクトの生成で必要な，ドライバ拡張機能のパッケージ名称およびDataSourceクラス名称を次に示します。

指定項目 | 指定値
パッケージ名称 | JP.co.Hitachi.soft.DBPSV_Driver
DataSourceクラス名称 | JdbcDbpsvDataSource

DataSourceオブジェクトの生成例を次に示します。

JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource  ds = null ;
ds = new JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource() ;

(2)　データベースに接続するための各種情報の設定

データベースに接続するための各種情報は，JDBC2.0拡張機能で提供するメソッドで設定します。提供するメソッドを次の表に示します。

表11-40　 各種情報を設定するメソッド

メソッド | 機能
setNetworkProtocol | DABrokerとの接続種別を設定します。
setServerName | 接続するDABrokerのホスト名を設定します。
setPortNumber | 接続するDABrokerのポート番号を設定します。
setDatabaseName | 接続するデータベースの種別を設定します。
setDescription | 接続するデータベースに必要な接続付加情報を設定します。
setDBHostName | 接続するHiRDBのホスト名を設定します。
setDBEnv | DABrokerの接続先データベース定義情報を設定します。
setEncodLang | エンコード文字形態を設定します。
setJDBC_IF_TRC | JDBCインタフェースメソッドトレースの取得の有無を設定します。
setSV_EVENT_TRC | DABrokerとのイベントトレースの取得の有無を設定します。
setTRC_NO | トレースのエントリ数を設定します。
setUapName | アプリケーション名称を設定します。
setBufSize | DABrokerからの受信データのバッファ長を設定します。
setUser | データベース接続のユーザIDを設定します。
setPassword | データベース接続のパスワードを設定します。
setXAOpenString※ | XA_OPEN文字列を設定します。
setXACloseString※ | XA_CLOSE文字列を設定します。
setRMID※ | リソースマネージャの識別子を設定します。
setXAThreadMode※ | XA使用時のスレッドモードを設定します。
setXALocalCommitMode※ | XA使用時，データベースのオートコミットを有効にするかどうかを設定します。
setRowSize | JDBCで取り扱うバッファ長を指定します。
setOSAuthorize | OS認証機能を使用してデータベースに接続するかどうかを設定します。
setSQLWarningIgnore | データベースから返される警告をConnectionクラスで保持するかどうかの情報を設定します。
setHiRDBCursorMode | 接続データベースがHiRDBの場合，検索時にカーソルが複数のCommitにわたって有効かどうかを設定します。
setNotErrorOccurred | connectionErrorOccurredが呼ばれるかどうかを設定します。
setBlockUpdate | 接続データベースがHiRDBの場合，?パラメタを使用したデータベースの更新で，複数のパラメタセットを一度に処理するかどうかを設定します。
setExecuteDirectMode | 接続データベースがHiRDBの場合，Statementクラスを使用したデータベースの更新でHiRDBのExecute Direct機能を使用するかどうかを設定します。
setLONGVARBINARY_Access | HiRDBでLONVARBINARY（列属性BLOB，列属性BINARY）へのアクセス方法を設定します。
setBufferPoolSize | DABrokerからの受信データのバッファプール数を設定します。

注※

JdbcDbpsvXADataSourceクラスでだけ提供するメソッドです。

JDBC2.0拡張機能では，接続情報を取得するためのメソッドも提供しています。接続情報を取得するためのメソッドを次の表に示します。

表11-41　 各種情報を取得するメソッド

メソッド | 機能
getNetworkProtocol | DABrokerとの接続種別を取得します。
getServerName | 接続するDABrokerのホスト名を取得します。
getPortNumber | 接続するDABrokerのポート番号を取得します。
getDatabaseName | 接続するデータベースの種別を取得します。
getDescription | 接続するデータベースに必要な接続付加情報を取得します。
getDBHostName | 接続するHiRDBのホスト名を取得します。
getDBEnv | DABrokerの接続先データベース定義情報を取得します。
getEncodLang | エンコード文字形態を取得します。
getJDBC_IF_TRC | JDBCインタフェースメソッドトレースの取得の有無を取得します。
getSV_EVENT_TRC | DABrokerとのイベントトレースの取得の有無を取得します。
getTRC_NO | トレースのエントリ数を取得します。
getUapName | アプリケーション名称を取得します。
getBufSize | DABrokerからの受信データのバッファ長を取得します。
getUser | データベース接続のユーザIDを取得します。
getPassword | データベース接続のパスワードを取得します。
getXAOpenString※ | XA_OPEN文字列を取得します。
getXACloseString※ | XA_CLOSE文字列を取得します。
getRMID※ | リソースマネージャの識別子を取得します。
getXAThreadMode※ | XA使用時のスレッドモードを取得します。
getXALocalCommitMode※ | XA使用時，データベースのオートコミットを有効にしているかどうかの設定を取得します。
getRowSize | JDBCで取り扱うバッファ長を取得します。
getOSAuthorize | OS認証機能を使用してデータベースに接続するかどうかの設定を取得します。
getSQLWarningIgnore | データベースから返される警告をConnectionクラスで保持するかどうかの情報を取得します。
getHiRDBCursorMode | 接続データベースがHiRDBの場合，検索時にカーソルが複数のCommit，またはRollbackにわたって有効かどうかの設定を取得します。
getNotErrorOccurred | connectionErrorOccurredが呼ばれるかどうかの設定を取得します。
getBlockUpdate | 接続データベースがHiRDBの場合，?パラメタを使用したデータベースの更新で，複数のパラメタセットを一度に処理するかどうかの設定を取得します。
getExecuteDirectMode | 接続データベースがHiRDBの場合，Statementクラスを使用したデータベースの更新でHiRDBのExecute Direct機能を使用するかどうかの設定を取得します。
getLONGVARBINARY_Access | HiRDBでLONVARBINARY（列属性BLOB，列属性BINARY）へのアクセス方法を取得します。
getBufferPoolSize | DABrokerからの受信データのバッファプール数を取得します。

注※

JdbcDbpsvXADataSourceクラスでだけ提供するメソッドです。

各メソッドの機能および文法については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」を参照してください。

(3)　JNDIへの情報の登録

接続情報を設定したDataSourceオブジェクトを，JNDIに登録します。JNDIは実行環境によって，幾つかのサービスプロバイダを選択できます。

File Systemサービスプロバイダを使用するJNDIへの登録例を次に示します。ほかのサービスプロバイダへの登録については，JNDIのドキュメントを参照してください。なお，JNDIに登録するときの論理名称は，"jdbc"というサブコンテキスト（登録例ではjdbc/TestDataSource）の下に登録するようにしてください。

// JDBC2.0拡張機能が提供するDataSourceオブジェクトを生成する
JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource  ds;
ds = new JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource();

// 接続情報を設定する
  ：
// システムプロパティを取得する
Properties sys_prop = System.getProperties();

// File Systemサービスプロバイダのプロパティを設定する
sys_prop.put(Context.INITIAL_CONTEXT_FACTORY,
            "com.sun.jndi.fscontext.RefFSContextFactory");

// File Systemサービスプロバイダで使用するディレクトリを設定する
// (この場合，c:¥JNDI_DIRの下に登録される)
sys_prop.put(Context.PROVIDER_URL, "file:c:"+File.separator + "JNDI_DIR");

//システムプロパティを更新する
System.setProperties(sys_prop);

// JNDIを初期化する
Context ctx = new InitialContext();

// JDBC2.0拡張機能が提供するDataSourceオブジェクトを，
// jdbc/TestDataSourceという論理名称でJNDIに登録する
ctx.bind("jdbc" + File.separator + "TestDataSource", ds);
  ：

(4)　JNDIからの情報の取得

データベースに接続するときに，JNDIに登録したDataSourceオブジェクトを取得します。

File Systemサービスプロバイダを使用するJNDIから，DataSourceオブジェクトを取得する例を次に示します。ほかのサービスプロバイダから取得する方法については，JNDIのドキュメントを参照してください。

// システムプロパティを取得する
Properties sys_prop = System.getProperties();

// File Systemサービスプロバイダのプロパティを設定する
sys_prop.put(Context.INITIAL_CONTEXT_FACTORY,
            "com.sun.jndi.fscontext.RefFSContextFactory");

// File Systemサービスプロバイダで使用するディレクトリを設定する
// (この場合，c:¥JNDI_DIRの下に登録されている)
sys_prop.put(Context.PROVIDER_URL, "file:c:"+File.separator + "JNDI_DIR");

// システムプロパティを更新する
System.setProperties(sys_prop);

// JNDIを初期化する
Context ctx = new InitialContext();

//jdbc/TestDataSourceという論理名称のオブジェクトをJNDIから取得する
Object obj = ctx.lookup("jdbc" + File.separator + "TestDataSource");

// 取り出したオブジェクトを，DataSourceクラスの型にキャストする
DataSource ds = (DataSource)obj;
  ：

(5)　データベースへの接続

JNDIに登録したDataSourceオブジェクトを取得後，DataSourceオブジェクトに対し，getConnectionメソッドを呼び出して，データベースへ接続します。

getConnectionメソッドの呼び出し例を次に示します。

DataSource ds

// JNDIからDataSourceオブジェクトを取得する
  ：
// getConnectionメソッドを呼び出す
Connection con = ds.getConnection("USERID","PASSWORD")※

注※

getConnectionメソッドの引数（ユーザID，パスワード）は省略できます。引数を指定した場合は，DataSourceオブジェクトに設定した接続情報よりも優先されます。

必要な接続情報がDataSourceオブジェクトに設定されていない場合，接続情報の内容が不正な場合，データベースとの接続に失敗した場合は，getConnectionメソッドはSQLExceptionをthrowします。

JNDIからDataSourceオブジェクトを取得したあと，接続情報を設定し直すことができます。設定し直す場合は，DataSourceオブジェクトをJDBC2.0拡張機能が提供するDataSourceクラスの型にキャストします。キャストする例を次に示します。

DataSource ds
JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource  dbp_ds;

// JNDIからDataSourceオブジェクトを取得する
  ：
// DataSourceオブジェクトを，JDBC拡張機能が提供する
// DataSourceクラスの型にキャストする
dbp_ds = (JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvDataSource)ds;

// 接続情報を再設定する
  ：

(6)　JDBC2.0拡張機能で提供する機能のトレースを取得するための情報の指定

JDBC2.0拡張機能では，次のトレースを取得できます。トレースの出力内容については，「6.　性能解析トレースを使用したシステムの性能解析」を参照してください。

JDBCインタフェースメソッドトレース

DABrokerとのイベントトレース

(a)　トレースの取得

トレースを取得する場合は，次の項目を設定してください。次の項目が設定されていない場合は，トレースを取得できません。

JdbcDbpsvDataSource，JdbcDbpsvConnectionPoolDataSourceまたはJdbcDbpsvXADataSourceクラスのsetLogWriterメソッドでの有効なログストリームの指定

setJDBC_IF_TRC，setSV_EVENT_TRCおよびsetTRC_NOメソッドで，トレース取得の指定

(b)　トレース取得時の注意事項

setLogWriterメソッドで指定したログストリームは，JNDIには登録されません。トレースの取得は，JNDIからDataSourceオブジェクトを取得するたびに，setLogWriterメソッドで指定してください。

11.6.6　エラー時のJDBCドライバの処理

データベース接続，DABroker，またはJDBCドライバでエラーが発生した場合は，SQLExceptionをthrowします。SQLExceptionオブジェクトのreasonには，次の項目が設定されます。

JDBCドライバのメッセージ

エラーを検知したクラス名称.メソッド名称

DABrokerからのメッセージ※

注※

DABrokerからのメッセージは，存在する場合だけ設定されます。

なお，次のようなエラーの場合は，SQLExceptionをthrowしないで，JDBCインタフェースの仕様で決まっている処理を続行します。

Driver.connectionメソッドでデータベースに接続できない場合

URL指定でnullが返される場合（Cosminexus DABroker Libraryで対象としていないURLが指定された場合など）

11.6.7　データ型の対応

ここでは，JDBCドライバのデータ型について説明します。

JDBCドライバでは，JDBCのデータ型とDABrokerでサポートするデータベースのデータ型をマッピングして処理を実行しています。JDBCのデータ型とDABrokerでサポートするデータ型は完全に一致していません。

なお，Cosminexus DABroker Libraryでサポートする文字型データのコード体系は，ASCII，シフトJIS，EUCJIS，UTF-8，およびChinese Simpleです。

＜この項の構成＞

(1)　JDBCのデータ型とDABrokerでサポートするデータ型の対応

(2)　データ型の注意事項

(1)　JDBCのデータ型とDABrokerでサポートするデータ型の対応

次に，JDBCのデータ型とDABrokerでサポートするデータ型の対応をデータベースごとに示します。

(a)　HiRDBの場合

表11-42　 HiRDBの場合のデータ型の対応

DABrokerでサポートするデータ型 | JDBCのデータ型
INTEGER | INTEGER
SMALLINT | SMALLINT
DECIMAL | DECIMAL
FLOAT, DOUBLE PRECISION | FLOAT
SMALLFLT, REAL | REAL
CHAR | CHAR
VARCHAR | VARCHAR
NCHAR | CHAR
NVARCHAR | VARCHAR
MCHAR | CHAR
MVARCHAR | VARCHAR
DATE | DATE
TIME | TIME
TIMESTAMP | TIMESTAMP
BLOB，BINARY LARGE OBJECT | LONGVARBINARY

(b)　Oracleの場合

表11-43　 Oracleの場合のデータ型の対応

DABrokerでサポートするデータ型 | JDBCのデータ型
VARCHAR2 | VARCHAR
NUMBER | NUMERIC，DECIMAL，BIT，TINYINT，SMALLINT，INTEGER，BIGINT
FLOAT | FLOAT
LONG | LONGVARCHAR
ROWID | CHAR
DATE | DATE，TIME，TIMESTAMP
RAW | VARBINARY
LONG RAW | LONGVARBINARY
CHAR | CHAR
NCHAR※ | CHAR
NVARCHAR2※ | VARCHAR
CLOB※ | CLOB
NCLOB※ | CLOB
BLOB※ | BLOB
BFILE※ | BLOB

注※

接続データベースがOracle9i，またはOracle10gの場合だけ使用できます。

(2)　データ型の注意事項

ここでは，データ型についての注意事項を示します。

データ型のマッピングは，次のメソッドでデータベースに接続する場合は，データ型の変換をJDBCドライバで実行します。次に示すメソッド実行時のデータ型の扱いについては，JDBCの仕様に依存します。

ResultSetクラスのgetXXXメソッド

PreparedStatementクラスのsetXXXメソッド

CallableStatementクラスのsetXXXメソッド

なお，setXXXメソッド実行時は，JDBCドライバでデータを保持し，execute実行時にデータをDABrokerに転送して，通信回数を削減しています。したがって，setXXXで発生するようなエラーがexecuteの実行時に発生する場合もあります。

DABrokerがサポートしていないデータ型に対して接続を要求した場合（Statement.execute発行時など）は，DABrokerからエラーが返ります。その後，Cosminexus DABroker Libraryは，SQLExceptionをthrowします。

11.7　DB Connectorを使用したデータベースとの接続

ここでは，DB Connectorを使用したデータベースとの接続について説明します。

なお，Cosminexus DABroker Libraryで使用するDB Connectorは，JDBC 2.0仕様をサポートしています。

＜この節の構成＞

11.7.1　DB Connectorで接続できるデータベース

11.7.2　DB Connector（RARファイル）の種類

11.7.3　必要なモジュール

11.7.4　データベースにアクセスする場合の構成

11.7.5　DB Connectorのインポート

11.7.6　DB Connectorのプロパティ定義

11.7.7　データベースと接続するときの注意事項

11.7.1　DB Connectorで接続できるデータベース

Cosminexus DABroker Libraryを使用する場合，DB Connectorを使用して接続できるデータベースには，HiRDB，OracleおよびXDM/RD E2があります。

11.7.2　DB Connector（RARファイル）の種類

Cosminexus DABroker Libraryで使用できるDB ConnectorのRARファイルの種類を次の表に示します。これらのRARファイルは，J2EEサーバおよびバッチサーバで使用できます。

表11-44　Cosminexus DABroker Libraryで使用できるDB ConnectorのRARファイルの種類

RARファイル
接続できるデータベース
説明

DBConnector_DABJ_CP.rar
HiRDB
Oracle
XDM/RD E2
トランザクション管理をしない場合，またはローカルトランザクションを使用する場合（トランザクションのサポートレベルにNoTransactionまたはLocalTransactionを指定する場合）に使用します。
Cosminexus DABroker LibraryのConnectionPoolDataSourceを使用してデータベースに接続します。

DBConnector_DABJ_XA.rar※
HiRDB
Oracle
グローバルトランザクションを使用する場合（トランザクションのサポートレベルにXATransactionを指定する場合）に使用します。Cosminexus DABroker LibraryのXADataSourceを使用してデータベースに接続します。

注　新規に，DB ConnectorのRARファイルを使用する場合，アプリケーションサーバで提供するConnector属性ファイルのテンプレートファイルを使用して，プロパティを定義できます。提供しているテンプレートファイルについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「4.1.14　Connector属性ファイルのテンプレートファイル」を参照してください。

注※　ライトトランザクション機能は有効にできません。

RARファイルは，サーバ管理コマンドを使用して操作します。サーバ管理コマンドを使用してRARファイルを操作する方法については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」を参照してください。

RARファイルの種類に応じて，指定できるトランザクションサポートレベルが異なります。また，ライトトランザクションを使用できるかどうかも異なります。

RARファイルごとに指定できるトランザクションサポートレベルを次の表に示します。

表11-45　RARファイルごとに使用できるトランザクションサポートレベル（DB Connector）

使用するDB Connector
（RARファイル）
トランザクションサポートレベル
ライトトランザクション

有効
無効

DBConnector_DABJ_CP.rar
NoTransaction
LocalTransaction
○
○

DBConnector_DABJ_XA.rar
XATransaction
－
○

（凡例）　○：使用できる　　－：該当しない

11.7.3　必要なモジュール

Cosminexus DABroker Libraryを使用してデータベースに接続する場合に必要なモジュールのうち，アプリケーションサーバ以外によって提供されるものを次の表に示します。

表11-46　データベースに接続する場合に必要なモジュール

接続するデータベース | 必要なモジュール
HiRDB | HiRDB Run Time
Oracle | Oracle Client
XDM/RD E2 | HiRDB Run Time

11.7.4　データベースにアクセスする場合の構成

DB Connectorを使用して，サーブレット，JSP，Session Bean，Entity BeanまたはMessage-driven Beanからデータベースにアクセスする場合の構成を次に示します。

HiRDBにアクセスする場合の構成
HiRDBに接続する場合，J2EEサーバと同じマシンに，HiRDB Run Timeが必要となります。HiRDBにアクセスする場合の構成を次の図に示します。

図11-6　リソースアダプタを使用してHiRDBにアクセスする場合の構成

Oracleにアクセスする場合の構成
Oracleに接続する場合，J2EEサーバと同じマシンにOracle Clientが必要となります。Oracleにアクセスする場合の構成を次の図に示します。

図11-7　リソースアダプタを使用してOracleにアクセスする場合の構成

XDM/RD E2にアクセスする場合の構成
XDM/RD E2に接続する場合，J2EEサーバと同じマシンにHiRDB Run Timeが必要となります。XDM/RD E2にアクセスする場合の構成を次の図に示します。

図11-8　リソースアダプタを使用してXDM/RD E2にアクセスする場合の構成（Cosminexus DABroker Libraryを使用するとき）

11.7.5　DB Connectorのインポート

DB Connectorのインポートは，cjimportresコマンドで実行します。インポートするRARファイルは，DBConnector_DABJ_CP.rarまたはDBConnector_DABJ_XA.rarです。

インポート手順については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「4.2.1　DB Connectorのインポート」を参照してください。

11.7.6　DB Connectorのプロパティ定義

DB Connectorのプロパティ定義の手順については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「4.2.2　DB Connectorのプロパティ定義」を参照してください。

ここでは，次のDB Connectorについて，コンフィグレーションプロパティの設定例を示します。

DBConnector_DABJ_CP.rarで，Oracle，HiRDB，またはXDM/RD E2を使用する場合

DBConnector_DABJ_XA.rarで，OracleまたはHiRDBを使用する場合

＜この項の構成＞

(1)　DBConnector_DABJ_CP.rarで，Oracle，HiRDB，またはXDM/RD E2を使用する場合の設定例

(2)　DBConnector_DABJ_XA.rarで，OracleまたはHiRDBを使用する場合の設定例

(3)　ステートメントプーリングの設定についての注意事項

(1)　DBConnector_DABJ_CP.rarで，Oracle，HiRDB，またはXDM/RD E2を使用する場合の設定例

DBConnector_DABJ_CP.rarで，Oracle，HiRDB，またはXDM/RD E2を使用する場合の，コンフィグレーションプロパティの設定例を，次の表に示します。

表11-47　データベースとしてOracle，HiRDB，またはXDM/RD E2を使用する場合のコンフィグレーションプロパティの設定例（DBConnector_DABJ_CP.rarの場合）

項目名 | Oracleの場合の設定例 | HiRDBの場合の設定例 | XDM/RD E2の場合の設定例
networkProtocol | lib | lib | lib
databaseName | ORACLE8I※1 | HIRDB | HIRDB
description | ＜ネット・サービス名＞ | ＜HiRDBポート番号＞※2 | ＜データベースコネクションサーバのサーバスケジュール番号＞※2
DBHostName | － | ＜HiRDBホスト名＞ | ＜XDM/RD E2ホスト名＞
loginTimeout | 0 | 0 | 0
serverName | － | － | －
portNumber | 40179 | 40179 | 40179
DBEnv | － | － | －
encodLang | － | － | －
JDBC_IF_TRC | false | false | false
SV_EVENT_TRC | false | false | false
TRC_NO | 500 | 500 | 500
uapName | － | － | －
bufSize | 64※3 | 64※3 | 64※3
rowSize | 16 | 16 | 16
OSAuthorize | false | false | false
HiRDBCursorMode | false | false | false
blockUpdate | false | false | false
executeDirectMode | false | false | false
SQLWarningIgnore | false | false | false
LONGVARBINARY_Access | REAL | REAL | REAL
bufferPoolSize | 0 | 0 | 0
PreparedStatementPoolSize | 10 | 10 | 10※4
CallableStatementPoolSize | 10 | 10 | 10※4
CancelStatement | true | true | false
ConnectionIDUpdate | false | false | false
logLevel | ERROR | ERROR | ERROR

（凡例）　－：設定は不要

注※1　Cosminexus DABroker Libraryの環境設定で，使用するOracleのバージョンにOracle9iが設定されていれば，Oracle9iに接続できます。また，使用するOracleのバージョンにOracle10gが設定されていれば，Oracle10gに接続できます。

注※2　HiRDBクライアントの環境変数グループ名（Windowsの場合）または環境変数グループの設定ファイルのパス（UNIXの場合）を指定することもできます。

注※3　次のどちらかのタイミングで，「bufSizeに指定した値 × 生成したコネクション数分のメモリ」をJavaヒープ領域に確保します。

・コネクションプールのウォーミングアップ機能使用時

・初回getConnection()発行時

bufSizeに必要以上に大きな値を設定すると，メモリを確保したときにJavaヒープを使い切り，OutOfMemoryErrorが発生するおそれがあります。HiRDBのBLOB型データやBINARY型データへアクセスする場合は，bufSizeに大きな値を指定しないで，HiRDBの位置付け子機能を使用することを検討してください。HiRDBの位置付け子機能については，マニュアル「HiRDB 解説」を参照してください。

注※4　XDM/RD E2 11-02より前のバージョンに接続する場合は，0を設定してください。

(2)　DBConnector_DABJ_XA.rarで，OracleまたはHiRDBを使用する場合の設定例

DBConnector_DABJ_XA.rarで，OracleまたはHiRDBを使用する場合の，コンフィグレーションプロパティの設定例を，次の表に示します。

表11-48　データベースとしてOracleまたはHiRDBを使用する場合のコンフィグレーションプロパティの設定例（DBConnector_DABJ_XA.rarの場合）

項目名
Oracleの場合の設定例
HiRDBの場合の設定例

networkProtocol
lib
lib

databaseName
ORACLE8I※1
HIRDB

description
＜ネット・サービス名＞
＜環境変数グループ識別子＞※2

DBHostName
－
＜HiRDBホスト名＞

XAOpenString
Oracle_XA+DB=＜ネット・サービス名＞+SqlNet=＜ネット・サービス名＞+Acc=P/＜DBのユーザ名※3＞/＜DBのパスワード※4＞+SesTm※5=300+Threads=true

Windowsの場合

＜環境変数グループ識別子※6＞+＜環境変数グループ名※7＞

UNIXの場合

＜環境変数グループ識別子※6＞+＜環境変数グループの設定ファイルのパス※7＞

loginTimeout
0
0

serverName
－
－

portNumber
40179
40179

DBEnv
－
－

encodLang
－
－

JDBC_IF_TRC
false
false

SV_EVENT_TRC
false
false

TRC_NO
500
500

uapName
－
－

bufSize
64※8
64※8

rowSize
16
16

OSAuthorize
false
false

HiRDBCursorMode
false
false

blockUpdate
false
false

executeDirectMode
false
false

SQLWarningIgnore
false
false

LONGVARBINARY_Access
REAL
REAL

bufferPoolSize
0
0

XACloseString
－
－

RMID
1
1※9

XAThreadMode
true
true

XALocalCommitMode
true
true

PreparedStatementPoolSize
10
10

CallableStatementPoolSize
10
10

CancelStatement
true
false

ConnectionIDUpdate
false
false

logLevel
ERROR
ERROR

（凡例）　－：設定は不要

注※1　Cosminexus DABroker Libraryの環境設定で，使用するOracleのバージョンにOracle9iが設定されていれば，Oracle9iに接続できます。また，使用するOracleのバージョンにOracle10gが設定されていれば，Oracle10gに接続できます。

注※2　J2EEサーバ内でユニークな4バイトの文字列を指定します。

注※3　［User］フィールドに入力した値を指定します。

注※4　［Password］フィールドに入力した値を指定します。

注※5　XA Open StringのSesTmに指定する値は，トランザクションタイムアウトの値よりも必ず大きく設定してください。

注※6　［Description］フィールドに入力した値を指定します。

注※7　HiRDBの環境変数グループ名（Windowsの場合）または環境変数グループの設定ファイルのパス（UNIXの場合）を指定します。詳細については，「11.2.3　データベースの設定」を参照してください。

注※8　次のどちらかのタイミングで，「bufSizeに指定した値 × 生成したコネクション数分のメモリ」をJavaヒープ領域に確保します。

・コネクションプールのウォーミングアップ機能使用時

・初回getConnection()発行時

bufSizeに必要以上に大きな値を設定すると，メモリを確保したときにJavaヒープを使い切り，OutOfMemoryErrorが発生するおそれがあります。HiRDBのBLOB型データやBINARY型データへアクセスする場合は，bufSizeに大きな値を指定しないで，HiRDBの位置付け子機能を使用することを検討してください。HiRDBの位置付け子機能については，マニュアル「HiRDB 解説」を参照してください。

注※9　リソースマネジャの識別子を指定します。J2EEサーバ内でユニークな1～2147483647の数値で指定します。

(3)　ステートメントプーリングの設定についての注意事項

Cosminexus DABroker Libraryを使用する場合にステートメントプーリングを設定するときの注意事項について説明します。なお，ステートメントプーリングの機能および設定については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.4　ステートメントプーリング」および「3.14.10　実行環境での設定」を参照してください。

(a)　PreparedStatement，CallableStatementのプールサイズの制限

Cosminexus DABroker Libraryを使用する場合，PreparedStatement，CallableStatementのプールサイズに制限があります。

PreparedStatementPoolSizeとCallableStatementPoolSizeの合計値は，DABrokerの最大ステートメント数以下に設定してください。
合計値が最大ステートメント数を超えた場合には，PreparedStatementPoolSizeとCallableStatementPoolSizeにデフォルト値が使用されます。PreparedStatementPoolSize，CallableStatementPoolSizeは，リソース数が最大値を超えないように設定してください。一つのコネクションで利用できるリソース（Statement，PreparedStatement，CallableStatement，DatabaseMetaDataから取得したResultSet）の総数は，最大値が決められています。リソース数の最大値については，マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」の「14.3　Connectionクラス」を参照してください。
最大値を超えた場合には，ユーザアプリケーションプログラムに例外が通知されます。例外が通知された場合，次のように対処してください。

「PreparedStatementPoolSize」，「CallableStatementPoolSize」の値を小さくする。

ユーザアプリケーションプログラムで，リソースが不要になったらすぐに解放するようにする。

指定できるプールサイズについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)」の「4.1.10　DB Connectorに設定する<config-property>タグに指定できるプロパティ」を参照してください。

(b)　XDM/RD E2に接続する場合のバージョン

XDM/RD E2に接続するする場合は，XDM/RD E2 11-02以降のバージョンとCosminexus DABroker Library 03-13以降を使用する場合にだけステートメントプーリング機能を使用できます。

(c)　Oracleに接続する場合にステートメントプーリング機能とコネクションの障害検知機能を併用するとき

コネクションの障害検知に使用されるPreparedStatementがコネクションごとに一つプーリングされます。そのため，PreparedStatementPoolSize，CallableStatementPoolSizeを決定する際には，コネクションの障害検知用のPreparedStatementもリソース数の見積もりに加えて，CallableStatementPoolSizeを最大ステートメント数未満に設定してください。例えば，Cosminexus DABroker Libraryを使用している場合，PreparedStatementPoolSize=0，CallableStatementPoolSize=＜最大ステートメント数＞と設定して，プーリングされているCallableStatementの数が最大ステートメント数に達したとき，コネクションの障害検知が実行されると，Cosminexus DABroker Libraryの一つのコネクションで利用できるリソース数の最大値を超えるため，例外が発生します。例外が発生すると障害が発生したと判断されるので，そのコネクションはコネクションプールから削除され，同時にステートメントプールも破棄されます。つまり，ステートメントプーリング機能を使用する意味がなくなってしまいます。したがって，コネクションの障害検知機能を使用する場合には，CallableStatementPoolSizeを最大ステートメント数未満に設定してください。

11.7.7　データベースと接続するときの注意事項

ここでは，Cosminexus DABroker Libraryを使用してHiRDBまたはOracleに接続する場合の注意事項を示します。

＜この項の構成＞

(1)　HiRDBと接続する場合の注意事項

(2)　Oracleと接続する場合の注意事項

(1)　HiRDBと接続する場合の注意事項

HiRDBと接続する場合の注意事項については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.6.5　HiRDBと接続する場合の前提条件と注意事項」を参照してください。

(2)　Oracleと接続する場合の注意事項

ここでは，Cosminexus DABroker Libraryを使用してOracleに接続する場合の注意事項について説明します。

(a)　使用できるJ2EEコンポーネント

Cosminexus DABroker Libraryでは，次のコンポーネントを使用できます。

サーブレット／JSP

Stateless Session Bean

Stateful Session Bean

Entity Bean（BMP）

Entity Bean（CMP2.0）

Message-driven Bean

(b)　型マッピング

Cosminexus DABroker Libraryを使用する場合の，Javaの型とOracleのSQL型のマッピングを次の表に示します。

表11-49　Javaの型とOracleのSQL型のマッピング

メソッド | OracleのSQL型
CHAR | VARCHAR2 | NUMBER | DATE | TIMESTAMP | CLOB | LONG | BLOB | RAW | LONGRAW
set/getByte | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getShort | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getInt | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getLong | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getFloat | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getDouble | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getBigDecimal | ○ | ○ | ○ | － | － | － | ○ | － | － | －
set/getBoolean | － | － | － | － | － | － | － | － | － | －
set/getString | ○ | ○ | － | ○ | － | － | ○ | － | － | －
set/getBytes | － | － | － | － | － | － | － | － | ○ | ○
set/getDate | ○ | ○ | － | ○ | － | － | ○ | － | － | －
set/getTime | ○ | ○ | － | ○ | － | － | ○ | － | － | －
set/getTimestamp | ○ | ○ | － | ○ | － | － | ○ | － | － | －
set/getClob | － | － | － | － | － | ○ | － | － | － | －
set/getBlob | － | － | － | － | － | － | － | ○ | － | －
set/getObject | ○ | ○ | ○ | ○ | － | ○ | ○ | ○ | ○ | ○

（凡例）

○：java.sql.PreparedStatement#setXXXおよびjava.sql.ResultSet#getXXXなどでマッピングできる

－：マッピングできない

(c)　日本語文字コード変換のための設定

Cosminexus DABroker Libraryを使用する場合に文字コード変換が実施される場所を次の図に示します。

図11-9　Cosminexus DABroker Libraryを使用する場合に文字コード変換が実施される場所

J2EEサーバ上のJDBCドライバ部分では，JavaVMのコンバータによって，Unicodeからデータベース格納コード，およびデータベース格納コードからUnicodeへの変換が実施されます。

Cosminexus DABroker LibraryのエンコーディングセットとOracleサーバのデータベースキャラクタセットを同じにしておく必要があります。

(d)　データソースの設定

Oracleに対してXA接続でアクセスする場合，データソースの設定では，次の規則でXA Open Stringを指定する必要があります。

指定する文字列は，Oracleのマニュアルに記載されている規則に従って指定してください。キーワードなどの区切り文字が不正な場合は，Oracleライブラリ内でアプリケーションエラーが発生する場合がありますのでご注意ください。

指定する文字列には必ず，「Threads=true」を指定してください。「Threads=true」が指定されていない場合は，Oracleライブラリ内でアプリケーションエラーが発生，またはSQL実行時にエラーが発生することがありますのでご注意ください。

11.8　DB Connector for Cosminexus RMを使用したデータベース上のキューへの接続

Cosminexus RMを使用したメッセージの非同期通信をする場合，DB Connector for Cosminexus RMを使用してデータベース上のキューに接続します。

ここでは，Cosminexus DABroker Libraryを使用する場合のデータベース上のキューとの接続について説明します。

機能の詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.7　データベース上のキューとの接続」を参照してください。また，DB Connector for Cosminexus RMの設定の詳細については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「14.1　リソースアダプタの設定の概要」，およびマニュアル「Cosminexus Reliable Messaging」の「2.7　DB Connector for Cosminexus RMの機能」を参照してください。

＜この節の構成＞

11.8.1　DB Connector for Cosminexus RMで接続できるデータベース

11.8.2　DB Connector for Cosminexus RM（RARファイル）の種類

11.8.3　キューに接続する場合に必要なモジュール

11.8.4　データベースにアクセスする場合の構成

11.8.5　DB Connector for Cosminexus RMのインポートおよびプロパティ定義

11.8.6　データベース上のキューと接続するときの注意事項

11.8.1　DB Connector for Cosminexus RMで接続できるデータベース

Cosminexus DABroker Libraryを使用する場合，DB Connector for Cosminexus RMとCosminexus RMを使用して接続できるデータベースはHiRDBです。

11.8.2　DB Connector for Cosminexus RM（RARファイル）の種類

RARファイルは，サーバ管理コマンドを使用して操作します。サーバ管理コマンドを使用してRARファイルを操作する方法については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」を参照してください。

Cosminexus DABroker Libraryで使用できるDB Connector for Cosminexus RMのRARファイルの種類を次の表に示します。

表11-50　Cosminexus DABroker Libraryで使用できるDB Connector for Cosminexus RMのRARファイルの種類

RARファイル | 接続できるデータベース | 説明
DBConnector_DABJ_CP_Cosminexus_RM.rar | HiRDB | トランザクション管理をしない場合，またはローカルトランザクションを使用する場合（トランザクションのサポートレベルにNoTransactionまたはLocalTransactionを指定する場合）に使用します。
DBConnector_DABJ_XA_Cosminexus_RM.rar※ | HiRDB | グローバルトランザクションを使用する場合（トランザクションのサポートレベルにXATransactionを指定する場合）に使用します。

注※　ライトトランザクション機能は有効にできません。

RARファイルの種類に応じて，指定できるトランザクションサポートレベルが異なります。また，ライトトランザクションを使用できるかどうかも異なります。

RARファイルごとに指定できるトランザクションサポートレベルを次の表に示します。

表11-51　RARファイルごとに使用できるトランザクションサポートレベル（DB Connector for Cosminexus RM）

使用するDB Connector for Cosminexus RM
（RARファイル）
トランザクションサポートレベル
ライトトランザクション

有効
無効

DBConnector_DABJ_CP_Cosminexus_RM.rar
NoTransaction
LocalTransaction
○
○

DBConnector_DABJ_XA_Cosminexus_RM.rar
XATransaction
－
○

（凡例）　○：使用できる　　－：該当しない

11.8.3　キューに接続する場合に必要なモジュール

Cosminexus DABroker Libraryを使用してデータベースのキューに接続する場合に必要なモジュールは，DB Connectorの場合と同じです。「11.7.3　必要なモジュール」を参照してください。

11.8.4　データベースにアクセスする場合の構成

DB Connector for Cosminexus RMを使用して，サーブレット，JSP，Session Bean，Entity BeanまたはMessage-driven Beanからデータベースにアクセスする場合の構成を次に示します。

Cosminexus RMを使用してデータベースにアクセスする場合の構成を次の図に示します。

図11-10　Cosminexus RMを使用してデータベースにアクセスする場合の構成

11.8.5　DB Connector for Cosminexus RMのインポートおよびプロパティ定義

DB Connector for Cosminexus RMのインポートおよびプロパティ定義の手順については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「4.4.1　リソースアダプタのインポート」および「4.4.2　リソースアダプタのプロパティ定義（Connector 1.0の場合）」を参照してください。

11.8.6　データベース上のキューと接続するときの注意事項

DB Connector for Cosminexus RMとCosminexus RMを使用してデータベースに接続する場合の注意事項については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.7.4　接続できるデータベース」を参照してください。

11.9　Cosminexus DABroker Libraryを使用する場合の注意事項

ここでは，Cosminexus DABroker Libraryを使用する場合の注意事項を示します。

＜この節の構成＞

11.9.1　Cosminexus DABroker Libraryを使用する場合に使用できるJ2EEコンポーネントおよび機能についての注意事項

11.9.2　トランザクションリカバリを使用する場合の注意事項

11.9.3　CMPフィールドとデータベースのマッピングの注意事項

11.9.4　複数の構築済み実行環境を切り替える場合の注意事項

11.9.1　Cosminexus DABroker Libraryを使用する場合に使用できるJ2EEコンポーネントおよび機能についての注意事項

ここでは，データベース接続で使用できる機能について説明します。

データベース接続で使用できるJ2EEコンポーネントおよび機能を，データベースごとに次の表に示します。

表11-52　使用できるJ2EEコンポーネントおよび機能

項目 | HiRDB | Oracle | XDM/RD E2
Oracle9i | Oracle10g
J2EEコンポーネント | Servlet/JSP | ○ | ○ | ○ | ○
Stateless Session Bean | ○ | ○ | ○ | ○
Stateful Session Bean | ○ | ○ | ○ | ○
Entity Bean（BMP） | ○ | ○ | ○ | ×
Entity Bean（CMP1.1） | ○ | ○ | × | ×
Entity Bean（CMP2.0） | ○※1 | ○ | × | ×
Message-driven Bean（onMessageメソッドからのデータベースアクセス） | ○ | ○ | ○ | ○
使用できる機能 | コネクションプーリング | ○ | ○ | ○ | ○
コネクションプールのウォーミングアップ | ○ | ○ | ○ | ○
コネクションプールの情報表示（cjlistpoolコマンド） | ○ | ○ | ○ | ○
コネクションプールのクリア（cjclearpoolコマンド） | ○ | ○ | ○ | ○
リソースへの接続テスト | ○ | ○ | ○ | ○
コネクションの障害検知 | ○※2 | ○ | ○ | ○
ステートメントプーリング | ○※3 | ○ | ○ | ○※3，※4
ステートメントキャンセル | ○※5 | △※6 | △※6 | ○※7
ステートメントsetQueryTimeoutメソッド | × | × | × | ×
コネクションIDのPRFトレース出力 | ○ | ○ | ○ | ○※7
障害調査用SQLの出力 | ○ | ○ | ○ | ○
コネクションプールのクラスタ化 | × | × | × | ×

（凡例）○：使用できる　　×：使用できない　　△：一部制限あり

注※1　CMP2.0の機能である，CMR機能は利用できません。

注※2　Cosminexus DABroker Libraryを使用して接続する場合，HiRDBのバージョンが07-01以前でグローバルトランザクション（XATransaction）のときは使用できません。

注※3　HiRDB自動再接続機能とステートメントプーリング機能の併用はできません。

注※4　XDM/RD E2 11-02以降のバージョンとCosminexus DABroker Library 03-13以降を使用する場合にだけステートメントプーリングを使用できます。

注※5　グローバルトランザクション（XATransaction）のときは使用できません。

注※6　データベースのサーバまたはクライアントがWindowsで，接続形式が専用接続であるときは，使用できません。

注※7　ステートメントキャンセル，およびコネクションIDのPRFトレース出力は，DABroker経由の場合，XDM/RD E2 11-02以降で使用できます。

11.9.2　トランザクションリカバリを使用する場合の注意事項

Oracleでリカバリをする場合で，JDBCドライバにCosminexus DABroker Libraryを使用するときは，ユーザに次の権限が必要です。

SYS.DBA_PENDING_TRANSACTIONSへのSELECT権限

FORCE_ANY_TRANSACTION権限

11.9.3　CMPフィールドとデータベースのマッピングの注意事項

CMPフィールドとデータベースのマッピングは，データベースの種類ごとに異なります。詳細は，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「2.4.2　CMPフィールドとデータベースのマッピング」を参照してください。ここでは，Cosminexus DABroker Libraryの場合の注意事項について説明します。

＜この項の構成＞

(1)　HiRDBの場合のマッピング

(2)　Oracleの場合のマッピング一覧

(1)　HiRDBの場合のマッピング

次の表に示すデータ型で扱えるデータサイズの上限はJDBCドライバの上限に依存します。

表11-53　CMPでのフィールドとデータベースのマッピング（HiRDB使用時）

Javaデータ型 | JDBCデータ型 | SQLデータ型
byte[] | LONGVARBINARY | BLOB
Serializableな型 | LONGVARBINARY | BLOB

[HiRDB BLOB最大値]は2147483647バイトです。ただし，Cosminexus DABroker Libraryを使用する場合，DABHIRDBA_BLOBBUFSIZE（HiRDBのBLOB型データ受取バッファサイズ）指定値を超過したデータは切り捨てられます。

(2)　Oracleの場合のマッピング一覧

次の表に示すデータ型で扱えるデータサイズの上限はJDBCドライバの上限に依存します。

表11-54　CMPでのフィールドとデータベースのマッピング（Oracle使用時）

Javaデータ型 | JDBCデータ型 | SQLデータ型
byte[] | LONGVARBINARY | LONG RAW
Serializableな型 | LONGVARBINARY | LONG RAW

[Oracle LONG RAW最大値]は，2ギガバイトです。ただし，扱えるデータサイズの上限はJDBCドライバの上限に依存します。Cosminexus DABroker Libraryを使用する場合：DABORADBA_LONGBUFSIZE（ORACLEのLONG型データ受取バッファサイズ）指定値を超過したデータは切り捨てられます。

11.9.4　複数の構築済み実行環境を切り替える場合の注意事項

複数の構築済み実行環境を切り替える場合のCosminexus DABroker Libraryのファイルの扱いについての注意事項を説明します。

＜この項の構成＞

(1)　退避環境作成時に退避対象となるファイル

(2)　退避作業が不要なファイル

(1)　退避環境作成時に退避対象となるファイル

退避環境作成時に退避対象となるCosminexus DABroker Libraryの製品ファイルを次に示します。

/opt/Cosminexus/DABJ以下すべて

/opt/DABroker/.HTC_2340.inf

/opt/DABroker/.dabrokerenv

<DABroker運用ディレクトリ>※/bin以下すべて

<DABroker運用ディレクトリ>※/lib以下すべて

<DABroker運用ディレクトリ>※/msg以下すべて

<DABroker運用ディレクトリ>※/obj以下すべて

<DABroker運用ディレクトリ>※/sample以下すべて

<DABroker運用ディレクトリ>※/conf以下すべて

<DABroker運用ディレクトリ>※/cpp以下すべて

注※

<DABroker運用ディレクトリ>のデフォルトは，<Cosminexus DABroker Libraryのインストールディレクトリ>です。<DABroker運用ディレクトリ>にデフォルト以外を指定している場合も退避対象となります。

Cosminexus DABroker Library以外のファイルについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「11.5.2　退避環境作成時に退避対象となるファイル」を参照してください。

(2)　退避作業が不要なファイル

次の表に示すファイルは，退避対象外ですが，退避作業は必須ではありません。これらのファイルは，アプリケーションサーバの動作に影響はありません。必要に応じて退避してください。なお，退避作業が不要なファイルの場合，実行環境の回復時に退避したファイルを戻す作業は不要です。

表11-55　退避作業が不要なファイル

項番 | ファイルまたはディレクトリ名 | 説明 | 構成ソフトウェア
1 | <DABroker運用ディレクトリ>※/AGT | エージェント処理用ディレクトリ | Cosminexus DABroker Library
2 | <DABroker運用ディレクトリ>※/AGTGRP | グループ管理用ディレクトリ | Cosminexus DABroker Library
3 | <DABroker運用ディレクトリ>※/spool以下すべて | トレースファイル，ログファイルの格納用ディレクトリ | Cosminexus DABroker Library

注※

<DABroker運用ディレクトリ>のデフォルトは，<Cosminexus DABroker Libraryのインストールディレクトリ>です。<DABroker運用ディレクトリ>にデフォルト以外を指定している場合も退避対象外です。

Cosminexus DABroker Library以外のファイルについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 拡張編」の「11.4.1　退避対象外のファイルの退避」を参照してください。

12.　旧バージョンのアプリケーションサーバからの移行

この章では，旧バージョンのアプリケーションサーバから移行する場合の方法について説明します。

＜この章の構成＞

12.1　J2EEサーバモードの場合の移行

12.2　サーブレットエンジンモードの場合の移行

12.1　J2EEサーバモードの場合の移行

旧バージョンからアプリケーションサーバ 08-70への移行方法について説明します。移行の対象となる旧バージョンを次に示します。

アプリケーションサーバ 06-00

アプリケーションサーバ 06-02（Windowsだけのバージョン）

アプリケーションサーバ 06-50

アプリケーションサーバ 06-51

アプリケーションサーバ 06-70

アプリケーションサーバ 06-71

アプリケーションサーバ 07-00

アプリケーションサーバ 07-10

アプリケーションサーバ 07-50

アプリケーションサーバ 07-60

アプリケーションサーバ 08-00

アプリケーションサーバ 08-50

アプリケーションサーバ 08-53

なお，このマニュアルでは，次に示す構成ソフトウェアの移行を中心に説明します。

Cosminexus Performance Tracer

Cosminexus Component Container

Cosminexus Component Transaction Monitor

Cosminexus Component Container - Client

旧バージョンからの移行を行う場合，使用しているアプリケーションサーバの全構成ソフトウェアを同時に移行する必要があります。上記で示していないほかの構成ソフトウェア（以降，他構成ソフトウェアと呼びます）の移行については，各構成ソフトウェアのドキュメントを参照してください。

＜この節の構成＞

12.1.1　アプリケーションサーバの移行の概要

12.1.2　アプリケーションサーバの移行の手順

12.1.3　旧バージョンからの仕様変更の確認

12.1.4　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

12.1.5　移行前の確認

12.1.6　定義などのバックアップ

12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行

12.1.8　リソースアダプタの移行コマンドの実行

12.1.9　Management Serverの移行コマンドの実行

12.1.10　手動による定義などの修正

12.1.11　移行コマンドで作成されたバックアップの削除

12.1.12　J2EEサーバまたはバッチサーバの移行コマンドで自動的に追加／変更される定義

12.1.13　メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ

12.1.1　アプリケーションサーバの移行の概要

アプリケーションサーバの移行の概要について説明します。

＜この項の構成＞

(1)　移行のためのアップグレードインストール

(2)　移行時のJ2EEサーバの動作モード

(3)　移行時に引き継がれる情報

(4)　移行時のJ2EEアプリケーションの動作

(1)　移行のためのアップグレードインストール

旧バージョンからアプリケーションサーバ 08-70へ移行するためには，アップグレードインストールを行います。アップグレードインストールとは，インストール先のマシンに旧バージョンのアプリケーションサーバがインストール済みの場合のインストールです。

なお，アップグレードインストールの場合は，アプリケーションサーバのインストールディレクトリを旧バージョンのインストールディレクトリから変更できません。旧バージョンがインストールされているディレクトリに上書きインストールされます。

(2)　移行時のJ2EEサーバの動作モード

旧バージョンからアプリケーションサーバ 08-70へ移行する場合の，J2EEサーバの動作モードの対応を次の表に示します。

表12-1　移行時のJ2EEサーバの動作モードの対応

移行前の旧バージョンでのJ2EEサーバの動作モード
移行後のJ2EEサーバの動作モード

アドバンスドモード
スタンダードモード
1.4モード

ベーシックモード
ベーシックモード

なお，ベーシックモードは，互換用のサーバの動作モードであり，1.4モードに比べて，使用できる機能に制限があります。J2EEサーバの動作モードとしては，1.4モードを使用することをお勧めします。

(3)　移行時に引き継がれる情報

アプリケーションサーバを旧バージョンから08-70に移行する場合，旧バージョンで使用されていた，<Cosminexusのインストールディレクトリ>以下に配置される定義情報，DD情報，構成情報などのユーザ資産は，移行コマンドなどで必要に応じて自動変換され，08-70で引き続き使用されます（一部，手動での定義修正が必要な場合もあります）。また，移行コマンドを実行すると，移行元バージョンから移行先バージョン間のすべてのバージョンごとに移行処理が実施されます。例えば，08-00から08-70へ移行する場合，08-00から08-50への移行，08-50から08-53への移行，08-53から08-70への移行というように処理が実施されます。

Cosminexus Component Containerで引き継がれる定義情報，DD情報，構成情報などを次の表に示します。他構成ソフトウェアについては，それぞれのドキュメントを参照してください。

表12-2　Cosminexus Component Containerで移行時に引き継がれる情報

機能
引き継がれる情報
ファイル名称，または格納場所

J2EEサーバ
オプション定義ファイル
usrconf.cfg

ユーザプロパティファイル
usrconf.properties

セキュリティポリシーファイル
server.policy

Webアプリケーションプロパティファイル
hitachi_web.properties

作業ディレクトリ

定義情報

アプリケーション

DD情報

ユーザ・パスワード情報

オプション定義ファイルで指定されているejb.public.directoryの値。デフォルトは，次のとおり。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public以下

UNIXの場合
/opt/Cosminexus/CC/server/public以下

バッチサーバ
オプション定義ファイル
usrconf.cfg

ユーザプロパティファイル
usrconf.properties

セキュリティポリシーファイル
server.policy

作業ディレクトリ

定義情報

DD情報

ユーザ・パスワード情報

オプション定義ファイルで指定されているejb.public.directoryの値。デフォルトは，次のとおり。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥public以下

UNIXの場合
/opt/Cosminexus/CC/server/public以下

サーバ管理コマンド
オプション定義ファイル

Windowsの場合
usrconf.bat

UNIXの場合
usrconf

ユーザプロパティファイル
usrconf.properties

Webサーバ連携
Hitachi Webサーバ用リダイレクタ動作定義ファイル
mod_jk.conf

Microsoft IIS用リダイレクタ動作定義ファイル（Windowsだけのファイル）
isapi_redirect.conf※

Microsoft IIS用マッピング定義ファイル（Windowsだけのファイル）
uriworkermap.properties

ワーカ定義ファイル
workers.properties

Management Server
運用管理エージェントプロパティファイル
adminagent.properties

運用管理エージェント設定ファイル
adminagent.xml
別のファイル名称でバックアップされたあと，新規のファイルで上書きされます。
Management Serverの「論理サーバの起動／停止」で使用する環境変数を指定する機能を利用している場合，手動による定義修正が必要となります。

運用監視エージェント設定ファイル
mngagent.<実サーバ名>.properties

Management Server環境設定ファイル
mserver.properties

mngsvrutilコマンドのサーバ側定義ファイル
mngsvrutil.properties

構成情報定義

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config以下

UNIXの場合
/opt/Cosminexus/manager/config以下

Managementアクション実行用プロパティファイル
maction.properties

Management Server用メッセージマッピングファイル
mserver.jp1event.system.mapping.properties

J2EEサーバ共通用メッセージマッピングファイル
manager.jp1event.system.mapping.properties

J2EEサーバ個別用メッセージマッピングファイル
manager.<論理サーバ名>.jp1event.system.mapping.properties

J2EEアプリケーションの登録ディレクトリのデフォルトパス

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥apps以下

UNIXの場合
/opt/Cosminexus/manager/apps以下

統合ユーザ管理
JAASのコンフィグレーションファイル
jaas.conf

統合ユーザ管理のコンフィグレーションファイル
ua.conf

カスタムログインモジュール格納用ディレクトリ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥modules

UNIXの場合
/opt/Cosminexus/manager/modules

Smart Composer機能
サーバ設定プロパティファイル
cmxserver.properties

負荷分散機定義プロパティファイル
lb.properties

注※　Windows Server 2003の場合で，06-02以前のバージョンからアップグレードインストールしたときは，既存のMicrosoft IIS用リダイレクタ動作定義ファイルはisapi_redirect.conf.backという名称でバックアップされます。

(4)　移行時のJ2EEアプリケーションの動作

アプリケーションサーバをアップグレードインストールする場合，または旧バージョンのJ2EEアプリケーションをインポートする場合には，次に示す処理で，自動的にJ2EEアプリケーションに含まれるEJBの再デプロイが実行されます。

開始状態のJ2EEアプリケーションが存在する状態でアプリケーションサーバをアップグレードインストールしたあとの初回J2EEサーバ起動時

停止状態のJ2EEアプリケーションが存在する状態でアプリケーションサーバをアップグレードインストールしたあとの初回J2EEアプリケーション開始時

旧バージョンのアプリケーションサーバでエクスポートした実行時情報を含む，開始状態のJ2EEアプリケーションのインポート時

旧バージョンのアプリケーションサーバでエクスポートした実行時情報を含む，停止状態のJ2EEアプリケーションをインポートしたあとの初回J2EEアプリケーション開始時

J2EEアプリケーションにEJBが含まれている場合は，旧バージョンのアプリケーションサーバで同一の処理を実行したときと比べて性能が悪くなります。

12.1.2　アプリケーションサーバの移行の手順

次の手順に従って，旧バージョンからアプリケーションサーバ 08-70へ移行してください。

旧バージョンからの仕様変更の確認

J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

移行前の確認

定義などのバックアップ

他構成ソフトウェアの移行準備

全構成ソフトウェアのアップグレードインストール

J2EEサーバまたはバッチサーバの移行コマンドの実行

リソースアダプタの移行コマンドの実行

Management Serverの移行コマンドの実行

手動による定義などの修正

他構成ソフトウェアの移行実施

移行後の確認

移行コマンドで作成されたバックアップ削除

このほか，メモリセッションフェイルオーバ機能を使用している場合，Management Serverを使用しているシステムでは，手動でSFOサーバを移行する必要があります。詳細については，「12.1.10　手動による定義などの修正」を参照してください。なお，Management Serverを使用していないシステムでは，J2EEサーバの移行前に，SFOサーバの移行が必要です。SFOサーバの移行手順については，「12.1.13　メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ」を参照してください。

＜この項の構成＞

(1)　旧バージョンからの仕様変更の確認

(2)　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

(3)　移行前の確認

(4)　定義などのバックアップ

(5)　他構成ソフトウェアの移行準備

(6)　全構成ソフトウェアのアップグレードインストール

(7)　J2EEサーバまたはバッチサーバの移行コマンドの実行

(8)　リソースアダプタの移行コマンドの実行

(9)　Management Serverの移行コマンドの実行

(10)　手動による定義などの修正

(11)　他構成ソフトウェアの移行実施

(12)　移行後の確認

(13)　移行コマンドで作成されたバックアップ削除

(1)　旧バージョンからの仕様変更の確認

旧バージョンからの仕様変更を確認します。機能の変更や追加に伴い，旧バージョンで使用している機能，使用条件，使用方法によっては，次の作業が必要となります。

操作手順の変更

運用手順の変更

アプリケーション，およびDDの変更

なお，互換性を保つためのオプションが提供されている場合もありますが，推奨のオプションではありません。詳細については，「12.1.3　旧バージョンからの仕様変更の確認」を参照してください。

(2)　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

移行のために十分なディスク容量があるかを確認します。詳細については，「12.1.4　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認」を参照してください。

(3)　移行前の確認

移行前にアプリケーションサーバの動作環境，動作状態などを確認します。詳細については，「12.1.5　移行前の確認」を参照してください。

(4)　定義などのバックアップ

移行前に定義ファイルなどをバックアップします。詳細については，「12.1.6　定義などのバックアップ」を参照してください。

(5)　他構成ソフトウェアの移行準備

次に示す構成ソフトウェア以外の，他構成ソフトウェアの移行を準備します。

Cosminexus Performance Tracer

Cosminexus Component Container

Cosminexus Manager

Cosminexus Component Transaction Monitor

移行の準備の詳細はそれぞれの他構成ソフトウェアのドキュメントを参照してください。なお，ここで準備した情報を基に，「(11)　他構成ソフトウェアの移行実施」で他構成ソフトウェアを移行してください。

(6)　全構成ソフトウェアのアップグレードインストール

使用しているアプリケーションサーバの全構成ソフトウェアをアップグレードインストールします。ただし，アプリケーションサーバ Version 6から移行する場合で，UNIX環境に次の構成ソフトウェアがインストールされているときは，これらの構成ソフトウェアを必ずアンインストールしてから，アップグレードインストールを実施してください。

Cosminexus Component Library

Cosminexus Manager

Cosminexus Web Services - Base

なお，インストール方法，インストール時の注意事項，およびアップグレードインストールの注意については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.　インストールと初期設定」を参照してください。

(7)　J2EEサーバまたはバッチサーバの移行コマンドの実行

定義情報，DD情報などを継続して利用できるようにするため，J2EEサーバまたはバッチサーバの移行コマンド（cjenvupdate）を実行します。詳細については，「12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行」を参照してください。

(8)　リソースアダプタの移行コマンドの実行

旧バージョンでDB Connectorを使用していた場合，またはほかのリソースアダプタをアップグレードインストールする場合，DB Connectorやほかのリソースアダプタを入れ替えるためには，リソースアダプタの移行コマンド（cjrarupdate）を実行します。詳細については，「12.1.8　リソースアダプタの移行コマンドの実行」を参照してください。

(9)　Management Serverの移行コマンドの実行

旧バージョンでManagement Serverを使用していた場合，J2EEサーバの移行に合わせてManagement Serverの構成情報も移行するためには，Management Serverの移行コマンド（mngsvrupdate）を実行します。詳細については，「12.1.9　Management Serverの移行コマンドの実行」を参照してください。

(10)　手動による定義などの修正

手動で定義などを修正します。機能の変更，追加に伴い，互換性を保つためのオプションが提供されています。旧バージョンで使用している機能，使用方法，使用条件によっては，次の作業が必要となります。

ユーザプロパティファイルなどの定義ファイルの変更

Javaのユーザクラスパスの変更

環境変数の変更

詳細については，「12.1.10　手動による定義などの修正」を参照してください。

(11)　他構成ソフトウェアの移行実施

他構成ソフトウェアを移行します。移行の詳細はそれぞれの他構成ソフトウェアのドキュメントを参照してください。なお，「(5)　他構成ソフトウェアの移行準備」で準備した情報を基に移行を実施してください。

(12)　移行後の確認

移行後にアプリケーションサーバの動作確認を実施します。

(13)　移行コマンドで作成されたバックアップ削除

移行コマンドでは，各種バックアップを作成します。移行後の確認が完了したあと，バックアップを削除してください。詳細については，「12.1.11　移行コマンドで作成されたバックアップの削除」を参照してください。

12.1.3　旧バージョンからの仕様変更の確認

旧バージョンからの仕様変更について説明します。

アプリケーションサーバ Version 6からの仕様変更
アプリケーションサーバ Version 6からの仕様変更を次の表に示します。

表12-3　アプリケーションサーバ Version 6からの仕様変更

分類
仕様変更の項目
06-71/
06-70
06-51/
06-50
06-02/
06-00

全体
(1)　J2SEのバージョン
○
○
○

(2)　TPBrokerの運用支援機能の非サポート
○
○
○

Management
Server
(3)　snapshotログの収集タイミング
－
－
○

(4)　運用管理エージェント停止時の動作
－
－
○

(5)　Management Server用のネーミングサービスの設定変更
○
○
○

(6)　旧バージョン互換用のWebサーバの扱い
○
○
○

J2EEサーバ
(7)　動作モードの変更
○
○
○

(8)　JavaVMのタイプ
－
－
○

(9)　Management Serverとの連携
○
○
○

(10)　JSPから生成されたサーブレット用コンパイラのバージョン
○
○
○

(11)　デフォルトのエラーページの内容
－
○
○

(12)　Enterprise Beanの命名規則
○
○
○

(13)　コネクションの共有機能の有効範囲
－
－
○

(14)　コネクションアソシエーションの有効化方法
－
－
○

(15)　コネクションスイーパの動作オプションの設定方法
－
－
○

(16)　コネクションプールのウォーミングアップ機能の設定方法
○
○
○

(17)　コネクションの障害検知，ネットワーク障害のタイムアウトの設定方法
○
○
○

(18)　コネクションの自動クローズのプロパティのデフォルト値
○
○
○

(19)　リソースアダプタのログのサイズと面数
○
○
○

(20)　リソースアダプタのプロパティのデフォルト値
○
○
○

(21)　ログ出力ディレクトリの構成変更
○
○
○

(22)　1.4モードのデータソース廃止
－
－
○

(23)　Naming Manager機能の削除
○
○
○

(24)　カスタムタグのスクリプト変数定義の変更
○
○
○

(25)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更
○
○
○

(26)　タグの属性値のExpressionチェックの変更
○
○
○

(27)　タグの属性値に指定するExpressionに関する変更
○
○
○

(28)　taglibディレクティブのprefix属性に関する変更
○
○
○

(29)　JSPでの$の扱いの変更
○
○
○

(30)　WebコンテナがサポートするServlet仕様のバージョン
○
○
○

(31)　Cosminexus RM連携用のリソースアダプタのプロパティへの，CancelStatementプロパティの追加
○
○
－

(32)　リソース枯渇機能でのメモリ枯渇監視情報の計算式の変更
○
○
－

(33)　サーブレットのデフォルトマッピングのデフォルトでの無効化
○
○
○

(34)　javax.servlet.GenericServletクラスでスローされる例外の変更
○
○
○

(35)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更
○
○
○

(36)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力
○
○
○

(37)　javax.servlet.jsp.tagext.TagInfoクラスの定数の値の変更
○
○
○

(38)　JSPのAPIでクラスのメソッドが総称を使用した定義へ変更
○
○
○

(39)　javax.servlet.jsp.elパッケージのクラスの非推奨への変更
○
○
○

(40)　ライブラリJAR内のTLDファイルの検索
○
○
○

(41)　半角英数字以外の文字が含まれている表示名のインポート時の動作変更
○
○
○

(42)　明示管理ヒープ機能によるメモリ使用量の増加とオブジェクトの最大年齢の制限
○
○
○

(43)　HTTPセッションの無効化によるHTTP Cookie情報に対する動作変更
○
○
○

(44)　-XX:SurvivorRatioのデフォルト値の変更
○
○
○

(45)　SOAPアプリケーション開発支援機能／SOAP通信基盤のクラスパス
○
－
－

(73)　JSPから生成されたサーブレット用コンパイラのバージョン
○
○
○

(74)　明示管理ヒープ機能での自動解放機能の追加
○
○
○

(75)　POSTリクエストのフォームデータの最大サイズの制限
○
○
○

サーバ管理コマンド
(55)　サーバ管理コマンドの同時実行制御
－
－
○

(56)　J2EEサーバとの通信の時間監視
－
－
○

(57)　リデプロイ機能で実施するJ2EEアプリケーション属性の引き継ぎの動作
－
○
－

(58)　ログファイルの出力方法の変更
○
○
○

(59)　属性ファイルの<icon>タグの変更
○
○
○

(60)　サーバマネジャ，ユーザマネジャの削除
○
○
○

(61)　属性ファイルのxml:lang属性の出力
○
○
○

(62)　Connector属性ファイルでのユーザIDおよびパスワードの非表示
○
○
○

(63)　メール属性ファイルの<reply-to>タグの削除
○
○
○

(64)　Connector属性ファイルでのXA_OPEN文字列の非表示
○
○
○

(65)　Connector属性ファイルの構造変更
○
○
○

(66)　属性ファイル中に指定されたメソッドのチェック
○
○
○

(67)　Connector属性ファイルの<config-property>タグに指定できるプロパティの並び順の変更
○
○
○

(68)　MessageDrivenBean属性ファイルでの指定必須要素の省略
○
○
－

EJBクライアント
(70)　RMI-IIOPスタブおよびRMI-IIOPインタフェースの取得方法
－
－
○

(71)　cjclstartapコマンドの仕様変更
○
－
－

(72)　ネーミングサービスの障害検知機能による閉塞のタイミングの変更
○
○
○

（凡例）　○：仕様変更あり　－：該当しない

アプリケーションサーバ Version 7からの仕様変更
アプリケーションサーバ Version 7からの仕様変更を次の表に示します。

表12-4　アプリケーションサーバ Version 7からの仕様変更

分類 | 仕様変更の項目 | 07-60 | 07-50 | 07-10 | 07-00
J2EEサーバ | (30)　WebコンテナがサポートするServlet仕様のバージョン | ○ | ○ | ○ | ○
(31)　Cosminexus RM連携用のリソースアダプタのプロパティへの，CancelStatementプロパティの追加 | － | － | ○ | ○
(32)　リソース枯渇機能でのメモリ枯渇監視情報の計算式の変更 | － | ○ | ○ | ○
(33)　サーブレットのデフォルトマッピングのデフォルトでの無効化 | ○ | ○ | ○ | ○
(34)　javax.servlet.GenericServletクラスでスローされる例外の変更 | ○ | ○ | ○ | ○
(35)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更 | ○ | ○ | ○ | ○
(36)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力 | ○ | ○ | ○ | ○
(37)　javax.servlet.jsp.tagext.TagInfoクラスの定数の値の変更 | ○ | ○ | ○ | ○
(38)　JSPのAPIでクラスのメソッドが総称を使用した定義へ変更 | ○ | ○ | ○ | ○
(39)　javax.servlet.jsp.elパッケージのクラスの非推奨への変更 | ○ | ○ | ○ | ○
(40)　ライブラリJAR内のTLDファイルの検索 | ○ | ○ | ○ | ○
(41)　半角英数字以外の文字が含まれている表示名のインポート時の動作変更 | ○ | ○ | ○ | ○
(42)　明示管理ヒープ機能によるメモリ使用量の増加とオブジェクトの最大年齢の制限 | ○ | ○ | ○ | ○
(43)　HTTPセッションの無効化によるHTTP Cookie情報に対する動作変更 | ○ | ○ | ○ | ○
(44)　-XX:SurvivorRatioのデフォルト値の変更 | ○ | ○ | ○ | ○
(45)　SOAPアプリケーション開発支援機能／SOAP通信基盤のクラスパス | ○ | ○ | ○ | ○
(46)　インターセプタに関連するクラスのパッケージの変更 | － | － | － | ○
(47)　インターセプタに関連するInvocationContextの変更 | － | － | － | ○
(48)　アノテーションの指定方法の変更 | － | － | － | ○
(49)　Session Bean属性ファイルおよびEJB-JAR属性ファイルの変更 | － | － | － | ○
(50)　リロード機能適用範囲を指定するプロパティ値の変更 | － | － | － | ○
(51)　異なるJ2EEアプリケーションに含まれるリソースアダプタでの別名の重複指定 | － | ○ | － | －
(52)　cjjspcコマンドでのクラスパスに指定したJARファイル内のタグライブラリの使用 | ○ | ○ | ○ | ○
(53)　アノテーション情報取得処理でのクラスロードの例外発生時の動作変更 | ○ | ○ | ○ | ○
(73)　JSPから生成されたサーブレット用コンパイラのバージョン | ○ | ○ | ○ | ○
(74)　明示管理ヒープ機能での自動解放機能の追加 | ○ | ○ | ○ | ○
(75)　POSTリクエストのフォームデータの最大サイズの制限 | ○ | ○ | ○ | ○
バッチサーバ | (54)　バッチサーバでのejbserver.ctm.enabledパラメタの扱い | ○ | － | － | －
サーバ管理コマンド | (61)　属性ファイルのxml:lang属性の出力 | － | － | ○ | ○
(62)　Connector属性ファイルでのユーザIDおよびパスワードの非表示 | － | － | － | ○
(63)　メール属性ファイルの<reply-to>タグの削除 | － | － | － | ○
(64)　Connector属性ファイルでのXA_OPEN文字列の非表示 | － | － | ○ | ○
(65)　Connector属性ファイルの構造変更 | － | － | ○ | ○
(66)　属性ファイル中に指定されたメソッドのチェック | － | － | ○ | ○
(67)　Connector属性ファイルの<config-property>タグに指定できるプロパティの並び順の変更 | － | － | ○ | ○
(68)　MessageDrivenBean属性ファイルでの指定必須要素の省略 | － | ○ | ○ | ○
(69)　EJB-JAR属性ファイルの<interceptor-class>タグの出現パターンの変更 | － | － | － | ○
EJBクライアント | (71)　cjclstartapコマンドの仕様変更 | － | － | － | ○
(72)　ネーミングサービスの障害検知機能による閉塞のタイミングの変更 | ○ | ○ | ○ | ○

（凡例）　○：仕様変更あり　－：該当しない

アプリケーションサーバ Version 8からの仕様変更
アプリケーションサーバ Version 8からの仕様変更を次の表に示します。

表12-5　アプリケーションサーバ Version 8からの仕様変更

分類 | 仕様変更の項目 | 08-53 | 08-50 | 08-00
J2EEサーバ | (73)　JSPから生成されたサーブレット用コンパイラのバージョン | － | ○ | ○
(74)　明示管理ヒープ機能での自動解放機能の追加 | － | ○ | ○
(75)　POSTリクエストのフォームデータの最大サイズの制限 | － | ○ | ○
(76)TP1インバウンド連携機能でのコネクション保持のサポートと，最大同時接続数のデフォルト値，使用するスレッド数，ファイルディスクリプタ数，ポート番号の変更 | － | ○ | －
(77)　javax.servlet.http.HttpServletRequestインタフェースのgetSessionメソッドでスローされる例外の変更 | ○ | ○ | ○
(78)　データベースセッションフェイルオーバ機能での完全性保障モードの変更 | ○ | ○ | ○

（凡例）　○：仕様変更あり　－：該当しない

次に仕様変更の項目の詳細について説明します。なお，表の「仕様変更の項目」の項番は，説明の項番と対応しています。

＜この項の構成＞

(1)　J2SEのバージョン

(2)　TPBrokerの運用支援機能の非サポート

(3)　snapshotログの収集タイミング

(4)　運用管理エージェント停止時の動作

(5)　Management Server用のネーミングサービスの設定変更

(6)　旧バージョン互換用のWebサーバの扱い

(7)　動作モードの変更

(8)　JavaVMのタイプ

(9)　Management Serverとの連携

(10)　JSPから生成されたサーブレット用コンパイラのバージョン

(11)　デフォルトのエラーページの内容

(12)　Enterprise Beanの命名規則

(13)　コネクションの共有機能の有効範囲

(14)　コネクションアソシエーションの有効化方法

(15)　コネクションスイーパの動作オプションの設定方法

(16)　コネクションプールのウォーミングアップ機能の設定方法

(17)　コネクションの障害検知，ネットワーク障害のタイムアウトの設定方法

(18)　コネクションの自動クローズのプロパティのデフォルト値

(19)　リソースアダプタのログのサイズと面数

(20)　リソースアダプタのプロパティのデフォルト値

(21)　ログ出力ディレクトリの構成変更

(22)　1.4モードのデータソース廃止

(23)　Naming Manager機能の削除

(24)　カスタムタグのスクリプト変数定義の変更

(25)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更

(26)　タグの属性値のExpressionチェックの変更

(27)　タグの属性値に指定するExpressionに関する変更

(28)　taglibディレクティブのprefix属性に関する変更

(29)　JSPでの$の扱いの変更

(30)　WebコンテナがサポートするServlet仕様のバージョン

(31)　Cosminexus RM連携用のリソースアダプタのプロパティへの，CancelStatementプロパティの追加

(32)　リソース枯渇機能でのメモリ枯渇監視情報の計算式の変更

(33)　サーブレットのデフォルトマッピングのデフォルトでの無効化

(34)　javax.servlet.GenericServletクラスでスローされる例外の変更

(35)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更

(36)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力

(37)　javax.servlet.jsp.tagext.TagInfoクラスの定数の値の変更

(38)　JSPのAPIでクラスのメソッドが総称を使用した定義へ変更

(39)　javax.servlet.jsp.elパッケージのクラスの非推奨への変更

(40)　ライブラリJAR内のTLDファイルの検索

(41)　半角英数字以外の文字が含まれている表示名のインポート時の動作変更

(42)　明示管理ヒープ機能によるメモリ使用量の増加とオブジェクトの最大年齢の制限

(43)　HTTPセッションの無効化によるHTTP Cookie情報に対する動作変更

(44)　-XX:SurvivorRatioのデフォルト値の変更

(45)　SOAPアプリケーション開発支援機能／SOAP通信基盤のクラスパス

(46)　インターセプタに関連するクラスのパッケージの変更

(47)　インターセプタに関連するInvocationContextの変更

(48)　アノテーションの指定方法の変更

(49)　Session Bean属性ファイルおよびEJB-JAR属性ファイルの変更

(50)　リロード機能適用範囲を指定するプロパティ値の変更

(51)　異なるJ2EEアプリケーションに含まれるリソースアダプタでの別名の重複指定

(52)　cjjspcコマンドでのクラスパスに指定したJARファイル内のタグライブラリの使用

(53)　アノテーション情報取得処理でのクラスロードの例外発生時の動作変更

(54)　バッチサーバでのejbserver.ctm.enabledパラメタの扱い

(55)　サーバ管理コマンドの同時実行制御

(56)　J2EEサーバとの通信の時間監視

(57)　リデプロイ機能で実施するJ2EEアプリケーション属性の引き継ぎの動作

(58)　ログファイルの出力方法の変更

(59)　属性ファイルの<icon>タグの変更

(60)　サーバマネジャ，ユーザマネジャの削除

(61)　属性ファイルのxml:lang属性の出力

(62)　Connector属性ファイルでのユーザIDおよびパスワードの非表示

(63)　メール属性ファイルの<reply-to>タグの削除

(64)　Connector属性ファイルでのXA_OPEN文字列の非表示

(65)　Connector属性ファイルの構造変更

(66)　属性ファイル中に指定されたメソッドのチェック

(67)　Connector属性ファイルの<config-property>タグに指定できるプロパティの並び順の変更

(68)　MessageDrivenBean属性ファイルでの指定必須要素の省略

(69)　EJB-JAR属性ファイルの<interceptor-class>タグの出現パターンの変更

(70)　RMI-IIOPスタブおよびRMI-IIOPインタフェースの取得方法

(71)　cjclstartapコマンドの仕様変更

(72)　ネーミングサービスの障害検知機能による閉塞のタイミングの変更

(73)　JSPから生成されたサーブレット用コンパイラのバージョン

(74)　明示管理ヒープ機能での自動解放機能の追加

(75)　POSTリクエストのフォームデータの最大サイズの制限

(76)　TP1インバウンド連携機能でのコネクション保持のサポートと，最大同時接続数のデフォルト値，使用するスレッド数，ファイルディスクリプタ数，ポート番号の変更

(77)　javax.servlet.http.HttpServletRequestインタフェースのgetSessionメソッドでスローされる例外の変更

(78)　データベースセッションフェイルオーバ機能での完全性保障モードの変更

(1)　J2SEのバージョン

07-00以降で使用されているJ2SE 5.0は，07-00より前のJ2SE 1.4.2と異なる部分があります。J2EEアプリケーションのコンパイル時に，今までコンパイルできたJava言語仕様に違反する構文がエラーになることがあります。詳細については，J2SEのドキュメントを参照してください。

(2)　TPBrokerの運用支援機能の非サポート

07-00以降では，07-00より前まで提供していたTPBrokerの運用支援機能は使用できません。システムの各プロセスを一括起動，停止，および監視する場合には，Management Serverを使用してください。Management Serverを使用する場合には，Smart Composer機能や運用管理ポータルでシステムを構築してください。

(3)　snapshotログの収集タイミング

06-50以降では，障害検知時のsnapshotログの収集タイミングが変更されます。06-50より前までは，障害を検知したJ2EEサーバを停止後，snapshotログを収集していました。06-50以降では，障害を検知したときに，障害検知時コマンドによってsnapshotログを収集し，その後論理サーバを停止します。これによって，障害発生時のタイムリーなログが取得できるようになります。

注意

Management Server環境設定ファイル（mserver.properties）にcom.cosminexus.mngsvr.snapshot.collect.point=j2ee_restartを指定することで，06-50より前の動作に戻すことができますが，お勧めしません。

キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.7　mserver.properties（Management Server環境設定ファイル）」を参照してください。

(4)　運用管理エージェント停止時の動作

06-50以降では，運用管理エージェント停止時の動作が変更されます。06-50より前までは，論理サーバを停止しないで運用管理エージェントを終了すると，稼働中の論理サーバを強制停止していました。06-50以降では，論理サーバを停止しないで運用管理エージェントを終了しても，稼働中の論理サーバはそのまま動作を続けます。運用管理エージェントを再起動することで，稼働中の論理サーバについての情報を引き継ぎ，論理サーバの管理を継続できます。運用管理エージェントを停止するときに論理サーバも停止させていた場合は，運用管理エージェントを停止する前に，その運用管理エージェントの稼働しているホスト上の論理サーバをすべて停止するように運用の手順を変更してください。

注意

運用管理エージェントのプロパティファイル（adminagent.properties）にadminagent.finalization.stop_servers=trueを指定することで，06-50より前の動作に戻すことができますが，お勧めしません。

キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2　adminagent.properties（運用管理エージェントプロパティファイル）」を参照してください。

(5)　Management Server用のネーミングサービスの設定変更

06-71まではManagement Server用にネーミングサービスを起動していましたが，07-00以降は，J2EEサーバのプロセス内で起動するRMIレジストリを利用します。このため，Management Server用のネーミングサービスが起動不要になりました。Management Serverのほかに論理ネーミングサービスを使用しているプロセスがない場合には，その論理ネーミングサービスを削除してください。また，Management Server用のネーミングサービスが起動不要になることで，ネーミングサービスのホストとポート番号なども設定不要になります。設定の変更方法については，「12.1.10(3)　Management Server用のネーミングサービスの設定変更」を参照してください。

(6)　旧バージョン互換用のWebサーバの扱い

06-71までは，Management Serverの運用管理ポータルで，論理サーバとして旧バージョン互換用のWebサーバを新規作成できました。07-00以降では，旧バージョン互換用のWebサーバは使用できますが，新規作成はできません。

なお，旧バージョン互換用のWebサーバを使用していた場合には，現バージョンのWebサーバへの移行をお勧めします。運用管理ポータルの「論理サーバの環境設定」のWebサーバ環境のセットアップで，現バージョンへ移行できます。Webサーバ環境のセットアップについては，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「10.10.5　Webサーバ環境のセットアップ」を参照してください。

(7)　動作モードの変更

J2EEサーバの動作モードが変更されて，06-71までの「アドバンスドモード」と「スタンダードモード」は，07-00以降は「1.4モード」となります。

06-71までの動作モード
07-00以降の動作モード

アドバンスドモード（1.3advanced）
スタンダードモード（1.3standard）
1.4モード（1.4）

ベーシックモード（1.3basic）
ベーシックモード（1.3basic）

括弧内の文字列は，usrconf.propertiesのejbserver.server.j2ee.featureキーの値です。

07-00より前から08-00以降へ移行する場合，07-00より前でejbserver.server.j2ee.feature=1.3standard，または，ejbserver.server.j2ee.feature=1.3advancedを指定していたときは，J2EEサーバの移行コマンドが自動的にejbserver.server.j2ee.feature=1.4に変更します。

(8)　JavaVMのタイプ

06-50より前では，J2EEサーバは，Java HotSpot(TM) Client VM上で動作していました。06-50以降，J2EEサーバは，Java HotSpot(TM) Server VM上で動作します。ただし，AIXおよびSolarisではJava HotSpot(TM) Server VMは未サポートです。

Java HotSpot(TM) Server VMでは，Java HotSpot(TM) Client VMと比較して，J2EEアプリケーションまたはバッチアプリケーションの実行性能が向上する場合がありますが，J2EEサーバ，J2EEアプリケーション，バッチサーバ，またはバッチアプリケーションを開始するときの起動性能が劣化する場合もあります。

注意

usrconf.cfgに定義するjvm.typeキーの値をclientに変更することで，J2EEサーバの使用するJavaVMをJava HotSpot(TM) Client VMに変更できます。通常は，Java HotSpot(TM) Server VMを使用することをお勧めします。キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.3　usrconf.cfg（J2EEサーバ用オプション定義ファイル）」を参照してください。また，Java HotSpot(TM) Server VM，およびJava HotSpot(TM) Client VMの詳細については，J2SEのドキュメントを参照してください。

(9)　Management Serverとの連携

07-00以降では，Management Serverと連携するかどうかを設定するusrconf.propertiesのejbserver.instrumentation.enabledキーのデフォルト値がfalseからtrueに変更となります。

なお，ejbserver.instrumentation.enabledキーの指定がない場合，J2EEサーバの移行コマンドが自動的にejbserver.instrumentation.enabled=falseを追加します。

(10)　JSPから生成されたサーブレット用コンパイラのバージョン

07-00以降では，J2EEサーバは，J2SE 5.0のJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルします。

注意

07-00より前と同様に，J2SE 1.2またはJ2SE 1.3のJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルする場合は，J2EEサーバのusrconf.propertiesのwebserver.jsp.compile.backcompatキーに，1.2または1.3を設定します。J2SE 5.0のJava言語仕様のコンパイルでエラーが発生する場合だけ，1.2または1.3と設定することをお勧めします。

(11)　デフォルトのエラーページの内容

06-70より前までは，リクエスト処理時に発生したエラーをカスタマイズしない場合に出力されるデフォルトのエラーページに，製品名が出力されていましたが，06-70以降では製品名が出力されません。

(12)　Enterprise Beanの命名規則

07-00以降では，デフォルトパッケージにEnterprise Beanクラスを作成する場合，次に示す文字列で終わるクラスを作成しないでください。

_LocalHomeImpl

_LocalComponentImpl

_RemoteHomeImpl

_RemoteComponentImpl

_LocalBIProxyImpl

_LocalBIClientSideProxyImpl

_RemoteBIProxyInterface

_RemoteBIProxyImpl

_RemoteBIClientSideProxyImpl

_CallbackWrapperImpl

_InvocationContextImpl

(13)　コネクションの共有機能の有効範囲

06-50以降と06-50より前では，コネクションの共有機能の有効範囲が異なります。有効範囲がJ2EEコンポーネント内の場合は，サーブレット，JSP，Enterprise Beanなどの同一コンポーネントだけでコネクションが共有されます。有効範囲がJ2EEコンポーネントをわたる場合は，J2EEコンポーネント間でローカル呼び出しした場合，呼び出された複数のJ2EEコンポーネントにわたってコネクションが共有されます。

06-50以降，ローカルトランザクション内でのコネクションシェアリングが複数のJ2EEコンポーネントにわたって有効となります。06-50より前では，ローカルトランザクション内でのコネクションシェアリングは，J2EEコンポーネント内だけで有効で，J2EEコンポーネントをわたった場合はコネクションアソシエーションが有効でした。

また，06-50以降，グローバルトランザクション内でコネクションシェアリングが複数のJ2EEコンポーネントにわたって有効となります。06-50より前では，トランザクション内でのコネクションシェアリングはJ2EEコンポーネント内だけで有効で，J2EEコンポーネントをわたった場合はコネクションアソシエーションが有効でした。ただし，コネクションアソシエーションが有効になるのは，ejbserver.connectionpool.xatx.association=trueが指定された場合に限ります。

コネクションの共有機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.3　コネクションシェアリング・アソシエーション」を参照してください。

(14)　コネクションアソシエーションの有効化方法

06-50以降，コネクションアソシエーションを有効にするプロパティがローカルトランザクションとグローバルトランザクションで統一されたので，ユーザプロパティファイルにはejbserver.connectionpool.association.enabledキーを指定します。06-50より前では，コネクションアソシエーションはローカルトランザクションの場合は常に有効で，グローバルトランザクションの場合はejbserver.connectionpool.xatx.association.enabledキーで有効／無効の切り替えができました。

06-50より前で，ユーザプロパティファイルにejbserver.connectionpool.xatx.association.enabled=trueを指定していた場合は，J2EEサーバの移行コマンドがejbserver.connectionpool.association.enabled=trueに自動的に変換します。変換後に取得したConnector属性ファイルと旧バージョンでのプロパティの対応関係を次に示します。

旧バージョンでの条件 | 変換後のユーザプロパティ
ejbserver.connectionpool.xatx.association.enabled=trueの指定がある場合 | ejbserver.connectionpool.association.enabled=true

コネクションの共有機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.14.3　コネクションシェアリング・アソシエーション」を参照してください。

(15)　コネクションスイーパの動作オプションの設定方法

06-50以降，J2EEサーバのコネクションプーリングでのコネクションスイーパの監視時間，および監視間隔をリソースアダプタ単位に設定できます。06-50より前では，ユーザプロパティファイルにejbserver.connectionpool.connection.timeout，およびejbserver.connectionpool.sweeper.intervalキーを指定することで，それぞれ監視時間，および監視間隔をJ2EEサーバ単位に設定していました。06-50以降，Connector属性ファイルの<property>タグで，ConnectionTimeout，またはSweeperIntervalに指定します。

06-50より前で，監視時間と監視間隔をそれぞれejbserver.connectionpool.connection.timeout，およびejbserver.connectionpool.sweeper.intervalキーに指定していた場合は，J2EEサーバの移行コマンドが自動的に変換します。旧バージョンでのプロパティと，変換後にcjgetrarpropコマンドで取得したConnector属性ファイルの値の対応関係は次のとおりです。

旧バージョンでの条件
変換後のConnector属性ファイルの値

ejbserver.connectionpool.connection.timeoutに値が指定されている場合

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-name>

値

ConnectionTimeout

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-value>

値

[値]

ejbserver.connectionpool.sweeper.intervalに値が指定されている場合

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-name>

値

SweeperInterval

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-value>

値

[値]

コネクションスイーパについては，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.15.7　コネクションスイーパ」を参照してください。

(16)　コネクションプールのウォーミングアップ機能の設定方法

07-00以降では，J2EEサーバのコネクションプールのウォーミングアップを有効にするかどうかをリソースアダプタ単位に設定します。

07-00より前では，usrconf.propertiesにejbserver.connectionpool.warmupキーを指定してJ2EEサーバ単位に設定していました。07-00以降は，Connector属性ファイルの<property>タグで，Warmupを設定します。

ejbserver.connectionpool.warmupキーからConnector属性ファイルの<property>タグへの設定変更は，J2EEサーバの移行コマンドが自動的に移行します。

(17)　コネクションの障害検知，ネットワーク障害のタイムアウトの設定方法

07-00以降では，J2EEサーバのコネクションの障害検知のタイムアウト，およびネットワーク障害のタイムアウトをリソースアダプタ単位に設定します。

07-00より前では，usrconf.propertiesにejbserver.connectionpool.validation.timeout.enabledキー，およびejbserver.connectionpool.NetworkFailureTimeout.enabledキーを指定してJ2EEサーバ単位に設定していました。07-00以降は，Connector属性ファイルの<property>タグで，NetworkFailureTimeoutを設定します。

ejbserver.connectionpool.validation.timeout.enabledキー，およびejbserver.connectionpool.NetworkFailureTimeout.enabledキーからConnector属性ファイルの<property>タグへの設定変更は，J2EEサーバの移行コマンドが自動的に移行します。

(18)　コネクションの自動クローズのプロパティのデフォルト値

07-00以降，Webコンテナによるコネクションの自動クローズ機能は，デフォルトで有効となり，usrconf.propertiesに次のキーが設定されます。

ejbserver.webj2ee.connectionAutoClose.enabled=true

J2EEサーバの移行コマンドを使用して移行する場合には，旧バージョンでの設定値が有効になります。

(19)　リソースアダプタのログのサイズと面数

07-00以降では，usrconf.propertiesのキーで指定していたリソースアダプタのログのサイズと面数のデフォルト値が次のように変更されます。

ejbserver.connector.logwriter.filesize=2097152

ejbserver.connector.logwriter.filenum=4

アップグレードインストールの場合には，旧バージョンでの設定値が有効になります。

(20)　リソースアダプタのプロパティのデフォルト値

07-00以降，リソースアダプタのプロパティを定義する，Connector属性ファイルのデフォルト値が変更されます。

コネクションプーリング機能
07-00以降，コネクションプーリング機能はデフォルトで有効となり，Connector属性ファイルの<property>タグで次の値が設定されます。

MaxPoolSize=10

MinPoolSize=10

J2EEサーバの移行コマンドを使用して移行する場合には，旧バージョンでの設定値が有効になります。

コネクションの障害検知機能
07-00以降，コネクションの障害検知機能はデフォルトで有効となり，Connector属性ファイルの<property>タグで次の値が設定されます。

ValidationType=1

J2EEサーバの移行コマンドを使用して移行する場合には，旧バージョンでの設定値が有効になります。

データベースへの接続試行のタイムアウト
07-00以降，データベースへの接続試行のタイムアウトのデフォルト値が0秒から8秒に変更となり，Connector属性ファイルの<config-property>タグで次の値が設定されます。

loginTimeout=8（秒）

Cosminexus DABroker Library用のDB Connectorのデフォルト値は変更ありません。
J2EEサーバの移行コマンドを使用して移行する場合には，旧バージョンでの設定値が有効になります。

(21)　ログ出力ディレクトリの構成変更

07-00以降では，ログファイルの出力ディレクトリ構成が変更になり，保守用ログの出力先ディレクトリ構成が変更されました。

07-00より前から08-00以降へ移行する場合は，J2EEサーバの移行コマンドが自動的にejb.server.log.mode=6を設定するため，07-00より前のログファイルの出力ディレクトリ構成で保守用ログが出力されます。

(22)　1.4モードのデータソース廃止

06-50以降，1.4モード（06-71までのスタンダードモード，アドバンスドモード）のJ2EEサーバのデータソースが廃止になり，DB Connectorだけが利用できるようになりました。そのため，データソースを使用していた場合は，操作手順，運用手順が変更になります。なお，ベーシックモードでは引き続きデータソースだけが利用できます。

06-50より前で，データソースを使用していた場合，J2EEサーバの移行コマンドがデータソースをDB Connectorへ変換します。変換後にコマンドで取得したConnector属性ファイルと旧バージョンでコマンドを使用して取得したデータソース属性ファイルの対応関係を表に示します。表12-6から表12-8は，変換後にcjgetrarpropコマンドで取得したConnector属性ファイルの値を示します。表12-6から表12-8の「値」の列の括弧付きの数字は，表12-9または表12-10の括弧付きの数字に指定されていた値が設定されることを意味します。「デフォルト」はデフォルト値が設定されることを意味します。

表12-6　変換後にcjgetrarpropコマンドを使用して取得したConnector属性ファイル

タグ名 | 値
<hitachi-connector-property> | －
| <description> | 表12-9の(1)
| <display-name> | 表12-9の(2)
| <icon> | －
|  | <small-icon> | デフォルト
|  | <large-icon> | デフォルト
| <vender-name> | デフォルト
| <spec-version> | デフォルト
| <eis-type> | デフォルト
| <version> | デフォルト
| <license> | －
|  | <license-required> | デフォルト
| <resourceadapter> | －
|  | <managedconnectionfactory-class> | デフォルト
|  | <connectionfactory-interface> | デフォルト
|  | <connectionfactory-impl-class> | デフォルト
|  | <connection-interface> | デフォルト
|  | <connection-impl-class> | デフォルト
|  | <transaction-support> | デフォルト
|  | <config-property> | －
|  |  | <description> | デフォルト
|  |  | <config-property-name> | 指定されるプロパティについては表12-7参照
|  |  | <config-property-type> | デフォルト
|  |  | <config-property-value> | 指定される値については表12-7参照
|  | <reauthentication-support> | －
|  | <security-permission> | －
|  |  | <description> | デフォルト
|  |  | <security-permission-spec> | デフォルト
| <runtime> | －
|  | <property> | －
|  |  | <property-name> | 指定されるプロパティについては表12-8参照
|  |  | <property-type> | デフォルト
|  |  | <property-value> | 指定される値については表12-8参照
|  |  | <property-default-value> | デフォルト

（凡例）－：該当しない

表12-7　Connector属性ファイルの<config-property>タグに指定されるプロパティと値

<config-property-name>タグに指定されるプロパティ | <config-property-value>タグに指定される値
loginTimeout | 表12-10の(12)
networkProtocol | 表12-10の(13)
serverName | 表12-10の(14)
portNumber | 表12-10の(15)
databaseName | 表12-10の(16)
description | 表12-10の(17)
DBHostName | 表12-10の(18)
DBEnv | 表12-10の(19)
encodLang | 表12-10の(20)
JDBC_IF_TRC | 表12-10の(21)
SV_EVENT_TRC | 表12-10の(22)
TRC_NO | 表12-10の(23)
uapName | 表12-10の(24)
bufSize | 表12-10の(25)
rowSize | 表12-10の(26)
OSAuthorize | 表12-10の(27)
HiRDBCursorMode | 表12-10の(28)
blockUpdate | 表12-10の(29)
executeDirectMode | 表12-10の(30)
SQLWarningIgnore | 表12-10の(31)
LONGVARBINARY_Access | 表12-10の(32)
XAOpenString | 表12-10の(33)
XACloseString | 表12-10の(34)
RMID | 表12-10の(35)
XAThreadMode | 表12-10の(36)
XALocalCommitMode | 表12-10の(37)
PreparedStatementPoolSize | 0
CallableStatementPoolSize | 0
CancelStatement | false
logLevel | デフォルト

表12-8　Connector属性ファイルの<property>タグに指定されるプロパティと値

<property-name>タグに指定されるプロパティ | <property-value>タグに指定される値
MinPoolSize | 表12-9の(3)
MaxPoolSize | 表12-9の(4)
LogEnabled | デフォルト
User | 表12-10の(38)
Password | 表12-10の(39)
ValidationType | デフォルト
ValidationInterval | デフォルト
RetryCount | 表12-9の(10)
RetryInterval | 表12-9の(11)
ConnectionTimeout | ejbserver.connectionpool.connection.timeoutに値が指定されている場合はその値。指定されていない場合はデフォルト。
SweeperInterval | ejbserver.connectionpool.sweeper.intervalに値が指定されている場合はその値。指定されていない場合はデフォルト。
RequestQueueEnable | false
RequestQueueTimeout | デフォルト
WatchEnabled | デフォルト
WatchInterval | デフォルト
WatchThreshold | デフォルト
WatchWriteFileEnabled | デフォルト

表12-9　旧バージョンでcjgetrespropコマンドによって取得したデータソース属性ファイル

タグ名 | 項目番号
<hitachi-datasource-property> | －
| <description> | (1)
| <display-name> | (2)
| <property> | －
|  | <name> | 指定されるプロパティについては表12-10参照
|  | <XADataSource> | 指定される値については表12-10参照
| <PoolConfiguration> | －
|  | <MinimumSize> | (3)
|  | <MaximumSize> | (4)
|  | <Threshold> | (5)
|  | <GrowthIncrement> | (6)
|  | <WaitTimeout> | (7)
|  | <ConnectionTimeout> | (8)
|  | <SweeperInterval> | (9)
|  | <RetryCount> | (10)
|  | <RetryInterval> | (11)

（凡例）－：該当しない

表12-10　データソース属性ファイルの<property>タグに指定されるプロパティ

<name>タグに指定されるプロパティ | <XADataSource>タグに指定される値
LoginTimeout | (12)
NetworkProtocol | (13)
ServerName | (14)
PortNumber | (15)
DatabaseName | (16)
Description | (17)
DBHostName | (18)
DBEnv | (19)
EncodLang | (20)
JDBC_IF_TRC | (21)
SV_EVENT_TRC | (22)
TRC_NO | (23)
UapName | (24)
BufSize | (25)
RowSize | (26)
OSAuthorize | (27)
HiRDBCursorMode | (28)
BlockUpdate | (29)
ExecuteDirectMode | (30)
SQLWarningIgnore | (31)
LONGVARBINARY_Access | (32)
XAOpenString | (33)
XACloseString | (34)
RMID | (35)
XAThreadMode | (36)
XALocalCommitMode | (37)
User | (38)
Password | (39)

なお，移行コマンドでデータソースからDB Connectorへ変換するときに，すでに同一表示名称（display-name）のDB Connector，またはリソースアダプタが存在した場合には，表示名称の最後に連番を付与し，表示名称を一意にします。DB Connectorによる接続については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「3.6.1　DB Connectorによる接続の概要」を参照してください。

(23)　Naming Manager機能の削除

07-00以降では，07-00より前まで提供していたNaming Manager機能（別名付与とクラスタ化）は使用できません。この機能を使用していた場合は，次に示す機能を使用するように変更してください。

別名付与
EJBホームオブジェクトリファレンスに別名を付ける場合は，ネーミング管理機能のユーザ指定名前空間機能を使用してください。ユーザ指定名前空間機能については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「2.3　JNDI名前空間へのオブジェクトのバインドとルックアップ」を参照してください。

クラスタ化
複数のEJBホームオブジェクトリファレンスの中からラウンドロビンのポリシーで選択されたものを検索する場合は，ネーミング管理機能のラウンドロビンポリシーによるCORBAネーミングサービスの検索機能を使用してください。
ラウンドロビンポリシーによるCORBAネーミングサービスの検索については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「2.5　ラウンドロビンポリシーによるCORBAネーミングサービスの検索」を参照してください。

(24)　カスタムタグのスクリプト変数定義の変更

07-00以降と07-00より前では，複数のカスタムタグで，スクリプト変数名とスクリプト変数のスコープが重複した場合に，JSPファイルのコンパイル結果が異なります。

07-00より前の場合
JSPファイルのコンパイルでコンパイルエラーが発生します。

07-00以降の場合
JSPファイルのコンパイルでコンパイルエラーは発生しません。
この場合，JSPトランスレーション下位互換機能を使用すると，JSPファイルのコンパイル結果が07-00より前と同じになります。

(25)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更

07-00以降と07-00より前では，<jsp:useBean>タグのclass属性に対して，インスタンス化できないクラス名を指定した場合に，JSPファイルのコンパイル結果が異なります。

07-00より前の場合
JSPファイルのコンパイルでコンパイルエラーは発生しません。

07-00以降の場合
JSPファイルのコンパイルでコンパイルエラーが発生します。
この場合，JSPトランスレーション下位互換機能を使用すると，JSPファイルのコンパイル結果が07-00より前と同じになります。

(26)　タグの属性値のExpressionチェックの変更

07-00以降と07-00より前では，Expressionが指定可能な属性以外にExpressionを指定したタグを含むJSPファイルの場合に，コンパイル結果が異なります。

07-00より前の場合
JSPファイルのコンパイルでコンパイルエラーは発生しません。

07-00以降の場合
JSPファイルのコンパイルでコンパイルエラーが発生します。
この場合，JSPトランスレーション下位互換機能を使用すると，JSPファイルのコンパイル結果が07-00より前と同じになります。

(27)　タグの属性値に指定するExpressionに関する変更

07-00以降と07-00より前では，タグの属性値が，「"<%=」または「'<%=」で開始して，「%>"」または「%>'」で終了していない場合（例えば，「%>」と「"」または「'」の間に，任意の文字列があるような場合）に，JSPファイルのコンパイル結果が異なります。

07-00より前の場合
JSPファイルのコンパイルでコンパイルエラーは発生しません。

07-00以降の場合
JSPファイルのコンパイルでコンパイルエラーが発生します。
この場合，JSPトランスレーション下位互換機能を使用すると，JSPファイルのコンパイル結果が07-00より前と同じになります。

(28)　taglibディレクティブのprefix属性に関する変更

07-00以降と07-00より前では，taglibディレクティブの前に，taglibディレクティブで指定したprefixを使用したカスタムタグを記述している場合に，JSPファイルのコンパイル結果が異なります。

07-00より前の場合
JSPファイルのコンパイルでコンパイルエラーは発生しません。

07-00以降の場合
JSPファイルのコンパイルでコンパイルエラーが発生します。
この場合，JSPトランスレーション下位互換機能を使用すると，JSPファイルのコンパイル結果が07-00より前と同じになります。

(29)　JSPでの$の扱いの変更

07-00以降，JSP仕様では"$"が予約語になっています。

JSPファイル内に"¥$"と記述した場合は，エスケープシーケンスによって"$"と出力されます。"¥$"と出力したい場合には，"¥¥$"と記述してください。

(30)　WebコンテナがサポートするServlet仕様のバージョン

Servlet APIでは，WebコンテナがサポートするServlet仕様のバージョン情報を取得できます。バージョン情報を取得できるServlet APIを次に示します。

javax.servlet.ServletContextクラスのgetMajorVersionメソッド

javax.servlet.ServletContextクラスのgetMinorVersionメソッド

javax.servlet.jsp.JspEngineInfoクラスのgetSpecificationVersionメソッド

08-00以降では，WebアプリケーションのバージョンがServlet 2.4／JSP 2.0以前であっても，WebコンテナがサポートするServlet仕様のバージョンはServlet2.5／JSP2.1となります。このため，これらのServlet APIでは，Servlet仕様のバージョン情報としてServeServlet 2.5／JSP 2.1の情報を返します。

(31)　Cosminexus RM連携用のリソースアダプタのプロパティへの，CancelStatementプロパティの追加

07-50以降では，Cosminexus RM連携用のリソースアダプタ（DB Connector for Cosminexus RM）で，ステートメントキャンセル機能がデフォルトで有効になります。次に示すRARファイルのConnector属性ファイルの<config-property>タグに，「CancelStatement=true」が追加されます。

DBConnector_HiRDB_Type4_CP_Cosminexus_RM.rar

DBConnector_HiRDB_Type4_XA_Cosminexus_RM.rar

DBConnector_DABJ_CP_Cosminexus_RM.rar

DBConnector_DABJ_XA_Cosminexus_RM.rar

DBConnector_Oracle_CP_Cosminexus_RM.rar

DBConnector_Oracle_XA_Cosminexus_RM.rar

なお，07-10以前から移行する場合は，「CancelStatement=false」が設定されます。

(32)　リソース枯渇機能でのメモリ枯渇監視情報の計算式の変更

07-60以降，リソース枯渇監視機能のメモリ枯渇監視情報として出力されるRate2の値の計算式が変更になります。

07-50以前
Rate2の値＝New領域消費サイズ／Old領域空きサイズ×100（%）

07-60以降
Rate2の値＝New領域合計サイズ／Old領域最大空きサイズ×100（%）

(33)　サーブレットのデフォルトマッピングのデフォルトでの無効化

サーブレットのデフォルトマッピングはデフォルトで無効になります。

usrconf.propertiesのwebserver.container.servlet.default_mapping.enabledキーで「true」を指定すると，サーブレットのデフォルトマッピングは有効になります。

アップグレードインストールをした場合，すでにセットアップされているJ2EEサーバには，サーブレットのデフォルトマッピングを有効にする設定（webserver.container.servlet.default_mapping.enabled=true）が自動的に設定されます。

(34)　javax.servlet.GenericServletクラスでスローされる例外の変更

javax.servlet.GenericServletクラスがインスタンス変数として保持するServletConfigがnullの場合，次に示すメソッドによってスローされる例外がバージョンごとに異なります。

getInitParameter(String)メソッド

getInitParameterNames()メソッド

getServletContext()メソッド

getServletName()メソッド

これらのメソッドによってスローされる例外をバージョンごとに次に示します。

07-60以前

java.lang.NullPointerException

08-00以降

java.lang.IllegalStateException

また，例外のメッセージとして「ServletConfig has not been initialized.」が出力されます。

これらの例外は，次の二つの条件を両方満たす場合にスローされます。

javax.servlet.GenericServletクラスを継承したサーブレットがinit(ServletConfig)メソッドをオーバーライドしている場合

オーバーライドしたinit(ServletConfig)メソッドの中でsuper.init(ServletConfig)メソッドを呼び出していない，または引数にnullを指定してsuper.init(ServletConfig)メソッドを呼び出している場合

(35)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更

getReaderメソッドを呼び出したあとのsetCharacterEncodingメソッドの呼び出しは無視されるようになりました。次に示す値はgetReaderメソッドを呼び出しても変更されません。

getReaderメソッドで取得したBufferedReaderオブジェクトが使用する文字エンコーディング

getCharacterEncodingメソッドの戻り値

(36)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力

javax.servlet.GenericServletクラスがインスタンス変数で持つServletConfigがnullの場合，次のメソッドでログが出力されなくなりました。

init(ServletConfig)メソッド

destroy()

(37)　javax.servlet.jsp.tagext.TagInfoクラスの定数の値の変更

javax.servlet.jsp.tagext.TagInfoクラスの次に示す定数の値が，すべて大文字から小文字へ変更になります。

BODY_CONTENT_TAG_DEPENDENT

BODY_CONTENT_EMPTY

BODY_CONTENT_SCRIPTLESS

(38)　JSPのAPIでクラスのメソッドが総称を使用した定義へ変更

次に示すクラスのメソッドが総称を使用した定義になります。

javax.servlet.jsp.JspContext

javax.servlet.jsp.tagext.SimpleTagSupport

javax.servlet.jsp.tagext.TagData

javax.servlet.jsp.tagext.TagLibraryValidator

javax.servlet.jsp.tagext.TagSupport

これらのクラスに関連するクラスは，コンパイル時に警告メッセージが出力される場合があります。

なお，動作は08-00より前と変わらないため，クラスの再コンパイルは必要ありません。

(39)　javax.servlet.jsp.elパッケージのクラスの非推奨への変更

javax.servlet.jsp.elパッケージの次に示すクラスが非推奨となります。

FunctionMapper

VariableResolver

Expression

ExpressionEvaluator

ELException

ELParseException

なお，これらのAPIを使用した場合の動作は08-00より前と変わりません。

(40)　ライブラリJAR内のTLDファイルの検索

08-00以降では，ライブラリJARに含まれるTLDファイルを検索し，ライブラリJAR内のタグライブラリが使用できるようになります。ライブラリJARにTLDファイルが含まれる場合，07-60以前では使用できなかったTLDファイルが使用できるようになるため，次の現象が発生します。

ライブラリJAR内のTLDファイルの<uri>要素に記述されたURIが，web.xmlやほかのTLDファイルに記述されたURIと重複する場合，警告メッセージが出力されます。この場合，ライブラリJAR内のTLDファイルに記述されたURIとTLDファイルのマッピングは無効となります。

JSPのtaglibディレクティブのuri属性で，ライブラリJAR内のTLDファイルに記述されたURIを指定していた場合，JSPトランスレーションができるようになります。なお，07-60以前の場合は，JSPトランスレーション時にトランスレーションエラーとなります。

(41)　半角英数字以外の文字が含まれている表示名のインポート時の動作変更

J2EEサーバでは，J2EEアプリケーションやリソースなどに設定された表示名（DDの<display-name>タグの値）を識別子として使用します。表示名に半角英数字（0～9，A～Z，a～z）以外の文字が含まれていた場合は，その文字をアンダースコア（_）に変換して識別子を生成します。設定値によっては，変換処理で生成された識別子が重複して操作に失敗することがあります。

07-60以前
J2EEサーバは表示名に半角英数字以外の文字が含まれていても，メッセージを出力しません。

08-00以降
J2EEサーバは表示名に半角英数字以外の文字が含まれていると，警告メッセージ（KDJE42374-W）を出力します。

(42)　明示管理ヒープ機能によるメモリ使用量の増加とオブジェクトの最大年齢の制限

08-00以降では，明示管理ヒープ機能がデフォルトで有効となります。明示管理ヒープ機能で使用するExplicitヒープの分，システム全体のメモリ使用量が増加します。Explicitヒープのメモリサイズを見積もって，チューニングを実施してください。

なお，07-60以前から08-00以降へ移行するサーバの場合，明示管理ヒープ機能は無効（add.jvm.arg=-XX:-HitachiUseExplicitMemory）となります。

また，明示管理ヒープ機能では，オブジェクトをExplicitメモリブロックにコピーガーベージコレクションのタイミングで移動する処理の中で，オブジェクトの最大年齢（-XX:MaxTenuringThreshold）の値を特殊な値として扱います。これに伴い，通常の年齢管理に利用できる値が1減り，オブジェクトが昇格するタイミングが早まるおそれがあります。

なお，この制限は，明示管理ヒープ機能を無効（add.jvm.arg=-XX:-HitachiUseExplicitMemory）にした場合にも該当します。

各バージョンのオブジェクトの最大年齢（-XX:MaxTenuringThreshold）を次の表に示します。

表12-11　各バージョンのオブジェクトの最大年齢（-XX:MaxTenuringThreshold）

OS | 06-71まで | 07-00～07-20 | 07-50～07-60 | 08-00～08-50 | 08-53以降
Windows | 31 | 31 | 15 | 14 | 14
Linux(x86) | 31 | 31 | 31 | 30 | 14
Linux(AMD64 & Intel EM64T) | 31 | 15 | 15 | 14 | 14
Linux(IPF) | 31 | 15 | 15 | 14 | 14
HP-UX(IPF) | 31 | 31 | 31 | 30 | 30
AIX | 31 | 31 | 31 | 30 | 30
Solaris | 31 | 31 | 31 | 30 | 30

(43)　HTTPセッションの無効化によるHTTP Cookie情報に対する動作変更

Webアプリケーション内でHTTPセッションを無効化すると，Webクライアントが保持するセッションIDを示すHTTP Cookie情報に対する動作が異なります。

07-60以前
Webクライアントの保持するHTTP Cookie情報を削除しません。

08-00以降
Webクライアントの保持するHTTP Cookie情報を削除します。この場合，HTTPレスポンスヘッダに，Webクライアントの保持するHTTP Cookie情報を削除するためのHTTP Cookie情報を付加します。

usrconf.propertiesのwebserver.session.delete_cookie.backcompatキーで「true」を指定すると，08-00より前と同じ動作になります。

アップグレードインストールをした場合，すでにセットアップされているJ2EEサーバには，Webクライアントの保持するHTTP Cookie情報を削除しない設定（webserver.session.delete_cookie.backcompat=true）が自動的に設定されます。

(44)　-XX:SurvivorRatioのデフォルト値の変更

08-00以降では，すべてのプラットフォームに共通して，JavaVM起動オプションの「-XX:SurvivorRatio=<value>」の<value>のデフォルト値が8になります。

(45)　SOAPアプリケーション開発支援機能／SOAP通信基盤のクラスパス

08-00以降では，SOAPアプリケーション開発支援機能／SOAP通信基盤を使用する場合は，J2EEサーバ用オプション定義ファイル（usrconf.cfg）に「add.class.path=<Cosminexusのインストールディレクトリ>¥c4web¥lib¥hitsaaj.jar」の設定が必要になります。

なお，08-00よりも前のバージョンから08-00以降のバージョンに移行する場合は，J2EEサーバの移行コマンドが自動的に設定します。

(46)　インターセプタに関連するクラスのパッケージの変更

07-10以降では，インターセプタに関連する次のクラスのパッケージが，javax.ejbからjavax.interceptorに変更になります。

javax.ejb.AroundInvoke

javax.ejb.Interceptors

javax.ejb.ExcludeDefaultInterceptors

javax.ejb.ExcludeClassInterceptors

javax.ejb.InvocationContext

(47)　インターセプタに関連するInvocationContextの変更

07-10以降では，インターセプタに関連するInvocationContextに変更があります。変更点を次に示します。

getParametersメソッドおよびsetParametersメソッドの変更

setParametersメソッドで，ビジネスメソッドに適合しない引数を指定した場合，IllegalArgumentException例外が発生するようになります。

getParametersメソッドおよびsetParametersメソッドをライフサイクルコールバックメソッドの中で呼び出した場合，IllegalStateException例外が発生するようになります。

getContextDataメソッドの変更
getContextDataメソッドの返り値であるMapは，Genericsによって，<String, Object>に型指定されたMapに変更になります。

getBeanメソッドの変更
getBeanメソッドはgetTargetメソッドに変更になります。

(48)　アノテーションの指定方法の変更

07-10以降では，アノテーションの指定方法に変更があります。変更点を次に示します。

ビジネスインタフェースでの@Localおよび@Remoteアノテーションの指定
一つのビジネスインタフェースに@Localおよび@Remoteアノテーションを同時に指定することはできません。

ステートフルセッションビーンでの@Removeアノテーションの指定
ステートフルセッションビーンに@Removeアノテーションを指定したメソッドは，CMTでクライアントトランザクションを引き継ぐ場合や，BMTでトランザクションがコミットされる前であっても，呼び出しができるようになりました。

メソッドでの@Timeoutアノテーションの指定
Timer Serviceに関連する@Timeoutアノテーションを指定したメソッドで，public以外の修飾子が許容されます。

(49)　Session Bean属性ファイルおよびEJB-JAR属性ファイルの変更

07-10以降，Session Bean属性ファイルおよびEJB-JAR属性ファイルの，次に示すタグ名に変更があります。変更点を次の表に示します。

表12-12　Session Bean属性ファイルおよびEJB-JAR属性ファイルのタグ名の変更

07-00でのタグ名
07-10以降でのタグ名

<around-invoke-method>
<method-name>
<method-params>
<around-invoke>
<class>
<method-name>

<post-construct-method>
<method-name>
<method-params>
<post-construct>
<lifecycle-callback-class>
<lifecycle-callback-method>

<pre-destroy-method>
<method-name>
<method-params>
<pre-destroy>
<lifecycle-callback-class>
<lifecycle-callback-method>

<post-activate-method>
<method-name>
<method-params>
<post-activate>
<lifecycle-callback-class>
<lifecycle-callback-method>

<pre-passivate-method>
<method-name>
<method-params>
<pre-passivate>
<lifecycle-callback-class>
<lifecycle-callback-method>

(50)　リロード機能適用範囲を指定するプロパティ値の変更

07-10以降，J2EEアプリケーションのリロード機能適用範囲を設定する，usrconf.propertiesのejbserver.deploy.context.reload_scopeキーのデフォルト値が変更になります。07-00では，デフォルト値は「none」でしたが，07-10以降は「app」に変更になります。

なお，移行コマンドを使用して07-00以前から移行する場合は，既定値が有効になります。

(51)　異なるJ2EEアプリケーションに含まれるリソースアダプタでの別名の重複指定

07-50以前では，異なるJ2EEアプリケーションに含まれるリソースアダプタであっても，すでに別のオブジェクトが使用している別名は指定できませんでした。

07-60以降では，異なるJ2EEアプリケーションに含まるリソースアダプタの場合に，すでに同じ名称が指定されている別名でも指定できます。

(52)　cjjspcコマンドでのクラスパスに指定したJARファイル内のタグライブラリの使用

08-00以降では，cjjspcコマンドでのJSPコンパイル時，-classpathオプションでクラスパスに指定したJARファイル内のTLDファイルを検索し，JARファイル内のタグライブラリが使用できるようになります。クラスパスに指定したJARファイルにTLDファイルが含まれる場合，07-60以前では使用できなかったTLDファイルが使用できるため，次の現象が発生します。

クラスパスに指定したJARファイル内のTLDファイルの<uri>要素に記述されたURIがweb.xmlやほかのTLDファイルに記述されたURIと重複する場合，警告メッセージが出力されます。この場合，クラスパスに指定したJARファイル内のTLDファイルに記述されたURIとTLDファイルのマッピングは無効となります。

JSPのtaglibディレクティブのuri属性で，クラスパスに指定したJARファイル内のTLDファイルに記述されたURIを指定していた場合，JSPトランスレーションができるようになります。なお，07-60以前の場合は，JSPトランスレーション時にトランスレーションエラーとなります。

(53)　アノテーション情報取得処理でのクラスロードの例外発生時の動作変更

08-00より前では，次の操作でのアノテーション情報取得処理中に，クラスのロードで例外が発生した場合，エラーとなって処理を中断していました。

J2EEアプリケーションのインポート時またはリロード時

リソースのインポート時

08-00以降では，クラスのロードで例外が発生しても例外ログを取得したあと，処理を続行します。

usrconf.propertiesのejbserver.deploy.annotations.load_check.enabledキーで「true」を指定すると，08-00より前と同じ動作となります。

(54)　バッチサーバでのejbserver.ctm.enabledパラメタの扱い

08-00以降，バッチサーバでスケジューリング機能を使用するかどうかを選択できるようになりました。スケジューリング機能を使用する場合には，usrconf.propertiesのejbserver.ctm.enabledキーで「true」を指定してください。なお，バッチサーバの場合，ejbserver.ctm.enabledキーのデフォルト値は，CTMを使用できる製品のときでも「false」（スケジューリング機能を使用できない設定）となります。

(55)　サーバ管理コマンドの同時実行制御

06-50以降では，排他制御によるサーバ管理コマンドの同時実行制御は，J2EEサーバごとに行います。また，サーバ管理コマンドを，処理内容に応じて「更新」，「参照」，「特権」と三つの系統に分別し，系統ごとに排他制御します。06-50より前では，排他制御によるサーバ管理コマンドの同時実行制御は，CORBAネーミングサービスごとに行っていました。

(a)　サーバ管理コマンドの同時実行の制約

06-50より前では，サーバ管理コマンドは，CORBAネーミングサービスごとに同時に一つしか実行できなかったため，同じJ2EEサーバに対してサーバ管理コマンドを同時に実行すると一方のサーバ管理コマンドはエラー終了していました。また，複数のJ2EEサーバを同じCORBAネーミングサービスで管理し，異なるJ2EEサーバに対してサーバ管理コマンドを同時に実行する場合でも，一方のサーバ管理コマンドはエラー終了していました。06-50以降では，同じJ2EEサーバ上で系統が異なるサーバ管理コマンドを同時に実行できます。

同系統のサーバ管理コマンドを同時に実行した場合，あとに実行したサーバ管理コマンドは，最初に実行したサーバ管理コマンドの終了を待ちます。また，同じCORBAネーミングサービスが複数のJ2EEサーバを管理する場合，異なるJ2EEサーバに対してサーバ管理コマンドを同時に実行できます。コマンドの分類については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「1.1　コマンドの種類」を参照してください。また，サーバ管理コマンドの実行と排他制御については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「3.2　サーバ管理コマンドの排他制御」を参照してください。

(b)　時間監視によるロック強制解除

06-50より前では，サーバ管理コマンドがエラーなどによって不正終了し，排他制御のロックが解除されないで不正な状態になった場合，cjresetsvコマンドを実行してロックを強制解除する必要があります。06-50以降では，J2EEサーバとサーバ管理コマンド間の通信間隔の時間を監視し，排他制御のためのロックを強制解除します（J2EEサーバとサーバ管理コマンドは複数回通信します）。これによって，サーバ管理コマンドが処理の途中に不正終了した場合でも，時間監視によってロックが強制解除されます。ただし，時間監視によってロックが強制解除されたあと，サーバ管理コマンドがJ2EEサーバと通信した場合，コマンドはエラー終了します。このような場合には，時間監視によるロック強制解除のタイムアウト値を変更したあとに，サーバ管理コマンドを再実行してください。usrconf.propertiesのejbserver.deploy.exclusive.lockAliveIntervalキーに値を指定することで，タイムアウト値を変更できます。キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

(c)　排他制御のロック強制解除コマンド

06-50より前では，cjresetsvコマンドのオプションにCORBAネーミングサービスを指定し，排他制御のロックを強制解除していました。06-50以降では，cjresetsvコマンドのオプションにJ2EEサーバを指定し，排他制御のロックを強制解除します。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjresetsv（サーバ管理コマンドの排他強制解除）」を参照してください。

(56)　J2EEサーバとの通信の時間監視

06-50以降では，サーバ管理コマンドとJ2EEサーバ間の通信は時間監視され，デフォルトのタイムアウト値は，180（秒）です。06-50より前では，時間監視されません。

注意

06-50より前と同様にJ2EEサーバとの通信を時間監視しない場合には，サーバ管理コマンドのusrconf.propertiesのejbserver.rmi.request.timeoutキーに0を設定します。適切な値を設定して，時間監視機能を使用することをお勧めします。キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

(57)　リデプロイ機能で実施するJ2EEアプリケーション属性の引き継ぎの動作

cjreplaceappコマンドを使用してリデプロイを実施する際に，入れ替え前のJ2EEアプリケーションの情報を，入れ替え後のJ2EEアプリケーションに引き継ぎますが，アプリケーションサーバのバージョンによって引き継ぐ情報が異なります。

06-70より前のバージョンでは，J2EEアプリケーションのランタイム属性※だけを引き継ぎます。06-70以降のバージョンでは，デフォルトでは，J2EEアプリケーションのすべての属性情報を引き継ぎます。06-70より前のバージョンと同じように，ランタイム属性だけを引き継ぎたい場合は，オプションを指定してcjreplaceappコマンドを実行します。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjreplaceapp（アプリケーションの入れ替え）」を参照してください。

注※

属性ファイルには，DD（application.xml，ejb-jar.xml，ra.xml，web.xml）の定義と属性ファイル独自の定義が設定できます。属性ファイル独自の定義のことをランタイム属性といいます。

(58)　ログファイルの出力方法の変更

07-00以降，サーバ管理コマンドのログファイルの出力方法が変更されます。07-00より前までは，コマンドのプロセスごとにログファイルを生成してログを出力しましたが，07-00以降では，コマンドの複数プロセスで共通のログファイルにログを出力します。

07-00より前から08-00以降へ移行する場合，J2EEサーバの移行コマンドが自動的にejbserver.cui.logfile.compatible=trueを設定するため，07-00より前のログファイルの出力方法でログが出力されます。

(59)　属性ファイルの<icon>タグの変更

07-00以降，次の属性ファイルで，<icon>タグの下位に，<small-icon>タグと<large-icon>タグが出力されるようになりました。

アプリケーション属性ファイル

EJB-JAR属性ファイル

Session Bean属性ファイル

Entity Bean属性ファイル

WAR属性ファイル

サーブレット属性ファイル

Messsage-driven Bean 属性ファイル

フィルタ属性ファイル

(60)　サーバマネジャ，ユーザマネジャの削除

07-00より前までJ2EEアプリケーションやリソースの設定で使用されていたサーバマネジャ（cjadminsvコマンド）とユーザマネジャ（cjadminusrコマンド）は，07-00以降は使用できません。

J2EEアプリケーションやリソースを設定する場合には，サーバ管理コマンドを使用してください。

(61)　属性ファイルのxml:lang属性の出力

07-00以降，次の属性ファイルで，<description>，<display-name>，および<icon>タグにxml:lang属性が出力されるようになりました。xml:lang属性のデフォルト値は「en」です。なお，バージョンによって，xml:lang属性が出力される属性ファイルが異なります。

07-00以降

EJB-JAR属性ファイル

Session Bean属性ファイル

Entity Bean属性ファイル

WAR属性ファイル

サーブレット属性ファイル

Messsage-driven Bean 属性ファイル

フィルタ属性ファイル

07-50以降

Connector属性ファイル

(62)　Connector属性ファイルでのユーザIDおよびパスワードの非表示

07-10以降では，cjgetrespropコマンドまたはcjgetrarpropコマンドでのConnector属性ファイル取得時に，Connector属性ファイルの<property-name>タグの値として「User」または「Password」が設定されている場合，これらのタグに対応する<property-value>タグの値は，セキュリティ上の理由で表示されなくなりました。<property-name>タグの値として「User」または「Password」が設定されているタグの，<property-value>タグの値を変更する場合は，<property-value>タグを追加して変更後の値を設定してください。

(63)　メール属性ファイルの<reply-to>タグの削除

07-10以降，メール属性ファイルの<reply-to>タグは削除されました。<reply-to>タグは指定できません。

(64)　Connector属性ファイルでのXA_OPEN文字列の非表示

07-50以降では，cjgetrespropコマンド，cjgetrarpropコマンド，またはcjgetapppropコマンドでConnector属性ファイル取得時に，Connector属性ファイルの<config-property-name>タグの値として「XAOpenString」が設定されている場合，このタグに対応する<config-property-value>タグの値は，セキュリティ上の理由で表示されなくなりました。<config-property-name>タグの値として「XAOpenString」が設定されているタグの，<config-property-value>タグの値を変更する場合は，<config-property-value>タグを追加して変更後の値を設定してください。

(65)　Connector属性ファイルの構造変更

07-50以降では，Connector属性ファイルの構造が変更され，<outbound-resourceadapter>タグ，および<outbound-resourceadapter>タグの<connection-definition>タグの下位に，次のタグが出力されるようになりました。

<outbound-resourceadapter>タグの下位に出力されるタグ

<transaction-support>タグ

<reauthentication-support>タグ

<outbound-resourceadapter>タグの<connection-definition>タグの下位に出力されるタグ

<managedconnectionfactory-class>タグ

<config-property>タグ

<connectionfactory-interface>タグ

<connectionfactory-impl-class>タグ

<connection-interface>タグ

<connection-impl-class>タグ

<connector-runtime>タグ

(66)　属性ファイル中に指定されたメソッドのチェック

07-50以降では，cjsetapppropコマンドまたはcjsetrespropコマンド実行時に，引数で指定された属性ファイル中の<container-transaction>，<ejb-method-observation-timeout>，または<ejb-transaction-timeout>タグで指定されたメソッドが，Enterprise Bean中にあるかどうかをチェックします。属性ファイル中のこれらのタグに指定されたメソッドが，Enterprise Bean中にない場合は，エラーとなります。

07-10より前から08-00以降へ移行する場合は，J2EEサーバの移行コマンドが自動的にejbserver.cui.checkmethod.compatible=trueを設定するため，07-10より前のメソッドのチェック方法でメソッドはチェックされます。

(67)　Connector属性ファイルの<config-property>タグに指定できるプロパティの並び順の変更

07-50以降では，Connector属性ファイルの<config-property>タグに指定できるプロパティの並び順が，一部変更になります。移行コマンドで07-10以前から移行する場合，<config-property>タグに指定できるプロパティの並び順は，07-50以降の並び順に変更されます。

(68)　MessageDrivenBean属性ファイルでの指定必須要素の省略

07-60以降で，Connector 1.5仕様に準拠したリソースアダプタの場合，MessageDrivenBean属性ファイルの次に示す要素が省略できます。

<message-ref>-<connection-factory>

<message-ref>-<connection-destination>-<queue>

ただし，Cosminexus RMおよびTP1/Message Queue - Accessによるデータベース接続で，Message-driven Beanを使用する場合は，MessageDrivenBean属性ファイルでこれらの要素の指定は省略できません。この場合，MessageDrivenBean属性ファイルでこれらの要素の指定を省略しても，cjsetapppropコマンドでの属性設定時にはエラーになりませんが，Message-driven Beanを含むJ2EEアプリケーションの開始時にエラーとなります。

(69)　EJB-JAR属性ファイルの<interceptor-class>タグの出現パターンの変更

EJB-JAR属性ファイルの<interceptor-binding>直下の<interceptor-class>タグの出現パターンが変更されます。07-10より前では，<interceptor-class>タグの出現パターンは1回以上でした。07-10以降では，<interceptor-class>タグの出現パターンは0回以上になります。

(70)　RMI-IIOPスタブおよびRMI-IIOPインタフェースの取得方法

06-50以降，アプリケーションのRMI-IIOPスタブおよびRMI-IIOPインタフェースを一括で取得する機能をサポートします。06-50より前では，RMI-IIOPスタブ，およびRMI-IIOPインタフェースをJ2EEサーバからダウンロードしていましたが，06-50以降では，cjgetstubsjarコマンドを使用して該当のファイルを一括で取得できます。コマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjgetstubsjar（アプリケーションのRMI-IIOPスタブおよびインタフェースの取得）」を参照してください。

(71)　cjclstartapコマンドの仕様変更

07-10以降，cjclstartapコマンドの仕様が変更になります。変更点を次に示します。

Javaオプション指定の追加
cjclstartapコマンドの引数にJavaオプションを指定できるようになりました。

デフォルトのログ出力先の変更
デフォルトのログ出力先は，07-10より前では，<Cosminexusのインストールディレクトリ>¥CC¥client¥logs（Windowsの場合）または/opt/Cosminexus/CC/client/logs（UNIXの場合）となっていました。07-10以降では，デフォルトのログ出力先は次の場所に変更になりました。

07-10以降のデフォルトのログ出力先

<cjclstartapコマンド実行ディレクトリ>/logs

ログファイル取得の追加
次に示すログファイルを取得できるようになりました。

ユーザ出力ログ

ユーザエラーログ

JavaVMの保守情報およびガーベージコレクションのログ

EJBコンテナの保守情報

起動プロセス標準出力情報

起動プロセス標準エラー情報

オプションの追加
ログ出力に関するオプションを追加しました。

ejb.client.log.directory

ejb.client.ejb.log

ejb.client.log.appid

ejb.client.log.stdout.enabled

なお，各オプションの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「15.2　usrconf.cfg（Javaアプリケーション用オプション定義ファイル）」を参照してください。

複数プロセスの起動抑止
同一のディレクトリ上で複数のプロセスを起動できません。

ログ出力先の共有不可
07-10以降で追加取得するログは，複数のプロセス間でログ出力先を共有できません。

(72)　ネーミングサービスの障害検知機能による閉塞のタイミングの変更

ネーミングサービスの障害検知機能を使用している場合，08-00以降と08-00より前では，ネーミングサービスが閉塞されるタイミングが異なります。

08-00より前
キャッシュクリア時（ejbserver.jndi.cache.intervalパラメタに指定した時間が経過したあと）に，ネーミングサービスが閉塞されます。

08-00以降
JNDIのAPI実行時に閉塞されることがあります。

(73)　JSPから生成されたサーブレット用コンパイラのバージョン

製品のバージョンによって，インストールされるJDKが異なります。J2EEサーバでは，インストールされているjavacコンパイラのデフォルトバージョンのJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルします。

コンパイルするJava言語仕様のバージョンを次の表に示します。

表12-13　コンパイルするJava言語仕様のバージョン

アプリケーションサーバのバージョン | JDKのバージョン | コンパイルJava言語仕様バージョン
Version 6 | JDK 1.4 | J2SE 1.3
Version 7 | JDK 5.0 | J2SE 5.0
Version 8 | JDK 6 | Java SE 6
JDK 5.0 | J2SE 5.0

注意

移行前と同様のJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルする場合は，J2EEサーバ用のユーザプロパティファイル（usrconf.properties）のwebserver.jsp.compile.backcompatキーに「1.2」「1.3」「1.4」「1.5」または「5」を設定します。このプロパティは，インストールしているJDKのコンパイルでエラーが発生する場合だけ使用してください。

(74)　明示管理ヒープ機能での自動解放機能の追加

08-50以降では明示管理ヒープ機能で自動解放機能を使用できるようになります。08-50より前のバージョンから，08-50以降へ移行するサーバでは明示管理ヒープ機能での自動解放機能は無効になります。

(75)　POSTリクエストのフォームデータの最大サイズの制限

POSTリクエストのフォームデータ（Content-Typeヘッダの値がapplication/x-www-form-urlencodedの場合のPOSTデータ）の最大サイズがデフォルトで2MBに制限されます。アップグレードインストールをした場合，すでにセットアップされているJ2EEサーバには，POSTリクエストのフォームデータの最大サイズを無制限にする設定（webserver.connector.limit.max_post_form_data=-1）が自動的に実施されます。

(76)　TP1インバウンド連携機能でのコネクション保持のサポートと，最大同時接続数のデフォルト値，使用するスレッド数，ファイルディスクリプタ数，ポート番号の変更

08-53以降のTP1インバウンド連携機能では，OpenTP1とのコネクションを保持できるようになりました。08-50から08-53以降のバージョンに移行する場合は，次のどちらかの設定をしてください。

OpenTP1とのコネクションを保持する場合
TP1インバウンドアダプタで使用するConnector属性ファイルのrpc_close_after_sendプロパティに"false"を指定して，OpenTP1のrpc_close_after_send句を削除してください。

OpenTP1とのコネクションを保持しないで08-50との互換性がある動作にする場合
TP1インバウンドアダプタで使用するConnector属性ファイルのrpc_close_after_sendプロパティに"true"を指定して，OpenTP1のrpc_close_after_send句に"Y"を指定してください。

08-53以降のTP1インバウンド連携機能では，RPC受信コネクションの最大同時接続数（Connector属性ファイルのmax_connectionsプロパティ）のデフォルト値が10から64に変更になりました。

08-53以降のTP1インバウンド連携アダプタでは，使用するスレッド数，ファイルディスクリプタ数，およびポート数が08-50と異なります。08-50から08-53以降のバージョンに移行する場合は，再度リソースを見積もり直してください。

(77)　javax.servlet.http.HttpServletRequestインタフェースのgetSessionメソッドでスローされる例外の変更

web.xmlに指定したエラーページ内で，データベースセッションフェイルオーバ機能の抑止によってデータベースセッションフェイルオーバ機能が無効となったリクエストに対して，javax.servlet.http.HttpServletRequestインタフェースのgetSession()メソッド，またはgetSession(boolean create)メソッドを呼び出した時にスローされる例外は，バージョンごとに異なります。バージョンごとにスローされる例外を次に示します。

08-53以前
com.hitachi.software.web.dbsfo.DatabaseAccessException

08-70以降
com.hitachi.software.web.dbsfo.SessionOperationException

08-70以降で08-53以前と同じ例外をスローさせる場合は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に次のパラメタを設定する必要があります。

パラメタ名

webserver.dbsfo.exception_type_backcompat

値

true

(78)　データベースセッションフェイルオーバ機能での完全性保障モードの変更

08-70以降のデータベースセッションフェイルオーバ機能では，完全性保障モードを無効にする機能をサポートしました。08-53以前は，完全性保障モードは常に有効でしたが，08-70以降ではデフォルトで無効になります。有効にする場合，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に次のプロパティを設定する必要があります。

パラメタ名

webserver.dbsfo.integrity_mode.enabled

値

true

12.1.4　J2EEサーバまたはバッチサーバの作業ディレクトリのディスク容量の確認

J2EEサーバまたはバッチサーバの作業ディレクトリ用に十分なディスク容量があるかを確認します。バッチサーバの場合は，「J2EEサーバ」を「バッチサーバ」と読み替えてください。

旧バージョンからの移行で幾つかの移行コマンドを実行する必要がありますが，移行コマンドを実行すると，J2EEサーバの作業ディレクトリ内のファイルを変換する前にバックアップを作成します。バックアップはJ2EEサーバの作業ディレクトリ以下に作成されます。また，移行コマンドを実行すると，バックアップ分の容量に加えて，J2EEサーバの作業ディレクトリ自体のサイズも大きくなります。

これらの理由から，移行の前に作業ディレクトリに割り当てられているディスク領域の容量が十分かどうかを確認してください。バックアップと移行後の作業ディレクトリのサイズは次のとおりです。

なお，ここでのバックアップとは，バックアップ作業ディレクトリとバックアップRARディレクトリを示します。詳細については，「12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行」，および「12.1.8　リソースアダプタの移行コマンドの実行」を参照してください。

旧バージョンでのJ2EEサーバの作業ディレクトリのサイズがNバイトの場合，バックアップ領域のサイズは，次の計算式で算出してください。

N×（cjenvupdateコマンドによって作業ディレクトリが移行される場合は1，移行されない場合は0）＋N×（DB Connectorを使用している場合は1，使用していない場合は0）+N×（リソースアダプタを使用している場合は，バージョンアップするリソースアダプタの数）

また，旧バージョンでのJ2EEサーバの作業ディレクトリのサイズがNバイトの場合，作業ディレクトリ自体の増加分のサイズは次の計算式で算出してください。

N×（cjenvupdateコマンドによって作業ディレクトリが移行される場合は1，移行されない場合は0）＋N×（DB Connectorを使用している場合は1，使用していない場合は0）+N×（リソースアダプタを使用している場合は，バージョンアップするリソースアダプタの数）

注意

移行するためには，J2EEサーバの作業ディレクトリが割り当てられているディスクの空き容量が，バックアップ領域分と作業ディレクトリ自体の増加分を足した値よりも大きい必要があります。なお，移行が完了したあと，バックアップ領域は削除できます。

12.1.5　移行前の確認

移行前に，アプリケーションサーバの動作環境，および動作状態を確認します。次に確認項目を示します。

運用管理サーバ（Management Serverだけ起動するマシン）を利用するシステム構成の場合，運用管理サーバにインストールしているアプリケーションサーバは08-70に移行する必要があります。

旧バージョンのアプリケーションサーバが終了していることを確認してください。アプリケーションサーバの全構成ソフトウェアを終了させます。

Microsoft IISを使用している場合は，Microsoft IISを終了させます。

アプリケーションサーバ 06-50より前で，J2EEサーバのスタンダードモード，アドバンスドモードでデータソースを使用していた場合には，移行する前に，セットアップされているすべてのJ2EEサーバで，インポートされているすべてのデータソースの設定が正しく行われていること，接続テストに成功することを必ず確認してください。正しく設定されていないために接続テストに失敗するデータソースは，削除するか，または設定を見直して接続テストに成功するようにしてください。
接続テストに失敗するデータソースが存在する状態で，アップグレードインストールした場合には，移行したDB ConnectorおよびJ2EEサーバが停止できなくなるので，注意してください。停止できなくなった場合は，保守員に連絡してください。

12.1.6　定義などのバックアップ

移行前に定義ファイルなどのバックアップを取ります。バックアップを取るディレクトリを次の表に示します。

表12-14　バックアップを取るディレクトリ

機能
バックアップを取るディレクトリ

Management Server／統合ユーザ管理

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager

UNIXの場合
/opt/Cosminexus/manager

J2EEサーバ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥usrconf
J2EEサーバ用作業ディレクトリ

UNIXの場合
/opt/Cosminexus/CC/server/usrconf
J2EEサーバ用作業ディレクトリ

バッチサーバ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥usrconf
バッチサーバ用作業ディレクトリ

UNIXの場合
/opt/Cosminexus/CC/server/usrconf
バッチサーバ用作業ディレクトリ

サーバ管理コマンド

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥admin¥usrconf

UNIXの場合
/opt/Cosminexus/CC/admin/usrconf

Webサーバ連携

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector

UNIXの場合
/opt/Cosminexus/CC/web/redirector

12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行

ここでは，J2EEサーバおよびバッチサーバの移行コマンドであるcjenvupdateコマンドの実行について説明します。バッチサーバの場合は，「J2EEサーバ」を「バッチサーバ」と読み替えてください。

＜この項の構成＞

(1)　バックアップ作業ディレクトリ

(2)　J2EEサーバの移行方法

(1)　バックアップ作業ディレクトリ

J2EEサーバの移行コマンドを実行すると，J2EEサーバの作業ディレクトリ内のファイルを変換する前にバックアップを作成します。このマニュアルでは，バックアップされた作業ディレクトリのことを，バックアップ作業ディレクトリと呼びます。バックアップ作業ディレクトリには，移行前の情報（ファイル）が残ります。移行コマンドの実行が終了したとき，バックアップ作業ディレクトリは自動的に削除されません。

注意

Windowsで，作業ディレクトリが「・・・¥<ディレクトリ名>」の場合，バックアップ作業ディレクトリは，「・・・¥<ディレクトリ名>¥<ディレクトリ名>_old」になります。例えば，作業ディレクトリが「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」の場合，バックアップ作業ディレクトリは，「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥public_old」になります。

UNIXで，作業ディレクトリが「・・・/<ディレクトリ名>」の場合，バックアップ作業ディレクトリは，「・・・/<ディレクトリ名>/<ディレクトリ名>_old」になります。例えば，作業ディレクトリが「/opt/Cosminexus/CC/server/public」の場合，バックアップ作業ディレクトリは，「/opt/Cosminexus/CC/server/public/public_old」になります。

作業ディレクトリの移行が必要ないバージョンからのバージョンアップの場合，cjenvupdateコマンドは作業ディレクトリの移行は行いません。この場合，バックアップ作業ディレクトリは作成されません。

(2)　J2EEサーバの移行方法

cjenvupdateコマンドを実行します。cjenvupdateコマンドの実行形式を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥bin¥cjenvupdate

UNIXの場合
/opt/Cosminexus/CC/server/bin/cjenvupdate

cjenvupdateコマンドを実行すると，作業ディレクトリおよびユーザ定義ファイルが移行されます。なお，cjenvupdateコマンドのログは，06-00以降，次の場所に出力されます。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs

UNIXの場合
/opt/Cosminexus/CC/logs

cjenvupdateコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjenvupdate（作業ディレクトリおよびユーザ定義ファイルの移行）」を参照してください。

12.1.8　リソースアダプタの移行コマンドの実行

ここでは，リソースアダプタの移行コマンドであるcjrarupdateコマンドの実行について説明します。バッチサーバの場合は，「J2EEサーバ」を「バッチサーバ」と読み替えてください。

＜この項の構成＞

(1)　バックアップRARディレクトリ

(2)　アプリケーションサーバ 06-00以降からの移行

(1)　バックアップRARディレクトリ

リソースアダプタの移行コマンドを実行すると，J2EEサーバの作業ディレクトリ内のファイルを変換する前にバックアップを作成します。このマニュアルでは，バックアップされた作業ディレクトリのことを，バックアップRARディレクトリと呼びます。バックアップRARディレクトリには，移行前の情報（ファイル）が残ります。リソースアダプタの移行コマンドの実行が終了したとき，バックアップRARディレクトリは自動的に削除されません。

また，リソースアダプタの移行コマンドを複数回実行する場合（例えば，DB Connector用に1回とuCosminexus TP1 Connector用に1回の合計2回実行する），バックアップRARディレクトリはコマンド実行ごとに生成され，最終的には複数残ります。

(a)　Windowsの場合

Windowsの場合のバックアップRARディレクトリの例，および移行処理に失敗した場合に自動で回復する方法について説明します。

バックアップRARディレクトリの例
作業ディレクトリが「・・・¥<ディレクトリ名>」の場合，バックアップRARディレクトリは，「・・・¥<ディレクトリ名>¥rarupdate_bk」になります。例を次に示します。

作業ディレクトリが「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」の場合，バックアップRARディレクトリは「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥rarupdate_bk」になります。

作業ディレクトリが「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」で，すでにバックアップRARディレクトリ「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥rarupdate_bk」が作成されている場合，既存のバックアップディレクトリは「<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥rarupdate_bk_0000000[n]」（nは17けたの番号で年月日時間の情報）にリネームされたあと，新たにバックアップRARディレクトリが作成されます。

移行処理に失敗した場合に自動で回復する方法
移行処理に失敗した場合に自動で回復するには，cjrarupdateコマンドに引数-recoverfromを指定して実行してください。引数-recoverfromには，バックアップ格納先ディレクトリを指定します。バックアップ処理の開始時，および完了時には，メッセージが出力されます。また，引数-recoverfromに指定したバックアップ格納先ディレクトリが不正な場合，および回復処理に失敗した場合，エラーメッセージが出力されます。

(b)　UNIXの場合

UNIXの場合のバックアップRARディレクトリの例，および移行処理に失敗した場合に自動で回復する方法について説明します。

バックアップRARディレクトリの例
作業ディレクトリが「・・・/<ディレクトリ名>」の場合，バックアップRARディレクトリは，「・・・/<ディレクトリ名>/rarupdate_bk」になります。例を次に示します。

作業ディレクトリが「/opt/Cosminexus/CC/server/public」の場合，バックアップRARディレクトリは「/opt/Cosminexus/CC/server/public/rarupdate_bk」になります。

作業ディレクトリが「/opt/Cosminexus/CC/server/public」で，すでにバックアップRARディレクトリ「/opt/Cosminexus/CC/server/public/rarupdate_bk」が作成されている場合，既存のバックアップディレクトリは「/opt/Cosminexus/CC/server/public/rarupdate_bk_0000000[n]」（nは17けたの番号で年月日時間の情報）にリネームされたあと，新たにバックアップRARディレクトリが作成されます。

移行処理に失敗した場合に自動で回復する方法
移行処理に失敗した場合に自動で回復するには，cjrarupdateコマンドに引数-recoverfromを指定して実行してください。引数-recoverfromには，バックアップ格納先ディレクトリを指定します。バックアップ処理の開始時，および完了時には，メッセージが出力されます。また，引数-recoverfromに指定したバックアップ格納先ディレクトリが不正な場合，および回復処理に失敗した場合，エラーメッセージが出力されます。

(2)　アプリケーションサーバ 06-00以降からの移行

cjrarupdateコマンドを実行します。DB Connector，およびバージョンアップする各リソースアダプタに対して，一回ずつcjrarupdateコマンドを実行します。

cjrarupdateコマンドの実行形式を次に示します。

DB Connectorを使用している場合

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥bin¥cjrarupdate -type dbconnector

UNIXの場合
/opt/Cosminexus/CC/server/bin/cjrarupdate -type dbconnector

DB Connector以外のリソースアダプタを使用している場合

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥bin¥cjrarupdate -type rar -f <リソースアダプタのパス>

UNIXの場合
/opt/Cosminexus/CC/server/bin/cjrarupdate -type rar -f <リソースアダプタのパス>

なお，cjrarupdateコマンドのログは，次の場所に出力されます。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥logs

UNIXの場合
/opt/Cosminexus/CC/logs

cjrarupdateコマンドの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjrarupdate（リソースアダプタのバージョンアップ）」を参照してください。

注意

cjrarupdateコマンドを同時に実行すると正しく環境が移行されないことがあります。コマンドを同時に実行しないでください。

複数のリソースアダプタを使用している場合，cjrarupdateコマンドを1回実行して，すべてのリソースアダプタを一括で移行できます。また，バックアップRARディレクトリのディレクトリパスを明示的に指定できます。

TP1/Message Queue-Accessを移行する場合に，新しいRARファイルが同一バージョンと認識されることがあります。その場合は-forceオプションを指定して強制的に移行処理を実行してください。

cjrarupdateコマンドに引数-recoverfromを指定して，J2EEアプリケーションに含めて使用するリソースアダプタを自動で回復する場合，移行処理に失敗したときに，回復が完了するまでJ2EEサーバに対する操作を実行しないでください。回復が完了する前にJ2EEサーバに対する操作を実行すると，回復処理が正しく実行されないことがあります。

12.1.9　Management Serverの移行コマンドの実行

ここでは，Management Serverの移行コマンドであるmngsvrupdateコマンドの実行について説明します。

Management Serverが動作するホストでmngsvrupdateコマンドを実行します。運用管理ドメイン内のすべてのホストを一括して変更します。mngsvrupdateコマンドの実行形式を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥bin¥mngsvrupdate d2r

UNIXの場合
/opt/Cosminexus/manager/bin/mngsvrupdate d2r

注意

mngsvrupdateコマンドを同時に実行すると正しく環境が移行されないことがあります。コマンドを同時に実行しないでください。

12.1.10　手動による定義などの修正

旧バージョンから移行する場合に，手動で定義などの修正が必要な項目について説明します。

手動で定義などの修正が必要な項目（アプリケーションサーバ Version 6からの移行）
アプリケーションサーバ Version 6から移行する場合に，手動で定義などの修正が必要な項目を次の表に示します。

表12-15　手動で定義などの修正が必要な項目（アプリケーションサーバ Version 6からの移行）

分類
修正項目
06-71
06-70
06-51/
06-50
06-02/
06-00

Management
Server
(1)　論理サーバの起動順序，および前提となる論理サーバの変更
－
－
－
○

(2)　トランザクションサービスのインプロセス化
○
○
○
○

(3)　Management Server用のネーミングサービスの設定変更
○
○
○
○

(4)　論理サーバの起動／停止の設定の変更
○
○
○
○

(5)　J2EEアプリケーションとリソースの再インポート
○
○
○
○

(6)　論理サーバの設定情報の再読み込み
○
○
○
○

(7)　論理サーバの環境変数定義の再設定
○
○
○
○

(8)　JP1イベントメッセージマッピングファイルの再設定
○
○
○
○

(9)　Smart Composer機能の定義変更
○
○
○
－

(10)　論理サーバの環境設定情報の変更
○
○
○
○

(11)　snapshotログ収集先対象リストファイルの再設定
○
○
○
○

(12)　Management Serverおよび運用管理エージェントのサービス再設定
○
○
○
○

(13)　論理サーバごとの強制停止監視時間の設定の追加
○
○
○
－

(14)　J2EEサーバおよびSFOサーバの起動パラメタでの単位の変更
○
○
○
○

(15)　Smart Composer機能で使用するコマンドのメッセージの出力先変更
○
○
○
－

(30)　OutOfMemoryError発生時の運用管理エージェントの動作変更
○
○
○
○

(31)　負荷分散機のCookieスイッチング機能のモード変更
○
－
－
－

J2EEサーバ
(16)　Unshareable指定時のコネクションアソシエーションのプロパティ追加
－
－
－
○

(17)　セキュリティポリシーファイルの変更
○
○
○
○

(18)　統合ユーザ管理のタグライブラリの入れ替え
○
○
○
○

(19)　デフォルトエラーページのスタックトレース表示
－
－
○
○

(20)　リダイレクタへのデータ送信処理のタイムアウト追加
○
○
○
○

(21)　ユーザスレッドの生成に必要な権限の追加
－
－
○
○

(22)　セッションIDへのサーバIDの付加
－
－
○
○

(23)　RMIレジストリが使用するポート番号の追加
○
○
○
○

(24)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し
○
○
○
○

SFOサーバ
(25)　SFOサーバの移行
○
○
○
－

Webサーバ連携
(26)　リダイレクタのログ出力先変更
－
－
－
○

(27)　Webコンテナへのデータ送信処理のタイムアウト追加
○
○
○
○

(28)　リダイレクタの保守用トレースログの面数変更
○
○
○
－

EJBクライアント
(29)　ログ出力先の設定
○
○
－
－

（凡例）　○：修正が必要　－：該当しない

手動で定義などの修正が必要な項目（アプリケーションサーバ Version 7からの移行）
アプリケーションサーバ Version 7から移行する場合に，手動で定義などの修正が必要な項目を次の表に示します。

表12-16　手動で定義などの修正が必要な項目（アプリケーションサーバ Version 7からの移行）

分類
修正項目
07-60
07-50
07-10
07-00

Management
Server
(5)　J2EEアプリケーションとリソースの再インポート
○
○
○
○

(6)　論理サーバの設定情報の再読み込み
○
○
○
○

(7)　論理サーバの環境変数定義の再設定
○
○
○
○

(8)　JP1イベントメッセージマッピングファイルの再設定
○
○
○
○

(9)　Smart Composer機能の定義変更
○
○
○
○

(10)　論理サーバの環境設定情報の変更
○
○
○
○

(11)　snapshotログ収集先対象リストファイルの再設定
○
○
○
○

(12)　Management Serverおよび運用管理エージェントのサービス再設定
－
－
○
○

(13)　論理サーバごとの強制停止監視時間の設定の追加
○
○
○
○

(14)　J2EEサーバおよびSFOサーバの起動パラメタでの単位の変更
○
○
○
○

(15)　Smart Composer機能で使用するコマンドのメッセージの出力先変更
○
○
○
○

(30)　OutOfMemoryError発生時の運用管理エージェントの動作変更
○
○
○
○

(31)　負荷分散機のCookieスイッチング機能のモード変更
○
○
○
○

J2EEサーバ
(24)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し
○
○
○
○

SFOサーバ
(25)　SFOサーバの移行
－
－
○
○

EJBクライアント
(29)　ログ出力先の設定
－
－
－
○

（凡例）　○：修正が必要　－：該当しない

手動で定義などの修正が必要な項目（アプリケーションサーバ Version 8からの移行）
アプリケーションサーバ Version 8から移行する場合に，手動で定義などの修正が必要な項目を次の表に示します。

表12-17　手動で定義などの修正が必要な項目（アプリケーションサーバ Version 8からの移行）

分類 | 修正項目 | 08-53 | 08-50 | 08-00
Management Server | (5)　J2EEアプリケーションとリソースの再インポート | － | ○ | ○
(6)　論理サーバの設定情報の再読み込み | － | ○ | ○
(7)　論理サーバの環境変数定義の再設定 | － | ○ | ○
(8)　JP1イベントメッセージマッピングファイルの再設定 | － | ○ | ○
(9)　Smart Composer機能の定義変更 | － | ○ | ○
(10)　論理サーバの環境設定情報の変更 | － | ○ | ○
(11)　snapshotログ収集先対象リストファイルの再設定 | － | ○ | ○
(13)　論理サーバごとの強制停止監視時間の設定の追加 | － | ○ | ○
(30)　OutOfMemoryError発生時の運用管理エージェントの動作変更 | － | ○ | ○
(31)　負荷分散機のCookieスイッチング機能のモード変更 | － | ○ | ○
J2EEサーバ | (32)　TP1インバウンド連携機能の同期点待ち受けポートの追加 | － | ○ | ○
(33)　データベースセッションフェイルオーバ機能のデータベーステーブルの再作成 | ○ | ○ | ○
(34)　データベースセッションフェイルオーバ機能でのDB Connectorに設定するステートメントプールの数の変更 | ○ | ○ | ○

（凡例）　○：修正が必要　－：該当しない

次に修正項目の詳細について説明します。なお，表の「修正項目」の項番は，説明の項番と対応しています。

＜この項の構成＞

(1)　論理サーバの起動順序，および前提となる論理サーバの変更

(2)　トランザクションサービスのインプロセス化

(3)　Management Server用のネーミングサービスの設定変更

(4)　論理サーバの起動／停止の設定の変更

(5)　J2EEアプリケーションとリソースの再インポート

(6)　論理サーバの設定情報の再読み込み

(7)　論理サーバの環境変数定義の再設定

(8)　JP1イベントメッセージマッピングファイルの再設定

(9)　Smart Composer機能の定義変更

(10)　論理サーバの環境設定情報の変更

(11)　snapshotログ収集先対象リストファイルの再設定

(12)　Management Serverおよび運用管理エージェントのサービス再設定

(13)　論理サーバごとの強制停止監視時間の設定の追加

(14)　J2EEサーバおよびSFOサーバの起動パラメタでの単位の変更

(15)　Smart Composer機能で使用するコマンドのメッセージの出力先変更

(16)　Unshareable指定時のコネクションアソシエーションのプロパティ追加

(17)　セキュリティポリシーファイルの変更

(18)　統合ユーザ管理のタグライブラリの入れ替え

(19)　デフォルトエラーページのスタックトレース表示

(20)　リダイレクタへのデータ送信処理のタイムアウト追加

(21)　ユーザスレッドの生成に必要な権限の追加

(22)　セッションIDへのサーバIDの付加

(23)　RMIレジストリが使用するポート番号の追加

(24)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し

(25)　SFOサーバの移行

(26)　リダイレクタのログ出力先変更

(27)　Webコンテナへのデータ送信処理のタイムアウト追加

(28)　リダイレクタの保守用トレースログの面数変更

(29)　ログ出力先の設定

(30)　OutOfMemoryError発生時の運用管理エージェントの動作変更

(31)　負荷分散機のCookieスイッチング機能のモード変更

(32)　TP1インバウンド連携機能の同期点待ち受けポートの追加

(33)　データベースセッションフェイルオーバ機能のデータベーステーブルの再作成

(34)　データベースセッションフェイルオーバ機能でのDB Connectorに設定するステートメントプールの数の変更

(1)　論理サーバの起動順序，および前提となる論理サーバの変更

06-50以降から論理サーバとしてSFOサーバが追加され，論理サーバの起動順序が「SFOサーバ→J2EEサーバ」に変更されました。SFOサーバを使用する場合には，J2EEサーバの前に起動するようにしてください。

運用管理ドメイン全体の論理サーバの起動順序は，運用管理ポータルの「論理サーバの起動／停止」で設定できます。論理サーバごとに数値（デフォルト値があります）を設定し，値の小さなものから起動されるようにします。各論理サーバで「前提となる論理サーバ」を設定している場合は，該当する論理サーバの起動順序が前提の論理サーバより先になっていないか注意してください。

運用管理ドメイン全体の論理サーバの起動順序の設定については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「11.　論理サーバの起動／停止」を参照してください。

(2)　トランザクションサービスのインプロセス化

トランザクションサービスをJ2EEサーバとは別のプロセス（アウトプロセス）で起動していた場合，07-00以降はJ2EEサーバ起動時にインプロセスで起動されるのでそれに合わせて設定を変更してください。

Management Serverの運用管理ポータルでシステムを構築する場合には，次の方法で設定を変更してください。

トランザクションサービスをインプロセスで起動する場合には，論理OTSが使用していたスマートエージェントは不要となります。論理OTS以外の論理サーバがスマートエージェントを使用していない場合には，［トランザクションの設定］画面で，「利用するスマートエージェント」を「設定しない」と選択します。

不要となった論理OTSと論理TCSは，「運用管理ドメインの構成定義」で削除します。

設定の変更後は，Management Serverを再起動します。

ファイル編集とコマンド実行でシステムを構築する場合の設定の変更方法については，「13.2　インプロセストランザクションサービスへの移行」を参照してください。

(3)　Management Server用のネーミングサービスの設定変更

07-00以降は，Management Server用にネーミングサービスを起動する必要がなくなるため，次のように設定を変更することをお勧めします。

論理ネーミングサービスの削除
Management Serverのほかに論理ネーミングサービスを使用しているプロセスがない場合には，運用管理ポータルの「運用管理ドメインの構成定義」で論理ネーミングサービスを削除してください。また，論理ネーミングサービスを定義するために作成したホストにほかの論理サーバが定義されていない場合には，そのホストも削除してください。

運用監視エージェントのプロパティの変更
07-00以降，Management Server用のネーミングサービスのホストとポート番号を設定する，mngagent.naming.hostキーとmngagent.naming.portキーは設定不要となり，設定されていても値は無効になります。
また，通信ポートの固定とIPアドレスの固定に使用していた，vbroker.se.iiop_tp.scm.iiop_tp.listener.portキーとvbroker.se.iiop_tp.hostキーの設定は非推奨になります。これらのプロパティの設定は有効ですが，それぞれmngagent.connector.portキーとmngagent.connector.hostキーに変更することをお勧めします。
なお，これらの変更は，設定情報の配布を実施すると自動で行われます。

Smart Composer機能でシステムを構築している場合に，Management Server用のネーミングサービスを削除する方法については，「(9)　Smart Composer機能の定義変更」を参照してください。

(4)　論理サーバの起動／停止の設定の変更

旧バージョンで，論理サーバの起動と停止の設定を更新（運用管理ポータルの「論理サーバの起動／停止」で設定を更新）していなかった場合，起動または停止の監視時間，自動再起動回数が，07-00以降のデフォルト値に変更されます。

論理サーバ | 変更内容
パフォーマンストレーサ | ［起動／停止の設定］画面の「停止監視時間」の値が「1分」から「10分」に変更されます。
［起動／停止の設定］画面の「自動再起動回数」の値が「5回」から「1回」に変更されます。
J2EEサーバ | ［起動／停止の設定］画面の「起動監視時間」の値が「1分」から「10分」に変更されます。

旧バージョンと同等の動作をさせるためには，設定を変更する必要があります。

(5)　J2EEアプリケーションとリソースの再インポート

運用管理ドメイン内のアプリケーションサーバをアップグレードインストールし，J2EEサーバの移行作業を実施する場合には次のことに注意してください。

06-50よりも前のManagement Serverで，スタンダードモード，アドバンスドモードのJ2EEサーバに対してデータソースをインポートしていた場合，次の作業を実施する必要があります。

運用管理ポータルの「論理サーバの起動／停止」で，該当するJ2EEサーバを起動する。

サーバ管理コマンドで，インポートしていたデータソースから移行されたリソースアダプタをエクスポートし，サーバ管理コマンドを終了する。

サーバ管理コマンドでエクスポートしたリソースアダプタを，運用管理ポータルでインポートする。

06-50よりも前のスタンダードモード，アドバンスドモードのJ2EEサーバで，運用管理ポータルの「論理サーバのアプリケーション管理」でインポートしたJ2EEアプリケーションがデータソースを使用していた場合，次の作業を実施する必要があります。

運用管理ポータルの「論理サーバの起動／停止」で，該当するJ2EEサーバを起動する。

サーバ管理コマンドで，J2EEアプリケーションをエクスポートし，サーバ管理コマンドを終了する。

運用管理ポータルの「論理サーバのアプリケーション管理」で，エクスポートしたJ2EEアプリケーションをManagement Serverに登録する。

運用管理ポータルの「論理サーバのアプリケーション管理」で，該当するJ2EEアプリケーションを停止していない場合は停止し，削除する。

登録したJ2EEアプリケーションを，該当するJ2EEサーバに新規インポートする。

運用管理ポータルの「論理サーバのアプリケーション管理」では，次に示すJ2EEアプリケーションをインポート，または開始できません。

06-50以降にアップグレードした1.4モード（06-71までのスタンダードモード，アドバンスドモード）のJ2EEサーバに対して，データソースを参照している実行時情報付きのJ2EEアプリケーション

データソースからリソースアダプタへの移行については，「12.1.3(22)　1.4モードのデータソース廃止」を参照してください。

(6)　論理サーバの設定情報の再読み込み

Management Serverを使用している場合，移行後にManagement Serverを最初に起動したときに，運用管理ドメインに構成定義された既存の論理J2EEサーバおよびSFOサーバに対して，接続先ホストから設定情報の読み込みを実施する必要があります。移行の手順中で，既存の論理J2EEサーバおよびSFOサーバの設定ファイルの内容が自動的に変更されるためです。

設定情報の読み込みは，Management Serverの運用管理ポータルの「論理サーバの環境設定」，またはmngsvrutilコマンドのサブコマンドreloadで実施できます。「論理サーバの環境設定」については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「7.5.2　「論理サーバの環境設定」での規則」を参照してください。また，mngsvrutilコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「mngsvrutil（Management Serverの運用管理コマンド）」を参照してください。

注意

06-50より前のバージョンから移行して，論理J2EEサーバの設定情報の再読み込みをした場合で，［トランザクションの設定］画面の「タイムアウト時間」に「設定しない」を指定しているときは，設定画面には0秒が表示されます。設定値を見直し，適切な値を指定してください。

(7)　論理サーバの環境変数定義の再設定

Management Serverを使用している場合，運用管理ポータルの「論理サーバの起動／停止」で使用する環境変数を設定していたときは，新たにインストールされたadminagent.xmlファイルに環境変数を再設定する必要があります。adminagent.xmlは次のディレクトリに格納されています。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config

UNIXの場合
/opt/Cosminexus/manager/config

adminagent.xmlでの環境変数の設定については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.5　adminagent.xml（運用管理エージェント設定ファイル）」を参照してください。

注意

adminagent.xmlはインストール時に上書きされ，既存のファイルはadminagent.xml.bakに退避されます。

adminagent.xmlはバージョンアップによって変更されている可能性があります。adminagent.xmlを編集して運用している場合は，新たにインストールされたファイルに，以前に編集した項目を再編集してください。

(8)　JP1イベントメッセージマッピングファイルの再設定

次に示すJP1イベントメッセージマッピングファイルは，アップグレードインストール時に上書きされないで旧バージョンのファイルが引き継がれます。

Management Server用メッセージマッピングファイル
mserver.jp1event.system.mapping.properties

J2EEサーバ共通用メッセージマッピングファイル
manager.jp1event.system.mapping.properties

J2EEサーバ個別用メッセージマッピングファイル
manager.<論理サーバ名>.jp1event.system.mapping.properties

(a)　JP1イベントメッセージマッピングファイルをカスタマイズしないで使用していた場合

次の場所に格納されているManagement Server用メッセージマッピングファイルとJ2EEサーバ共通用メッセージマッピングファイルを修正しないで，旧バージョンのファイルに上書きしてください。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥templates

UNIXの場合
/opt/Cosminexus/manager/config/templates

(b)　JP1イベントメッセージマッピングファイルをカスタマイズして使用していた場合

次の場所に格納されているManagement Server用メッセージマッピングファイルとJ2EEサーバ共通用メッセージマッピングファイルをコピーして，旧バージョンのときと同様にカスタマイズした上で，旧バージョンのファイルに上書きしてください。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥templates

UNIXの場合
/opt/Cosminexus/manager/config/templates

(9)　Smart Composer機能の定義変更

Smart Composer機能でシステムを構築している場合には，次の設定変更をお勧めします。

Management Server用のネーミングサービスの削除
07-00以降，旧バージョンでのcmx_build_modelコマンドの実行時に自動的に作成していたManagement Server用のネーミングサービス「cmx_naming」は不要になります。Smart Composer機能以外でこのネーミングサービスを利用していない場合は，運用管理ポータルを使用して削除してください。また，このネーミングサービスを定義するためにSmart Composerが作成したホスト「localhost」も，必要がなければ削除してください。なお，運用管理ポータルについては，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」を参照してください。
なお，07-50以降では，cmx_delete_systemコマンドの-nsオプションを使用すると，Webシステムに関連づいていない論理サーバやホストを一括で削除できます。-nsオプションの対象となる論理サーバやホストは，運用管理ポータル，mngsvrutilコマンドで追加したSmart Composer機能のfree-tier内に設定されている論理サーバ，およびホストです。

簡易構築定義ファイルと構成変更定義ファイルのスキーマのバージョンの変更
07-00よりも前のバージョンで作成した簡易構築定義ファイルと構成変更定義ファイルはそのまま利用できますが，07-00以降で追加された機能（負荷分散機の冗長構成機能など）を使用する場合は，スキーマのバージョンを最新に変更する必要があります。バージョンごとの変更点を次に示します。

07-00（スキーマのバージョン2.0）以降の変更点
スキーマのバージョン2.0以降では，ホストはWebシステムの外側に定義します。スキーマのバージョンを2.0以降に変更する場合は，ホストの定義位置も変更してください。

07-50（スキーマのバージョン2.5）以降の変更点
スキーマのバージョン2.5以降では，一部のタグのタグ名，および<host-ref>タグの指定値が変更になっています。スキーマのバージョン2.5以降に変更または削除となるタグのタグ名を次の表に示します。

表12-18　スキーマのバージョン2.5以降に変更または削除となるタグのタグ名

分類 | スキーマのバージョン2.5より前のタグ名 | スキーマのバージョン2.5以降のタグ名
負荷分散機の定義 | management-ip | management-host
redundant-management-ip | redundant-management-host
ホストの定義 | name | 削除
operational-ip | host-name
management-ip | agent-host

なお，スキーマのバージョン2.5以降では，ホストの定義の<name>タグが削除となったため，<host-ref>タグの指定値は，ホストの定義の<name>タグから，ホストの定義の<host-name>タグの指定値に変更になります。
スキーマのバージョンを2.5以降に変更する場合は，表12-18のタグのタグ名と，<host-ref>タグの指定値も変更してください。

パフォーマンストレーサのトレース取得レベルの変更
07-00から機能レイヤの詳細レベルのトレースを取得できるようになりました。詳細レベルのトレースを取得する場合は，物理ティアのPrfTraceLevelパラメタの設定値を「55555554」から「DETAIL」に変更してください。また，「DETAIL」に設定したあとトレース取得レベルを標準に戻す場合は，「00000000」ではなく「STANDARD」に設定してください。

(10)　論理サーバの環境設定情報の変更

論理サーバの環境設定情報の変更について説明します。

07-00よりも前のバージョンで，論理サーバの環境設定情報を更新（運用管理ポータルの「論理サーバの環境設定」で設定を更新）していなかった場合，次の環境設定情報が，07-00以降のデフォルト値に変更されます。

論理サーバ | 変更内容
J2EEサーバ | ［J2EEサーバの基本設定］画面の「Managementイベントの発行」の値が「しない」から「する」に変更されます。
SFOサーバ | ［SFOサーバの基本設定］画面の「Managementイベントの発行」の値が「しない」から「する」に変更されます。
Webサーバ | ［リダイレクタの設定］画面の「保守用のトレースログ」の「ファイル面数」の値が「16面」から「4面」に変更されます。

旧バージョンと同等の動作をさせるためには，設定を変更する必要があります。

SFOサーバを使用している場合には，SFOサーバの保守用ログの出力モードを指定する必要があります。［コンテナの設定］画面の「拡張パラメタ」で，次の設定を追加してください。
ejb.server.log.mode=6
add.jvm.arg=-XX:HitachiJavaLogFileSize=256k

08-00以降の運用管理ポータルで設定情報の配布を実行すると，Hitachi Web Serverのhttpsd.confファイルのディレクティブの設定情報が更新されます。更新されるディレクティブの設定情報は，運用管理ポータルの［Webサーバの設定］画面で設定できます。更新されるディレクティブ名と［Webサーバの設定］画面の画面項目との対応を次の表に示します。

表12-19　更新されるディレクティブ名と［Webサーバの設定］画面の画面項目との対応

httpsd.confファイルのディレクティブ名 | ［Webサーバの設定］画面の画面項目
ThreadsPerChild | Webサーバの性能についての定義 | サーバスレッド数
MaxClients | 同時接続クライアント数
StartServers | サーバ起動時のサーバプロセス数
HWSKeepStartServers | サーバプロセスの稼働数の維持
KeepAliveTimeout | KeepAlive接続時の要求待ち時間
DocumentRoot | 静的コンテンツの設定 | コンテンツ格納先ディレクトリ

旧バージョンでHitachi Web Serverのhttpsd.confファイルで，表12-19に示すディレクティブを定義している場合，Webサーバの設定情報を配布する必要がないときは，配布しないでください。Webサーバの設定情報を配布する必要があるときは，運用管理ポータルの［Webサーバの設定］画面で対応する画面項目に値を指定してから設定情報を配布してください。

(11)　snapshotログ収集先対象リストファイルの再設定

snapshotログを収集する場合に，snapshotログ収集先対象リストファイル（snapshotlog.confとsnapshotlog.2.conf）を編集して使用していたときは，新たにインストールされたsnapshotログ収集先対象リストファイルでsnapshotログの収集先を再設定する必要があります。

snapshotログ収集先対象リストファイルは，次のディレクトリに格納されています。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config

UNIXの場合
/opt/Cosminexus/manager/config

snapshotログ収集先対象リストファイルの設定については，「3.3.3(3)　snapshotログの収集先のカスタマイズ」を参照してください。

注意

snapshotログ収集先対象リストファイルはバージョンアップ時に上書きされ，既存のファイルはsnapshotlog.conf.bakとsnapshotlog.2.conf.bakに退避されます。

バージョンアップによってsnapshotログの収集先が変更されることがあります。snapshotログの収集対象を編集して運用している場合は，新たにインストールされたファイルに，以前に編集した項目を再編集してください。

(12)　Management Serverおよび運用管理エージェントのサービス再設定

Management Serverおよび運用管理エージェントのサービスの設定を，サービスメニューまたはmngautorunコマンドで変更している場合，アップグレードインストール時に設定がリセットされます。その場合は，再度サービスの設定を変更してください。

(13)　論理サーバごとの強制停止監視時間の設定の追加

06-50以降のバージョンで，adminagent.properties（運用管理エージェントプロパティファイル）でadminagent.forcestop.threaddump=trueを指定している場合は，adminagent.forcestop.threaddump.timeoutの指定値より長い値，または同じ値を，「強制停止監視時間」に指定してください。「強制停止監視時間」は，論理サーバの起動と停止の設定で指定します。

07-50より前からバージョンアップした場合には，「強制停止監視時間」の値に「1分」が設定されます。「強制停止監視時間」の値を変更しないと，adminagent.forcestop.threaddump.timeoutの値は無視され，スレッドダンプ出力が「1分」で終了しない場合も強制停止されるようになります。

(14)　J2EEサーバおよびSFOサーバの起動パラメタでの単位の変更

08-00以降の運用管理ポータルでは，J2EEサーバおよびSFOサーバの［起動パラメタの設定］画面で，「初期サイズ」および「最大サイズ」の単位がメガバイトからバイトに変更になっています。なお，旧バージョンで指定した値は自動的に変換されます。

注意

運用管理ポータルから値を変更する場合に，08-00より前と同じ単位（メガバイト）で指定したいときは，値のあとにmを付けて指定してください。

(15)　Smart Composer機能で使用するコマンドのメッセージの出力先変更

08-00からSmart Composer機能で使用するコマンドのメッセージの出力先が変更になります。バージョンごとの出力先を次の表に示します。

表12-20　バージョンごとの出力先

アプリケーションサーバのバージョン | cmx_list_modelおよびcmx_list_statusコマンドの実行結果 | コマンドのメッセージ
Version 7 | 標準出力 | 標準出力または標準エラー出力
Version 8以降 | 標準出力 | 標準出力

なお，旧バージョンと同じ出力先にするためには，cmxclient.propertiesでcmx.output.modeキーの設定を変更する必要があります。cmxclient.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.4　cmxclient.properties（クライアント共通設定プロパティファイル）」を参照してください。

(16)　Unshareable指定時のコネクションアソシエーションのプロパティ追加

06-50以降，ejbserver.connectionpool.association.enabled=trueが設定されたとしても，EJBまたはサーブレット／JSPのDDの<res-sharing-scope>タグにUnshareableが指定された場合，コネクションアソシエーションは行われません。06-50より前では，同条件でコネクションアソシエーションは行われていました。追加になったプロパティを次に示します。なお，ここでは，表記の都合上，キー名の途中で改行しています。

システムプロパティのキー名称
デフォルト値
（旧バージョンと同等の値）
手順

ejbserver.connectionpool.association.
enabledDespiteUnshareableSetting
false（true）
旧バージョンと同等の動作をさせるためには，明示的にプロパティを指定する必要があります。

プロパティの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

(17)　セキュリティポリシーファイルの変更

統合ユーザ管理機能を使用している場合はセキュリティポリシーファイルの内容を見直してください。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥server¥usrconf¥<サーバ名称>¥server.policy

UNIXの場合
opt/Cosminexus/CC/server/usrconf/<サーバ名称>/server.policy

セキュリティポリシーファイルで，Webアプリケーションのコードベース（file:${ejbserver.http.root}/web/${ejbserver.serverName}/-）のアクセス権の次の内容を見直してください。設定するアクセス権の内容については，javax.security.auth.AuthPermissionクラスを参照してください。

permission javax.security.auth.AuthPermission "createLoginContext.{name}";
permission javax.security.auth.AuthPermission "getSubject";

{name}には，JAASのコンフィグレーションファイルのアプリケーション名を指定します。{name}では，任意の名前を表すのにワイルドカード「*」を使用できます。

(18)　統合ユーザ管理のタグライブラリの入れ替え

統合ユーザ管理でタグライブラリを使用している場合は，uatags.jarとuatags.tldを入れ替えてください。

uatags.jarを，WebアプリケーションのWEB-INF¥libまたはWEB-INF/libに上書きコピーします。

uatags.tldを，作成するWebアプリケーションのWEB-INFに上書きコピーします。

(19)　デフォルトエラーページのスタックトレース表示

Servlet/JSPの実行中にcatchされない例外が発生し，Webアプリケーションがそのエラーをカスタマイズしない場合，デフォルトのエラーページが生成されクライアントに送信されます。このとき，06-51よりも前のバージョンではデフォルトのエラーページにスタックトレースを出力します。06-70以降では，スタックトレースを出力するかどうかをusrconf.propertiesで設定できます（デフォルトでは出力されません）。スタックトレースを出力する場合は，usrconf.propertiesで「webserver.errorpage.stack_trace.enabled=true」を指定してください。

(20)　リダイレクタへのデータ送信処理のタイムアウト追加

07-00以降では，Webコンテナからリダイレクタへのデータ送信処理でタイムアウト機能が追加されました。usrconf.propertiesで次のキーが追加されています。

webserver.connector.ajp13.send_timeout

デフォルト値は600（秒）です。旧バージョンと同等の動作をさせるためには，0（秒）を指定する必要があります。

(21)　ユーザスレッドの生成に必要な権限の追加

ユーザスレッドの生成に必要な権限の追加について，06-71以前のバージョンではserver.policyに権限の追加を定義する必要がありましたが，07-00以降ではserver.policyにデフォルトで定義が追加されています。

ただし，06-71以前のバージョンから08-00以降のバージョンに移行する場合には，server.policyには定義が追加されません。06-71以前のバージョンから08-00以降のバージョンに移行してユーザスレッドを使用する場合は，06-71以前と同様に，server.policyを編集して定義を追加する必要があります。

server.policyで，Webアプリケーションのコードベース（file:${ejbserver.http.root}/web/${ejbserver.serverName}/-）のアクセス権に次の内容を追加します。

permission java.lang.RuntimePermission "modifyThread";
permission java.lang.RuntimePermission "modifyThreadGroup";

(22)　セッションIDへのサーバIDの付加

06-51以前では，javax.servlet.http.HttpSessionのセッションIDへサーバIDを付加する機能がデフォルトで無効でしたが，06-70以降ではデフォルトで有効になります。この機能によって，webserver.session.server_id.valueキーで指定したサーバIDがセッションIDに付加されます。セッションIDはCookie（名前はJSESSIONID）やURL書き換えによるセッション情報の管理に使用されます。

ただし，サーバIDはデフォルトではWebコンテナを実行するホストのIPアドレスとWebサーバとの通信に使用するポート番号（インプロセスHTTPサーバを使用する場合はインプロセスHTTPサーバが使用するポート番号）から生成されます。

セッションIDはクライアントに送信されるため，IPアドレスなどサーバ環境の情報を含まない値をサーバIDとして明示的に指定することをお勧めします。また，サーバIDがセッションIDに付加されることでセッションIDの文字列長は，06-51以前で，かつこの機能を使用していない場合に比べサーバIDの長さ分増加します。

06-51以前から08-00以降への移行で，セッションIDの長さの増加によって問題が発生する場合，次の対処を行ってください。

システムが負荷分散機によって複数のWebコンテナで冗長構成となっていない場合
次の設定をusrconf.propertiesに追加して，この機能を無効にしてください。
webserver.session.server_id.enabled=false

システムが負荷分散機によって複数のWebコンテナで冗長構成となっている場合
この機能を無効にしないで，セッションIDの文字列長が増加することで発生する問題に対策してください。この機能を無効にした場合の動作は保証できません。

セッションIDおよびCookieへのサーバIDの付加については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.7.6　セッションIDおよびCookieへのサーバIDの付加」を参照してください。usrconf.propertiesについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

(23)　RMIレジストリが使用するポート番号の追加

07-00以降では，RMIレジストリを使用します。RMIレジストリが使用するポート番号は，usrconf.propertiesの次のキーで指定します。

ejbserver.rmi.naming.port

なお，デフォルト値は23,152です。

(24)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し

コンストラクタServletException(String,Throwable)およびServletException(Throwable)で生成したServletExceptionオブジェクトに対して，initCause(Throwable)を呼び出せません。initCause(Throwable)を呼び出したい場合は，簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内に次のパラメタを設定する必要があります。

webserver.servlet_api.exception.getCause.backcompat=true

(25)　SFOサーバの移行

07-50以降では，メモリセッションフェイルオーバ機能を使用している場合，バージョンアップ時にSFOサーバを移行する必要があります。

注意

SFOサーバの移行作業を実施しないで，07-50より前のバージョンで構築したSFOサーバを07-50以降の環境で使用すると，SFOサーバの起動に失敗します。

Management Serverを使用しているシステムの場合は，SFOサーバの設定情報の再読み込みを実施したあとに，SFOサーバのセットアップを実施してください。SFOサーバのセットアップは，Smart Composer機能を使用して構築したシステムの場合は，SFOサーバを含むWebシステムに対して，cmx_build_systemコマンドを実行してください。cmx_build_systemコマンドについては，マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cmx_build_system（Webシステムの構築）」を参照してください。Management Serverの運用管理ポータルを使用して構築したシステムの場合は，運用管理ポータルの「運用管理ドメインの構成定義」で，SFOサーバに対してセットアップを実施してください。なお，バージョンアップ前にセットアップを実施したSFOサーバの場合，バージョンアップ後も［セットアップ］画面で「セットアップ済」と表示されますが，「セットアップ済」のSFOサーバに対しても必ずセットアップを実施してください。「運用管理ドメインの構成定義」については，マニュアル「Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド」の「7.5.1　「運用管理ドメインの構成定義」での規則」を参照してください。

Management Serverを使用していないシステムの場合は，J2EEサーバを移行する前に，サーバ管理コマンドを使用してSFOサーバを移行してください。サーバ管理コマンドを使用したSFOサーバの移行手順については，「12.1.13　メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ」を参照してください。

(26)　リダイレクタのログ出力先変更

UNIXの場合，06-50以降では，mod_jk.confのJkLogFileDirキーおよびJkTraceLogFileDirキーで指定したディレクトリにリダイレクタのログを出力します。また，06-50以降では，mod_jk.confのJkLogFileキーは使用しません。06-50以降で使用する場合，このキーの指定を削除またはコメントにする必要があります。指定が残っている場合，Hitachi Web Server起動時に警告メッセージがリダイレクタのログに出力されます。

(27)　Webコンテナへのデータ送信処理のタイムアウト追加

07-00以降では，リダイレクタからWebコンテナへのデータ送信処理でタイムアウト機能が追加され，リダイレクタ動作定義ファイルにキーが追加されました。追加されたHitachi Web Server用リダイレクタ動作定義ファイル（mod_jk.conf）とMicrosoft IIS用リダイレクタ動作定義ファイル（isapi_redirect.conf）のキーを次に示します。

ファイル名
キー名
説明

mod_jk.conf
JkConnectTimeout
デフォルト値は，30（秒）です。
旧バージョンと同等の動作をさせるためには，0（秒）を指定する必要があります。

JkSendTimeout
デフォルト値は，100（秒）です。
旧バージョンと同等の動作をさせるためには，0（秒）を指定する必要があります。

JkRequestRetryCount
デフォルト値は，3（秒）です。
旧バージョンと同等の動作をさせるためには，デフォルト値のままにしてください。

isapi_redirect.conf
connect_timeout
デフォルト値は，30（秒）です。
旧バージョンと同等の動作をさせるためには，0（秒）を指定する必要があります。

send_timeout
デフォルト値は，100（秒）です。
旧バージョンと同等の動作をさせるためには，0（秒）を指定する必要があります。

request_retry_count
デフォルト値は，3（秒）です。
旧バージョンと同等の動作をさせるためには，デフォルト値のままにしてください。

(28)　リダイレクタの保守用トレースログの面数変更

07-00以降では，次のキーで指定するリダイレクタの保守用トレースログファイルの面数のデフォルト値が，2から4に変更となります。

mod_jk.confのJkTraceLogFileNumキー（Hitachi Web Serverの場合）

isapi_redirect.confのtrace_log_file_numキー（Microsoft IISの場合）

アップグレードインストールの場合は，旧バージョンでの設定値が有効になります。旧バージョンで明示的に値を指定していなかった場合，旧バージョンと同等の動作をさせるためには，2を指定してください。

(29)　ログ出力先の設定

07-10以降，cjclstartapコマンドを使用してEJBクライアントアプリケーションを起動した場合のデフォルトのログ出力先が変更になります。このため，既存のログ出力先を移行前のディレクトリにしたい場合，ejb.client.log.directoryプロパティを設定してください。なお，07-10以降でのデフォルトのログ出力先については，「12.1.3(71)　cjclstartapコマンドの仕様変更」を参照してください。

(30)　OutOfMemoryError発生時の運用管理エージェントの動作変更

OutOfMemoryError発生時に保守調査用ログを保護したり，不安定な状態で運用管理エージェントが動作することを防いだりするため，08-50から運用管理エージェントの動作が変更になります。

08-50より前の動作
OutOfMemoryErrorが発生しても処理を続行する。

08-50以降の動作
OutOfMemoryErrorが発生したら強制終了する。

旧バージョンと同等の動作にするには，adminagentuser.cfgに次のオプションを追加してください。

add.jvm.arg=-XX:-HitachiOutOfMemoryAbort

(31)　負荷分散機のCookieスイッチング機能のモード変更

08-53から，負荷分散機のCookieスイッチング機能で使用しているスイッチングモードが，ハッシュモードからインサートモードへ変更されます。

08-53より前に，Smart Composer機能でBIG-IP v9のCookieスイッチング機能を使用してシステムを構築している場合は，cmx_delete_systemコマンドを実行してシステムを削除してから，再度，cmx_build_systemコマンドを実行してシステムを構築してください。

また，08-53以降では，簡易構築定義ファイルの<server-id-rule>タグが非推奨となります。<server-id-rule>タグに値を設定しても無視されます。

(32)　TP1インバウンド連携機能の同期点待ち受けポートの追加

08-53以降のTP1インバウンド連携機能では，同期点待ち受けポートが追加になりました。デフォルトは23900です。このため，同期点待ち受けポートを必要に応じて変更してください。複数のTP1インバウンドアダプタを使用している場合は，cjrarupdateコマンド実行後に，同期点待ち受けポートにそれぞれ別のポート番号を設定してください。

(33)　データベースセッションフェイルオーバ機能のデータベーステーブルの再作成

08-70以降のデータベースセッションフェイルオーバ機能では，データベースのアプリケーション情報テーブルとセッション情報格納テーブルのテーブル構成が08-53以前のテーブル構成と異なります。

08-70以降のバージョンに移行する場合は，08-70以降のデータベースセッションフェイルオーバ機能が提供するテーブル削除用SQLを使用してテーブルを削除してから，テーブル作成用SQLを使用してテーブルを作成してください。

(34)　データベースセッションフェイルオーバ機能でのDB Connectorに設定するステートメントプールの数の変更

08-70以降のデータベースセッションフェイルオーバ機能では，DB Connectorに設定するステートメントプールの数が変更となります。Connector属性ファイルに次のプロパティを設定してください。

プロパティ名

PreparedStatementPoolSize

値

30×J2EEサーバ内のデータベースセッションフェイルオーバ機能を使用するWebアプリケーション数

12.1.11　移行コマンドで作成されたバックアップの削除

旧バージョンから移行する場合，アプリケーションの動作確認後，手動でバックアップ作業ディレクトリ，およびバックアップRARディレクトリを削除する必要があります。バックアップ作業ディレクトリ，およびバックアップRARディレクトリを別の場所に保存しておくことをお勧めします。

移行前の作業ディレクトリ，移行後の作業ディレクトリ，バックアップ作業ディレクトリ，およびバックアップRARディレクトリの例を次の表に示します。

表12-21　ディレクトリの移行の例（Windowsの場合）

J2EEサーバのサーバ名称
移行前の作業ディレクトリ
移行後の作業ディレクトリ，およびバックアップ作業ディレクトリ

SERVERA
<Cosminexusのインストールディレクトリ>¥CC¥server¥public
（デフォルト）

変換後の作業ディレクトリ

<Cosminexusのインストールディレクトリ>¥CC¥server¥public

バックアップ作業ディレクトリ

<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥public_old

バックアップRARディレクトリ

<Cosminexusのインストールディレクトリ>¥CC¥server¥public¥rarupdate_bk

SERVERB
C:¥work_dir

変換後の作業ディレクトリ

C:¥work_dir

バックアップ作業ディレクトリ

C:¥work_dir¥work_dir_old

バックアップRARディレクトリ

C:¥work_dir¥rarupdate_bk

SERVERC

－
D:¥replication_dir

D:¥replication_dir

未使用のディレクトリは移行されません。

（凡例）

－：作業ディレクトリとして使用しているサーバがないことを示す

表12-22　ディレクトリの移行の例（UNIXの場合）

J2EEサーバのサーバ名称
移行前の作業ディレクトリ
移行後の作業ディレクトリ，およびバックアップ作業ディレクトリ

SERVERA
/opt/Cosminexus/CC/server/public
（デフォルト）

変換後の作業ディレクトリ

/opt/Cosminexus/CC/server/public

バックアップ作業ディレクトリ

/opt/Cosminexus/CC/server/public/public_old

バックアップRARディレクトリ

/opt/Cosminexus/CC/server/public/rarupdate_bk

SERVERB
/・・・/work_dir

変換後の作業ディレクトリ

/・・・/work_dir

バックアップ作業ディレクトリ

/・・・/work_dir/work_dir_old

バックアップRARディレクトリ

/・・・/work_dir/rarupdate_bk

SERVERC

－
/・・・/replication_dir

/・・・/replication_dir

未使用のディレクトリは移行されません。

（凡例）

－：作業ディレクトリとして使用しているサーバがないことを示す

上記の表の例では，アップグレードインストール前に，「SERVERA」，「SERVERB」，および「SERVERC」のJ2EEサーバがセットアップされています。「SERVERA」，および「SERVERB」ではDB Connectorを使用しています。これらのJ2EEサーバが利用している作業ディレクトリが，Windowsの場合は「<Cosminexusのインストールディレクトリ>¥CC¥server¥public」と「C:¥work_dir」，UNIXの場合は「/opt/Cosminexus/CC/server/public」と「/・・・/work_dir」です。Windowsの場合の「D:¥replication_dir」，UNIXの場合の「/・・・/replication_dir」はユーザが複製した作業ディレクトリで，J2EEサーバからは利用されていません。

このような状況でcjenvupdateコマンド，およびcjrarupdateコマンドを実行した場合，それぞれ使用中の作業ディレクトリに対して，バックアップが作成されます。アプリケーションの動作確認後，手動でバックアップを削除してください。なお，未使用の作業ディレクトリ「D:¥replication_dir」または「/・・・/replication_dir」は，移行されません。

注意

作業ディレクトリの移行が必要ないバージョンからのバージョンアップの場合，cjenvupdateコマンドは作業ディレクトリを移行しません。この場合，バックアップ作業ディレクトリは作成されません。

12.1.12　J2EEサーバまたはバッチサーバの移行コマンドで自動的に追加／変更される定義

旧バージョンからアプリケーションサーバ 08-70へ移行する場合，J2EEサーバまたはバッチサーバのユーザプロパティファイルや作業ディレクトリ内のDD情報は，旧バージョンのものが08-70の環境でもそのまま継続使用されます。ただし，新バージョンで追加された機能，およびデフォルト値が変更された機能があり，互換性を維持するために，J2EEサーバまたはバッチサーバの移行コマンドがユーザプロパティファイルのプロパティや作業ディレクトリ内のDD情報を部分的に変換します。移行コマンド実行時に追加／変更されるキーと値，およびコマンドで取得した属性ファイルに追加されるタグについて説明します。

●移行コマンドで自動的に追加／変更される定義（アプリケーションサーバ Version 6からの移行）

移行コマンド実行時に追加／変更されるキーと値，およびコマンドで取得した属性ファイルに追加されるタグを次の表に示します。

表12-23　J2EEサーバのusrconf.propertiesに自動的に追加／変更される定義（アプリケーションサーバ Version 6からの移行）

追加／変更されるキーと値
旧バージョンでの環境条件
06-71/
06-70
06-51/
06-50
06-02/
06-00

ejbserver.distributedtx.rollbackClientTxOnSystemException=true
スタンダードモード／アドバンスドモードの場合
－
－
○

ejbserver.distributedtx.ots.InProcessMode.enabled=false
グローバルトランザクションが有効の場合※
－
－
○

ejbserver.connector.logwriter.filenum=2
このキーがない場合
○
○
○

ejbserver.connector.logwriter.filesize=1048576
このキーがない場合
○
○
○

ejbserver.instrumentation.enabled=false
このキーがない場合
○
○
○

ejbserver.deploy.context.reload_scope=none
このキーがない場合
○
○
○

ejbserver.server.j2ee.feature=1.3basic
ベーシックモードの場合
○
○
○

ejbserver.server.j2ee.feature=1.4
スタンダードモード／アドバンスドモードの場合
○
○
○

ejbserver.watch.enabled=false
－
－
－
○

ejbserver.webj2ee.connectionAutoClose.enabled=false
このキーがない場合
○
○
○

webserver.container.thread_control.queue_size=10
queue_sizeは指定なし
－
－
○

ejbserver.deploy.annotations.load_check.enabled=true
－
○
○
○

webserver.container.servlet.default_mapping.enabled=true
－
○
○
○

webserver.session.delete_cookie.backcompat=true
－
○
○
○

ejbserver.logger.channels.define.MaintenanceLogFile.filenum
－
○
○
○

ejbserver.logger.channels.define.MaintenanceLogFile.filesize
－
○
○
○

ejbserver.logger.channels.define.WebServletLogFile.filenum
－
○
○
○

ejbserver.logger.channels.define.WebServletLogFile.filesize
－
○
○
○

add.jvm.arg=-XX:HitachiJavaLogFileSize
－
○
○
○

（凡例）　○：定義が自動的に追加／変更されることを示す　－：該当しない

注※　ejbserver.distributedtx.XATransaction.enabled=trueの指定がある場合です。

表12-24　J2EEサーバのusrconf.cfgに自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

追加されるキーと値
旧バージョンでの環境条件
06-71/
06-70
06-51/
06-50
06-02/
06-00

ejb.server.log.mode=6
－
○
○
○

add.class.path=<Cosminexusのインストールディレクトリ>¥c4web¥lib¥hitsaaj.jar
－
○
○
○

add.jvm.arg=-XX:-HitachiUseExplicitMemory
－
○
○
○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-25　J2EEサーバの属性ファイルに自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

追加されるタグ
旧バージョンでの環境条件
06-71/
06-70
06-51/
06-50
06-02/
06-00

Connector属性ファイル

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-name>

値

RequestQueueEnable

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-value>

値

false

スタンダードモード／アドバンスドモードの場合
－
－
○

Connector属性ファイル

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-name>

値

Warmup

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-value>

値

ejbserver.connectionpool.warmupキーの指定値（指定がない場合，true）

○
○
○

Connector属性ファイル

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-name>

値

NetworkFailureTimeout

タグ

<hitachi-connector-property>

<runtime>

<property>

<property-value>

値

計算式によって算出された値

○
○
○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

なお，NetworkFailureTimeoutの値は，次の計算式によって算出されます。

（コネクション障害検知機能 &&（コネクション障害検知タイムアウト機能
||ネットワーク障害タイムアウト機能））||
（コネクション数調節機能 && ネットワーク障害タイムアウト機能）

計算式の「&&」は論理積，「||」は論理和を表します。また，各機能の値を次に示します。

機能 | キーと値
コネクション障害検知機能 | ValidationType = 1 または 2
コネクション数調節機能 | ConnectionPoolAdjustmentInterval > 0
コネクション障害検知タイムアウト機能 | ejbserver.connectionpool.validation.timeout.enabled = true
ネットワーク障害タイムアウト機能 | ejbserver.connectionpool.NetworkFailureTimeout.enabled = true

なお，ejbserver.connectionpool.validation.timeout.enabledキー，ejbserver.connectionpool.NetworkFailureTimeout.enabledキーが設定されていなかった場合は，それぞれの値をfalseと仮定して算出されます。

表12-26　サーバ管理コマンドのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

仕様変更の項目
06-71/
06-70
06-51/
06-50
06-02/
06-00

ejbserver.cui.checkmethod.compatible=true
○
○
○

ejbserver.cui.logfile.compatible=true
○
○
○

ejbserver.deploy.annotations.load_check.enabled=true
○
○
○

（凡例）　○：定義が自動的に追加されることを示す

表12-27　J2EEサーバのserver.policyに自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

追加される定義
06-71/
06-70
06-51/
06-50
06-02/
06-00

permission javax.security.auth.AuthPermission "modifyPrivateCredentials";
○
○
○

permission java.lang.RuntimePermission "getenv.HRMDIR";
○
○
○

//
// Grant permissions to Cosminexus Service Coordinator
//
grant codeBase "file:${cosminexus.home}/CSC/lib/*" {
permission java.security.AllPermission;
};
○
○
○

（凡例）　○：定義が自動的に追加されることを示す

●移行コマンドで自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

移行コマンド実行時に追加されるキーと値を次の表に示します。

表12-28　J2EEサーバのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 07-60 | 07-50 | 07-10 | 07-00
ejbserver.deploy.context.reload_scope=none | このキーがない場合 | － | － | － | ○
ejbserver.deploy.annotations.load_check.enabled=true | － | ○ | ○ | ○ | ○
webserver.container.servlet.default_mapping.enabled=true | － | ○ | ○ | ○ | ○
webserver.session.delete_cookie.backcompat=true | － | ○ | ○ | ○ | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-29　J2EEサーバのusrconf.cfgに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 07-60 | 07-50 | 07-10 | 07-00
add.class.path=<Cosminexusのインストールディレクトリ>¥c4web¥lib¥hitsaaj.jar | － | ○ | ○ | ○ | ○
add.jvm.arg=-XX:-HitachiUseExplicitMemory | － | ○ | ○ | ○ | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-30　バッチサーバのusrconf.cfgに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 07-60 | 07-50 | 07-10 | 07-00
add.jvm.arg=-XX:-HitachiUseExplicitMemory | － | ○ | ○ | ○ | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-31　サーバ管理コマンドのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

仕様変更の項目 | 07-60 | 07-50 | 07-10 | 07-00
ejbserver.cui.checkmethod.compatible=true | － | － | ○ | ○
ejbserver.deploy.annotations.load_check.enabled=true | ○ | ○ | ○ | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-32　J2EEサーバのserver.policyに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

追加される定義
07-60
07-50
07-10
07-00

permission java.lang.RuntimePermission "getenv.HRMDIR";
－
－
○
○

//
// Grant permissions to Cosminexus Service Coordinator
//
grant codeBase "file:${cosminexus.home}/CSC/lib/*" {
permission java.security.AllPermission;
};
○
○
○
○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

●移行コマンドで自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

移行コマンド実行時に追加されるキーと値を次の表に示します。

表12-33　J2EEサーバのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 08-53 | 08-50 | 08-00
webserver.connector.limit.max_post_form_data=-1 | このキーがない場合 | － | － | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-34　J2EEサーバのusrconf.cfgに自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 08-53 | 08-50 | 08-00
add.jvm.arg=-XX:+HitachiExplicitMemoryCompatibleToV8 | このキーがない場合 | － | － | ○
add.jvm.arg=-XX:-HitachiOutOfMemoryHandling | このキーがない場合 | － | ○ | －

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

表12-35　J2EEサーバのserver.policyに自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

追加される定義
旧バージョンでの環境条件
08-53
08-50
08-00

grant codeBase "file:${cosminexus.home}/jaxws/lib/*" {
permisson java.security.AllPermission;
}
このキーがない場合
－
－
○

grant codeBase "file:${ejbserver.http.root}/ejb/${ejbserver.serverName}/rarjars/-" {
permission java.lang.RuntimePermission "getClassLoader";
permission java.lang.RuntimePermission "setContextClassLoader";
permission java.lang.RuntimePermission "accessDeclaredMembers";
}
このキーがない場合
－
○
－

grant codeBase
"file:${ejbserver.http.root}/web/${ejbserver.serverName}/-" {
permission javax.security.auth.AuthPermission "getSubject";
permission javax.security.auth.AuthPermission "createLoginContext.*";
}
このキーがない場合
○
○
○

grant codeBase
"file:${cosminexus.home}/manager/modules/-" {
permission java.io.FilePermission "<<ALL FILES>>", "read";
permission javax.security.auth.AuthPermission "modifyPrincipals";
permission javax.security.auth.AuthPermission "modifyPublicCredentials";
}
このキーがない場合
○
○
○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

12.1.13　メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ

メモリセッションフェイルオーバ機能を使用している場合，07-50以降のバージョンアップするときには，07-50以降のバージョンアップするときに，SFOサーバの移行を実施する必要があります。ここでは，Management Serverを使用していないシステムの場合の，SFOサーバの移行手順について説明します。なお，ここで示している手順は，サーバ管理コマンドを使用した移行手順です。SFOサーバの移行は，J2EEサーバを移行する前に実施してください。

なお，Management Serverを使用しているシステムの場合の，SFOサーバの移行については，「12.1.10(25)　SFOサーバの移行」を参照してください。

注意

SFOサーバの移行作業を実施しないで，バージョンが07-50より前のSFOサーバアプリケーションを07-50以降の環境で使用すると，SFOサーバアプリケーションのデプロイに失敗して，SFOサーバアプリケーションは開始できません。

＜この項の構成＞

(1)　SFOサーバの移行の手順

(2)　SFOサーバ移行の準備

(3)　SFOサーバの移行

(4)　SFOサーバアプリケーションのセットアップ

(5)　サーバ管理コマンドを使用したSFOサーバ移行の実行例

(1)　SFOサーバの移行の手順

次の手順に従って，SFOサーバを07-50以降の環境に移行してください。

SFOサーバ移行の準備

SFOサーバの移行

SFOサーバアプリケーションのセットアップ

(2)　SFOサーバ移行の準備

SFOサーバ移行に必要な準備として，次の作業を実施します。

J2EEサーバを停止します。
移行するSFOサーバに接続するJ2EEサーバの稼働状況を確認して，稼働中のJ2EEサーバがあった場合は停止してください。停止には，cjstopsvコマンドを使用します。

SFOサーバを起動します。
移行するSFOサーバの稼働状況を確認して，停止している場合は起動してください。起動には，cjstartsvコマンドを使用します。

SFOサーバアプリケーションを停止します。
SFOサーバにインポートされているSFOサーバアプリケーションを停止します。停止するSFOサーバアプリケーションの名称は，「CCC_SFO_Server_Application」です。
停止には，サーバ管理コマンドのcjstopappコマンドを使用します。

SFOサーバアプリケーションを削除します。
手順3.で停止したSFOサーバアプリケーション「CCC_SFO_Server_Application」を，サーバ管理コマンドを使用して削除します。削除には，サーバ管理コマンドのcjdeleteappコマンドを使用します。

SFOサーバを停止します。
停止には，cjstopsvコマンドを使用します。

(3)　SFOサーバの移行

SFOサーバとして構築したJ2EEサーバを，新しいバージョンに移行します。

J2EEサーバの移行手順については，「12.1.2　アプリケーションサーバの移行の手順」を参照してください。

(4)　SFOサーバアプリケーションのセットアップ

移行したSFOサーバに対して，SFOサーバアプリケーションをセットアップします。

SFOサーバアプリケーションのセットアップとして，次の作業を実施します。

SFOサーバを起動します。
起動には，cjstartsvコマンドを使用します。

SFOサーバアプリケーションをインポートします。
インポートには，サーバ管理コマンドのcjimportappコマンドを使用します。
SFOサーバアプリケーションの格納場所を次に示します。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥CC¥sfo¥sfo_server¥sfo_server_application.zip

UNIXの場合

/opt/Cosminexus/CC/sfo/sfo_server/sfo_server_application.zip

注意

SFOサーバアプリケーションのインポートだけを実行する場合でも，cjstartsvコマンドに-nosecurityオプションを指定して，SFOサーバを起動してください。SFOサーバアプリケーションは，インポートすると自動的に開始する設定になっています。そのため，-nosecurityオプションなしでSFOサーバを起動した場合，SFOサーバアプリケーションの開始処理でエラーとなり，SFOサーバとしての機能を開始できません。

SFOサーバアプリケーションは実行時情報付きファイルの形式（ZIP形式）で提供されており，実行に必要なJ2EEリソースの設定は実施済みです。インポート後，SFOサーバアプリケーションの設定を変更してはいけません。

(5)　サーバ管理コマンドを使用したSFOサーバ移行の実行例

サーバ管理コマンドによるSFOサーバの移行の実行例を示します。

前提としている条件

この実行例は，次の条件に従っています。

SFOサーバのJ2EEサーバ名は「MySFOServer」である。

SFOサーバが稼働するホストと同一のホストでサーバ管理コマンドを実行する。

SFOサーバがネーミングサービスとして利用するCORBAネーミングサービスのポート番号は900である（デフォルトの設定）。

Cosminexus Component Containerのインストールディレクトリは「C:¥Program Files¥Hitachi¥Cosminexus¥CC」である（デフォルトの設定）。

J2EEサーバはすべて停止している状態とする。

SFOサーバは開始している状態とする。

なお，この例では，PRFデーモンの起動と終了の操作については省略しています。

SFOサーバ移行準備をします。
コンソールでの実行例を次に示します。

C:¥>cd "Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin"
C:¥Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin >cjstopapp MySFOServer -name CCC_SFO_Server_Application
KDJE37048-I Connecting to MySFOServer...
KDJE37049-I Searching CCC_SFO_Server_Application...
KDJE37055-I Stopping CCC_SFO_Server_Application...
KDJE37046-I Application has been stopped successfully. Name=[CCC_SFO_Server_Application]

C:¥Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin>cjdeleteapp MySFOServer -name CCC_SFO_Server_Application
KDJE37048-I Connecting to MySFOServer...
KDJE37049-I Searching CCC_SFO_Server_Application...
KDJE37056-I Deleting CCC_SFO_Server_Application...
KDJE37047-I Application has been deleted successfully. Name=[CCC_SFO_Server_Application]

C:¥Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin>cd ..¥..¥server¥bin
C:¥Program Files¥Hitachi¥Cosminexus¥CC¥server¥bin>cjstopsv MySFOServer

SFOサーバを移行します。

SFOサーバアプリケーションをセットアップします。
まず，SFOサーバを起動する実行例を次に示します。

C:¥>cd "Program Files¥Hitachi¥Cosminexus¥CC¥server¥bin"
C:¥Program Files¥Hitachi¥Cosminexus¥CC¥server¥bin>cjstartsv MySFOServer -nosecurity
　　　（省略：J2EEサーバ起動メッセージ）
KDJE30028-I The J2EE server has started. Server name = MySFOServer

次に，SFOサーバアプリケーションのインポートの実行例を次に示します。

C:¥>cd "Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin"
C:¥Program Files¥Hitachi¥Cosminexus¥CC¥admin¥bin>cjimportapp MySFOServer -f "C:¥Program Files¥HITACHI¥Cosminexus¥CC¥sfo¥sfo_server¥sfo_server_application.zip"

12.2　サーブレットエンジンモードの場合の移行

サーブレットエンジンモードの場合の，旧バージョンからアプリケーションサーバ 08-70への移行方法について説明します。移行の対象となるバージョンを次に示します。

アプリケーションサーバ 06-00

アプリケーションサーバ 06-02（Windowsだけのバージョン）

アプリケーションサーバ 06-50

アプリケーションサーバ 06-51

アプリケーションサーバ 06-70

アプリケーションサーバ 06-71

アプリケーションサーバ 07-00

アプリケーションサーバ 07-10

アプリケーションサーバ 07-50

アプリケーションサーバ 07-60

アプリケーションサーバ 08-00

アプリケーションサーバ 08-50

アプリケーションサーバ 08-53

なお，このマニュアルでは，次に示す構成ソフトウェアの移行を中心に説明します。

Cosminexus Component Container

Cosminexus Performance Tracer

旧バージョンからの移行を行う場合，使用しているアプリケーションサーバの全構成ソフトウェアを同時に移行する必要があります。上記で示していないほかの構成ソフトウェア（以降，他構成ソフトウェアと呼びます）の移行については，各構成ソフトウェアのドキュメントを参照してください。

＜この節の構成＞

12.2.1　アプリケーションサーバの移行の概要

12.2.2　アプリケーションサーバの移行の手順

12.2.3　旧バージョンからの仕様変更の確認

12.2.4　移行前の確認

12.2.5　定義などのバックアップ

12.2.6　手動による定義などの修正

12.2.7　Webコンテナサーバの移行コマンドで自動的に追加される定義

12.2.1　アプリケーションサーバの移行の概要

アプリケーションサーバの移行の概要について説明します。

＜この項の構成＞

(1)　移行のためのアップグレードインストール

(2)　移行時に引き継がれる情報

(1)　移行のためのアップグレードインストール

旧バージョンからアプリケーションサーバ 08-70へ移行するためには，アップグレードインストールを行います。アップグレードインストールとは，インストール先のマシンに旧バージョンのアプリケーションサーバがインストール済みの場合のインストールです。

なお，アップグレードインストールの場合は，<Cosminexusのインストールディレクトリ>を旧バージョンのインストールディレクトリから変更できません。旧バージョンがインストールされているディレクトリに上書きインストールされます。

(2)　移行時に引き継がれる情報

アプリケーションサーバを旧バージョンから08-70に移行する場合，旧バージョンで使用されていた，アプリケーションサーバのインストールディレクトリ以下に配置される定義情報，DD情報，構成情報などのユーザ資産は，移行コマンドなどで必要に応じて自動変換され，08-70で引き続き使用されます（一部，手動での定義修正が必要な場合もあります）。

なお，移行コマンドを実行すると，移行元バージョンから移行先バージョン間のすべてのバージョンごとに移行処理が実施されます。例えば，08-00から08-70へ移行する場合，08-00から08-50への移行，08-50から08-53への移行，08-53から08-70への移行という処理が実施されます。

Cosminexus Component Containerで引き継がれる定義情報，DD情報，構成情報などを次の表に示します。他構成ソフトウェアについては，それぞれのドキュメントを参照してください。

表12-36　Cosminexus Component Containerで移行時に引き継がれる情報（サーブレットエンジンモードの場合）

機能
引き継がれる情報
ファイル名称，または配置場所

Webコンテナサーバ
オプション定義ファイル
usrconf.cfg

ユーザプロパティファイル
usrconf.properties

Webアプリケーションプロパティファイル
hitachi_web.properties

ユーザ認証情報定義ファイル
web-users.xml

Security Manager定義ファイル
web.policy

作業ディレクトリ

定義情報

アプリケーション

DD情報

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers以下

UNIXの場合
/opt/Cosminexus/CC/web/containers以下

Webサーバ連携
Hitachi Webサーバ用リダイレクタ動作定義ファイル
mod_jk.conf

Microsoft IIS用リダイレクタ動作定義ファイル（Windowsだけのファイル）
isapi_redirect.conf

Microsoft IIS用マッピング定義ファイル（Windowsだけのファイル）
uriworkermap.properties

ワーカ定義ファイル
workers.properties

統合ユーザ管理
JAASのコンフィグレーションファイル
jaas.conf

統合ユーザ管理のコンフィグレーションファイル
ua.conf

カスタムログインモジュール格納用ディレクトリ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥modules

UNIXの場合
/opt/Cosminexus/manager/modules

12.2.2　アプリケーションサーバの移行の手順

次の手順に従って，旧バージョンからアプリケーションサーバ 08-70へ移行してください。

旧バージョンからの仕様変更の確認

移行前の確認

定義などのバックアップ

他構成ソフトウェアの移行準備

全構成ソフトウェアのアップグレードインストール

Webコンテナサーバの移行コマンドの実行

手動による定義などの修正

他構成ソフトウェアの移行実施

移行後の確認

それぞれの手順について説明します。

＜この項の構成＞

(1)　旧バージョンからの仕様変更の確認

(2)　移行前の確認

(3)　定義などのバックアップ

(4)　他構成ソフトウェアの移行準備

(5)　全構成ソフトウェアのアップグレードインストール

(6)　Webコンテナサーバの移行コマンドの実行

(7)　手動による定義などの修正

(8)　他構成ソフトウェアの移行実施

(9)　移行後の確認

(1)　旧バージョンからの仕様変更の確認

旧バージョンからの仕様変更を確認します。機能の変更や追加に伴い，旧バージョンで使用している機能，使用条件，使用方法によっては，次の作業が必要となります。

操作手順の変更

運用手順の変更

アプリケーション，およびDDの変更

なお，互換性を保つためのオプションが提供されている場合もありますが，推奨のオプションではありません。詳細については，「12.2.3　旧バージョンからの仕様変更の確認」を参照してください。

(2)　移行前の確認

移行前にアプリケーションサーバの動作環境，動作状態などを確認します。詳細については，「12.2.4　移行前の確認」を参照してください。

(3)　定義などのバックアップ

移行前に定義ファイルなどをバックアップします。詳細については，「12.2.5　定義などのバックアップ」を参照してください。

(4)　他構成ソフトウェアの移行準備

次に示す構成ソフトウェア以外の，他構成ソフトウェアの移行を準備します。

Cosminexus Component Container

Cosminexus Performance Tracer

移行の準備の詳細はそれぞれの他構成ソフトウェアのドキュメントを参照してください。なお，ここで準備した情報を基に，「(8)　他構成ソフトウェアの移行実施」で他構成ソフトウェアを移行してください。

(5)　全構成ソフトウェアのアップグレードインストール

使用しているアプリケーションサーバの全構成ソフトウェアをアップグレードインストールします。

(6)　Webコンテナサーバの移行コマンドの実行

定義情報，DD情報などを継続して利用できるようにするため，Webコンテナサーバの移行コマンドを実行します。実行する移行コマンドはcjenvupdateコマンドで，J2EEサーバを移行する場合と同じです。

移行コマンドの実行については，「12.1.7　J2EEサーバまたはバッチサーバの移行コマンドの実行」を参照してください。このとき，J2EEサーバをWebコンテナサーバと読み替えてください。

(7)　手動による定義などの修正

手動で定義などを修正します。機能の変更，追加に伴い，互換性を保つためのオプションが提供されています。旧バージョンで使用している機能，使用方法，使用条件によっては，次の作業が必要となります。

ユーザプロパティファイルなどの定義ファイルの変更

Javaのユーザクラスパスの変更

環境変数の変更

詳細については，「12.2.6　手動による定義などの修正」を参照してください。

(8)　他構成ソフトウェアの移行実施

他構成ソフトウェアを移行します。移行の詳細はそれぞれの他構成ソフトウェアのドキュメントを参照してください。なお，「(4)　他構成ソフトウェアの移行準備」で準備した情報を基に移行を実施してください。

(9)　移行後の確認

移行後にアプリケーションサーバの動作確認を実施します。

12.2.3　旧バージョンからの仕様変更の確認

旧バージョンからの仕様変更について説明します。

アプリケーションサーバ Version 6からの仕様変更
アプリケーションサーバ Version 6からの仕様変更を次の表に示します。

表12-37　アプリケーションサーバ Version 6からの仕様変更（サーブレットエンジンモードの場合）

分類
仕様変更の項目
06-71/
06-70
06-51/
06-50
06-02/
06-00

全体
(1)　J2SEのバージョン
○
○
○

(2)　TPBrokerの運用支援機能の非サポート
○
○
○

Webコンテナサーバ
(3)　JavaVMのタイプ
－
－
○

(4)　JSPから生成されたサーブレット用コンパイラのバージョン
○
○
○

(5)　デフォルトのエラーページの内容
－
○
○

(6)　カスタムタグのスクリプト変数定義の変更
○
○
○

(7)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更
○
○
○

(8)　タグの属性値のExpressionチェックの変更
○
○
○

(9)　タグの属性値に指定するExpressionに関する変更
○
○
○

(10)　taglibディレクティブのprefix属性に関する変更
○
○
○

(11)　JSPでの$の扱いの変更
○
○
○

(12)　WebコンテナがサポートするServlet仕様のバージョン
○
○
○

(13)　サーブレットのデフォルトマッピングのデフォルトでの無効化
○
○
○

(14)　javax.servlet.GenericServletクラスでスローされる例外の変更
○
○
○

(15)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更
○
○
○

(16)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力
○
○
○

(17)　-XX:SurvivorRatioのデフォルト値の変更
○
○
○

(18)　JSPから生成されたサーブレット用コンパイラのバージョン
○
○
○

(19)　POSTリクエストのフォームデータの最大サイズの制限
○
○
○

(20)　サーブレットのサービスメソッド実行中のHTTPセッションのタイムアウト
○
○
○

（凡例）　○：仕様変更あり　－：該当しない

アプリケーションサーバ Version 7からの仕様変更
アプリケーションサーバ Version 7からの仕様変更を次の表に示します。

表12-38　アプリケーションサーバ Version 7からの仕様変更（サーブレットエンジンモードの場合）

分類 | 仕様変更の項目 | 07-60 | 07-50 | 07-10 | 07-00
Webコンテナサーバ | (12)　WebコンテナがサポートするServlet仕様のバージョン | ○ | ○ | ○ | ○
(13)　サーブレットのデフォルトマッピングのデフォルトでの無効化 | ○ | ○ | ○ | ○
(14)　javax.servlet.GenericServletクラスでスローされる例外の変更 | ○ | ○ | ○ | ○
(15)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更 | ○ | ○ | ○ | ○
(16)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力 | ○ | ○ | ○ | ○
(17)　-XX:SurvivorRatioのデフォルト値の変更 | ○ | ○ | ○ | ○
(18)　JSPから生成されたサーブレット用コンパイラのバージョン | ○ | ○ | ○ | ○
(19)　POSTリクエストのフォームデータの最大サイズの制限 | ○ | ○ | ○ | ○

（凡例）　○：仕様変更あり

アプリケーションサーバ Version 8からの仕様変更
アプリケーションサーバ Version 8からの仕様変更を次の表に示します。

表12-39　アプリケーションサーバ Version 8からの仕様変更

分類 | 仕様変更の項目 | 08-53 | 08-50 | 08-00
Webコンテナサーバ | (18)　JSPから生成されたサーブレット用コンパイラのバージョン | － | － | ○
(19)　POSTリクエストのフォームデータの最大サイズの制限 | － | － | ○

（凡例）　○：仕様変更あり　－：該当しない

次に仕様変更の項目の詳細について説明します。なお，表の「仕様変更の項目」の項番は，説明の項番と対応しています。

＜この項の構成＞

(1)　J2SEのバージョン

(2)　TPBrokerの運用支援機能の非サポート

(3)　JavaVMのタイプ

(4)　JSPから生成されたサーブレット用コンパイラのバージョン

(5)　デフォルトのエラーページの内容

(6)　カスタムタグのスクリプト変数定義の変更

(7)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更

(8)　タグの属性値のExpressionチェックの変更

(9)　タグの属性値に指定するExpressionに関する変更

(10)　taglibディレクティブのprefix属性に関する変更

(11)　JSPでの$の扱いの変更

(12)　WebコンテナがサポートするServlet仕様のバージョン

(13)　サーブレットのデフォルトマッピングのデフォルトでの無効化

(14)　javax.servlet.GenericServletクラスでスローされる例外の変更

(15)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更

(16)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力

(17)　-XX:SurvivorRatioのデフォルト値の変更

(18)　JSPから生成されたサーブレット用コンパイラのバージョン

(19)　POSTリクエストのフォームデータの最大サイズの制限

(20)　サーブレットのサービスメソッド実行中のHTTPセッションのタイムアウト

(1)　J2SEのバージョン

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(1)　J2SEのバージョン」を参照してください。

(2)　TPBrokerの運用支援機能の非サポート

07-00以降では，07-00より前まで提供していたTPBrokerの運用支援機能は使用できません。システムの各プロセスを一括起動，停止，および監視する場合には，Management Serverを使用してください。

WebコンテナサーバをTPBrokerの運用支援機能で使用していた場合，次のどちらかで運用してください。

J2EEサーバモードで管理する。

Webコンテナサーバを論理ユーザサーバとして定義して運用する。

(3)　JavaVMのタイプ

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(8)　JavaVMのタイプ」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(4)　JSPから生成されたサーブレット用コンパイラのバージョン

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(10)　JSPから生成されたサーブレット用コンパイラのバージョン」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(5)　デフォルトのエラーページの内容

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(11)　デフォルトのエラーページの内容」を参照してください。

(6)　カスタムタグのスクリプト変数定義の変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(24)　カスタムタグのスクリプト変数定義の変更」を参照してください。

(7)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(25)　<jsp:useBean>タグのclass属性に対するエラーチェックの変更」を参照してください。

(8)　タグの属性値のExpressionチェックの変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(26)　タグの属性値のExpressionチェックの変更」を参照してください。

(9)　タグの属性値に指定するExpressionに関する変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(27)　タグの属性値に指定するExpressionに関する変更」を参照してください。

(10)　taglibディレクティブのprefix属性に関する変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(28)　taglibディレクティブのprefix属性に関する変更」を参照してください。

(11)　JSPでの$の扱いの変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(29)　JSPでの$の扱いの変更」を参照してください。

(12)　WebコンテナがサポートするServlet仕様のバージョン

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(30)　WebコンテナがサポートするServlet仕様のバージョン」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(13)　サーブレットのデフォルトマッピングのデフォルトでの無効化

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(33)　サーブレットのデフォルトマッピングのデフォルトでの無効化」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(14)　javax.servlet.GenericServletクラスでスローされる例外の変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(34)　javax.servlet.GenericServletクラスでスローされる例外の変更」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(15)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(35)　javax.servlet.ServletRequestインタフェースのsetCharacterEncodingメソッド呼び出し時の動作変更」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(16)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(36)　javax.servlet.GenericServletクラスのinit(ServletConfig)メソッドとdestroy()メソッドでのログ出力」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(17)　-XX:SurvivorRatioのデフォルト値の変更

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.3(44)　-XX:SurvivorRatioのデフォルト値の変更」を参照してください。なお，サーブレットエンジンモードの場合は，「J2EEサーバ」を「Webコンテナサーバ」と読み替えてください。

(18)　JSPから生成されたサーブレット用コンパイラのバージョン

製品のバージョンによって，インストールされるJDKが異なります。Webコンテナサーバでは，インストールされているjavacコンパイラのデフォルトバージョンのJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルします。

コンパイルするJava言語仕様のバージョンを次の表に示します。

表12-40　コンパイルするJava言語仕様のバージョン

アプリケーションサーバのバージョン | JDKのバージョン | コンパイルJava言語仕様バージョン
Version 6 | JDK 1.4 | J2SE 1.3
Version 7 | JDK 5.0 | J2SE 5.0
Version 8 | JDK 6 | Java SE 6
JDK 5.0 | J2SE 5.0

注意

移行前と同様のJava言語仕様に従ってJSPから生成されたサーブレットのソースファイルをコンパイルする場合は，usrconf.properties（Webコンテナサーバ用ユーザプロパティファイル）のwebserver.jsp.compile.backcompatキーに「1.2」「1.3」「1.4」「1.5」または「5」を設定します。このプロパティは，インストールしているJDKのコンパイルでエラーが発生する場合だけ使用してください。

(19)　POSTリクエストのフォームデータの最大サイズの制限

POSTリクエストのフォームデータ（Content-Typeヘッダの値がapplication/x-www-form-urlencodedの場合のPOSTデータ）の最大サイズがデフォルトで2MBに制限されます。アップグレードインストールをした場合，すでにセットアップされているWebコンテナサーバには，POSTリクエストのフォームデータの最大サイズを無制限にする設定（webserver.connector.limit.max_post_form_data=-1）が自動的に実施されます。

(20)　サーブレットのサービスメソッド実行中のHTTPセッションのタイムアウト

アプリケーションサーバでは，Webアプリケーションのバージョンに関係なく，Webアプリケーションでのリクエスト処理を実行している間は，HTTPセッションはタイムアウトされません。

ただし，07-00より前のWebコンテナでは，Webアプリケーション単位の同時実行スレッド数制御機能による実行待ち中であってもHTTPセッションのタイムアウトが発生します。

12.2.4　移行前の確認

移行前に，アプリケーションサーバの動作環境，および動作状態を確認します。次に確認項目を示します。

旧バージョンのアプリケーションサーバが終了していることを確認してください。アプリケーションサーバの全構成ソフトウェアを終了させます。

Microsoft IISを使用している場合は，Microsoft IISを終了させます。

12.2.5　定義などのバックアップ

移行前に定義ファイルなどのバックアップを取ります。バックアップを取るディレクトリを次の表に示します。

表12-41　バックアップを取るディレクトリ（サーブレットエンジンモードの場合）

機能
バックアップを取るディレクトリ

統合ユーザ管理

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager

UNIXの場合
/opt/Cosminexus/manager

Webサーバ連携

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥redirector

UNIXの場合
/opt/Cosminexus/CC/web/redirector

Webコンテナサーバ

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers

UNIXの場合
/opt/Cosminexus/CC/web/containers

12.2.6　手動による定義などの修正

旧バージョンから移行する場合に，手動で定義などの修正が必要な項目について説明します。

手動で定義などの修正が必要な項目（アプリケーションサーバ Version 6からの移行）
アプリケーションサーバ Version 6から移行する場合に，手動で定義などの修正が必要な項目を次の表に示します。

表12-42　手動で定義などの修正が必要な項目（サーブレットエンジンモードの場合のアプリケーションサーバ Version 6から移行）

分類
修正項目
06-71/
06-70
06-51/
06-50
06-02/
06-00

Webコンテナサーバ
(1)　セキュリティポリシーファイルの変更
○
○
○

(2)　統合ユーザ管理のタグライブラリの入れ替え
○
○
○

(3)　デフォルトエラーページのスタックトレース表示
－
○
○

(4)　JSPのコンパイル結果の削除
○
○
○

(5)　リダイレクタへのデータ送信処理のタイムアウト追加
○
○
○

(6)　ユーザスレッドの生成に必要な権限の追加
－
○
○

(7)　セッションIDへのサーバIDの付加
－
○
○

(8)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し
○
○
○

Webサーバ連携
(9)　リダイレクタのログ出力先変更
－
－
○

(10)　Webコンテナへのデータ送信処理のタイムアウト追加
○
○
○

(11)　リダイレクタの保守用トレースログの面数変更
○
○
－

（凡例）　○：修正が必要　－：該当しない

手動で定義などの修正が必要な項目（アプリケーションサーバ Version 7からの移行）
アプリケーションサーバ Version 7から移行する場合に，手動で定義などの修正が必要な項目を次の表に示します。

表12-43　手動で定義などの修正が必要な項目（サーブレットエンジンモードの場合のアプリケーションサーバ Version 7から移行）

分類 | 修正項目 | 07-60 | 07-50 | 07-10 | 07-00
Webコンテナサーバ | (8)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し | ○ | ○ | ○ | ○

（凡例）　○：修正が必要

次に修正項目の詳細について説明します。なお，表の「修正項目」の項番は，説明の項番と対応しています。

＜この項の構成＞

(1)　セキュリティポリシーファイルの変更

(2)　統合ユーザ管理のタグライブラリの入れ替え

(3)　デフォルトエラーページのスタックトレース表示

(4)　JSPのコンパイル結果の削除

(5)　リダイレクタへのデータ送信処理のタイムアウト追加

(6)　ユーザスレッドの生成に必要な権限の追加

(7)　セッションIDへのサーバIDの付加

(8)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し

(9)　リダイレクタのログ出力先変更

(10)　Webコンテナへのデータ送信処理のタイムアウト追加

(11)　リダイレクタの保守用トレースログの面数変更

(1)　セキュリティポリシーファイルの変更

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(17)　セキュリティポリシーファイルの変更」を参照してください。なお，サーブレットエンジンモードの場合は，「server.policyファイル」を「web.policyファイル」と読み替えてください。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web.policy

UNIXの場合
opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web.policy

(2)　統合ユーザ管理のタグライブラリの入れ替え

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(18)　統合ユーザ管理のタグライブラリの入れ替え」を参照してください。

(3)　デフォルトエラーページのスタックトレース表示

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(19)　デフォルトエラーページのスタックトレース表示」を参照してください。

(4)　JSPのコンパイル結果の削除

07-00以降では，サーブレット／JSPのバージョンが変更になりました。このため，07-00より前のWebコンテナサーバのusrconf.propertiesファイルで，webserver.work.clean=falseを設定してJSPコンパイル結果を保持していた場合，07-00以降へ移行後，07-00より前で生成されたコンパイル結果を手動で削除してください。

次のどちらかの方法で，JSPコンパイル結果を削除します。

usrconf.propertiesでwebserver.work.clean=trueを設定して，Webコンテナサーバを再起動する。

JSPコンパイル結果を手動で削除する。

JSPコンパイル結果を手動で削除する方法については，「10.4.3　JSPファイルのコンパイル結果の保持」を参照してください。

(5)　リダイレクタへのデータ送信処理のタイムアウト追加

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(20)　リダイレクタへのデータ送信処理のタイムアウト追加」を参照してください。

(6)　ユーザスレッドの生成に必要な権限の追加

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(21)　ユーザスレッドの生成に必要な権限の追加」を参照してください。なお，サーブレットエンジンモードの場合は，「server.policyファイル」を「web.policyファイル」と読み替えてください。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥CC¥web¥containers¥<サーバ名称>¥usrconf¥web.policy

UNIXの場合
opt/Cosminexus/CC/web/containers/<サーバ名称>/usrconf/web.policy

(7)　セッションIDへのサーバIDの付加

変更内容は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(22)　セッションIDへのサーバIDの付加」を参照してください。

(8)　javax.servlet.ServletExceptionで生成したオブジェクトに対するinitCauseメソッドの呼び出し

コンストラクタServletException(String,Throwable)およびServletException(Throwable)で生成したServletExceptionオブジェクトに対して，initCause(Throwable)を呼び出せません。initCause(Throwable)を呼び出したい場合は，ユーザプロパティファイルにwebserver.servlet_api.exception.getCause.backcompat=trueを設定する必要があります。

(9)　リダイレクタのログ出力先変更

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(26)　リダイレクタのログ出力先変更」を参照してください。

(10)　Webコンテナへのデータ送信処理のタイムアウト追加

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(27)　Webコンテナへのデータ送信処理のタイムアウト追加」を参照してください。

(11)　リダイレクタの保守用トレースログの面数変更

変更方法は，J2EEサーバモードの場合と同じです。詳細については，「12.1.10(28)　リダイレクタの保守用トレースログの面数変更」を参照してください。

12.2.7　Webコンテナサーバの移行コマンドで自動的に追加される定義

旧バージョンからアプリケーションサーバ 08-70へ移行する場合，Webコンテナサーバのユーザプロパティファイルや作業ディレクトリ内のDD情報は，旧バージョンのものが08-70の環境でもそのまま継続使用されます。ただし，新バージョンで追加された機能，およびデフォルト値が変更された機能があり，互換性を維持するために，Webコンテナサーバの移行コマンドがユーザプロパティファイルのプロパティや作業ディレクトリ内のDD情報を部分的に変換します。移行コマンド実行時に追加されるキーと値について説明します。

●移行コマンドで自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

移行コマンド実行時に追加されるキーと値を次の表に示します。

表12-44　Webコンテナサーバのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 6からの移行）

追加されるキーと値
旧バージョンでの環境条件
06-71/
06-70
06-51/
06-50
06-02/
06-00

webserver.container.servlet.default_mapping.enabled=true
－
○
○
○

ejbserver.logger.channels.define.WebServletLogFile.filenum
－
○
○
○

ejbserver.logger.channels.define.WebServletLogFile.filesize
－
○
○
○

ejbserver.logger.channels.define.WebExceptionLogFile.filenum
－
○
○
○

ejbserver.logger.channels.define.WebExceptionLogFile.filesize
－
○
○
○

add.jvm.arg=-XX:HitachiJavaLogFileSize
－
○
○
○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

●移行コマンドで自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

移行コマンド実行時に追加されるキーと値を次の表に示します。

表12-45　Webコンテナサーバのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 7からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 07-60 | 07-50 | 07-10 | 07-00
webserver.container.servlet.default_mapping.enabled=true | － | ○ | ○ | ○ | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

●移行コマンドで自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

表12-46　Webコンテナサーバのusrconf.propertiesに自動的に追加される定義（アプリケーションサーバ Version 8からの移行）

追加されるキーと値 | 旧バージョンでの環境条件 | 08-53 | 08-50 | 08-00
webserver.connector.limit.max_post_form_data=-1 | このキーがない場合 | － | － | ○

（凡例）　○：定義が自動的に追加されることを示す　－：該当しない

13.　推奨機能への移行

この章では，アプリケーションサーバで従来サポートしている機能から推奨機能への移行方法について説明します。

＜この章の構成＞

13.1　Microsoft IISからHitachi Web Serverへの移行

13.2　インプロセストランザクションサービスへの移行

13.1　Microsoft IISからHitachi Web Serverへの移行

Microsoft IIS用リダイレクタからHitachi Web Server用リダイレクタへ移行する場合の定義ファイルの対応を次に示します。

定義内容 | Microsoft IIS用リダイレクタ | Hitachi Web Server用リダイレクタ
リダイレクタ定義 | isapi_redirect.conf | mod_jk.conf
URLパターンとワーカのマッピング定義 | uriworkermap.properties
ワーカ定義 | workers.properties | workers.properties

Microsoft IIS用リダイレクタを使用している環境からHitachi Web Server用リダイレクタを使用する環境に移行する場合，uriworkermap.propertiesに指定していたURLパターンとワーカのマッピング定義を，JkMountキーを使用してmod_jk.confに指定する必要があります。workers.propertiesは，Microsoft IIS用リダイレクタで使用していたものをそのまま使用できます。

Microsoft IIS用リダイレクタを使用している環境からの移行の手順の概要を次に示します。

Hitachi Web Serverをインストールします。

uriworkermap.propertiesに定義されているURLパターンとワーカのマッピング定義をmod_jk.confに指定します。

Webサーバ連携の定義をします。
詳細については，マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「3.　Webサーバ連携」を参照してください。

Hitachi Web Serverを起動します。

13.2　インプロセストランザクションサービスへの移行

トランザクションサービスをJ2EEサーバとは別のプロセス（アウトプロセス）で起動していた場合，07-00以降からはJ2EEサーバ起動時にインプロセスで起動するように変更してください。

ここでは，ファイル編集とコマンド実行でシステムを構築する場合の設定の変更方法について説明します。

＜この節の構成＞

13.2.1　移行作業の流れ

13.2.2　運用の移行

13.2.3　トラブルシュート情報の取得方法の移行

13.2.4　プログラムソースコードの移行

13.2.1　移行作業の流れ

次の手順に従って，環境を移行してください。

アウトプロセストランザクションサービスのアンセットアップ

プロパティの設定

環境変数の変更

＜この項の構成＞

(1)　アウトプロセストランザクションサービスのアンセットアップ

(2)　プロパティの設定

(3)　環境変数の変更

(1)　アウトプロセストランザクションサービスのアンセットアップ

アウトプロセストランザクションサービスのセットアップ用のコマンドを実行して，アウトプロセストランザクションサービスをアンセットアップしてください。

アウトプロセストランザクションサービスのセットアップ用のコマンドを実行するタイミングによって，使用するコマンドが異なります。

アプリケーションサーバ 07-50以降への移行後に実行する場合

Windowsの場合
tstpbsetup -dコマンド

UNIXの場合
tssetup -dコマンド

アプリケーションサーバ 07-50以降への移行前に実行する場合
tssetup -dコマンド

(2)　プロパティの設定

インプロセストランザクションサービスでは，セットアップコマンドの実行は必要ありません。また，アウトプロセストランザクションサービスではtsdefvalueコマンドを使用してシステム環境定義をカスタマイズしましたが，インプロセストランザクションサービスではJ2EEサーバ用のユーザプロパティファイルを使用してシステム環境定義をカスタマイズします。インプロセストランザクションサービスで設定が必要なJ2EEサーバのプロパティを次の表に示します。

表13-1　インプロセストランザクションサービスで設定が必要なJ2EEサーバのプロパティ

キー名称
値
見積もりの指針

ejbserver.distributedtx.enableXidReuseOptimization
false
－

ejbserver.distributedtx.ots.status.directory1
インプロセストランザクションサービスのステータスファイルを格納するディレクトリ
指定したパスのパーティションが枯渇しないように運用する必要があります。
また，アウトプロセストランザクションサービスでは，環境変数「TPFS」をカスタマイズして共有ディスク上に配置し，HA構成で運用していた場合は，共有ディスク上のパスを設定する必要があります。

ejbserver.distributedtx.ots.status.directory2※

（凡例）－：該当しない

注※　インプロセストランザクションサービスでステータスファイルを1面で運用する場合，設定の必要はありません。

キーの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「2.4　usrconf.properties（J2EEサーバ用ユーザプロパティファイル）」を参照してください。

(3)　環境変数の変更

インプロセストランザクションサービスとアウトプロセストランザクションサービスでは，設定が必要な環境変数が異なります。不要となった環境変数は削除してください。トランザクションサービスの環境変数の設定要否を次の表に示します。なお，環境変数に設定する値については，マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「7.3　環境変数の設定」を参照してください。

表13-2　トランザクションサービスの環境変数の設定要否

環境変数名
指定する内容
設定の要否

アウトプロセストランザクションサービスの場合
インプロセストランザクションサービスの場合

OSAGENT_PORT
スマートエージェントが使用するポート番号
○
　△※1

PATH
プログラム実行パス
◎
◎

LIBPATH，またはLD_LIBRARY_PATH※2
ライブラリ検索パス
◎
◎

TPDIR
Cosminexus TPBrokerのインストール先
◎
◎

TZ
タイムゾーン
◎
◎

VBROKER_ADM
スマートエージェントの定義情報が格納されているディレクトリ
◎
◎

TPFS
Cosminexus TPBrokerのステータスファイル格納先
（任意のディレクトリまたはキャラクタデバイスファイル）
○
△

TPSPOOL
Cosminexus TPBrokerの稼働情報格納先
（任意のディレクトリ）
○
△

（凡例）

◎：設定する必要がある。

○：使用する機能によっては設定する必要がある。

△：設定は不要（設定しても無視される）。

注※1　CTMなどの機能でスマートエージェントを使用する場合があります。ほかの機能で使用している場合は，環境変数「OSAGENT_PORT」を削除しないでください。

注※2　OSによって，使用する環境変数名が異なります。

LIBPATH：AIXの場合

LD_LIBRARY_PATH：HP-UX（IPF），Linux，またはSolarisの場合

13.2.2　運用の移行

システムの運用環境も移行する必要があります。次の内容を変更して，システムの運用環境を移行してください。

起動プロセスの変更

メッセージの監視方法の変更

＜この項の構成＞

(1)　起動プロセスの変更

(2)　メッセージの監視方法の変更

(1)　起動プロセスの変更

インプロセストランザクションサービスでは，次のプロセスは起動不要です。

OTS（tsstartコマンドで起動）

TCS（trnctxsvコマンドで起動）

スマートエージェント（osagentコマンドで起動）※

注※

CTMなどの機能でスマートエージェントを使用する場合があります。ほかの機能で使用している場合は，スマートエージェントを起動してください。

(2)　メッセージの監視方法の変更

メッセージを監視する運用を行っている場合，メッセージの出力や内容の変更があります。監視対象となるメッセージIDを変更してください。メッセージの変更点を次の表に示します。

表13-3　メッセージの変更点

変更点 | アウトプロセストランザクションサービスの場合 | インプロセストランザクションサービスの場合
出力先 | イベントログ，またはsyslog | cjmessage?.log
cjmessage?.log
メッセージIDの範囲 | KFCB29500～KFCB32401 | KFCB40000～KFCB49999
メッセージが記載されているドキュメント | TPBrokerのドキュメント | マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」

注　「?」は通番を意味します。

13.2.3　トラブルシュート情報の取得方法の移行

アウトプロセストランザクションサービスを使用した場合は，環境変数「TPSPOOL」および「TPFS」に指定したディレクトリ以下のトレースファイルやログファイルを取得する必要がありました。インプロセストランザクションサービスでは，アウトプロセストランザクションサービスで取得していた資料は，取得不要です。インプロセストランザクションサービスで取得する必要があるトラブルシュート情報を次の表に示します。

表13-4　インプロセストランザクションサービスで取得する必要があるトラブルシュート情報

取得先
取得情報

Cosminexus Component Containerのメッセージログ

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥cjmessage?.log

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>/logs/cjmessage?.log）

Cosminexus TPBrokerのメッセージ

Cosminexus Component Containerのユーザログ

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥user_out?.log

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>/logs/user_out?.log）

Cosminexus TPBrokerのメッセージ

Cosminexus Component Containerのメンテナンスログ

Windowsの場合
<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥cjmeintenance?.log

UNIXの場合
<作業ディレクトリ>/ejb/<サーバ名称>/logs/cjmeintenance?.log）

Cosminexus TPBrokerのトレース情報

インプロセストランザクションサービスのステータスファイル
（J2EEサーバのejbserver.distributedtx.ots.status.directory1，またはejbserver.distributedtx.ots.status.directory2キーで指定されるディレクトリ以下のファイル）
インプロセストランザクションサービスのステータスファイルおよびステータスファイルのバックアップ

注　「?」は通番を意味します。

13.2.4　プログラムソースコードの移行

次に示すように運用手順を変更して移行してください。

インプロセストランザクションサービスを使用する場合，アウトプロセストランザクションサービスを使用していた場合と比べて，動作が異なります。発生条件に合致する場合，プログラムソースコードを変更する必要があります。

表13-5　プログラムソースコードの変更点

動作変更内容
発生条件
修正内容

SetRollbackOnly後のトランザクション決着時にbeforeCompletionが呼ばれません（アウトプロセストランザクションサービスを使用した場合は呼ばれます）。
Stateful Session Beanを使用し，SessionSynchronizationを実装している場合
SetRollbackOnly後のトランザクション決着時にbeforeCompletionが呼ばれることを期待しないプログラムに変更してください。

SetRollbackOnly後のトランザクション決着時にejbStoreが呼ばれません（アウトプロセストランザクションサービスを使用した場合は呼ばれます）。
Entity Beanを使用している場合
SetRollbackOnly後のトランザクション決着時にejbStoreが呼ばれることを期待しないプログラムに変更してください。

afterCompletionの引数（boolean commited）の決定方法は，アウトプロセストランザクションサービスの場合にはトップルートトランザクションの処理結果を反映していましたが，インプロセストランザクションサービスの場合には，該当するブランチと，サブオーディネートブランチの処理結果だけで決定されます。
次の条件をすべて満たす場合

複数のJ2EEサーバで，プロセス間をわたってトランザクショナルなEJB呼び出しを行う。

Stateful Session Beanを使用している。

SessionSynchronizationを実装している。

afterCompletionの引数の使い方として，トップルートトランザクションの決着結果を期待しないプログラムに変更してください。

付録

＜この付録の構成＞

付録A　snapshotログの収集対象一覧

付録B　データベースと接続中にトラブルが発生したコネクションの特定

付録C　機能ごとに出力されるログ情報

付録D　障害発生時のCMR用の表の回復

付録E　Cosminexus DABroker Libraryでのトラブルシューティング

付録F　Cosminexus DABroker Libraryのスプール情報の内容

付録G　Cosminexus DABroker Libraryのメモリ所要量

付録H　各バージョンでの主な機能変更

付録I　このマニュアルの参考情報

付録J　用語解説

付録A　snapshotログの収集対象一覧

ここでは，snapshotログの一括収集を実行する場合に収集対象となる構成ソフトウェアの実行環境ディレクトリについて説明します。なお，収集したZIPファイルを展開すると，収集元と同じディレクトリ構成で展開されます。

snapshotログの一括収集時，アプリケーションサーバで構築したシステムの構成ソフトウェア，ライブラリのログファイルおよび定義ファイルが収集されます。収集対象は，次のファイルを編集すると変更できます。snapshotログ取得の設定については，「3.3.3　snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）」または「3.3.4　snapshotログ収集の設定（バッチアプリケーションを実行するシステム）」を参照してください。

トラブルシューティングに必要な資料とsnapshotログの資料の種類との対応を次の表に示します。

表A-1　トラブルシューティングに必要な資料とsnapshotログの資料の種類との対応

トラブルシューティングに必要な資料 | snapshotログの資料の種類
アプリケーションサーバのログ | メッセージログ | メッセージログ
ユーザログ | そのほかのログ
例外ログ | そのほかのログ
保守用ログ | 保守ログ
EJBクライアントアプリケーションのシステムログ | メッセージログ | メッセージログ
ユーザログ | そのほかのログ
例外ログ | そのほかのログ
保守用ログ | 保守ログ
性能解析トレース | 性能，障害解析トレース
JavaVMのスレッドダンプ | ダンプ
JavaVMのガーベージコレクションのログ | そのほかのログ
メモリダンプ | ダンプ
日立JavaVMログファイル | そのほかのログ
エラーリポートファイル | ダンプ
OSの状態・ログ | そのほか
OSの統計情報 | そのほか
定義情報 | 定義情報
作業ディレクトリ | ユーザデータ
リソースの設定 | ユーザデータ
Webサーバのログ | メッセージログ
そのほかのログ
アクセスログ
内部インタフェース
JavaVMのスタックトレース | そのほかのログ
明示管理ヒープ機能のイベントログ | そのほかのログ

注意

snapshotログの一括収集は，デフォルトの状態では構成ソフトウェアのインストール時にデフォルトで作成されたディレクトリを対象に実行します。ログの出力先および作業ディレクトリを変更している場合は，収集先をカスタマイズしてください。

＜この節の構成＞

付録A.1　snapshotログの収集対象一覧の概要

付録A.2　Cosminexus Component Container

付録A.3　Cosminexus Component Transaction Monitor

付録A.4　Cosminexus DABroker Library

付録A.5　Cosminexus Developer's Kit for Java

付録A.6　Cosminexus Performance Tracer

付録A.7　Cosminexus Web Services - Security

付録A.8　Hitachi Web Server

付録A.9　Microsoft Internet Information Service

付録A.10　uCosminexus Service Adapter for FTP

付録A.11　uCosminexus Service Adapter for Flat Files

付録A.12　uCosminexus Service Adapter for Message Queue

付録A.13　uCosminexus Service Adapter for Object Access

付録A.14　uCosminexus Service Adapter for TP1

付録A.15　監査ログ

付録A.16　そのほかの情報

付録A.1　snapshotログの収集対象一覧の概要

ここでは，snapshotログの資料の格納場所や，一覧で説明している収集方法，ディレクトリおよびファイルの名称について説明します。

＜この項の構成＞

(1)　資料の格納場所

(2)　snapshotログの収集方法

(3)　snapshotログの収集可否や収集に関する設定変更

(4)　収集対象の記述規則

(1)　資料の格納場所

snapshotログは，snapshotlog.confとsnapshotlog.2.confという二つのファイルに分けて収集されます。

snapshotlog.conf
一次送付資料の収集対象が記載されているファイルです。ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.conf

UNIXの場合
/opt/Cosminexus/manager/config/snapshotlog.conf

snapshotlog.2.conf
二次送付資料の収集対象が記載されているファイルです。ファイルの格納場所を次に示します。

Windowsの場合
<Cosminexusのインストールディレクトリ>¥manager¥config¥snapshotlog.2.conf

UNIXの場合
/opt/Cosminexus/manager/config/snapshotlog.2.conf

(2)　snapshotログの収集方法

snapshotログを収集する方法には，次の種類があります。snapshotログの収集方法を次の表に示します。

表A-2　snapshotログの収集方法

収集方法 | 分類
運用管理ポータルの「論理サーバの起動／停止」アンカーの［snapshotログ］画面から収集する | 収集方法A
運用管理コマンド（mngsvrutil collect snapshotコマンド）を実行する | 収集方法A
論理サーバの障害を検知して自動収集する | 収集方法A
標準のsnapshotlog.conf，snapshotlog.2.confを使用してsnapshotlogコマンドを実行する | 収集方法B

(3)　snapshotログの収集可否や収集に関する設定変更

表A-5から表A-31では，収集方法A，収集方法Bについて，収集可否や設定変更可否などを記号で分類しています。それぞれの記号について次の表で説明します。

表A-3　表A-5から表A-31の表中の記号の定義

表中の
記号
デフォルト
での収集
ログの出力先や定義ファイルの格納先の変更
ログの出力先や定義ファイルの
格納先の変更をした場合の収集

◎
収集される。
できる。
できる。

○
収集される。
できない。
できない。

△
収集される。
できる。
できるが，制限がある※¹。

×
収集されない。
できない。
できない※²。

注※1

snapshotログ収集対象定義ファイル（snapshotlog.conf，またはsnapshotlog.2.conf）を編集して，収集対象ディレクトリに設定する必要があります。

注※2

ログの出力先や定義ファイルの格納先を変更できません。また，snapshotログ収集対象定義ファイル（snapshotlog.conf，またはsnapshotlog.2.conf）を編集して，収集対象ディレクトリに設定する必要があります。

(4)　収集対象の記述規則

収集対象のディレクトリおよびファイルの共通の記述方法を次に示します。

収集対象中の「*」は0文字以上の任意の文字列を示します。

Windowsでの「¥*¥*¥*」やUNIXでの「/*/*/*」のような記述は，何階層下のファイルを収集するかを示します。例えば，Windowsでの「log¥*¥*」やUNIXでの「log/*/*」の場合は，logディレクトリの2階層下のファイルが収集対象になります。

また，収集対象のディレクトリおよびファイルの意味を次の表に示します。

表A-4　収集対象のディレクトリおよびファイルの意味

ディレクトリまたはファイル名
内容
デフォルト値
置換後の値

<Cosminexusのインストールディレクトリ>
アプリケーションサーバのインストールディレクトリパス名

Windowsの場合
アプリケーションサーバのインストール時に決定する。

UNIXの場合
/opt/Cosminexus

${cosminexus.home}

<CTM識別子>
ctmstartコマンドの-CTMIDオプション名
－
.+

<CTMスプールディレクトリ(ctmspool)>
環境変数CTMSPOOLに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CTM/spool
&{ctmspool}

<DABroker運用ディレクトリ(dabroker)>
DABrokerインストール後，dabsetupコマンドで設定したディレクトリパス名
/opt/DABroker
<DABroker_Oparation>

<EJBクライアントの定義ファイル格納ディレクトリ>
環境変数CJCLUSRCONFDIRに指定したディレクトリパス名，またはcjclstartapコマンドを実行したディレクトリパス名
－
<ejb.client.definition.file.dir>

<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>
Javaアプリケーション用のusrconf.cfgのejb.client.ejb.logキーに指定したサブディレクトリ名
system
.+

<EJBクライアントログサブディレクトリ1(ejbserver..client.ejb.log)>
Javaアプリケーション用のusrconf.propertiesのejbserver.client.ejb.logキーに指定したディレクトリパス名
－
.+

<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>
Javaアプリケーション用のusrconf.cfgのejb.client.log.appidキーに指定したサブディレクトリ名
ejbcl
.+

<EJBクライアントログサブディレクトリ2(ejbserver..client.log.appid)>
Javaアプリケーション用のusrconf.propertiesのejbserver.client.log.appidキーに指定したディレクトリパス名
－
.+

<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>
Javaアプリケーション用のusrconf.cfgのejb.client.log.directoryキーに指定したディレクトリパス名
－
<ejb.client.log.directory>

<EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>
Javaアプリケーション用のusrconf.propertiesのejbserver.client.log.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/client/logs
<ejbserver.client.log.directory>

<HCSCサーバのプロパティ(methodtrace-filepath)>
HCSCサーバ定義コマンドcscsvconfigでmethodtrace-filepathプロパティに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/logs/csc
<methodtrace-filepath>

<HCSCサーバのプロパティ(requesttrace-filepath)>
HCSCサーバ定義コマンドcscsvconfigでrequesttrace-filepathプロパティに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/logs/csc/maintenance
<requesttrace-filepath>

<HCSCリポジトリルート(cscmng.repository.root)>
HCSC-Manager定義cscmng.propertiesのcscmng.repository.rootキーに指定したリポジトリルート名
<Cosminexusのインストールディレクトリ>/CSC/repository
<cscmng.repository.root>

<HCSCログ出力ディレクトリ(cscmng.log.dir)>
HCSC-Manager定義cscmng.propertiesのcscmng.log.dirキーに指定したログディレクトリパス名
<Cosminexusのインストールディレクトリ>/CSC/log/manager
<cscmng.log.dir>

<HWSアクセスログディレクトリ(HttpsdCustomLogFileDir)>
httpsd.confのCustomLogディレクティブに指定したファイル名のディレクトリパス名部分
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/logs
&{hws.logfile.dir}

<HWSのインストールディレクトリ>
Hitachi Web Serverのインストールディレクトリパス名
Windowsの場合
<Cosminexusのインストールディレクトリ>/httpsd
UNIXの場合
/opt/hitachi/httpsd
${hws.home}

<HWSエラーログディレクトリ(HttpsdErrorLogFileDir)>
httpsd.confのErrorLogrディレクティブに指定したファイル名のディレクトリパス名部分
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/logs
&{hws.logfile.dir}

<HWSキャッシュサーバの作業ディレクトリ(SSLCacheServerRunDir)>
httpsd.confのSSLCacheServerRunDirディレクティブに指定したディレクトリパス名
<HWSサーバのルートディレクトリ(ServerRoot)>
<SSLCacheServerRunDir>

<HWSコアダンプ出力ディレクトリ(CoreDumpDirectory)>
httpsd.confのCoreDumpDirectoryディレクティブに指定したディレクトリパス名
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>
&{core.dump.directory}

<HWSサーバのルートディレクトリ(ServerRoot)>
httpsd.confのServerRootディレクティブに指定したディレクトリパス名
<HWSのインストールディレクトリ>
<ServerRoot>

<HWS内部トレースディレクトリ(HttpsdTraceLogFileDir)>
httpsd.confのHWSTraceLogFileディレクティブに指定したファイル名のディレクトリパス名部分
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/logs
&{hws.logfile.dir}

<HWSプロセスIDファイル(PidFile)>
httpsd.confのPidFileディレクティブに指定したファイル名
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/logs/httpd.pid
<PidFile>

<HWS用リダイレクタログ出力ディレクトリ(JkLogFileDir)>
mod_jk.confのJkLogFileDirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/logs
&{jklogfiledir}

<HWS用リダイレクタトレースログ出力ディレクトリ(JkTraceLogFileDir)>
mod_jk.confのJkTraceLogFileDirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/logs
&{jktracelogfiledir}

<HWSリクエストログディレクトリ(HttpsdRequestLogFileDir)>
httpsd.confのHWSRequestLogディレクティブに指定したファイル名のディレクトリパス名部分
<HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/logs
&{hws.logfile.dir}

<IISアクセスログディレクトリ(IIS_log_dir)>
Microsoft IISのアクセスログ出力ディレクトリパス名
<システムルートディレクトリ(systemroot)>/system32/LogFiles/W3SVC1
<IIS_log_dir>

<IIS用リダイレクタトレースログ出力ディレクトリ(trace_log_file_dir)>
isapi_redirect.confのtrace_log_file_dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/logs
&{jktracelogfiledir}

<IIS用リダイレクタログ出力ディレクトリ(log_file_dir)>
isapi_redirect.confのlog_file_dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/logs
&{jklogfiledir}

<J2EEサーバ作業ディレクトリ(ejb.public.directory)>
J2EEサーバ用のusrconf.cfgのejb.public.directoryキーに指定したディレクトリ
<Cosminexusのインストールディレクトリ>/CC/server/public
&{ejb.public.directory}

<J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>
J2EEサーバ用のusrconf.cfgのejb.server.log.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/logs
&{ejb.server.log.directory}

<JAXRトレースファイル名(com.cosminexus.xml.registry.trace.file_path)>
システムプロパティのcom.cosminexus.xml.registry.trace.file_pathキーに指定したファイルパス名
${cosminexus.home}/c4web/logs/JAXRAPITrace
<com.cosminexus.xml.registry.trace.file_path>

<JSP用一時ディレクトリ(webserver.work.directory)>
J2EEサーバのusrconf.propertiesのwebserver.work.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/repository/<サーバ名称>/web
&{webserver.work.directory}

<Managementイベント発行用メッセージIDリストファイル(manager.mevent.message_id.list)>
mevent.<サーバ名称>.propertiesのmanager.mevent.message_id.listキーに指定したファイルパス名
－
<manager.mevent.message_id.list>

<Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>
manager.cfgのcom.cosminexus.manager.log.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/manager/log
${com.cosminexus.manager.log.dir}

<PRF識別子>
cprfstartコマンドの-PRFIDオプション名
－
.+

<PRFスプールディレクトリ(prfspool)>
環境変数PRFSPOOLに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/PRF/spool
&{prfspool}

<RMインストールディレクトリ>
環境変数HRMDIRに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/RM
<HRMDIR>

<TP1Connectorログ出力ディレクトリ(jp.co.hitachi_system.tp1connector.logdestination)>
システムプロパティのjp.co.hitachi_system.tp1connector.logdestinationキーに指定したディレクトリパス名
<ユーザホームディレクトリ(user.home)>
<jp.co.hitachi_system.tp1connector.logdestination>

<UNIXのsyslog(syslog)>
UNIXのsyslogファイルパス名

AIXの場合
/var/adm/ras/syslog*

HP-UXの場合
/var/adm/syslog/*syslog.log

Linuxの場合
/var/log/messages*

Solarisの場合
/var/adm/messages*

<syslog>

<VBROKER_ADMディレクトリ(vbroker_adm)>
環境変数VBROKER_ADMに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/TPB/adm
<VBROKER_ADM>

<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>
J2EEサーバ用のusrconf.cfgのweb.server.log.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/logs
<web.server.log.directory>

<Windowsのイベントログ(EventLog)>
Windowsのイベントログをwmicコマンドなどで収集したファイル
－
<EventLog>

<Windowsのクラッシュダンプ出力ディレクトリ(CrashDumpDir)>
Windowsのクラッシュダンプ出力先ディレクトリパス名（Windows Server 2008，Windows 7またはWindows Vista）
<ユーザのApplication Dataディレクトリ(LOCALAPPDATA)>/CrashDumps
<CrashDumpDir>

<Windowsのクラッシュダンプファイル(CrashDumpFile)>
Windowsのクラッシュダンプファイルパス名（Windows Server 2008，Windows 7またはWindows Vista以外）

Windows XP の場合
<システムドライブ(SystemDrive)>/Documents and Settings/All Users/Application Data/Microsoft/Dr Watson/user.dmp

Windows 2003 の場合
< システムドライブ(SystemDrive)>/Documents and Settings/LocalService/Local Settings/Application Data/Microsoft/Dr Watson/user.dmp

<CrashDumpFile>

<Windowsのワトソンログファイル(DrWtsnLogFile)>
Windowsのワトソンログファイルパス名（Windows Server 2008，Windows 7またはWindows Vista以外）

Windows XP の場合
< システムドライブ(SystemDrive)>/Documents and Settings/All Users/Application Data/Microsoft/Dr Watson/drwtsn32.log

Windows 2003 の場合
< システムドライブ(SystemDrive)>/Documents and Settings/LocalService/Local Settings/ApplicationData/Microsoft/Dr Watson/drwtsn32.log

<DrWtsnLogFile>

<XML Security - Core トレース出力ディレクトリ(com.cosminexus.xml.security.logging.trace_dir)>
J2EEサーバ用のusrconf.cfgのcom.cosminexus.xml.security.logging.trace_dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>
<com.cosminexus.xml.security.logging.trace_dir>

<インプロセスHTTPサーバアクセスログファイル(webserver.logger.access_log.inprocess_http.filename)>
J2EEサーバ用のusrconf.propertiesのwebserver.logger.access_log.inprocess_http.filenameキーに指定したファイルパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/logs/http/cjhttp_access.inprocess_http
&{webserver.logger.access_log.inprocess_http.filename}.

<稼働情報ファイル出力先ディレクトリ(ejbserver.management.stats_file.dir)>
J2EEサーバ用のusrconf.propertiesのejbserver.management.stats_file.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/stats
&{ejbserver.management.stats_file.dir}

<監査ログ出力ディレクトリ(auditlog.directory)>
監査ログ定義ファイルのauditlog.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/auditlog
<auditlog.directory>

<監査ログメッセージ出力ディレクトリ(auditlog.raslog.message.directory)>
監査ログ定義ファイルのauditlog.raslog.message.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/auditlog
<auditlog.raslog.message.directory>

<監査ログ例外出力ディレクトリ(auditlog.raslog.exception.directory)>
監査ログ定義ファイルのauditlog.raslog.exception.directoryキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/auditlog
<auditlog.raslog.exception.directory>

<コンテキストルート>
サーバで実行している J2EE webアプリケーションのルート名
－
.+

<サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>
サーバ管理コマンド用オプション定義ファイルのUSRCONF_JVM_ARGSキーの-Dejbserver.log.directoryオプションに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/admin/logs
<admin_ejb.server.log.directory>

<サーバ名称>
Management Serverで設定した論理サーバ名または実サーバ名
－
.+

<システムドライブ(SystemDrive)>
環境変数SystemDriveに指定したディレクトリパス名
－
%{SystemDrive}

<システムルートディレクトリ(systemroot)>
環境変数SystemRootに指定したディレクトリパス名
－
%{SystemRoot}

<ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory1)>
J2EEサーバのusrconf.propertiesのejbserver.distributedtx.ots.status.directory1キーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/otsstatus
&{ejbserver.distributedtx.ots.status.directory1}

<統合ユーザ管理のトレースファイル名(com.cosminexus.admin.auth.trace.prefix)>
ua.confのcom.cosminexus.admin.auth.trace.prefixオプションに指定したファイルパス名
－
<com.cosminexus.admin.auth.trace.prefix>

<バッチアプリケーションの定義ファイル格納ディレクトリ>
環境変数CJBATCHUSRCONFDIRに指定したディレクトリパス名，またはcjexecjobコマンド，cjkilljobコマンドもしくはcjlistjobコマンドを実行したディレクトリパス名
－
<batch.application.definition.file.dir>

<バッチアプリケーションログ出力ディレクトリ(batch.log.directory)>
バッチアプリケーション用のusrconf.cfgのbatch.log.directoryに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/batch/logs
<batch.log.directory>

<ユーザのApplication Dataディレクトリ(LOCALAPPDATA)>
環境変数LOCALAPPDATAに指定したディレクトリパス名
－
%{LOCALAPPDATA}

<ユーザホームディレクトリ(user.home)>
実行ユーザのホームディレクトリパス名

収集方法がAの場合
運用管理エージェント起動ユーザのホームディレクトリ

収集方法がBの場合
snapshotlogコマンドの実行ユーザのホームディレクトリ

－
${user.home}および<user.home>

<予備ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory2)>
J2EEサーバのusrconf.propertiesのejbserver.distributedtx.ots.status.directory2キーに指定したディレクトリパス名
－
&{ejbserver.distributedtx.ots.status.directory2}

<08-50モードの仮想サーバマネージャログディレクトリ(vmx.log.dir)>
vmx.propertiesのvmx.log.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/manager/vmx/log
<vmx.log.dir>

<08-50モードの仮想サーバマネージャの処理データ格納ディレクトリ(vmx.spool.dir)>
vmx.propertiesのvmx.spool.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/manager/vmx/spool
<vmx.spool.dir>

<仮想サーバマネージャの処理データ格納ディレクトリ(vmi.spool.dir)>
vmi.propertiesのvmi.spool.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/manager/vmi/spool
<vmi.spool.dir>

<サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>
sinaviagent.cfgのsinaviagent.log.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/sinagent/log
<sinaviagent.log.dir>

<サーバ通信エージェント処理データ格納ディレクトリ(sinaviagent.spool.dir)>
sinaviagent.cfgのsinaviagent.spool.dirキーに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/sinagent/spool
<sinaviagent.spool.dir>

<FTPアダプタインストールディレクトリ(ftpadp.home)>
uCosminexus Service Adapter for FTPのインストールディレクトリパス名
－
<ftpadp.home>

<FTPアダプタコマンドメッセージログ出力先ディレクトリ(ftpadp.command.messagelog.filepath)>
uCosminexus Service Adapter for FTPの運用コマンドのメッセージログ出力先ディレクトリパス名
<FTPアダプタインストールディレクトリ(ftpadp.home)>/log
<ftpadp.command.messagelog.filepath>

<CSCメールアダプタ運用コマンドメッセージログ出力先ディレクトリ(mailadp.command.messagelog.filepath)>
Cosminexus Service Coordinator本体に組み込まれるメールアダプタの運用コマンド実行ログディレクトリパス名
<Cosminexusのインストールディレクトリ>/CSC/log/adapter/command
<mailadp.command.messagelog.filepath>

<CSCメールアダプタの保守ログ出力先ディレクトリ(mailadp.methodtrace.filepath)>
メールアダプタの実行環境プロパティファイルでmailadp.methodtrace.filepathプロパティに指定したディレクトリパス名
<Cosminexusのインストールディレクトリ>/CC/server/public/ejb/<サーバ名称>/logs/CSCADP/MAILADP/maintenance/
<mailadp.methodtrace.filepath>

（凡例）－：デフォルト値なし

付録A.2　Cosminexus Component Container

Cosminexus Component Containerに関連する収集対象を次の表に示します。

表A-5　Cosminexus Component Containerに関連する収集対象（Windowsの場合）

分類 | 資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
J2EEサーバ（J2EEサーバモードで実行している場合） | メッセージログ | 稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
ログ稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjlogger.log | ○ | － | ◎ | △
J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ（通常モード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ（テストモード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/test#<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
Webサーブレットログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/web_servlet*.log | ○ | － | ◎ | △
そのほかのログ | ユーザ出力ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user_out*.log | ○ | － | ◎ | △
ユーザエラーログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user_err*.log | ○ | － | ◎ | △
JavaVMの保守情報およびガーベージコレクションのログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/javalog*.log | ○ | － | ◎ | △
JavaVMの明示管理ヒープ機能イベントログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/ehjavalog*.log | ○ | － | ◎ | △
障害発生時の例外情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjexception*.log | ○ | － | ◎ | △
JavaVMイベントログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/hs_err* | ○ | － | ◎ | △
J2EEアプリケーションのユーザログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user/* | ○ | － | ◎ | △
保守ログ | 保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjmaintenance*.log | ○ | － | ◎ | △
コンソールメッセージ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjconsole*.log | ○ | － | ◎ | △
EJBコンテナの保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjejbcontainer*.log | ○ | － | ◎ | △
Webコンテナの保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjwebcontainer*.log | ○ | － | ◎ | △
起動プロセス標準出力情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjstdout*.log | ○ | － | ◎ | △
起動プロセス標準エラー情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjstderr*.log | ○ | － | ◎ | △
終了プロセス情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cj_shutdown*.log | ○ | － | ◎ | △
ダンプ | スレッドダンプ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/javacore* | ○ | － | ◎ | △
統計情報 | 稼働情報ファイル | <稼働情報ファイル出力先ディレクトリ(ejbserver.management.stats_file.dir)>/* | － | ○ | ◎ | △
メモリ監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjmemorywatch*.log | ○ | － | ◎ | △
スレッド監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjthreadwatch*.log | ○ | － | ◎ | △
スレッドダンプ監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjthreaddumpwatch*.log | ○ | － | ◎ | △
HTTPリクエスト実行待ちキュー監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjrequestqueuewatch*.log | ○ | － | ◎ | △
HTTPセッション数監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjhttpsessionwatch*.log | ○ | － | ◎ | △
コネクションプール監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjconnectionpoolwatch*.log | ○ | － | ◎ | △
そのほか | J2EEサーバの起動，停止または異常終了を示すログ | <Windowsのイベントログ(EventLog)> | ○ | － | × | ×
定義情報 | J2EEサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/usrconf.cfg | ○ | － | ○ | ○
J2EEサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/usrconf.properties | ○ | － | ○ | ○
J2EEサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/server.policy | ○ | － | ○ | ○
MNGで作成した各種定義ファイルのバックアップ | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/* | － | ○ | ○ | ○
保護区リストファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/criticalList.cfg | ○ | － | ○ | ○
リソース設定情報 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/import/** | － | ○ | × | ×
<J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/rars/** | － | ○ | × | ×
ユーザデータ | EJBサーバ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/** | － | ○ | × | ×
Webコンテナ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
JSP用一時ディレクトリの内容 | <JSP用一時ディレクトリ(webserver.work.directory)>/** | － | ○ | × | ×
Webコンテナサーバ（サーブレットエンジンモードで実行している場合） | そのほかのログ | JavaVMイベントログ | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/hs_err* | ○ | － | ○ | ○
保守ログ | 各種ログ | <Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/*/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/*/*/* | ○ | － | △ | △
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/javacore* | ○ | － | ○ | ○
定義情報 | Webコンテナサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/usrconf.cfg | ○ | － | ○ | ○
Webコンテナサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties | ○ | － | ○ | ○
Webコンテナサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/web.policy | ○ | － | ○ | ○
ユーザ認証情報定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/web-users.xml | ○ | － | ○ | ○
各種定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/* | ○ | － | ○ | ○
サーバ管理コマンド | メッセージログ | 稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjmessage*.log | ○ | － | △ | △
ログ稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjlogger.log | ○ | － | △ | △
互換モードの稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*message*.log | ○ | － | △ | △
そのほかのログ | 障害発生時の例外情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjexception*.log | ○ | － | △ | △
互換モードの障害発生時の例外情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*exception*.log | ○ | － | △ | △
保守ログ | 保守情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjmaintenance*.log | ○ | － | △ | △
コンソールメッセージ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjconsole*.log | ○ | － | △ | △
サーバ管理コマンドの保守情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjserveradmin*.log | ○ | － | △ | △
そのほかのログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/* | ○ | － | △ | △
<サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/*/* | ○ | － | △ | △
<サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/*/*/* | － | ○ | △ | △
定義情報 | サーバ管理コマンド用定義ファイル | <Cosminexusのインストールディレクトリ>/CC/admin/usrconf/* | ○ | － | ○ | ○
バッチアプリケーション | メッセージログ | cjexecjobコマンド，cjkilljobコマンドおよびcjlistjobコマンドの稼働ログ | <バッチアプリケーションログ出力ディレクトリ(batch.log.directory)>/cjmessage*.log | ○ | － | △ | △
保守ログ | そのほかのログ | <バッチアプリケーションログ出力ディレクトリ(batch.log.directory)>/*/* | ○ | － | △ | △
定義情報 | バッチアプリケーション用オプション定義ファイル | <バッチアプリケーションの定義ファイル格納ディレクトリ>/usrconf.cfg | ○ | － | × | ×
バッチアプリケーション用ユーザプロパティファイル | <バッチアプリケーションの定義ファイル格納ディレクトリ>/usrconf.properties | ○ | － | × | ×
リソースアダプタバージョンアップコマンド（cjrarupdate） | メッセージログ | 稼働ログ | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdatemessage*.log | ○ | － | ○ | ○
そのほかのログ | 障害発生時の例外情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdateexception*.log | ○ | － | ○ | ○
保守ログ | 保守情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdatemaintenance*.log | ○ | － | ○ | ○
インプロセスHTTPサーバ | アクセスログ | インプロセスHTTPサーバの処理結果 | <インプロセスHTTPサーバアクセスログファイル(webserver.logger.access_log.inprocess_http.filename)>*.log | ○ | － | ◎ | △
モジュールトレース | スレッドトレースの情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/http/maintenance/thr/cjhttp_thr.*.inprocess_http.mm | ○ | － | ◎ | △
通信トレース | 通信トレースの情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/http/maintenance/comm/cjhttp_comm.*.inprocess_http.mm | ○ | － | ◎ | △
移行コマンド（cjenvupdate） | メッセージログ | cjenvupdateコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdatemessage*.log | ○ | － | ○ | ○
そのほかのログ | cjenvupdateコマンドの例外情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdateexception*.log | ○ | － | ○ | ○
保守ログ | cjenvupdateコマンドの保守情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdatemaintenance*.log | ○ | － | ○ | ○
インプロセストランザクションサービス | そのほか | インプロセストランザクションサービスのステータスファイル | <ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory1)>/* | － | ○ | ◎ | △
<ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory1)>/*/* | － | ○ | ◎ | △
インプロセストランザクションサービスの予備ステータスファイル | <予備ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory2)>/* | － | ○ | ◎ | ×
<予備ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory2)>/*/* | － | ○ | ◎ | ×
EJBクライアント | メッセージログ | 稼働ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmessage*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/cjclmessage*.log | ○ | － | × | ×
cjclstartapコマンドの稼働ログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/cjclstartap*.log | ○ | － | × | ×
cjcldellogコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/CC/client/logs/cjcldellog.log | ○ | － | ○ | ○
そのほかのログ | ユーザ出力ログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/user_out*.log | ○ | － | × | ×
ユーザエラーログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/user_err*.log | ○ | － | × | ×
JavaVMの保守情報，ガーベージコレクションのログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/javalog*.log | ○ | － | × | ×
障害発生時の例外情報 | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclexception*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjclmaintenance*.log | ○ | － | × | ×
EJBクライアントアプリケーションのユーザログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/user/* | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/user/* | ○ | － | × | ×
保守ログ | 保守情報 | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmaintenance*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjclmaintenance*.log | ○ | － | × | ×
EJBコンテナの保守情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjejbcontainer*.log | ○ | － | × | ×
起動プロセス標準出力情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjstdout*.log | ○ | － | × | ×
起動プロセス標準エラー情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjstderr*.log | ○ | － | × | ×
ログの稼働情報 | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/cjlogger.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/cjlogger.log | ○ | － | × | ×
定義情報 | EJBクライアント用オプション定義ファイル | <EJBクライアントの定義ファイル格納ディレクトリ>/usrconf.cfg | ○ | － | × | ×
EJBクライアント用ユーザプロパティファイル | <EJBクライアントの定義ファイル格納ディレクトリ>/usrconf.properties | ○ | － | × | ×
リダイレクタ（Webサーバ） | メッセージログ | HWS用リダイレクタのメッセージログ | <HWS用リダイレクタログ出力ディレクトリ(JkLogFileDir)>/hws_redirect*.log | ○ | － | ◎ | △
IIS用リダイレクタのメッセージログ | <IIS用リダイレクタログ出力ディレクトリ(log_file_dir)>/isapi_redirect*.log | ○ | － | △ | △
旧バージョン互換HWS用リダイレクタのメッセージログ | <HWS用リダイレクタログ出力ディレクトリ(JkLogFileDir)>/hws_redirect*.log | ○ | － | ◎ | △
旧バージョン互換IIS用リダイレクタのメッセージログ | <IIS用リダイレクタログ出力ディレクトリ(log_file_dir)>/isapi_redirect*.log | ○ | － | △ | △
保守ログ | HWS用リダイレクタの保守用トレースログ | <HWS用リダイレクタトレースログ出力ディレクトリ(JkTraceLogFileDir)>/hws_rd_trace*.log | ○ | － | ◎ | △
IIS用リダイレクタの保守用トレースログ | <IIS用リダイレクタトレースログ出力ディレクトリ(trace_log_file_dir)>/iis_rd_trace*.log | ○ | － | △ | △
旧バージョン互換HWS用リダイレクタの保守用トレースログ | <HWS用リダイレクタトレースログ出力ディレクトリ(JkTraceLogFileDir)>/hws_rd_trace*.log | ○ | － | ◎ | △
旧バージョン互換IIS用リダイレクタの保守用トレースログ | <IIS用リダイレクタトレースログ出力ディレクトリ(trace_log_file_dir)>/iis_rd_trace*.log | ○ | － | △ | △
定義情報 | HWS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/mod_jk.conf | ○ | － | ○ | ○
ワーカ定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/workers.properties | ○ | － | ○ | ○
旧バージョン互換HWS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/mod_jk.conf | ○ | － | ○ | ○
旧バージョン互換用ワーカ定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/workers.properties | ○ | － | ○ | ○
TP1/Message Queue-Access | 保守ログ | API，およびCosminexusインタフェースに関するメソッドトレース，メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
APIトレース | APIトレースファイル | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/mqc.api* | ○ | － | ◎ | △
Cosminexus TP1 Connector | メッセージログ | J2EEリソースアダプタとしてデプロイして使用するTP1 Connectorの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するTP1 Connectorの稼働ログ（通常モード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
Non-managed 環境で使用する場合のTP1 Connector の稼働ログ | <TP1Connectorログ出力ディレクトリ(jp.co.hitachi_system.tp1connector.logdestination)>/tp1connector*.log | ○ | － | △ | △
TP1/Client/J | そのほかのログ | デバッグトレース情報 | <ユーザホームディレクトリ(user.home)>/TP1clientJ/dcClt*.dmp | － | ○ | △ | △
Cosminexus Manager | メッセージログ | 運用管理エージェントのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent*.log | ○ | － | ○ | ○
運用管理エージェントの起動・停止コマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagentctl.exe.*.log | ○ | － | ○ | ○
統合メッセージログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/message/mngmessage*.log | ○ | － | ○ | ○
運用管理エージェントサービスのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagentsv.exe.*.log | ○ | － | ○ | ○
運用監視エージェントのログ・トレース | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngagent*.*.log | ○ | － | ○ | ○
Management Serverサービスのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvr.exe.*.log | ○ | － | ○ | ○
Management Serverサービス起動・停止コマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvrctl.exe.*.log | ○ | － | ○ | ○
Management Serverのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvr*.log | ○ | － | ○ | ○
そのほかのログ | 運用管理エージェントの標準エラー出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.err.*.log | ○ | － | ○ | ○
運用管理エージェントの標準出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.out.*.log | ○ | － | ○ | ○
運用管理エージェントの標準エラー出力コマンドライン | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.err | ○ | － | ○ | ○
コンソールログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/processConsole*.log | ○ | － | ○ | ○
運用管理エージェントサービスの標準出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagentsv.exe.out | ○ | － | ○ | ○
運用管理エージェントサービスの標準エラー出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagentsv.exe.err | ○ | － | ○ | ○
Management Serverサービスの標準エラー出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvr.exe.err | ○ | － | ○ | ○
Management Serverサービスの標準出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvr.exe.out | ○ | － | ○ | ○
保守ログ | コマンド保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngcmd*.log | － | ○ | ○ | ○
運用管理エージェントの保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/adminagent*.log | ○ | － | ○ | ○
運用管理エージェントが行うRMI処理での保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngrmi*.log | － | ○ | ○ | ○
Management Serverの保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngsvr*.log | ○ | － | ○ | ○
定義情報 | 運用管理エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagent.properties | ○ | － | ○ | ○
運用管理エージェント用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagentuser.cfg | ○ | － | ○ | ○
運用管理エージェント設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagent.xml | ○ | － | ○ | ○
運用監視エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngagent.<サーバ名称>.properties | ○ | － | ○ | ○
Management Server環境設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.properties | ○ | － | ○ | ○
Management Server用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.cfg | ○ | － | ○ | ○
Management Server用環境変数定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserverenv.cfg | ○ | － | ○ | ○
Manager設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/manager.cfg | ○ | － | ○ | ○
Managementアクション実行用プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/maction.properties | ○ | － | ○ | ○
Managementイベント発行用プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/mevent.<サーバ名称>.properties | － | ○ | ○ | ○
Managementイベント発行用メッセージIDリストファイル | <Managementイベント発行用メッセージIDリストファイル(manager.mevent.message_id.list)> | － | ○ | × | ×
mngsvrutilコマンドのクライアント側定義ファイル | <ユーザホームディレクトリ(user.home)>/.mngsvrutilrc | － | ○ | △ | △
mngsvrutilコマンドのサーバ側定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngsvrutil.properties | ○ | － | ○ | ○
mngsvrutilコマンドのクライアント側共通定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngsvrutilcl.properties | ○ | － | ○ | ○
JP1/IM連携用モニタ起動コマンドの設定ファイル | <ユーザホームディレクトリ(user.home)>/.mngsvrmonitorrc | － | ○ | △ | △
JP1/IM連携用システムログメッセージマッピングファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.jp1event.system.mapping.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/manager/config/manager.jp1event.system.mapping.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/manager/config/manager.<サーバ名称>.jp1event.system.mapping.properties | ○ | － | ○ | ○
性能，障害解析トレース | PRFトレースなど | <Cosminexusのインストールディレクトリ>/manager/tmp/*.zip | － | ○ | ○ | ○
内部インタフェーストレース | 統合トレースログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/trace/mngtrace*.log | ○ | － | ○ | ○
そのほか | OSの状態情報など | <Cosminexusのインストールディレクトリ>/manager/tmp/* | ○ | － | ○ | ○
Smart Composer | 定義情報 | サーバ設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/cmxserver.properties | ○ | － | ○ | ○
クライアント設定プロパティファイル | <ユーザホームディレクトリ(user.home)>/.cmxrc | － | ○ | △ | △
クライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/cmxclient.properties | ○ | － | ○ | ○
負荷分散機定義プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/lb.properties | ○ | － | ○ | ○
統合ユーザ管理 | 定義情報 | JAASのコンフィグレーションファイル | <Cosminexusのインストールディレクトリ>/manager/config/jaas.conf | ○ | － | ○ | ○
統合ユーザ管理のコンフィグレーションファイル | <Cosminexusのインストールディレクトリ>/manager/config/ua.conf | ○ | － | ○ | ○
APIトレース | 統合ユーザ管理のトレース | <統合ユーザ管理のトレースファイル名(com.cosminexus.admin.auth.trace.prefix)>.*.log | － | ○ | × | ×
08-50モードの仮想サーバマネージャ | 定義情報 | 仮想サーバマネージャプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx.properties | ○ | － | × | ○
仮想サーバマネージャのクライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmxclient.properties | ○ | － | × | ○
VMware vCenter Serverの接続処理のオプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_usrconf.cfg | ○ | － | × | ○
VMware vCenter Serverの接続処理のプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_usrconf.properties | ○ | － | × | ○
VMware vCenter Serverの接続処理の共通定義ファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_cjwconf.properties | － | ○ | × | △
そのほかのログ | 仮想サーバマネージャで使用するcjclstartapコマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/vmx_avcs_logs/** | － | ○ | × | ○
仮想サーバから収集したログ情報 | <08-50モードの仮想サーバマネージャログディレクトリ(vmx.log.dir)>/mngunit/*/*.zip | － | ○ | × | △
仮想サーバマネージャ | 定義情報 | 仮想サーバマネージャプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/vmi.properties | ○ | － | × | ○
仮想サーバマネージャのクライアント設定プロパティファイル | <ユーザホームディレクトリ(user.home)>/.vmirc | － | ○ | △ | △
仮想サーバマネージャのクライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/vmiclient.properties | ○ | － | × | ○
負荷分散機接続設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/lb/*.properties | ○ | － | × | ○
サーバ通信エージェント | メッセージログ | サーバ通信エージェントのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent*.log | ○ | － | × | ○
サーバ通信エージェントのサービスのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagentsv*.log | ○ | － | × | △
snactlコマンドのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/snactl*.log | ○ | － | × | △
そのほかのログ | サーバ通信エージェント起動時のエラー情報 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent.err | ○ | － | × | △
サーバ通信エージェントの標準出力 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent.out | ○ | － | × | △
サーバ通信エージェントが起動したコマンドのプロセスのコンソール出力情報 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/processConsole*.log | ○ | － | × | △
保守ログ | サーバ通信エージェントの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagent*.log | ○ | － | × | △
サーバ通信エージェントサービスの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagentsv*.log | ○ | － | × | △
snactlコマンドの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/snactl*.log | ○ | － | × | △
サーバ通信エージェントのJavalog | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagent.javalog*.log | ○ | － | × | △
定義情報 | サーバ通信エージェント用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/sinagent/config/sinaviagent.cfg | ○ | － | × | ○
サーバ通信エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/sinagent/config/sinaviagent.properties | ○ | － | × | ○
Cosminexus Service Coordinator | メッセージログ | HCSC-Managerログ | <CSCログ出力ディレクトリ(cscmng.log.dir)>/* | ○ | － | △ | △
FTPインバウンドアダプタのメッセージログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/csc/inbound-adapter/ftp/<リソースアダプタ名称>/* | ○ | － | ◎ | △
FTPインバウンドアダプタの運用コマンドのメッセージログ | <Cosminexusのインストールディレクトリ>/CSC/inbound-adapter/ftp/logs/<リソースアダプタ名称>/* | ○ | － | ○ | ○
メールアダプタ運用コマンドメッセージログ | <CSCメールアダプタ運用コマンドメッセージログ出力先ディレクトリ(mailadp.command.messagelog.filepath)>/* | ○ | － | △ | △
保守ログ | メソッドトレース | <CSCサーバのプロパティ(methodtrace-filepath)>/* | ○ | － | △ | △
ファイル操作アダプタの保守ログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/ADPFOP/maintenance/*/cscadpfopmnt_*.log | ○ | － | ◎ | △
メールアダプタの保守ログ | <CSCメールアダプタの保守ログ出力先ディレクトリ(mailadp.methodtrace.filepath)>/*/* | － | ○ | ◎ | △
アクセスログ | リクエストトレース | <CSCサーバのプロパティ(requesttrace-filepath)>/* | ○ | － | △ | △
定義情報 | HCSCサーバの定義情報 | <Cosminexusのインストールディレクトリ>/CSC/system/msg/* | ○ | － | ○ | ○
HCSC-Manager定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/config/manager/* | ○ | － | ○ | ○
HCSC-Messaging定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/config/msg/* | ○ | － | ○ | ○
リポジトリ | <CSCリポジトリルート(cscmng.repository.root)>/** | ○ | － | ○ | ○
FTPインバウンドアダプタの定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/inbound-adapter/ftp/config/<リソースアダプタ名称>/*.xml | ○ | － | ○ | ○
本番環境簡易セットアップファイル | <Cosminexusのインストールディレクトリ>/spool/manager/hsetup_bk/* | ○ | － | ○ | ○
Cosminexus Web Services - Base | メッセージログ | V6互換モードが出力するトレースおよびアプリケーションログ | <Cosminexusのインストールディレクトリ>/c4web/logs/*.log | ○ | － | ○ | ○
メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/cjweb_message*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmessage*.log | ○ | － | △ | △
サーバトレース，クライアントトレース，デフォルトトレース，アプリケーションログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/WS/*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/WS/*.log | ○ | － | △ | ○
クライアントトレース，デフォルトトレース，提供コマンドトレース，アプリケーションログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/WS/*.log | ○ | － | △ | △
JAXRトレース | <JAXRトレースファイル名(com.cosminexus.xml.registry.trace.file_path)>*.log | ○ | － | △ | △
定義情報 | 共通定義ファイル | <Cosminexusのインストールディレクトリ>/c4web/conf/c4webcom.cfg | ○ | － | ○ | ○
サーバ定義ファイル | <Cosminexusのインストールディレクトリ>/c4web/conf/c4websv.cfg | ○ | － | ○ | ○
サービスデプロイ定義 | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/server-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/server-config.xml | ○ | － | ○ | ○
クライアント定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/c4webcl.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/c4webcl.properties | ○ | － | ○ | ○
Cosminexus JAX-WS | メッセージログ | cjwsimportコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwsimport*.log | ○ | － | ○ | ○
aptコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwapt*.log | ○ | － | ○ | ○
cjwsgenコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwsgen*.log | ○ | － | ○ | ○
サービスおよびクライアントの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwmessage*.log | ○ | － | ◎ | △
クライアントの稼働ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwmessage*.log | ○ | － | △ | △
そのほかのログ | サービスおよびクライアントの通信ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwtransport*.log | ○ | － | ◎ | △
クライアントの通信ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwtransport*.log | ○ | － | △ | △
例外ログ | cjwsimportコマンドの例外ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwsimportex*.log | ○ | － | ○ | ○
aptコマンドの例外ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwaptex*.log | ○ | － | ○ | ○
cjwsgenコマンドの例外ログ | <Cosminexusのインストールディレクトリ>/jaxws/logs/cjwsgenex*.log | ○ | － | ○ | ○
サービスおよびクライアントの例外ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwexception*.log | ○ | － | ◎ | △
クライアントの例外ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwexception*.log | ○ | － | △ | △
定義情報 | 動作定義ファイル | <Cosminexusのインストールディレクトリ>/jaxws/conf/*.properties | ○ | － | ○ | ○
プロセス別の動作定義ファイル | <プロセス別動作定義ファイル(com.cosminexus.jaxws.confpath)> | ○ | － | × | ×
定義ファイル | web.xml | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
cosminexus-jaxws.xml | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
ハンドラチェイン設定ファイル | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
WSDL | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
Cosminexus JPAプロバイダ | メッセージログ | Cosminexus JPAプロバイダの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjpa/cjpaoperation*.log | ○ | － | ◎ | △
PRFデーモンおよびPRFコマンドのログ | <PRFスプールディレクトリ(prfspool)>/log/<PRF識別子>/ctmlog* | ○ | － | ◎ | △
J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
そのほかのログ | 障害発生時の例外情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjexception*.log | ○ | － | ◎ | △
定義情報 | J2EEサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.cfg | ○ | － | ○ | ○
J2EEサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.properties | ○ | － | ○ | ○
J2EEサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.policy | ○ | － | ○ | ○
ユーザデータ | EJBサーバ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/** | － | ○ | × | ×
Webコンテナ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
Cosminexus JMSプロバイダ | メッセージログ | CJMSPブローカーのログ | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/instances/<インスタンス名>/log/*.log | ○ | － | △ | △
管理コマンドのログ | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/admin/log/*.log | ○ | － | △ | △
CJMSPリソースアダプタのログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjms/<リソースアダプタ名>/*.log | ○ | － | ◎ | △
定義情報 | CJMSPブローカー共通プロパティファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/lib/props/broker/commonconfig.properties | ○ | － | ○ | ○
CJMSPブローカー個別プロパティファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/instances/<インスタンス名>/props/config.properties | ○ | － | △ | △
管理コマンド定義ファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/admin/config/admin.properties | ○ | － | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-6　Cosminexus Component Containerに関連する収集対象（UNIXの場合）

分類 | 資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
J2EEサーバ（J2EEサーバモードで実行している場合） | メッセージログ | 稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
ログ稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjlogger.log | ○ | － | ◎ | △
J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ（通常モード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するリソースアダプタの稼働ログ（テストモード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/test#<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
Webサーブレットログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/web_servlet*.log | ○ | － | ◎ | △
そのほかのログ | ユーザ出力ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user_out*.log | ○ | － | ◎ | △
ユーザエラーログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user_err*.log | ○ | － | ◎ | △
JavaVMの保守情報およびガーベージコレクションのログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/javalog*.log | ○ | － | ◎ | △
JavaVMの明示管理ヒープ機能イベントログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/ehjavalog*.log | ○ | － | ◎ | △
障害発生時の例外情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjexception*.log | ○ | － | ◎ | △
JavaVMイベントログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/hs_err* | ○ | － | ◎ | △
J2EEアプリケーションのユーザログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/user/* | ○ | － | ◎ | △
保守ログ | 保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjmaintenance*.log | ○ | － | ◎ | △
コンソールメッセージ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjconsole*.log | ○ | － | ◎ | △
EJBコンテナの保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjejbcontainer*.log | ○ | － | ◎ | △
Webコンテナの保守情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjwebcontainer*.log | ○ | － | ◎ | △
起動プロセス標準出力情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjstdout*.log | ○ | － | ◎ | △
起動プロセス標準エラー情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cjstderr*.log | ○ | － | ◎ | △
終了プロセス情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CC/maintenance/cj_shutdown*.log | ○ | － | ◎ | △
ダンプ | スレッドダンプ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/javacore* | ○ | － | ◎ | △
coreダンプ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/core* | － | ○ | ◎ | △
統計情報 | 稼働情報ファイル | <稼働情報ファイル出力先ディレクトリ(ejbserver.management.stats_file.dir)>/* | － | ○ | ◎ | △
メモリ監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjmemorywatch*.log | ○ | － | ◎ | △
ファイルディスクリプタ監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjfiledescriptorwatch*.log | ○ | － | ◎ | △
スレッド監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjthreadwatch*.log | ○ | － | ◎ | △
スレッドダンプ監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjthreaddumpwatch*.log | ○ | － | ◎ | △
HTTPリクエスト実行待ちキュー監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjrequestqueuewatch*.log | ○ | － | ◎ | △
HTTPセッション数監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjhttpsessionwatch*.log | ○ | － | ◎ | △
コネクションプール監視ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/watch/cjconnectionpoolwatch*.log | ○ | － | ◎ | △
定義情報 | J2EEサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/usrconf.cfg | ○ | － | ○ | ○
J2EEサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/usrconf.properties | ○ | － | ○ | ○
J2EEサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/server.policy | ○ | － | ○ | ○
MNGで作成した各種定義ファイルのバックアップ | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/* | － | ○ | ○ | ○
保護区リストファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/criticalList.cfg | ○ | － | ○ | ○
リソース設定情報 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/import/** | － | ○ | × | ×
<J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/rars/** | － | ○ | × | ×
そのほか | J2EEサーバの起動，停止または異常終了を示すログ | <UNIXのsyslog(syslog)> | ○ | － | △ | △
ユーザデータ | EJBサーバ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/** | － | ○ | × | ×
Webコンテナ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
JSP用一時ディレクトリの内容 | <JSP用一時ディレクトリ(webserver.work.directory)>/** | － | ○ | × | ×
Webコンテナサーバ（サーブレットエンジンモードで実行している場合） | そのほかのログ | JavaVMイベントログ | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/hs_err* | ○ | － | ○ | ○
保守ログ | 各種ログ | <Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/*/* | ○ | － | △ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/*/*/*/* | ○ | － | △ | △
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/javacore* | ○ | － | ○ | ○
coreダンプ | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/core* | － | ○ | ○ | ○
定義情報 | Webコンテナサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/usrconf.cfg | ○ | － | ○ | ○
Webコンテナサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/usrconf.properties | ○ | － | ○ | ○
Webコンテナサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/web.policy | ○ | － | ○ | ○
ユーザ認証情報定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/web-users.xml | ○ | － | ○ | ○
各種定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/usrconf/* | ○ | － | ○ | ○
サーバ管理コマンド | メッセージログ | 稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjmessage*.log | ○ | － | △ | △
ログ稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjlogger.log | ○ | － | △ | △
互換モードの稼働ログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*message*.log | ○ | － | △ | △
そのほかのログ | 障害発生時の例外情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/cjexception*.log | ○ | － | △ | △
互換モードの障害発生時の例外情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*exception*.log | ○ | － | △ | △
保守ログ | 保守情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjmaintenance*.log | ○ | － | △ | △
コンソールメッセージ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjconsole*.log | ○ | － | △ | △
サーバ管理コマンドの保守情報 | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/CC/maintenance/cjserveradmin*.log | ○ | － | △ | △
そのほかのログ | <サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/* | ○ | － | △ | △
<サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/*/* | ○ | － | △ | △
<サーバ管理コマンドログ出力ディレクトリ(admin_ejb.server.log.directory)>/*/*/*/* | － | ○ | △ | △
定義情報 | サーバ管理コマンド用定義ファイル | <Cosminexusのインストールディレクトリ>/CC/admin/usrconf/* | ○ | － | ○ | ○
バッチアプリケーション | メッセージログ | cjexecjobコマンド，cjkilljobコマンドおよびcjlistjobコマンドの稼働ログ | <バッチアプリケーションログ出力ディレクトリ(batch.log.directory)>/cjmessage*.log | ○ | － | △ | △
保守ログ | そのほかのログ | <バッチアプリケーションログ出力ディレクトリ(batch.log.directory)>/*/* | ○ | － | △ | △
定義情報 | バッチアプリケーション用オプション定義ファイル | <バッチアプリケーションの定義ファイル格納ディレクトリ>/usrconf.cfg | ○ | － | × | ×
バッチアプリケーション用ユーザプロパティファイル | <バッチアプリケーションの定義ファイル格納ディレクトリ>/usrconf.properties | ○ | － | × | ×
リソースアダプタバージョンアップコマンド（cjrarupdate） | メッセージログ | 稼働ログ | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdatemessage*.log | ○ | － | ○ | ○
そのほかのログ | 障害発生時の例外情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdateexception*.log | ○ | － | ○ | ○
保守ログ | 保守情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjrarupdatemaintenance*.log | ○ | － | ○ | ○
インプロセスHTTPサーバ | アクセスログ | インプロセスHTTPサーバの処理結果 | <インプロセスHTTPサーバアクセスログファイル(webserver.logger.access_log.inprocess_http.filename)>*.log | ○ | － | ◎ | △
モジュールトレース | スレッドトレースの情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/http/maintenance/thr/cjhttp_thr.*.inprocess_http.mm | ○ | － | ◎ | △
通信トレース | 通信トレースの情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/http/maintenance/comm/cjhttp_comm.*.inprocess_http.mm | ○ | － | ◎ | △
移行コマンド（cjenvupdate） | メッセージログ | cjenvupdateコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdatemessage*.log | ○ | － | ○ | ○
そのほかのログ | cjenvupdateコマンドの例外情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdateexception*.log | ○ | － | ○ | ○
保守ログ | cjenvupdateコマンドの保守情報 | <Cosminexusのインストールディレクトリ>/CC/logs/cjenvupdatemaintenance*.log | ○ | － | ○ | ○
インプロセストランザクションサービス | そのほか | インプロセストランザクションサービスのステータスファイル | <ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory1)>/* | － | ○ | ◎ | △
<ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory1)>/*/* | － | ○ | ◎ | △
インプロセストランザクションサービスの予備ステータスファイル | <予備ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory2)>/* | － | ○ | ◎ | ×
<予備ステータスファイルのディレクトリ(ejbserver.distributedtx.ots.status.directory2)>/*/* | － | ○ | ◎ | ×
EJBクライアント | メッセージログ | 稼働ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmessage*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/cjclmessage*.log | ○ | － | × | ×
cjclstartapコマンドの稼働ログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/cjclstartap*.log | ○ | － | × | ×
cjcldellogコマンドの稼働ログ | <Cosminexusのインストールディレクトリ>/CC/client/logs/cjcldellog.log | ○ | － | ○ | ○
そのほかのログ | ユーザ出力ログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/user_out*.log | ○ | － | × | ×
ユーザエラーログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/user_err*.log | ○ | － | × | ×
JavaVMの保守情報，ガーベージコレクションのログ | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/javalog*.log | ○ | － | × | ×
障害発生時の例外情報 | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclexception*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/cjclexception*.log | ○ | － | × | ×
EJBクライアントアプリケーションのユーザログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/user/* | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/user/* | ○ | － | × | ×
保守ログ | 保守情報 | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmaintenance*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjclmaintenance*.log | ○ | － | × | ×
EJBコンテナの保守情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjejbcontainer*.log | ○ | － | × | ×
起動プロセス標準出力情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjstdout*.log | ○ | － | × | ×
起動プロセス標準エラー情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/<EJBクライアントログサブディレクトリ1(ejb.client.ejb.log)>/<EJBクライアントログサブディレクトリ2(ejb.client.log.appid)>/maintenance/cjstderr*.log | ○ | － | × | ×
ログの稼働情報 | <EJBクライアントログ出力ディレクトリ(ejb.client.log.directory)>/cjlogger.log | ○ | － | × | ×
定義情報 | EJBクライアント用オプション定義ファイル | <EJBクライアントの定義ファイル格納ディレクトリ>/usrconf.cfg | ○ | － | × | ×
EJBクライアント用ユーザプロパティファイル | <EJBクライアントの定義ファイル格納ディレクトリ>/usrconf.properties | ○ | － | × | ×
リダイレクタ（Webサーバ） | メッセージログ | HWS用リダイレクタのメッセージログ | <HWS用リダイレクタログ出力ディレクトリ(JkLogFileDir)>/hws_redirect*.log | ○ | － | ◎ | △
旧バージョン互換HWS用リダイレクタのメッセージログ | <HWS用リダイレクタログ出力ディレクトリ(JkLogFileDir)>/hws_redirect*.log | ○ | － | ◎ | △
保守ログ | HWS用リダイレクタの保守用トレースログ | <HWS用リダイレクタトレースログ出力ディレクトリ(JkTraceLogFileDir)>/hws_rd_trace*.log | ○ | － | ◎ | △
旧バージョン互換HWS用リダイレクタの保守用トレースログ | <HWS用リダイレクタトレースログ出力ディレクトリ(JkTraceLogFileDir)>/hws_rd_trace*.log | ○ | － | ◎ | △
定義情報 | HWS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/mod_jk.conf | ○ | － | ○ | ○
IIS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/isapi_redirect.conf | ○ | － | ○ | ○
ワーカ定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/workers.properties | ○ | － | ○ | ○
マッピング定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/servers/<サーバ名称>/uriworkermap.properties | ○ | － | ○ | ○
旧バージョン互換HWS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/mod_jk.conf | ○ | － | ○ | ○
旧バージョン互換IIS用リダイレクタ動作定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/isapi_redirect.conf | ○ | － | ○ | ○
旧バージョン互換用ワーカ定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/workers.properties | ○ | － | ○ | ○
旧バージョン互換用マッピング定義ファイル | <Cosminexusのインストールディレクトリ>/CC/web/redirector/uriworkermap.properties | ○ | － | ○ | ○
TP1/Message Queue-Access | 保守ログ | API，およびCosminexusインタフェースに関するメソッドトレース，メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
APIトレース | APIトレースファイル | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/mqc.api* | ○ | － | ◎ | △
Cosminexus TP1 Connector | メッセージログ | J2EEリソースアダプタとしてデプロイして使用するTP1 Connectorの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
J2EEアプリケーションに含めて使用するTP1 Connectorの稼働ログ（通常モード） | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/<J2EEアプリケーション名>/*.log | ○ | － | ◎ | △
Non-managed 環境で使用する場合のTP1 Connector の稼働ログ | <TP1Connectorログ出力ディレクトリ(jp.co.hitachi_system.tp1connector.logdestination)>/tp1connector*.log | ○ | － | △ | △
TP1/Client/J | そのほかのログ | デバッグトレース情報 | <ユーザホームディレクトリ(user.home)>/TP1clientJ/dcClt*.dmp | － | ○ | △ | △
Cosminexus Manager | メッセージログ | 統合メッセージログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/message/mngmessage*.log | ○ | － | ○ | ○
運用管理エージェントのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent*.log | ○ | － | ○ | ○
運用管理エージェントの起動・停止コマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagentctl.*.log | ○ | － | ○ | ○
運用監視エージェントのログ・トレース | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngagent*.*.log | ○ | － | ○ | ○
Management Server起動コマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvrctlstart.*.log | ○ | － | ○ | ○
Management Server停止コマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvrctlstop.*.log | ○ | － | ○ | ○
Management Serverセットアップコマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvrctlsetup.*.log | ○ | － | ○ | ○
Management Serverのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/mngsvr*.log | ○ | － | ○ | ○
そのほかのログ | 運用管理エージェントの標準エラー出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.err.*.log | ○ | － | ○ | ○
運用管理エージェントの標準出力 | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.out.*.log | ○ | － | ○ | ○
運用管理エージェントの標準エラー出力コマンドライン | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/adminagent.err | ○ | － | ○ | ○
コンソールログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/processConsole*.log | ○ | － | ○ | ○
保守ログ | コマンド保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngcmd*.log | － | ○ | ○ | ○
運用管理エージェントが行うRMI処理での保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngrmi*.log | － | ○ | ○ | ○
運用管理エージェントの保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/adminagent*.log | ○ | － | ○ | ○
mngenvsetupコマンドの実行ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngenvsetup*.log | － | ○ | ○ | ○
Management Serverの保守ログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/maintenance/mngsvr*.log | ○ | － | ○ | ○
定義情報 | 運用管理エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagent.properties | ○ | － | ○ | ○
運用管理エージェント自動起動用設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/AdminAgentrc | ○ | － | ○ | ○
運用管理エージェント用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagentuser.cfg | ○ | － | ○ | ○
運用管理エージェント設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/adminagent.xml | ○ | － | ○ | ○
運用監視エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngagent.<サーバ名称>.properties | ○ | － | ○ | ○
Management Server環境設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.properties | ○ | － | ○ | ○
Management Server用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.cfg | ○ | － | ○ | ○
Management Server用環境変数定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserverenv.cfg | ○ | － | ○ | ○
Manager設定ファイル | <Cosminexusのインストールディレクトリ>/manager/config/manager.cfg | ○ | － | ○ | ○
Managementアクション実行用プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/maction.properties | ○ | － | ○ | ○
Managementイベント発行用プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/mevent.<サーバ名称>.properties | － | ○ | ○ | ○
Managementイベント発行用メッセージIDリストファイル | <Managementイベント発行用メッセージIDリストファイル(manager.mevent.message_id.list)> | － | ○ | × | ×
mngsvrutilコマンドのクライアント側定義ファイル | <ユーザホームディレクトリ(user.home)>/.mngsvrutilrc | － | ○ | △ | △
mngsvrutilコマンドのサーバ側定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngsvrutil.properties | ○ | － | ○ | ○
mngsvrutilコマンドのクライアント側共通定義ファイル | <Cosminexusのインストールディレクトリ>/manager/config/mngsvrutilcl.properties | ○ | － | ○ | ○
JP1/IM連携用システムログメッセージマッピングファイル | <Cosminexusのインストールディレクトリ>/manager/config/mserver.jp1event.system.mapping.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/manager/config/manager.jp1event.system.mapping.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/manager/config/manager.<サーバ名称>.jp1event.system.mapping.properties | ○ | － | ○ | ○
性能，障害解析トレース | PRFトレースなど | <Cosminexusのインストールディレクトリ>/manager/tmp/*.zip | － | ○ | ○ | ○
内部インタフェーストレース | 統合トレースログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/trace/mngtrace*.log | ○ | － | ○ | ○
そのほか | OSの状態情報など | <Cosminexusのインストールディレクトリ>/manager/tmp/* | ○ | － | ○ | ○
Smart Composer | 定義情報 | サーバ設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/cmxserver.properties | ○ | － | ○ | ○
クライアント設定プロパティファイル | <ユーザホームディレクトリ(user.home)>/.cmxrc | － | ○ | △ | △
クライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/cmxclient.properties | ○ | － | ○ | ○
負荷分散機定義プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/config/lb.properties | ○ | － | ○ | ○
統合ユーザ管理 | 定義情報 | JAASのコンフィグレーションファイル | <Cosminexusのインストールディレクトリ>/manager/config/jaas.conf | ○ | － | ○ | ○
統合ユーザ管理のコンフィグレーションファイル | <Cosminexusのインストールディレクトリ>/manager/config/ua.conf | ○ | － | ○ | ○
APIトレース | 統合ユーザ管理のトレース | <統合ユーザ管理のトレースファイル名(com.cosminexus.admin.auth.trace.prefix)>.*.log | － | ○ | × | ×
08-50モードの仮想サーバマネージャ | 定義情報 | 仮想サーバマネージャプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx.properties | ○ | － | × | ○
仮想サーバマネージャのクライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmxclient.properties | ○ | － | × | ○
VMware vCenter Serverの接続処理のオプション定義ファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_usrconf.cfg | ○ | － | × | ○
VMware vCenter Serverの接続処理のプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_usrconf.properties | ○ | － | × | ○
VMware vCenter Serverの接続処理の共通定義ファイル | <Cosminexusのインストールディレクトリ>/manager/vmx/config/vmx_avcs_cjwconf.properties | － | ○ | × | △
そのほかのログ | 仮想サーバマネージャで使用するcjclstartapコマンドのログ | <Managerログ出力ディレクトリ(com.cosminexus.manager.log.dir)>/vmx_avcs_logs/** | － | ○ | × | ○
仮想サーバから収集したログ情報 | <08-50モードの仮想サーバマネージャログディレクトリ(vmx.log.dir)>/mngunit/*/*.zip | － | ○ | × | △
仮想サーバマネージャ | 定義情報 | 仮想サーバマネージャプロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/vmi.properties | ○ | － | × | ○
仮想サーバマネージャのクライアント設定プロパティファイル | <ユーザホームディレクトリ(user.home)>/.vmirc | － | ○ | △ | △
仮想サーバマネージャのクライアント共通設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/vmiclient.properties | ○ | － | × | ○
負荷分散機接続設定プロパティファイル | <Cosminexusのインストールディレクトリ>/manager/vmi/config/lb/*.properties | ○ | － | × | ○
サーバ通信エージェント | メッセージログ | サーバ通信エージェントのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent*.log | ○ | － | × | ○
サーバ通信エージェントのサービスのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagentsv*.log | ○ | － | × | △
snactlコマンドのログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/snactl*.log | ○ | － | × | △
そのほかのログ | サーバ通信エージェント起動時のエラー情報 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent.err | ○ | － | × | △
サーバ通信エージェントの標準出力 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/sinaviagent.out | ○ | － | × | △
サーバ通信エージェントが起動したコマンドのプロセスのコンソール出力情報 | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/processConsole*.log | ○ | － | × | △
保守ログ | サーバ通信エージェントの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagent*.log | ○ | － | × | △
サーバ通信エージェントサービスの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagentsv*.log | ○ | － | × | △
snactlコマンドの保守ログ | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/snactl*.log | ○ | － | × | △
サーバ通信エージェントのJavalog | <サーバ通信エージェントログ出力ディレクトリ(sinaviagent.log.dir)>/maintenance/sinaviagent.javalog*.log | ○ | － | × | △
定義情報 | サーバ通信エージェント用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/sinagent/config/sinaviagent.cfg | ○ | － | × | ○
サーバ通信エージェントプロパティファイル | <Cosminexusのインストールディレクトリ>/sinagent/config/sinaviagent.properties | ○ | － | × | ○
Cosminexus Service Coordinator | メッセージログ | HCSC-Managerログ | <CSCログ出力ディレクトリ(cscmng.log.dir)>/* | ○ | － | △ | △
FTPインバウンドアダプタのメッセージログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/csc/inbound-adapter/ftp/<リソースアダプタ名称>/* | ○ | － | ◎ | △
FTPインバウンドアダプタの運用コマンドのメッセージログ | <Cosminexusのインストールディレクトリ>/CSC/inbound-adapter/ftp/logs/<リソースアダプタ名称>/* | ○ | － | ○ | ○
保守ログ | メソッドトレース | <CSCサーバのプロパティ(methodtrace-filepath)>/* | ○ | － | △ | △
ファイル操作アダプタの保守ログ | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/ADPFOP/maintenance/*/cscadpfopmnt_*.log | ○ | － | ◎ | △
アクセスログ | リクエストトレース | <CSCサーバのプロパティ(requesttrace-filepath)>/* | ○ | － | △ | △
定義情報 | HCSCサーバの定義情報 | <Cosminexusのインストールディレクトリ>/CSC/system/msg/* | ○ | － | ○ | ○
HCSC-Manager定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/config/manager/* | ○ | － | ○ | ○
HCSC-Messaging定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/config/msg/* | ○ | － | ○ | ○
リポジトリ | <CSCリポジトリルート(cscmng.repository.root)>/** | ○ | － | ○ | ○
FTPインバウンドアダプタの定義ファイル | <Cosminexusのインストールディレクトリ>/CSC/inbound-adapter/ftp/config/<リソースアダプタ名称>/*.xml | ○ | － | ○ | ○
Cosminexus Web Services - Base | メッセージログ | V6互換モードが出力するトレースおよびアプリケーションログ | <Cosminexusのインストールディレクトリ>/c4web/logs/*.log | ○ | － | ○ | ○
メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/cjweb_message*.log | ○ | － | △ | △
<EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/cjclmessage*.log | ○ | － | △ | △
サーバトレース，クライアントトレース，デフォルトトレース，アプリケーションログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/WS/*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/WS/*.log | ○ | － | △ | ○
クライアントトレース，デフォルトトレース，提供コマンドトレース，アプリケーションログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/WS/*.log | ○ | － | △ | △
JAXRトレース | <JAXRトレースファイル名(com.cosminexus.xml.registry.trace.file_path)>*.log | ○ | － | △ | △
定義情報 | 共通定義ファイル | <Cosminexusのインストールディレクトリ>/c4web/conf/c4webcom.cfg | ○ | － | ○ | ○
サーバ定義ファイル | <Cosminexusのインストールディレクトリ>/c4web/conf/c4websv.cfg | ○ | － | ○ | ○
サービスデプロイ定義 | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/server-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/server-config.xml | ○ | － | ○ | ○
クライアント定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/c4webcl.properties | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/c4webcl.properties | ○ | － | ○ | ○
Cosminexus JAX-WS | メッセージログ | サービスおよびクライアントの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwmessage*.log | ○ | － | ◎ | △
クライアントの稼働ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwmessage*.log | ○ | － | △ | △
そのほかのログ | サービスおよびクライアントの通信ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwtransport*.log | ○ | － | ◎ | △
クライアントの通信ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwtransport*.log | ○ | － | △ | △
例外ログ | サービスおよびクライアントの例外ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/CJW/cjwexception*.log | ○ | － | ◎ | △
クライアントの例外ログ | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/CJW/cjwexception*.log | ○ | － | △ | △
定義情報 | 動作定義ファイル | <Cosminexusのインストールディレクトリ>/jaxws/conf/*.properties | ○ | － | ○ | ○
プロセス別の動作定義ファイル | <プロセス別動作定義ファイル(com.cosminexus.jaxws.confpath)> | ○ | － | × | ×
定義ファイル | web.xml | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
cosminexus-jaxws.xml | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
ハンドラチェイン設定ファイル | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
WSDL | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
Cosminexus JPAプロバイダ | メッセージログ | Cosminexus JPAプロバイダの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjpa/cjpaoperation*.log | ○ | － | ◎ | △
PRFデーモンおよびPRFコマンドのログ | <PRFスプールディレクトリ(prfspool)>/log/<PRF識別子>/ctmlog* | ○ | － | ◎ | △
J2EEリソースアダプタとしてデプロイして使用するリソースアダプタの稼働ログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/connectors/*.log | ○ | － | ◎ | △
メッセージログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjmessage*.log | ○ | － | ◎ | △
そのほかのログ | 障害発生時の例外情報 | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjexception*.log | ○ | － | ◎ | △
定義情報 | J2EEサーバ用オプション定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.cfg | ○ | － | ○ | ○
J2EEサーバ用ユーザプロパティファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.properties | ○ | － | ○ | ○
J2EEサーバ用セキュリティポリシーファイル | <Cosminexusのインストールディレクトリ>/CC/server/usrconf/ejb/<サーバ名称>/*.policy | ○ | － | ○ | ○
ユーザデータ | EJBサーバ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/** | － | ○ | × | ×
Webコンテナ作業ディレクトリの内容 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/web/<サーバ名称>/** | － | ○ | × | ×
Cosminexus JMSプロバイダ | メッセージログ | CJMSPブローカーのログ | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/instances/<インスタンス名>/log/*.log | ○ | － | △ | △
管理コマンドのログ | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/admin/log/*.log | ○ | － | △ | △
CJMSPリソースアダプタのログ | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/cjms/<リソースアダプタ名>/*.log | ○ | － | ◎ | △
定義情報 | CJMSPブローカー共通プロパティファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/lib/props/broker/commonconfig.properties | ○ | － | ○ | ○
CJMSPブローカー個別プロパティファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/instances/<インスタンス名>/props/config.properties | ○ | － | △ | △
管理コマンド定義ファイル | <Cosminexusのインストールディレクトリ>/CC/cjmsp/var/admin/config/admin.properties | ○ | － | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.3　Cosminexus Component Transaction Monitor

Cosminexus Component Transaction Monitorに関連する収集対象を次の表に示します。

表A-7　Cosminexus Component Transaction Monitorに関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | CTMコマンドのログ | <CTMスプールディレクトリ(ctmspool)>/log/<CTM識別子>/ctmlog* | ○ | － | ◎ | △
CTMデーモンのログ | <CTMスプールディレクトリ(ctmspool)>/log/ctmdmlog* | ○ | － | ◎ | △
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/javacore* | ○ | － | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-8　Cosminexus Component Transaction Monitorに関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | CTMコマンドのログ | <CTMスプールディレクトリ(ctmspool)>/log/<CTM識別子>/ctmlog* | ○ | － | ◎ | △
CTMデーモンのログ | <CTMスプールディレクトリ(ctmspool)>/log/ctmdmlog* | ○ | － | ◎ | △
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/javacore* | ○ | － | ○ | ○
coreダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/core* | － | ○ | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.4　Cosminexus DABroker Library

Cosminexus DABroker Libraryに関連する収集対象を次の表に示します。

表A-9　Cosminexus DABroker Libraryに関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
定義情報 | 動作環境定義ファイル | <Cosminexusのインストールディレクトリ>/DAB/conf/dasysconf | ○ | － | ○ | ○
接続先データベース定義ファイル | <Cosminexusのインストールディレクトリ>/DAB/conf/dadbenv | ○ | － | ○ | ○
そのほか | スプール情報 | <Cosminexusのインストールディレクトリ>/DAB/spool/* | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/DAB/spool/*/* | － | ○ | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-10　Cosminexus DABroker Libraryに関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
定義情報 | 動作環境定義ファイル | <DABroker運用ディレクトリ(dabroker)>/conf/dasysconf | ○ | － | △ | △
接続先データベース定義ファイル | <DABroker運用ディレクトリ(dabroker)>/conf/dadbenv | ○ | － | △ | △
そのほか | スプール情報 | <DABroker運用ディレクトリ(dabroker)>/spool/* | ○ | － | △ | △
<DABroker運用ディレクトリ(dabroker)>/spool/*/* | － | ○ | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.5　Cosminexus Developer's Kit for Java

Windowsの場合のCosminexus Developer's Kit for Javaに関連する収集対象を次の表に示します。

表A-11　Cosminexus Developer's Kit for Javaに関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
ダンプ | ワトソンログ | <Windowsのワトソンログファイル(DrWtsnLogFile)> | ○ | － | △ | △
クラッシュダンプ | <Windowsのクラッシュダンプファイル(CrashDumpFile)> | － | ○ | △ | △
<Windowsのクラッシュダンプ出力ディレクトリ(CrashDumpDir)>/*.dmp | － | ○ | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.6　Cosminexus Performance Tracer

Cosminexus Performance Tracerに関連する収集対象を次の表に示します。

表A-12　Cosminexus Performance Tracerに関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | PRFデーモンおよびPRFコマンドのログ | <PRFスプールディレクトリ(prfspool)>/log/<PRF識別子>/ctmlog* | ○ | － | ◎ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-13　Cosminexus Performance Tracerに関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | PRFデーモンおよびPRFコマンドのログ | <PRFスプールディレクトリ(prfspool)>/log/<PRF識別子>/ctmlog* | ○ | － | ◎ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.7　Cosminexus Web Services - Security

Cosminexus Web Services - Securityに関連する収集対象を次の表に示します。

表A-14　Cosminexus Web Services - Securityに関連する収集対象（Windowsの場合）

分類 | 資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
Cosminexus Web Services - Security | メッセージログ | V6互換モードが出力するコマンドトレース | <Cosminexusのインストールディレクトリ>/wss/logs/* | ○ | － | ○ | ○
コマンドトレース，クライアントトレース | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/WS/*.log | ○ | － | △ | △
サーバトレース，クライアントトレース | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/WS/*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/WS/*.log | ○ | － | △ | △
定義情報 | 環境設定ファイル | <Cosminexusのインストールディレクトリ>/wss/conf/cwsscfg.properties | ○ | － | ○ | ○
クライアントデプロイ定義 | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/client-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/client-config.xml | ○ | － | ○ | ○
ポリシー定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/policy-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/policy-config.xml | ○ | － | ○ | ○
機能定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/security-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/security-config.xml | ○ | － | ○ | ○
Cosminexus XML Security - Core | 保守ログ | メソッド呼び出しなどのトレース保守情報 | <XML Security - Core トレース出力ディレクトリ(com.cosminexus.xml.security.logging.trace_dir)>/*.log | ○ | － | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-15　Cosminexus Web Services - Securityに関連する収集対象（UNIXの場合）

分類 | 資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
Cosminexus Web Services - Security | メッセージログ | V6互換モードが出力するコマンドトレース | <Cosminexusのインストールディレクトリ>/wss/logs/* | ○ | － | ○ | ○
コマンドトレース，クライアントトレース | <EJBクライアントログ出力ディレクトリ(ejbserver.client.log.directory)>/<サブディレクトリ1(ejbserver.client.ejb.log)>/<サブディレクトリ2(ejbserver.client.log.appid)>/WS/*.log | ○ | － | △ | △
サーバトレース，クライアントトレース | <J2EEサーバログ出力ディレクトリ(ejb.server.log.directory)>/WS/*.log | ○ | － | ◎ | △
<Webコンテナサーバログ出力ディレクトリ(web.server.log.directory)>/WS/*.log | ○ | － | △ | △
定義情報 | 環境設定ファイル | <Cosminexusのインストールディレクトリ>/wss/conf/cwsscfg.properties | ○ | － | ○ | ○
クライアントデプロイ定義 | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/client-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/client-config.xml | ○ | － | ○ | ○
ポリシー定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/policy-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/policy-config.xml | ○ | － | ○ | ○
機能定義ファイル | <Cosminexusのインストールディレクトリ>/CC/server/public/web/<サーバ名称>/<コンテキストルート>/WEB-INF/classes/security-config.xml | ○ | － | ○ | ○
<Cosminexusのインストールディレクトリ>/CC/web/containers/<サーバ名称>/webapps/<コンテキストルート>/WEB-INF/classes/security-config.xml | ○ | － | ○ | ○
Cosminexus XML Security - Core | 保守ログ | メソッド呼び出しなどのトレース保守情報 | <XML Security - Core トレース出力ディレクトリ(com.cosminexus.xml.security.logging.trace_dir)>/*.log | ○ | － | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.8　Hitachi Web Server

Hitachi Web Serverに関連する収集対象を次の表に示します。

表A-16　Hitachi Web Serverに関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | エラーログ | <HWSエラーログディレクトリ(HttpsdErrorLogFileDir)>/error* | ○ | － | ◎ | △
ログ一式(旧バージョン互換用) | <HWSのインストールディレクトリ>/logs/* | ○ | － | ○ | ○
そのほかのログ | リクエストログ | <HWSリクエストログディレクトリ(HttpsdRequestLogFileDir)>/hwsrequest* | － | ○ | ◎ | △
プロセスIDファイル | <HWSプロセスIDファイル(PidFile)> | ○ | － | △ | △
アクセスログ | アクセスログ | <HWSアクセスログディレクトリ(HttpsdCustomLogFileDir)>/access* | － | ○ | ◎ | △
定義情報 | 定義ファイル | <HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/conf/*.conf | ○ | － | ○ | ○
定義ファイル一式(旧バージョン互換用) | <HWSのインストールディレクトリ>/conf/*.conf | ○ | － | ○ | ○
内部インタフェーストレース | 内部トレース | <HWS内部トレースディレクトリ(HttpsdTraceLogFileDir)>/hws.trc* | － | ○ | ◎ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-17　Hitachi Web Serverに関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | エラーログ | <HWSエラーログディレクトリ(HttpsdErrorLogFileDir)>/error* | ○ | － | ◎ | △
ログ一式(旧バージョン互換用) | <HWSのインストールディレクトリ>/logs/* | ○ | － | ○ | ○
そのほかのログ | リクエストログ | <HWSリクエストログディレクトリ(HttpsdRequestLogFileDir)>/hwsrequest* | － | ○ | ◎ | △
プロセスIDファイル | <HWSプロセスIDファイル(PidFile)> | ○ | － | △ | △
アクセスログ | アクセスログ | <HWSアクセスログディレクトリ(HttpsdCustomLogFileDir)>/access* | － | ○ | ◎ | △
ダンプ | coreダンプ | <HWSコアダンプ出力ディレクトリ(CoreDumpDirectory)>/core* | － | ○ | ◎ | △
gcacheサーバcoreダンプ | <HWSキャッシュサーバの作業ディレクトリ(SSLCacheServerRunDir)>/core* | － | ○ | △ | △
定義情報 | 定義ファイル | <HWSのインストールディレクトリ>/servers/HWS_<サーバ名称>/conf/*.conf | ○ | － | ○ | ○
定義ファイル一式(旧バージョン互換用) | <HWSのインストールディレクトリ>/conf/*.conf | ○ | － | ○ | ○
内部インタフェーストレース | 内部トレース | <HWS内部トレースディレクトリ(HttpsdTraceLogFileDir)>/hws.trc* | － | ○ | ◎ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.9　Microsoft Internet Information Service

Microsoft Internet Information Serviceの情報に関連する収集対象を次の表に示します。

表A-18　Microsoft Internet Information Serviceの情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | アクセスログ | <IISアクセスログディレクトリ(IIS_log_dir>/* | ○ | － | △ | △

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.10　uCosminexus Service Adapter for FTP

uCosminexus Service Adapter for FTPの情報に関連する収集対象を次の表に示します。

表A-19　uCosminexus Service Adapter for FTPの情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
通信トレース | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/FTPADP/* | － | ○ | ◎ | △
メッセージログ | FTPアダプタの運用コマンドのメッセージログ | <FTPアダプタコマンドメッセージログ出力先ディレクトリ(ftpadp.command.messagelog.filepath)>/* | － | ○ | × | ×

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-20　uCosminexus Service Adapter for FTPの情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
通信トレース | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/FTPADP/* | － | ○ | ◎ | △
メッセージログ | FTPアダプタの運用コマンドのメッセージログ | <FTPアダプタコマンドメッセージログ出力先ディレクトリ(ftpadp.command.messagelog.filepath)>/* | － | ○ | × | ×

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.11　uCosminexus Service Adapter for Flat Files

uCosminexus Service Adapter for Flat Filesの情報に関連する収集対象を次の表に示します。

表A-21　uCosminexus Service Adapter for Flat Filesの情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/FFADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-22　uCosminexus Service Adapter for Flat Filesの情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/FFADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.12　uCosminexus Service Adapter for Message Queue

uCosminexus Service Adapter for Message Queueの情報に関連する収集対象を次の表に示します。

表A-23　uCosminexus Service Adapter for Message Queueの情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/MQADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-24　uCosminexus Service Adapter for Message Queueの情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/MQADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.13　uCosminexus Service Adapter for Object Access

uCosminexus Service Adapter for Object Accessの情報に関連する収集対象を次の表に示します。

表A-25　uCosminexus Service Adapter for Object Accessの情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/OAADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-26　uCosminexus Service Adapter for Object Accessの情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/OAADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.14　uCosminexus Service Adapter for TP1

uCosminexus Service Adapter for TP1の情報に関連する収集対象を次の表に示します。

表A-27　uCosminexus Service Adapter for TP1の情報に関連する収集対象（Windowsの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/TP1ADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-28　uCosminexus Service Adapter for TP1の情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | トレース一式 | <J2EEサーバ作業ディレクトリ(ejb.public.directory)>/ejb/<サーバ名称>/logs/CSCADP/TP1ADP/maintenance/*/* | － | ○ | ◎ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.15　監査ログ

監査ログの情報に関連する収集対象を次の表に示します。

表A-29　監査ログの情報に関連する収集対象（Windowsの場合）

分類 | 資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
なし | メッセージログ | 監査ログのメッセージログ | <監査ログメッセージ出力ディレクトリ(auditlog.raslog.message.directory)>/rasmessage*.log | ○ | － | △ | △
そのほかのログ | 監査ログ | <監査ログ出力ディレクトリ(auditlog.directory)>/* | － | ○ | △ | △
監査ログの例外情報 | <監査ログ例外出力ディレクトリ(auditlog.raslog.exception.directory)>/rasexception*.log | ○ | － | △ | △
保守ログ | そのほかのログ | <監査ログメッセージ出力ディレクトリ(auditlog.raslog.message.directory)>/*/* | ○ | － | △ | △
<監査ログ例外出力ディレクトリ(auditlog.raslog.exception.directory)>/*/* | ○ | － | △ | △
定義情報 | 監査ログ定義ファイル | <Cosminexusのインストールディレクトリ>/common/conf/auditlog.properties | ○ | － | △ | △
ネーミングサービス | そのほか | ネーミングサービスの起動，停止または異常終了を示すログ | <Windowsのイベントログ(EventLog)> | ○ | － | × | ×
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/javacore* | ○ | － | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

表A-30　監査ログの情報に関連する収集対象（UNIXの場合）

分類 | 資料の種類 | 収集ファイル | 収集対象 | 資料 | 収集方法
一次 | 二次 | A | B
なし | メッセージログ | 監査ログのメッセージログ | <監査ログメッセージ出力ディレクトリ(auditlog.raslog.message.directory)>/rasmessage*.log | ○ | － | △ | △
そのほかのログ | 監査ログ | <監査ログ出力ディレクトリ(auditlog.directory)>/* | － | ○ | △ | △
監査ログの例外情報 | <監査ログ例外出力ディレクトリ(auditlog.raslog.exception.directory)>/rasexception*.log | ○ | － | △ | △
保守ログ | そのほかのログ | <監査ログメッセージ出力ディレクトリ(auditlog.raslog.message.directory)>/*/* | ○ | － | △ | △
<監査ログ例外出力ディレクトリ(auditlog.raslog.exception.directory)>/*/* | ○ | － | △ | △
定義情報 | 監査ログ定義ファイル | <Cosminexusのインストールディレクトリ>/common/conf/auditlog.properties | ○ | － | △ | △
ネーミングサービス | そのほか | ネーミングサービスの起動，停止または異常終了を示すログ | <UNIXのsyslog(syslog)> | ○ | － | △ | △
ダンプ | スレッドダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/javacore* | ○ | － | ○ | ○
coreダンプ | <Cosminexusのインストールディレクトリ>/TPB/logj/core* | － | ○ | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録A.16　そのほかの情報

そのほかの情報に関連する収集対象を次の表に示します。

表A-31　そのほかの情報に関連する収集対象（UNIXの場合）

資料の種類 | 収集ファイル | デフォルトの収集先 | 資料 | 収集方法
一次 | 二次 | A | B
メッセージログ | cosmienvコマンドのログ | <Cosminexusのインストールディレクトリ>/env/log/* | ○ | － | ○ | ○
定義情報 | ホスト定義ファイル(UNIX用) | /etc/hosts | ○ | － | ○ | ○
そのほか | プログラムプロダクト情報 | /etc/.hitachi/pplistd/pplistd | ○ | － | ○ | ○

（凡例）一次：一次送付資料　二次：二次送付資料

資料の場合
○：収集される
－：収集されない

収集方法の場合
「付録A.1(3)　snapshotログの収集可否や収集に関する設定変更」を参照してください。

注　収集方法Aおよび収集方法Bについては，「付録A.1(2)　snapshotログの収集方法」を参照してください。表内の収集対象のディレクトリおよびファイルの意味については，「付録A.1(4)　収集対象の記述規則」を参照してください。

付録B　データベースと接続中にトラブルが発生したコネクションの特定

データベース関連のトラブルに対処するためには，どのコネクションを使用してデータベースと接続しているかを特定することが重要です。

ここでは，データベース（HiRDBまたはOracle）と接続中にトラブルが発生した場合に，アプリケーションサーバから出力される情報（性能解析トレースやログなど）とデータベースから出力される情報（トレース情報やpdlsコマンドの実行結果，動的パフォーマンスビューの内容など）を使用して，トラブルが発生したコネクションを特定する方法について説明します。

アプリケーションサーバでは，HiRDBおよびOracleとの接続に使用しているコネクションを一意に識別するための接続情報（コネクションID）を性能解析トレースに出力しています。J2EEサーバからデータベースに至るまで，およびデータベースからJ2EEサーバに処理結果が返却されるまでの一連の処理では，関連する構成ソフトウェアのログやトレース情報などにコネクションIDやデータベースサーバで割り振られるコネクト通番などが出力されます。これらの情報を突き合わせて確認することで，トラブルが発生したコネクションを特定できます。

HiRDBを使用する場合，およびOracleを使用する場合のコネクションIDの出力の概要，およびトラブルが発生したコネクションの特定に使用する情報を次に示します。

HiRDBを使用する場合
コネクションIDの出力の概要を次に示します。

図B-1　コネクションIDの出力の概要（HiRDBの場合）

トラブルが発生したコネクションの特定に使用する情報を次の表に示します。

表B-1　トラブルが発生したコネクションの特定に使用する情報（HiRDBの場合）

項番 | 出力元 | 情報の種類 | 参照先
1 | Cosminexus Component Container | 性能解析トレースファイル | 付録B.1
2 | SQLException発生時の例外メッセージ
3 | Cosminexus DABroker Library | 拡張データベースアクセストレース | 付録B.2
4 | HiRDBクライアント | SQLトレースファイル | 付録B.3
5 | エラーログ情報
6 | 再接続トレース
7 | HiRDBサーバ | pdlsコマンドの実行結果 | 付録B.4

コネクションIDには次に示す情報が含まれています。

サーバ名称
フロントエンドサーバ名（HiRDB/Parallel Server使用時）またはシングルサーバ名（HiRDB/Single Server使用時）が表示されます。

コネクト通番
サーバ名称に表示されたHiRDBサーバで割り振られるコネクト通番が表示されます。

サーバのプロセスID
サーバ名称に表示されたHiRDBサーバのプロセスIDが表示されます。

コネクションIDの出力形式と出力例を次に示します。

コネクションIDの出力形式（HiRDBの場合）

サーバ名称：コネクト通番：サーバのプロセスID

コネクションIDの出力例（HiRDBの場合）

fes01:15:2351

注意

07-01以前のバージョンのHiRDBに接続していて，グローバルトランザクションとローカルトランザクションが混在している場合，性能解析トレースに出力されるコネクションIDと実際の接続状態に不整合が生じます。

例えば，コネクションの障害検知機能を無効にして，次のようなグローバルトランザクションとローカルトランザクションが混在している処理を実行する場合，6.～8.および9.～13.の処理で性能解析トレースに出力される情報と実際の接続状態に不整合が生じます。

6.～8.の処理では，ローカルトランザクションのコネクションIDは出力されずに，グローバルトランザクションのコネクションIDが出力されます。

9.～13.の処理では，グローバルトランザクションのコネクションIDは出力されずに，ローカルトランザクションのコネクションIDが出力されます。

このように，ローカルトランザクションのコネクションIDや，ローカルトランザクション実行後のグローバルトランザクションのコネクションIDを追跡することはできません。なお，7.のローカルトランザクションの処理で，コネクションが切り替わりますが，アプリケーションサーバには通知されません。

グローバルトランザクションとローカルトランザクションの混在は，使用するDBConnectorのトランザクションサポートレベルがXATransactionの場合に，トランザクションを開始する前にコネクションを取得してSQLを実行したときにも発生します。

参考

グローバルトランザクションの処理中に，エラーが発生してコネクションが切断されると自動的に再接続されます。しかし，この再接続処理は再接続トレースには出力されません。この場合，再接続トレースに出力されるコネクションIDと実際の接続情報に不整合が生じます。ただし，基本的にグローバルトランザクションの処理中にコネクションが切断されることはありません。

Oracleを使用する場合
コネクションIDの出力の概要を次に示します。

図B-2　コネクションIDの出力の概要（Oracleの場合）

トラブルが発生したコネクションの特定に使用する情報を次の表に示します。

表B-2　トラブルが発生したコネクションの特定に使用する情報（Oracleの場合）

項番 | 出力元 | 情報の種類 | 参照先
1 | Cosminexus Component Container | 性能解析トレースファイル | 付録B.1
2 | SQLException発生時の例外メッセージ
3 | Cosminexus DABroker Library | 拡張データベースアクセストレース | 付録B.2
4 | Oracleクライアント | Netクライアントトレース | 付録B.5
5 | Oracleサーバ | アラートファイル | 付録B.6
6 | ユーザトレース
7 | Netサーバトレース
8 | 動的パフォーマンスビュー

コネクションIDには次に示す情報が含まれています。

インスタンス名
Oracleサーバのインスタンス名が表示されます。

セッションID
Oracleサーバで割り振られるセッションIDが表示されます。

セッションシリアル番号
Oracleサーバで割り振られるセッションのシリアル番号が表示されます。

OSプロセスID
OSのプロセスIDが表示されます。

コネクションIDの出力形式（Oracleの場合）

インスタンス名：セッションID：セッションシリアル番号：OSプロセス名

コネクションIDの出力例（Oracleの場合）

ORCL:17:5:920

コネクションIDの生成にはOracleの動的パフォーマンスビューを使用するため，Oracleに接続するユーザが動的パフォーマンスビューの参照権を持っている必要があります。次のどちらかの方法でOracleに接続するユーザに参照権を設定してください。

「GRANT SELECT_CATALOG_ROLE TO <ユーザ名>;」を実行する。

「GRANT SELECT ON V_$INSTANCE TO <ユーザ名>;」，「GRANT SELECT ON V_$PROCESS TO <ユーザ名>;」，および「GRANT SELECT ON V_$SESSION TO <ユーザ名>;」を実行する。

また，Oracleを使用する場合，DB Connectorのプロパティ定義で，プロパティ項目「ConnectionIDUpdate」の値に「true」を設定すると，コネクションを取得するたびにコネクションIDを生成することができます。ただし，コネクションを取得するたびにコネクションID生成用のSQLが発行されるため，性能に影響を与える可能性があります。再接続が行われない環境では「false」を設定してください。DB Connectorのプロパティ定義の設定方法については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「4.2.2　DB Connectorのプロパティ定義」を参照してください。

注意

Oracleの透過的アプリケーションフェイルオーバーを使用している場合，PRFトレースに出力されるコネクションIDと実際に接続しているコネクションIDが異なることがあります。これはOracle内でコネクションが再接続されているためです。PRFトレースに出力されるコネクションIDと実際に接続しているコネクションIDが異なる場合，コネクションIDでOracleのトレース情報を追跡することはできません。

＜この節の構成＞

付録B.1　Cosminexus Component Container

付録B.2　Cosminexus DABroker Library

付録B.3　HiRDBクライアント

付録B.4　HiRDBサーバ

付録B.5　Oracleクライアント

付録B.6　Oracleサーバ

付録B.1　Cosminexus Component Container

トランザクション処理の状態（正常または異常）によって，Cosminexus Component Containerから出力されるコネクションIDの出力先が異なります。

正常の場合

性能解析トレースファイルに出力されます。

異常の場合

SQLException発生時の例外メッセージに出力されます。

性能解析トレースファイルには，次の三つのタイミングでコネクションIDが出力されます。

データベースとのコネクション取得時
HiRDBを使用している場合，DataSource.getConnection()メソッドまたはDataSource.getConnection(String username, String password)メソッドの終了直前に，取得したコネクションのコネクションIDを出力します。
Oracleを使用している場合，DataSource.getConnection()メソッドの終了直前に，取得したコネクションのコネクションIDを出力します。

データベースのコネクション解放時
Connection.close()メソッドの開始直後に，このメソッドに対応するgetConnectionメソッドで取得したコネクションのコネクションIDを出力します。

アソシエーション機能によってデータベースとのコネクションが差し替えられた時
ManagedConnection.associateConnection()メソッドの呼び出し時に，アソシエーション機能によって差し替えられた先のコネクションのコネクションIDを出力します。

上記のタイミングで取得したコネクションIDは，次の表に示すイベントIDのトレース情報のインタフェース名に出力されています。

表B-3　コネクションIDが出力される性能解析トレース

イベントID | 説明
0x8C01 | DataSource.getConnection()メソッドの終了直前の処理で出力された情報です。
0x8C03 | DataSource.getConnection(String username, String password)メソッドの終了直前の処理で出力された情報です。
0x8C20 | Connection.close()メソッドの開始直後の処理で出力された情報です。
0x8C40 | ManagedConnection.associateConnection()メソッドの呼び出し時の処理で出力された情報です。

なお，トレース取得ポイントと取得できるトレース情報の詳細については，「7.13　DB Connector，JCAコンテナのトレース取得ポイント」を参照してください。

性能解析トレース，およびSQLException発生時の例外メッセージの取得方法と出力形式について説明します。

＜この項の構成＞

(1)　性能解析トレースファイル

(2)　SQLException発生時の例外メッセージ

(1)　性能解析トレースファイル

PRFトレースファイルに出力された，クライアントからデータベースなどのEISに至るまで，およびその処理結果がクライアントに返却されるまでのリクエストの一連の処理で出力されるトレース情報をCSV形式で編集出力したファイルです。

コネクションIDが出力される条件

次の条件をすべて満たしている場合，性能解析トレースファイルにコネクションIDが出力されます。

使用しているデータベースが，次のどれかである。
バージョンが07-01以降のHiRDB
Oracle9i
Oracle 10g
Oracle 11g

論理パフォーマンストレーサが起動中である。

リソースアダプタとしてDB Connectorを使用している。

(a)　留意事項

性能解析トレースを参照するときに留意することを次に示します。

コネクションの解放に関する留意事項
同一コネクションに対してConnection.close()メソッドを複数回呼び出した場合，その数だけ性能解析トレースが出力されます。

アソシエーション機能を使用する場合の留意事項
アソシエーション機能によってデータベースとのコネクションが差し替えられた場合，getConnection()メソッドで出力されたコネクションIDとは異なる物理コネクションでデータベースに接続されます。この場合，性能解析トレースには，ManagedConnection.associateConnection()メソッドの呼び出し時に，アソシエーション機能によって差し替えられた先の物理コネクションに対応するコネクションIDが出力されます。したがって，実際にデータベースに接続しているコネクションIDを特定するためには，イベントIDが「0x8C40」の性能解析トレースに出力されたコネクションIDも追跡する必要があります。
なお，ManagedConnection.associateConnection()メソッドを呼び出しても，コネクションが差し替えられない場合があります。この場合，コネクションIDは性能解析トレースに出力されません。

参考

アソシエーション機能は，通常，1:1で対応する論理コネクションと物理コネクションの対応を差し替えて，複数の論理コネクションで一つの物理コネクションを共有する機能です。

自動再接続機能を使用する場合の留意事項
HiRDBの自動再接続機能を使用する場合，性能解析トレースファイルに出力されるコネクションIDと，実際の接続に使用しているコネクションのコネクションIDが異なることがあります。この場合，HiRDBクライアントの再接続トレースも参照する必要があります。

(b)　取得方法

運用管理コマンド（mngsvrutil）を実行して性能解析トレースファイルを取得します。性能解析トレースファイルは，「<Managerのログ出力ディレクトリ>¥prf」（Windowsの場合），または「<Managerのログ出力ディレクトリ>/prf」（UNIXの場合）に出力されます。取得方法については，「6.3.1　性能解析トレースファイルの収集方法」を参照してください。

(c)　出力形式

性能解析トレースの出力例を次に示します。コネクションIDはインタフェース名（「INT」欄）に出力されます。

図B-3　性能解析トレースの出力例

(2)　SQLException発生時の例外メッセージ

データベースアクセス，Cosminexus DABroker LibraryまたはJDBCドライバでエラーが発生した場合に，例外としてSQLExceptionがスローされたことを示すメッセージです。

コネクションIDが出力される条件

使用しているデータベースが次のどれかである場合，SQLException発生時の例外メッセージにコネクションIDが出力されます。

バージョンが07-01以降のHiRDB

Oracle9i

Oracle 10g

Oracle 11g

(a)　留意事項

SQLException発生時の例外メッセージを参照するときに留意することを次に示します。

出力されるコネクションIDに関する留意事項
SQLException発生時の例外メッセージに出力されるコネクションIDは常に最新です。HiRDBの自動再接続機能によって再接続が実行された場合，再接続後のコネクションIDが出力されます。

(b)　取得方法

SQLException発生時に，次のログファイルに例外メッセージが出力されます。

Windowsの場合

<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥cjexception[n].log

<作業ディレクトリ>¥ejb¥<サーバ名称>¥logs¥connectors¥<リソースアダプタの表示名>[n].log

UNIXの場合

<作業ディレクトリ>/ejb/<サーバ名称>/logs/cjexception[n].log

<作業ディレクトリ>/ejb/<サーバ名称>/logs/connectors/<リソースアダプタの表示名>[n].log

ログファイル名の[n]の部分には，面の番号（1から面数（最大16）まで）が付きます。

(c)　出力形式

HiRDBの場合

メッセージKFDJ00001-EのErrMsgの最後にコネクションIDが出力されます。出力例を次に示します。太字はコネクションIDです。

JP.co.Hitachi.soft.DBPSV_Driver.SQLException: KFDJ00001-E Error occurred at server.
[JdbcDbpsvResultSQLExecute.SQLExecute]
OperationType : 2002
ReturnCode    : -100
ErrorCode     : -404
WarningInfo   : 0
ErrorMsg    : KFPA11404-E Input data too long for column or assignment target in variable 1 [HiRDB_CONNECTION_ID(sds01:7:2988)]

Oracleの場合

メッセージORA-00942のErrMsgの最後にコネクションIDが出力されます。出力例を次に示します。太字はコネクションIDです。

JP.co.Hitachi.soft.DBPSV_Driver.SQLException: KFDJ00001-E Error occurred at server.
[JdbcDbpsvResultSQLExecute.SQLPrepare]
OperationType : 2002
ReturnCode    : -200
ErrorCode     : 942
WarningInfo   : 0
ErrorMsg      : ORA-00942: 表またはビューが存在しません。[ORACLE_CONNECTION_ID(ORCL:17:5:920)]
PreparedSQL   : selectSectionID     : 2

付録B.2　Cosminexus DABroker Library

Cosminexus DABroker Libraryでは，拡張データベースアクセストレースにコネクションIDが出力されます。

拡張データベースアクセストレースの取得方法と出力形式について説明します。

＜この項の構成＞

(1)　拡張データベースアクセストレース

(1)　拡張データベースアクセストレース

データベースへの接続から切断までのアクセス情報を出力したトレースです。データベースへの接続ごとに出力されます。

拡張データベースアクセストレースにコネクションIDが出力されるためには，次の条件を満たしている必要があります。

コネクションIDが出力される条件（HiRDBの場合）

HiRDBクライアントのバージョンが07-01以降である。

Cosminexus DABroker Library動作環境定義ファイルのDABEXSQL_TRC_LINEに0以上の値を指定している。

なお，Cosminexus DABroker Libraryの動作環境の設定については，Windowsの場合は「11.2.1(3) Cosminexus DABroker Libraryの動作環境の設定」，UNIXの場合は「11.2.2(4) Cosminexus DABroker Libraryの動作環境の設定」を参照してください。Cosminexus DABroker Library動作環境定義ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「17.2　Cosminexus DABroker Library動作環境定義ファイル」を参照してください。

コネクションIDが出力される条件（Oracleの場合）

Oracle9i，またはOracle10gを使用している。

Cosminexus DABroker Library動作環境定義ファイルのDABEXSQL_TRC_LINE Eに-1，0，または1024から32767の値を指定している。

なお，Windowsの場合，Cosminexus DABroker Library動作環境定義ファイルの設定は，環境設定ユティリティを使用します。環境設定ユティリティを使用したCosminexus DABroker Libraryの動作環境の設定については，Windowsの場合は「11.2.1(3) Cosminexus DABroker Libraryの動作環境の設定」，UNIXの場合は「11.2.2(4) Cosminexus DABroker Libraryの動作環境の設定」を参照してください。Cosminexus DABroker Library動作環境定義ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「17.2　Cosminexus DABroker Library動作環境定義ファイル」を参照してください。

(a)　取得方法

拡張データベースアクセストレースの格納場所は次のとおりです。

Windowsの場合
<Cosminexus DABroker Libraryの運用ディレクトリ>¥spool¥db_accessディレクトリ下のファイル

UNIXの場合
/opt/DABroker/spool/db_accessディレクトリ下のファイル

(b)　出力形式

拡張データベースアクセストレースの出力形式を次に示します。

なお，拡張データベースアクセストレースの出力形式の詳細については，「付録F.2　拡張データベースアクセストレース」を参照してください。

HiRDBの場合

「HiRDB_CONNECTION_ID」欄にコネクションIDが出力されます。

Windowsの場合

*-------------------------------------------------------*
*- DataBase Access Information (DRV)                   -*
*- Date  YYYY/MM/DD hh:mm:ss.nnnnnn                    -*
*-------------------------------------------------------*
DABroker Connect ID    : AAAAA(BBBBB)
Process ID             : CCCCC
UserID                 : DDDDD
Client Name            : EEEEE
(DB別出力情報)
Lang Mode              : GGGGG

THREAD-ID  CID   EVT   START-TIME   END-TIME   RETCODE  BLOCKCNT  (Windows QueryPerformance Counter) HiRDB_CONNECTION_ID
（トレース情報）
(SQL)SS…SS
（トレース情報）

UNIXの場合

*-------------------------------------------------------*
*- DataBase Access Information (DRV)                   -*
*- Date  YYYY/MM/DD hh:mm:ss.nnnnnn                    -*
*-------------------------------------------------------*
DABroker Connect ID    : AAAAA(BBBBB)
Process ID             : CCCCC
UserID                 : DDDDD
Client Name            : EEEEE
(DB別出力情報)
Lang Mode              : GGGGG

THREAD-ID  CID   EVT   START-TIME   END-TIME   RETCODE
BLOCKCNT   HiRDB_CONNECTION_ID
（トレース情報）
(SQL)SS…SS
（トレース情報）

Oracleの場合

「ORACLE_CONNECTION_ID」欄にコネクションIDが出力されます。

*--------------------------------------------------------------------------*
*- DataBase Access Infomation (ORACLE8i Driver)                           -*
*- Date  YYYY/MM/DD hh:mm:ss.nnnnnn                                       -*
*--------------------------------------------------------------------------*
DABroker Connect ID    : AAAAAAAA(BBBBB)
Process ID             : CCCC
UserID                 : DDDDDD
Client Name            : EEEEEE
SQLNET                 : FFFFFF
Lang Mode              : GGGG
*--------------------------------------------------------------------------*
THREAD-ID    CID  EVT         START-TIME                   END-TIME                       RETCODE    BLOCKCNT  ORACLE_CONNECTION_ID
（トレース情報）
(SQL) SELECT H FROM I
（トレース情報）

付録B.3　HiRDBクライアント

HiRDBクライアントでは，SQLトレースファイル，エラーログファイル，および再接続トレースファイルに，コネクションIDやコネクト通番などの情報が出力されます。

SQLトレースファイル，エラーログファイル，および再接続トレースファイルの取得方法と出力形式について説明します。

＜この項の構成＞

(1)　SQLトレースファイル

(2)　エラーログファイル

(3)　再接続トレースファイル

(1)　SQLトレースファイル

実行したUAPのSQLトレース情報を出力したトレースファイルです。SQLの実行終了時に出力されます。

UAP実行時にSQLエラーが発生した場合，SQLトレースファイルを参照すると，エラーの原因となるSQLを特定できます。

コネクションIDが出力される条件

次の条件を満たしている場合，SQLトレースファイルにコネクションIDが出力されます。

クライアント環境定義のPDCLTPATHおよびPDSQLTRACEに値を指定している。

なお，クライアント環境定義の設定方法については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

(a)　取得方法

クライアント環境定義のPDCLTPATHに指定したディレクトリに格納されます。

(b)　出力形式

次に示す形式で，サーバ名称，コネクト通番，およびサーバのプロセスIDが出力されます。

（省略）
　 ：
CONNECTION STATUS：
　CURHOST（接続先ホスト名）　CURPORT（接続ポート番号）　SRVNAME（サーバ名称）
　CNCTNO（コネクト通番）　SVRPID（サーバのプロセスID）　CLTPID（UAPのプロセスID）　CLTTID（UAPのスレッド番号）
　 ：
（省略）

SQLトレースファイルには，SQL文，SQL実行時刻やSQL文中の変数に設定した値なども出力されます。出力形式の詳細については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

(2)　エラーログファイル

クライアントとHiRDBサーバ間の通信処理中，またはX/Openで規定したXAインタフェースでエラーが発生した場合のエラー情報を出力したログファイルです。SQL実行時，通信処理時，またはX/Openで規定したXAインタフェース関数実行時でエラーが発生したときに出力されます。

コネクションIDが出力される条件

次の条件を満たしている場合，エラーログファイルにコネクションIDが出力されます。

クライアント環境定義のPDCLTPATHおよびPDUAPERLOGに値を指定している。

なお，設定方法については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

(a)　取得方法

クライアント環境定義のPDCLTPATHに指定したディレクトリに格納されます。

(b)　出力形式

次に示す形式で，SQLトレースにサーバのプロセスIDが出力されます。

エラーログ先頭識別子（'>>'または'>'）　UAPのプロセスID　UAPのスレッド番号　サーバのプロセスID　エラーログカウンタ　（以降省略）

出力形式の詳細については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

エラーログ情報には，接続情報のほか，エラー取得時刻，SQLCODEやエラーが発生したSQLのオペレーションコードなどが出力されます。

(3)　再接続トレースファイル

HiRDBクライアントの自動再接続機能で再接続が実行された場合，HiRDBが内部的に管理している接続ハンドルの値，再接続前の接続情報，再接続後の接続情報，および再接続時刻を出力したトレースファイルです。自動再接続機能で自動的に接続が実行された場合に出力されます。

コネクションIDが出力される条件

次の条件を満たしている場合，再接続トレースファイルにコネクションIDが出力されます。

クライアント環境定義のPDCLTPATHおよびPDSQLTRACEに値を指定している。

HiRDBの自動再接続機能を使用している。

なお，設定方法については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

(a)　取得方法

クライアント環境定義PDCLTPATHに指定したディレクトリに再接続トレースファイルが格納されます。格納されるファイル名称は，pdrcnct1.trcおよびpdrcnct2.trcです。

(b)　出力形式

再接続トレースは次の形式で出力されます。

接続ハンドルの値　再接続結果（SまたはF）　再接続開始日時 - 再接続完了日時　再接続前の接続情報 => 再接続後の接続情報

コネクションIDは再接続後の接続情報として出力されます。

出力形式の詳細については，マニュアル「HiRDB UAP開発ガイド」を参照してください。

再接続トレースファイルの出力例を次に示します。太字はコネクションIDです。

40004250 S 2004/04/12 11:10:36.766 - 2004/04/12 11:10:41.846 sds:9:23763 => sds:10:23750
40004250 S 2004/04/12 11:11:07.491 - 2004/04/12 11:11:12.547 sds:10:23750 => sds:11:23765
40004850 F 2004/04/12 11:17:58.285 - 2004/04/12 11:18:23.395 sds:14:23751 =>
40005050 S 2004/04/12 11:27:35.098 - 2004/04/12 11:27:40.152 sds:1:24414 => sds:2:24418

付録B.4　HiRDBサーバ

HiRDBサーバでは，pdlsコマンドの実行結果を参照してサーバの状態を確認します。

pdlsコマンドの実行結果に表示されるサーバ名称やサーバのプロセスIDと，コネクションIDに含まれる情報を突き合わせて，接続したHiRDBサーバの状態を確認します。

pdlsコマンドの実行形式と，実行結果の出力形式について説明します。

＜この項の構成＞

(1)　pdlsコマンドの実行結果

(1)　pdlsコマンドの実行結果

HiRDBサーバの排他制御の状態，プロセスの状態，通信制御情報などを表示できるコマンドです。

(a)　実行形式

次に示すpdlsコマンドを実行して，サーバの状態を確認します。

サーバの排他制御の状態表示する場合

pdls -d lck

サーバのプロセスの状態表示する場合

pdls -d prc

サーバの通信制御情報の表示する場合

pdls -d rpc

pdlsコマンドの詳細については，マニュアル「HiRDB コマンドリファレンス」を参照してください。

(b)　出力形式

実行結果の「SVID」欄にサーバ名称が出力されて，「PID」欄にサーバのプロセスIDが出力されます。

出力形式の詳細については，マニュアル「HiRDB コマンドリファレンス」を参照してください。

付録B.5　Oracleクライアント

Oracleクライアントでは，Netクライアントトレースファイルに，実行されたネットワークイベントの詳細が出力されます。Netクライアントトレースファイルのファイル名にはクライアントのOSクライアントプロセスIDが含まれています。

Netクライアントトレースファイルは次の場所に出力されます。

Windowsの場合
<sqlnet.oraファイルで指定した場所※>¥CLI_<OSクライアントプロセスID>.trc

UNIXの場合
<sqlnet.oraファイルで指定した場所※>/CLI_<OSクライアントプロセスID>.trc

注※　Netクライアントトレースファイルの出力先は，Oracleのsqlnet.oraファイルで設定します。sqlnet.oraファイルの記述形式を次に示します。なお，sqlnet.oraファイルの詳細については，Oracleのドキュメントを参照してください。

TRACE_LEVEL_CLIENT=16
TRACE_DIRECTORY_CLIENT=＜ディレクトリ名＞
TRACE_UNIQUE_CLIENT=ON
TRACE_TIMESTAMP_CLIENT=ON

Netクライアントトレースファイルを参照するには，出力されたNetクライアントトレースファイルの中から，目的のNetクライアントトレースファイルを特定する必要があります。目的のNetクライアントトレースファイルを特定する手順を次に示します。

次のSQLを実行して，OSクライアントプロセスIDを取得します。

SELECT PROCESS FROM V$SESSION WHERE (SID = <セッションID>) AND (SERIAL# = <セッションシリアル番号>);

取得したOSクライアントプロセスIDとNetクライアントトレースファイルのファイル名に含まれるOSクライアントプロセスIDを突き合わせて，目的のNetクライアントトレースファイルを特定します。

なお，Netクライアントトレースファイルの出力内容の詳細については，Oracleのドキュメントを参照してください。

注意

Netクライアントトレースは，大量のディスク領域を消費するため，システムの性能が低下する場合があります。必要なときにだけNetクライアントトレースを参照してください。

付録B.6　Oracleサーバ

Oracleサーバでは，次の方法でOracleサーバのエラー情報，サーバの状態などの情報が出力されます。

アラートファイルの取得

ユーザトレースの取得

Netサーバトレースファイルの取得

動的パフォーマンスビューの使用

＜この項の構成＞

(1)　アラートファイル

(2)　ユーザトレース

(3)　Netサーバトレースファイル

(4)　動的パフォーマンスビュー

(1)　アラートファイル

アラートファイルでは，性能解析トレースのインスタンス名をキーにして，次の情報を確認できます。

発生したすべての内部エラー，ブロック破損エラー，およびデッドロックエラー

CREATE/ALTER/DROP文，STARTUP/SHUTDOWN文，ARCHIVELOG文などの管理，操作

共有サーバとディスパッチャプロセスの機能に関するメッセージ，およびエラー

マテリアライズドビューの自動リフレッシュ中に発生したエラー

データベースおよびインスタンス起動時の，すべての初期化パラメタの値

アラートファイルは，次の場所に出力されます。

Windowsの場合
<BACKGROUND_DUMP_DESTで指定した場所※>¥ALERT_<インスタンス名>.LOG

UNIXの場合
<BACKGROUND_DUMP_DESTで指定した場所※>/ALERT_<インスタンス名>.LOG

注※　Oracleの初期化パラメタUSER_DUMP_DESTで設定します。USER_DUMP_DESTの詳細については，Oracleのドキュメントを参照してください。

出力されたアラートファイルの中から，性能解析トレースに出力されたインスタンス名とアラートファイル名に含まれるインスタンス名を突き合わせて，目的のアラートファイルを特定してください。

(2)　ユーザトレース

ユーザトレースでは，性能解析トレースのインスタンス名，OSプロセスID，セッションID，セッションシリアル番号をキーにして，次の情報を確認できます。

サーバプロセスで発生したエラー情報

SQL分の実行計画と統計情報

(3)　Netサーバトレースファイル

Oracleサーバでは，Netサーバトレースファイルに，実行されたネットワークイベントの詳細が出力されます。Netサーバトレースファイルのファイル名にはサーバのOSプロセスIDが含まれています。

Netサーバトレースファイルは次の場所に出力されます。

Windowsの場合
<sqlnet.oraファイルで指定した場所※>¥CLI_<OSプロセスID>.TRC

UNIXの場合
<sqlnet.oraファイルで指定した場所※>/CLI_<OSプロセスID>.TRC

注※　Netサーバトレースファイルの出力先は，Oracleのsqlnet.oraファイルで設定します。sqlnet.oraファイルの記述形式を次に示します。なお，sqlnet.oraファイルの詳細については，Oracleのドキュメントを参照してください。

TRACE_LEVEL_CLIENT=16
TRACE_DIRECTORY_CLIENT=<ディレクトリ名>
TRACE_UNIQUE_CLIENT=ON
TRACE_TIMESTAMP_CLIENT=ON

出力されたNetサーバトレースファイルの中から，性能解析トレースのOSプロセスIDとNetサーバトレースファイル名に含まれるOSプロセスID名を突き合わせて，目的のNetサーバトレースファイルを特定してください。

なお，Netサーバトレースファイルの出力内容の詳細については，Oracleのドキュメントを参照してください。

注意

Netサーバトレースファイルは，大量のディスク領域を消費するため，システムの性能が低下する場合があります。必要なときにだけNetクライアントトレースを参照してください。

(4)　動的パフォーマンスビュー

動的パフォーマンスビューを調査して，セッションを特定したり，プロセスの詳細についての情報を参照したりできます。動的パフォーマンスビューは，性能解析トレースファイルに出力されるコネクションIDと突き合わせて調査します。

動的パフォーマンスビューと性能解析トレースのコネクションIDの関係を次の表に示します。

表B-4　動的パフォーマンスビューと性能解析トレースのコネクションIDの関係

項番 | 動的パフォーマンスビューに表示される項目 | 性能解析トレースのコネクションIDの項目
1 | V$INSTANCE　INSTANCE_NAME | インスタンス名
2 | V$SESSION　SID | セッションID
3 | V$SESSION　SERIAL# | セッションシリアル番号
4 | V$PROCESS　SPID | OSプロセスID

動的パフォーマンスビューの詳細については，Oracleのドキュメントを参照してください。

付録C　機能ごとに出力されるログ情報

特定の機能を利用したときに出力されるログ情報について説明します。

ここでは，次の機能を利用したときに出力されるログ情報について説明します。

J2EEアプリケーション実行時間監視

Cosminexus JPAプロバイダの稼働ログ

＜この節の構成＞

付録C.1　J2EEアプリケーション実行時間監視で出力されるログ情報

付録C.2　Cosminexus JPAプロバイダの稼働ログ

付録C.1　J2EEアプリケーション実行時間監視で出力されるログ情報

ここでは，J2EEアプリケーションの実行時間監視機能で出力されるログ情報について説明します。

＜この項の構成＞

(1)　J2EEサーバ起動時に出力されるログ情報

(2)　タイムアウトの延長でメソッドキャンセルを実行した場合に出力されるログ情報

(3)　コマンドによってメソッドキャンセルを実行した場合に出力されるログ情報

(4)　注意事項

(1)　J2EEサーバ起動時に出力されるログ情報

J2EEサーバ起動時には，プロパティの読み込み，JavaVMのバージョンチェック，保護区リストファイルの読み込みが実行されます。

このときに出力されるログ情報を次の図に示します。

図C-1　J2EEサーバ起動時に出力されるログ情報

(2)　タイムアウトの延長でメソッドキャンセルを実行した場合に出力されるログ情報

タイムアウトが発生して，その処理の延長でメソッドキャンセルが実行された場合に出力されるログ情報を次の図に示します。どのメッセージが出力された場合も，処理は続行されます。なお，メソッドキャンセルモードが有効か無効かによって，スレッドダンプの出力回数が異なります。

メソッドキャンセルモードが有効の場合
タイムアウト発生時と，メソッドキャンセルの成功時または失敗時に，2回出力されます。

メソッドキャンセルモードが無効の場合
タイムアウト発生時に1回だけ出力されます。

また，タイムアウトを検知したメソッドが終了した場合には，KDJE52716-Iが出力されます。これは，メソッドキャンセルの実行が成功したかどうかとは関係ありません。また，実行しないで終了した場合にも出力されます。つまり，一つのメソッドの実行についてKDJE52703-WとKDJE52716-Iは，1対1で出力されます。

図C-2　タイムアウトの延長でメソッドキャンセルを実行した場合に出力されるログ情報

(3)　コマンドによってメソッドキャンセルを実行した場合に出力されるログ情報

タイムアウトが発生したメソッドを，J2EEアプリケーションの強制停止またはメソッドキャンセルコマンド（cjstopthread）を実行してキャンセルする場合に出力されるログ情報を次の図に示します。どのメッセージが出力された場合も，処理は続行されます。

なお，スレッドダンプはメソッドキャンセルが失敗した場合に1回だけ出力されます。また，メソッドキャンセルコマンドの実行に失敗した場合は，メッセージKDJE52713-Eが出力されます。

図C-3　コマンドによってメソッドキャンセルを実行した場合に出力されるログ情報

(4)　注意事項

J2EEサーバでのスレッドダンプファイル数の上限チェック後，スレッドダンプ出力要求とJavaVMでのスレッドダンプ出力処理は非同期に実行されるため，タイムラグが発生することがあります。このため，スレッドダンプファイルが上限値を超えて出力されることがあります。

スレッドダンプの出力数の上限値は，「設定したスレッドダンプの上限値+9」になります。

また，JavaVMのスレッドダンプ出力処理では，同時に複数の出力要求があった場合，スレッドダンプを出力できないことがあります。この場合には，スレッドダンプの数が，実際に出力しようとした数よりも少なくなります。

付録C.2　Cosminexus JPAプロバイダの稼働ログ

ここでは，Cosminexus JPAプロバイダが出力する稼働ログのメッセージについて，ログ出力のカテゴリごとに説明します。

＜この項の構成＞

(1)　カテゴリがSQLの場合

(2)　カテゴリがTRANSACTIONの場合

(1)　カテゴリがSQLの場合

SQL [aa....aa] SQL = bb....bb

aa....aa：永続化ユニット名
bb....bb：発行するSQL文

説明

JPAがSQLを発行します。

SQL [aa....aa] PARAM = bb....bb

aa....aa：永続化ユニット名
bb....bb：?パラメタ(プレースホルダ)の設定値

説明

SQL文の?パラメタ（プレースホルダ）に値を設定します。

bb....bbには，?パラメタ（プレースホルダ）に設定された値を文字表現に変換した結果が出力されます。文字や数値の場合はそのまま出力されます。ただし，例えばバイナリデータがjavaのbyte型配列に格納されていると，byte型配列に対してtoStringメソッドを実行して，「[B@f7ba93」のような表記で出力されます。

SQL [aa....aa] RETURN = bb....bb

aa....aa：永続化ユニット名
bb....bb：戻り値

説明

PreparedStatement#executeUpdate()の戻り値です。戻り値はSQL文を実行した結果の行数です。詳細についてはJavadocの「java.sql.PreparedStatement」を参照してください。

(2)　カテゴリがTRANSACTIONの場合

TRN [aa....aa] JPA processing was bound to a JTA transaction. (status = bb....bb)

aa....aa：永続化ユニット名
bb....bb：JTAトランザクションに参加したときのトランザクションの状態

説明

JTAトランザクションに参加しました。トランザクションの状態（ステータス）を示す文字列を出力します。状態を示す文字列の詳細については，Javadocの「javax.transaction.Status」を参照してください。

TRN [aa....aa] A JTA transaction was committed. (status = bb....bb)

aa....aa：永続化ユニット名
bb....bb：JTAトランザクションが決着したときのトランザクションの状態

説明

JTAトランザクションの決着が通知されました。JTAから渡される，トランザクションが決着したときの状態（ステータス）を示す文字列を出力します。状態を示す文字列の詳細については，Javadocの「javax.transaction.Status」を参照してください。

TRN [aa....aa] An EntityTransaction started.

aa....aa：永続化ユニット名

説明

EntityTransactionを開始しました。

TRN [aa....aa] An EntityTransaction was committed.

aa....aa：永続化ユニット名

説明

EntityTransactionをコミットしました。

TRN [aa....aa] An EntityTransaction was rolled back.

aa....aa：永続化ユニット名

説明

EntityTransactionをロールバックしました。

付録D　障害発生時のCMR用の表の回復

ここでは，CMRを含むアプリケーションをデプロイしたあとJ2EEサーバで障害が発生した場合に，障害発生前に使用していたCMR用の表を回復させる手順について説明します。なお，CMR用の表の詳細については，マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「9.6.3　CMP2.xとデータベースのマッピング」を参照してください。

CMRを含むアプリケーションがデプロイされ，運用していた状態で保守などのためにJ2EEサーバを停止，起動したときに障害が発生すると，CMRを含むアプリケーションがデプロイされた状態で立ち上がらないことが考えられます。障害を解決し，再度CMRを含むアプリケーションをデプロイしようとしても，作成する表と同名の表がデータベース上にある場合，デプロイができません（アプリケーション間で表の共有を避けるため）。

ここで，SQL生成を再度実行すると，新しいCMR用の表名を使用したSQLが生成され，新しいCMR用の表を使用するようにデプロイができます。しかし，J2EEサーバを停止する以前に使用していた関係を使用したい場合，データベースに残っている表を使うようにデプロイする必要があります。

簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にejbserver.ejb.cmp20.cmr.use.existing_tableパラメタで指定します。ejbserver.ejb.cmp20.cmr.use.existing_tableは，アプリケーションの起動障害発生時，それまで使用していた関係の情報を回復させるためのオプションです。trueを指定すると，データベース既存の表を使用するようにデプロイができます。このオプションを使用して，既存の表を使用する場合の手順を次に示します。

障害発生前に使用していたCMR用の表がデータベース上に残っていることを，SQLを使用して確認してください。

J2EEサーバを停止します（アプリケーションがデプロイ状態で立ち上がることに失敗した原因の対処をしてください）。

簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にejbserver.ejb.cmp20.cmr.use.existing_tableパラメタで次のように指定します。

<param-name>タグ

ejbserver.ejb.cmp20.cmr.use.existing_table

<param-value>タグ

true

J2EEサーバを起動します。

デプロイ状態での開始に失敗したCMRを含むアプリケーションを再度デプロイします。

注意

ここでSQL生成を再実行しないでください。再実行すると新しい表名でSQLが生成され，以前の表が使用できなくなります。

J2EEサーバを停止します。

簡易構築定義ファイルの論理J2EEサーバ（j2ee-server）の<configuration>タグ内にejbserver.ejb.cmp20.cmr.use.existing_tableパラメタでfalseを指定するか，またはこのオプションを設定しない状態に戻します。

再度J2EEサーバを起動します。

付録E　Cosminexus DABroker Libraryでのトラブルシューティング

ここでは，Cosminexus DABroker Libraryのトラブルシューティングで使用するログの種類，出力先，および取得するための設定について説明します。ログの内容については，「付録F　Cosminexus DABroker Libraryのスプール情報の内容」を参照してください。

＜この節の構成＞

付録E.1　Cosminexus DABroker Libraryで取得できるログの種類と出力先

付録E.2　Cosminexus DABroker Libraryのログ取得の設定

付録E.3　Cosminexus DABroker Libraryのトレースファイル運用時の留意事項

付録E.4　データベースと接続中にトラブルが発生した場合

付録E.1　Cosminexus DABroker Libraryで取得できるログの種類と出力先

Cosminexus DABroker Libraryでは，トラブルシューティングに使用するログとして，スプール情報を取得します。スプール情報として取得できるのは，次の情報です。

メッセージログ

拡張データベースアクセストレース

エラートレース

Exceptionトレースログ

イベントトレース（DABroker for C++をインストールしている場合）

XAトレース

また，これらのログは，アプリケーションサーバのログに日立トレース共通ライブラリ形式（マルチプロセス）で出力されます。日立トレース共通ライブラリ形式のログの出力形式および出力項目については，「5.2.1　日立トレース共通ライブラリ形式のログの出力形式と出力項目」を参照してください。また，日立トレース共通ライブラリ形式のログを参照する場合の注意事項については，「5.2.2　日立トレース共通ライブラリ形式のログを参照する場合の注意」を参照してください。

「<Cosminexus DABroker Libraryの運用ディレクトリ>¥spool下」（Windowsの場合），または「<Cosminexus DABroker Libraryの運用ディレクトリ>/spool下」（UNIXの場合）のすべてのファイルをコピーして保存してください。<Cosminexus DABroker Libraryの運用ディレクトリ>とは，「<Cosminexusのインストールディレクトリ>¥DAB」（Windowsの場合），または「/opt/DABroker」（UNIXの場合）のことです。なお，環境設定によって出力先を変更している場合は，変更した出力先のファイルをコピーして保存してください。

Cosminexus DABroker Libraryのスプール情報のうち，Exceptionトレースログは，運用開始前に取得のための設定をしておく必要があります。Exceptionトレースログ取得の設定については，「付録E.2　Cosminexus DABroker Libraryのログ取得の設定」を参照してください。

付録E.2　Cosminexus DABroker Libraryのログ取得の設定

Cosminexus DABroker Libraryでは，JDBCドライバのトレース情報やスプール情報を取得できます。また，障害発生時には，アプリケーションサーバの定義を取得してください。これらの情報を使用して，障害が発生したときに設定されていた定義内容を確認します。

ここでは，これらの情報を取得するための設定について説明します。

＜この項の構成＞

(1)　JDBCドライバのトレース情報の取得

(2)　スプール情報の取得

(3)　Cosminexus DABroker Libraryに関する定義情報

(1)　JDBCドライバのトレース情報の取得

Cosminexus DABroker Libraryでは，スプール情報のほかに次のJDBCドライバのトレースも取得できます。

JDBCインタフェースメソッドトレース

Cosminexus DABroker Libraryのイベントトレース

ただし，これらのトレースを取得するためには，アプリケーション開発時にJDBCドライバのトレース取得のための設定をしておく必要があります。設定方法については，「11.6.4　データベース接続の設定」を参照してください。

(2)　スプール情報の取得

Cosminexus DABroker Libraryでは，スプール情報として，メッセージログ，拡張データベースアクセストレース，Exceptionトレースログなどを取得できます。環境設定ユティリティ（Windowsの場合）またはCosminexus DABroker Library動作環境定義ファイル（UNIXの場合）で，メッセージログ，拡張データベースアクセストレースのファイルサイズなどを設定してください。環境設定ユティリティまたはCosminexus DABroker Library動作環境定義ファイルの設定については，Windowsの場合は「11.2.1(3) Cosminexus DABroker Libraryの動作環境の設定」，UNIXの場合は「11.2.2(4) Cosminexus DABroker Libraryの動作環境の設定」を参照してください。

また，Exceptionトレースログを取得するためには，運用開始前に取得のための設定が必要です。ここでは，Exceptionトレースログ取得の設定について説明します。

Exceptionトレースログ取得の設定では，次の内容を設定します。

トレース取得レベル

ファイル出力先

ファイル出力情報量

メモリ内取得情報量

それぞれの設定方法について説明します。

(a)　トレース取得レベル

Exceptionトレースログは，メソッド実行時に，SQLException，BatchUpdateException，またはXAExceptionが発生した場合に出力されます。Exceptionトレースログを出力するメソッドには，メソッドごとにトレース取得レベルが定義されています。出力するトレース取得レベルを指定することで，目的に応じた内容のトレースを出力できるようになります。

設定方法
トレース取得レベルは，次の環境変数で指定します。

環境変数名
説明

DAB_TRACELEVEL
トレース取得レベルとして，1～5を指定します。ただし，トレース取得レベル4は現在未使用であり，4が指定された場合は3と同じ動きとなります。

ここでは，どのトレース取得レベルまでログを取得するかを指定します。例えば，トレース取得レベル3を指定した場合は，トレース取得レベル1および2の内容が取得できます。トレース取得レベル5が指定された場合は，内部呼び出しを含め，ログ取得対象メソッドをすべて取得します。

指定を省略した場合，または不正な値を指定した場合は，トレース取得レベルとして，1を仮定します。

ログを取得するメソッドは，指定された値で取得されるメソッドすべてとなります。

指定値の前後にスペースがあった場合は，スペースを削除した値を指定値として扱います。

トレース取得レベルと取得できるログの内容
Exceptionトレースログのトレース取得レベルと取得できるログの内容を次の表に示します。

表E-1　Exceptionトレースログのトレース取得レベル

トレース取得レベル
取得できるログの内容
説明

1

データベースとの接続と切断

ステートメントの作成とクローズ

静的SQLの実行

標準のトレース取得レベルです。コネクションとステートメントの状態と実行順序を調査したい場合に指定してください。

2

トレース取得レベル1の内容

トランザクションのコミット，およびロールバック

データベースへのアクセス要求

ResultSetクラスの処理

各オブジェクトの処理

データベースのアクセス要求の状態と実行順序を調査したい場合に指定してください。ソースとログの比較が容易になります。

3

トレース取得レベル1および2の内容

XA要求

XA要求の状態と実行順序を調査したい場合に指定してください。

5

トレース取得レベル1，2および3の内容

JDBCドライバの内部呼び出し

内部処理の状態と実行順序を調査したい場合に指定してください。

Exceptionトレースログを出力するメソッドのトレース取得レベル
Exceptionトレースログを出力するメソッドのトレース取得レベルを次の表に示します。

表E-2　Exceptionトレースログを取得するメソッドのトレース取得レベル

クラス名 | メソッド名 | トレース取得レベル | 備考
CallableStatement | boolean execute()※1 | 2 | Statementクラス，およびPreparedStatementクラスのメソッドをオーバーライドしたメソッド。
ResultSet executeQuery()※1 | 2
int executeUpdate()※1 | 2
boolean execute(String sql)※2 | 1
int[] executeBatch() | 2
ResultSet executeQuery(String sql)※2 | 1
int executeUpdate(String sql)※2 | 1
Connection | void close() | 1 | －
void commit() | 2 | －
Statement createStatement()※1 | 1 | －
Statement createStatement(int resultSetType, int resultSetConcurrency)※2 | 1 | －
DatabaseMetaData getMetaData() | 2 | －
CallableStatement prepareCall(String sql)※1 | 1 | －
CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency)※2 | 1 | －
PreparedStatement prepareStatement(String sql)※1 | 1 | －
PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)※2 | 1 | －
void rollback() | 2 | －
void setAutoCommit(boolean autoCommit) | 2 | －
DatabaseMetaData | ResultSet getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable) | 2 | －
ResultSet getCatalogs() | 2 | －
ResultSet getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern) | 2 | －
ResultSet getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) | 2 | －
Connection getConnection() | 2 | －
ResultSet getCrossReference(String primaryCatalog, String primarySchema, String primaryTable, String foreignCatalog, String foreignSchema, String foreignTable) | 2 | －
ResultSet getExportedKeys(String catalog, String schema, String table) | 2 | －
ResultSet getImportedKeys(String catalog, String schema, String table) | 2 | －
ResultSet getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate) | 2 | －
ResultSet getPrimaryKeys(String catalog, String schema, String table) | 2 | －
ResultSet getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern) | 2 | －
ResultSet getProcedures(String catalog, String schemaPattern, String procedureNamePattern) | 2 | －
ResultSet getSchemas() | 2 | －
ResultSet getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern) | 2 | －
ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types) | 2 | －
ResultSet getTableTypes() | 2 | －
ResultSet getTypeInfo() | 2 | －
ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types) | 2 | －
ResultSet getVersionColumns(String catalog, String schema, String table) | 2 | －
Driver | Connection connect(String url, Properties info) | 1 | －
PreparedStatement | boolean execute()※1 | 2 | －
ResultSet executeQuery()※1 | 2 | －
int executeUpdate()※1 | 2 | －
ResultSetMetaData getMetaData() | 2 | －
boolean execute(String sql)※2 | 1 | Statementクラスのメソッドをオーバーライドしたメソッド。
int[] executeBatch() | 2
ResultSet executeQuery(String sql)※2 | 1
int executeUpdate(String sql)※2 | 1
ResultSet | boolean absolute(int row) | 2 | データベースにアクセスするときだけ取得します。
void afterLast() | 2
void beforeFirst() | 2
void close() | 2 | －
boolean first() | 2 | データベースにアクセスするときだけ取得します。
ResultSetMetaData getMetaData() | 2 | －
Statement getStatement() | 2 | －
boolean last() | 2 | データベースにアクセスするときだけ取得します。
boolean next() | 2
boolean relative(int rows) | 2
Statement | void cancel() | 2 | －
void close() | 1 | －
boolean execute(String sql) | 1 | －
int[] executeBatch() | 2 | －
ResultSet executeQuery(String sql) | 1 | －
int executeUpdate(String sql) | 1 | －
ResultSet getResultSet() | 2 | －
DataSource | Connection getConnection()※1 | 1 | －
Connection getConnection(String username, String password)※2 | 1 | －
PooledConnection | void close() | 1 | －
Connection getConnection() | 1 | －
ConnectionPoolDataSource | PooledConnection getPooledConnection()※1 | 1 | －
PooledConnection getPooledConnection(String username, String password) ※2 | 1 | －
XAConnection | XAResource getXAResource() | 1 | －
XADataSource | XAConnection getXAConnection()※1 | 1 | －
XAConnection getXAConnection(String user, String password)※2 | 1 | －
XAResource | void commit(Xid xid, boolean onePhase) | 3 | －
void end(Xid xid, int flags) | 3 | －
void forget(Xid xid) | 3 | －
boolean isSameRM(XAResource xares) | 3 | －
int prepare(Xid xid) | 3 | －
Xid[] recover(int flag) | 3 | －
void rollback(Xid xid) | 3 | －
void start(Xid xid, int flags) | 3 | －

（凡例）－：該当しない

注※1　メソッド名は，「メソッド名(1)」と出力されます。

注※2　メソッド名は，「メソッド名(2)」と出力されます。

(b)　ファイル出力先

Exceptionトレースログを出力するファイルの出力先を設定できます。

設定方法
ファイル出力先は，次の環境変数で指定します。

環境変数名
説明

DAB_FILEDIR
Exceptionトレースログの出力先のディレクトリを絶対パスで指定します。

指定を省略した場合は，次の場所にExceptionトレースログが出力されます。
Windowsの場合
<Cosminexus DABroker Library運用ディレクトリ>¥spool
UNIXの場合
<Cosminexus DABroker Library運用ディレクトリ>/spool

ファイルの出力先として，<ファイルの出力先ディレクトリ>¥<J2EEサーバ名称+MTrc.log>のバイト数が259バイトを超える値は指定しないでください。環境変数の設定値のバイト数の上限は，1,024バイトです。上限を超えた場合は，先頭から1,024バイト分だけが有効になります。

指定値の前後にスペースがあった場合は，スペースを削除した値を指定値として扱います。

(c)　ファイル出力情報量

Exceptionトレースログを出力するファイルの出力情報量を設定できます。

設定方法
ファイル出力情報量は，次の環境変数で指定します。

環境変数名
説明

DAB_FILEOUTNUM
ファイル出力情報量として，メモリ内取得情報をファイルに出力する回数の上限を指定します。指定できる範囲は，1～50です。

指定を省略した場合，または不正な値を指定した場合は，出力情報量として，5を仮定します。指定された値が1以下の場合は1，50以上の場合は50を出力情報量として仮定します。

指定した上限を超えて出力しようとすると，カレントファイルは1世代前のファイルとなり，新しくカレントファイルが作成されて，情報が出力されます。

環境変数の設定値のバイト数の上限は，10バイトです。上限を超えた場合には，先頭から10バイト分だけが有効になります。

指定値の前後にスペースがあった場合は，スペースを削除した値を指定値として扱います。

情報量の上限
一つのファイルに出力する情報量の上限（単位：行）は，次の算出式で求められます。

情報量の上限＝（DAB_ONMEMNUMの指定値）×（DAB_FILEOUTNUMの指定値）

なお，Exceptionトレースログを出力するためのファイルサイズの概算（単位：キロバイト）は，次の算出式で求められます。

出力するファイルサイズ＝2×メモリ内取得情報量（DAB_ONMEMNUMの指定値）×ファイル出力情報量（DAB_FILEOUTNUMの指定値）×2

(d)　メモリ内取得情報量

Exceptionトレースログを出力するファイルのメモリ内取得情報量を設定できます。

設定方法
メモリ内取得情報量は，次の環境変数で指定します。

環境変数名
説明

DAB_ONMEMNUM
メモリ内取得情報量として，メモリ内で保持する情報量の上限を指定します。指定できる範囲は500～10,000（単位は，行※）です。

指定を省略した場合，または不正な値を指定した場合は，メモリ内取得情報量として，1,000を仮定します。指定された範囲が500以下の場合は500，10,000以上の場合は10,000をメモリ内取得情報量として仮定します。

指定した上限を超えて保持しようとすると，ラップアラウンドします。

環境変数の設定値のバイト数の上限は，10バイトです。上限を超えた場合には，先頭から10バイト分だけが有効になります。

指定値の前後にスペースがあった場合は，スペースを削除した値を指定値として扱います。

注※　1行とは，メソッドの呼び出し情報，メソッドの戻り情報，およびException情報のそれぞれで一度に取得する情報のことです。

メモリ所要量の算出式
Exceptionトレースログを出力するために必要となるメモリ所要量（単位：キロバイト）は，次の算出式で求められます。

メモリ所要量＝2×メモリ内取得情報量（DAB_ONMEMNUMの指定値）

(3)　Cosminexus DABroker Libraryに関する定義情報

トラブルが発生した際に，次のファイルを取得するようにしてください。

Windowsの場合

<Cosminexus DABroker Library運用ディレクトリ>¥conf¥dasys.conf（Cosminexus DABroker Library動作環境定義ファイル）

<Cosminexus DABroker Library運用ディレクトリ>¥conf¥dabenv（接続先データベース定義ファイル）

UNIXの場合

<Cosminexus DABroker Library運用ディレクトリ>/conf/dasys.conf（Cosminexus DABroker Library動作環境定義ファイル）

<Cosminexus DABroker Library運用ディレクトリ>/conf/dabenv（接続先データベース定義ファイル）

トラブルシューティング用に保存するファイルからは，パスワードなどの公開できない情報を削除することをお勧めします。

付録E.3　Cosminexus DABroker Libraryのトレースファイル運用時の留意事項

ここでは，Cosminexus DABroker Libraryのトレースファイル運用時の留意事項について説明します。

＜この項の構成＞

(1)　拡張データベースアクセストレースファイル

(2)　エラートレースファイル

(3)　Exceptionトレースログのファイル

(4)　JDBCドライバのトレースファイル

(1)　拡張データベースアクセストレースファイル

拡張データベースアクセストレースファイル運用時の注意事項を次に示します。

拡張データベースアクセストレースでは，Cosminexus DABroker Library動作環境定義ファイルで設定した行数を超える出力があった場合，現在のトレースファイルがバックアップファイルとして別名で保存されます。トレース内容は，トレースファイルの先頭から再び出力されます。

バックアップファイルは1世代前までしか残りません。このため，すでにバックアップファイルがある場合に，現在のトレースファイルが設定した行数を超えると， 既存のバックアップファイルが上書きされます。複数世代のバックアップファイルを保存する必要がある場合は，あらかじめ別のディレクトリに退避してください。

トレースファイルは実行しているコネクションの数だけ作成されます。

トレースファイルは自動的に削除されません。ユーザが不要になった時点で削除してください。

ハードディスクの空き容量が十分でない場合，トレースの出力が停止されることがあります。

(2)　エラートレースファイル

エラートレースファイル運用時の注意事項を次に示します。

dabevttrcerr1.txtファイルのサイズが512キロバイトを超えている場合にログを出力すると，dabevttrcerr1.txtファイルをバックアップ用ファイル（dabevttrcerr2.txt）に名称を変更したあと，新規作成したdabevttrcerr1.txtファイルにログを出力します。

バックアップ用ファイルは1世代前までだけ残せます。バックアップファイルを保存する必要がある場合は，あらかじめ別のディスクに退避してください。

ハードディスクの空き容量が十分でない場合，ログの出力を停止します。

(3)　Exceptionトレースログのファイル

Exceptionトレースログのファイル運用時の注意事項を次に示します。

Exceptionトレースログのファイルは1世代前まで保持されます。ファイル出力時にすでにカレントファイルと1世代前のファイルが存在する場合は，1世代前のファイルが削除され，カレントファイルが1世代前のファイルに置き換えられます。

ファイルの出力先は，環境変数DAB_FILEDIRで設定できます。
デフォルトは，<Cosminexus DABroker Library運用ディレクトリ>¥spool（Windowsの場合），または<Cosminexus DABroker Library運用ディレクトリ>/spool（UNIXの場合）です。
<ファイルの出力先ディレクトリ>¥J2EEサーバ名称+MTrc.logl（Windowsの場合），または<ファイルの出力先ディレクトリ>/J2EEサーバ名称+MTrc.logl（UNIXの場合）のバイト数が259バイトを超えないように注意してください。また，<ファイルの出力先ディレクトリ>¥J2EEサーバ名称+MTrcOLD.log（Windowsの場合），または<ファイルの出力先ディレクトリ>/J2EEサーバ名称+MTrcOLD.log（UNIXの場合）のバイト数が259バイトを超える場合も注意が必要です。
259バイトを超えた場合の動作は，次のようになります。

<ファイルの出力先ディレクトリ>¥J2EEサーバ名称+MTrc.log のバイト数が259バイトを超えた場合，ログファイル，および1世代前のファイルが作成されません。

<ファイルの出力先ディレクトリ>¥<J2EEサーバ名称+MTrc.log>のバイト数が259バイトを超えない場合に，<ファイルの出力先ディレクトリ>¥<J2EEサーバ名称+MTrcOLD.log>のバイト数が259バイトを超えたときは，ログファイルは作成されますが，1世代前のファイルが作成されません。この場合，ファイル出力情報量を超えても1世代前のファイルが作成されないで，カレントファイルへ出力され続けます。

ファイルの作成や出力に失敗した場合，ログファイルに情報が出力されません。このとき，J2EEアプリケーションへのエラーメッセージの返却や，リトライは実行されません。エラーになった要因が解決されると，ログファイルにファイルが出力されるようになります。
ログファイル初回接続時にエラーが発生した場合に考えられる要因を次に示します。

ディレクトリが存在しない，またはディレクトリに対する権限がない

カレントファイルを1世代前のファイルに移動できない

1世代前のファイルを削除できない

ログファイル出力時にエラーが発生した場合に考えられる要因を次に示します。

ディレクトリが存在しない，またはディレクトリに対する権限がない

カレントファイルを作成または出力できない

カレントファイルを1世代前のファイルに移動できない

1世代前のファイルを削除できない

(4)　JDBCドライバのトレースファイル

JDBCドライバのトレースファイル運用時の注意事項を次に示します。

JDBCドライバ内でトレース情報の数がエントリ数を超えた場合は，トレースの古い順にトレース情報が上書きされます。

JDBCインタフェースメソッドトレース（キーワード：JDBC_IF）は，EntryおよびReturnでそれぞれ1エントリのトレース領域を使用します。

DABrokerとのイベントトレース（キーワード：SV_EVENT）は，送信または受信イベントでそれぞれ1エントリのトレース領域を使用します。

付録E.4　データベースと接続中にトラブルが発生した場合

データベースとの接続中に，アプリケーションサーバの構成ソフトウェアであるCosminexus DABroker Libraryでトラブルが発生した場合，Cosminexus DABroker Libraryによってデータベースとの接続は切り離されます。また，Cosminexus DABroker Libraryを強制終了した場合も同様です。

このとき，次の処理が実行されます。

Cosminexus DABroker Libraryが異常終了した場合
データベースで実行中の処理はロールバックされます。

DBMSが異常終了した場合
データベースで実行中の処理は，DBMSの制御に従って処理されます。

トラブルへの対応後，必要に応じてデータベースに再接続してください。

また，データベースアクセス，Cosminexus DABroker LibraryまたはJDBCドライバでエラーが発生した場合，例外としてSQLExceptionがスローされます。このSQLExceptionオブジェクトのreasonには，次の項目が設定されています。トラブルへの対処に利用してください。

JDBCドライバのメッセージ

エラーを検知したクラス名称とメソッド名称

Cosminexus DABroker Libraryからのメッセージ（メッセージがある場合）

なお，次のエラーが発生した場合は，SQLExceptionはスローされません。

Driver.connectionメソッドでデータベースに接続できない場合

URL指定でnullが返却される場合
Cosminexus DABroker Libraryで対象にしていないURLが指定された場合などが該当します。

この場合は，JDBCインタフェースの仕様で決まっている処理が実行されます。

なお，データベースとしてHiRDB，またはOracleを利用している場合，性能解析トレースファイルに出力されたコネクションIDと，Cosminexus DABroker LibraryやHiRDBクライアント，またはOracleクライアントのログファイルやトレースファイルに出力されたコネクションIDを突き合わせて確認することで，トラブルが発生したコネクションを確認できます。確認方法については，「付録B　データベースと接続中にトラブルが発生したコネクションの特定」を参照してください。

付録F　Cosminexus DABroker Libraryのスプール情報の内容

Cosminexus DABroker Libraryのスプール情報の調査方法について説明します。

Cosminexus DABroker Libraryのスプール情報には，次の種類があります。これらの情報は，<Cosminexus DABroker Libraryの運用ディレクトリ>¥spool（Windowsの場合），または<Cosminexus DABroker Libraryの運用ディレクトリ>/spool（UNIXの場合）に出力されています。

表F-1　Cosminexus DABroker Libraryのスプール情報

スプール情報の種類
対応するファイル

メッセージログ
dabsv.log
dabsv.logold

拡張データベースアクセストレース
db_accessディレクトリ下のファイル

エラートレース
dabevttrcerr1.txt（ログ出力用ファイル）
dabevttrcerr2.txt（バックアップ用ファイル）※1

Exceptionトレースログ
J2EEサーバ名称+MTrc.logおよびJ2EEサーバ名称+MTrcOLD.log

イベントトレース※2
dabevttrcXXX1およびdabevttrcXXX2

XAトレース
db_xainfo.log

注※1　これらのほか，ワークファイルが，dabevttrcerr1.txt.lockという名称で作成されます。

注※2　DABroker for C++をインストールしている場合に出力されます。

それぞれの情報について説明します。

また，このほか，Cosminexus DABroker Libraryのログとしては，次のJDBCドライバのトレースが取得できます。これらのトレースは，アプリケーション開発時に設定されている場合だけ出力されます。

JDBCドライバのトレース（JDBCインタフェースメソッドトレース）

JDBCドライバのトレース（Cosminexus DABroker Libraryとのイベントトレース）

＜この節の構成＞

付録F.1　メッセージログ

付録F.2　拡張データベースアクセストレース

付録F.3　エラートレース

付録F.4　Exceptionトレースログ

付録F.5　イベントトレース

付録F.6　XAトレースの取得形式

付録F.7　JDBCドライバのトレース（JDBCインタフェースメソッドトレース）

付録F.8　JDBCドライバのトレース（Cosminexus DABroker Libraryとのイベントトレース）

付録F.1　メッセージログ

Cosminexus DABroker Libraryのメッセージが出力されたファイルです。

付録F.2　拡張データベースアクセストレース

データベースへの接続から切断までのアクセス情報を出力したトレースです。データベースへの接続ごとに出力されます。

拡張データベースアクセストレースは，次のように利用できます。

データベースのアクセス中に発生したトラブルの迅速な切り分け

24時間稼働に対応するJ2EEアプリケーションの稼働状態でのトラブル調査

マルチスレッド環境でJ2EEアプリケーションが動作している場合のスレッドごとのデータベースアクセス履歴取得

コネクションプーリングなどの機能を使用している場合のデータベースへの接続ごとのデータベースアクセス履歴取得

トラブルが再現調査できない場合の常時トレース取得

なお，出力するイベントの種類や，トレースファイルの最大容量などは，Cosminexus DABroker Libraryの［環境設定ユティリティ］，またはCosminexus DABroker Library動作環境定義ファイルで定義しておきます。Cosminexus DABroker Libraryの動作環境の設定については，Windowsの場合は「11.2.1(3) Cosminexus DABroker Libraryの動作環境の設定」，UNIXの場合は「11.2.2(4) Cosminexus DABroker Libraryの動作環境の設定」を参照してください。Cosminexus DABroker Library動作環境定義ファイルの詳細については，マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「17.2　Cosminexus DABroker Library動作環境定義ファイル」を参照してください。

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(3)　ファイル名称規則

(1)　出力形式

拡張データベースアクセストレースのファイル出力形式を次に示します。斜体は可変の情報です。拡張データベースアクセストレースは，次の2種類の情報で構成されます。

ヘッダ情報

個々のトレース情報

個々のトレース情報は，出力項目を示すタイトル行の下に出力されます。

Windowsの場合

*-------------------------------------------------------*
*- DataBase Access Information (DRV)                   -*
*- Date  YYYY/MM/DD hh:mm:ss.nnnnnn                    -*
*-------------------------------------------------------*
DABroker Connect ID    : AAAAA(BBBBB)
Process ID             : CCCCC
UserID                 : DDDDD
Client Name            : EEEEE
(DB別出力情報)
Lang Mode              : GGGGG

THREAD-ID  CID   EVT   START-TIME   END-TIME   RETCODE  BLOCKCNT  (Windows QueryPerformance Counter) HiRDB_CONNECTION_ID
（トレース情報）
(SQL)SS…SS
（トレース情報）

UNIXの場合

*-------------------------------------------------------*
*- DataBase Access Information (DRV)                   -*
*- Date  YYYY/MM/DD hh:mm:ss.nnnnnn                    -*
*-------------------------------------------------------*
DABroker Connect ID    : AAAAA(BBBBB)
Process ID             : CCCCC
UserID                 : DDDDD
Client Name            : EEEEE
(DB別出力情報)
Lang Mode              : GGGGG

THREAD-ID  CID   EVT   START-TIME   END-TIME   RETCODE
BLOCKCNT   HiRDB_CONNECTION_ID
（トレース情報）
(SQL)SS…SS
（トレース情報）

(2)　出力項目

拡張データベースアクセストレースの出力項目について，次の表に示します。斜体は可変の情報です。

表F-2　拡張データベースアクセストレースの出力項目

項目
内容

ヘッダ情報

DRV
Cosminexus DABroker Libraryのデータベースアクセスドライバの種別に従い，次の識別子が出力されます。

HiRDB接続の場合：HiRDB Driver

Oracle8i接続の場合：ORACLE8i Driver※（Oracle Call Interface 8iを使用）

Oracle7接続の場合：ORACLE7 Driver（Oracle Call Interface 7を使用）

Date:YYYY/MM/DD hh:mm:ss.nnnnnn
ファイル作成日時（YYYY/MM/DD hh:mm:ss.nnnnnn）が出力されます。

YYYY：西暦年，MM：月，DD：日

hh：時，mm：分，ss：秒，nnnnnn：マイクロ秒

DABroker Connect ID:AAAAA(BBBBB)
データベース接続識別子が出力されます。

Process ID:CCCCC
実行プロセスIDが出力されます。

UserID:DDDDD
接続ユーザIDが出力されます。
Cosminexus DABroker LibraryでORACLEのOS認証機能を使用した場合は，「OS authority」となります。

Client Name:EEEEE
J2EEアプリケーション名称が出力されます。名称が設定されていない場合は空白になります。

(DB別出力情報)
接続データベースによって異なる情報が出力されます。

HiRDBの場合

PDHOST：
HiRDB接続時のPDHOSTの設定内容です。
未設定の場合は，"Not Indicator"が出力されます。

PDNAMEPORT：
HiRDB接続時のPDNAMEPORTの設定内容です。
未設定の場合は，"Not Indicator"が出力されます。

Oracleの場合

SQLNET：
Oracleリスナー名が出力されます。
未設定の場合は，"Not Indicator"が出力されます。

Lang Mode:GGGGG
実行言語モードが出力されます。

個々のトレース情報

THREAD-ID
実行スレッドIDが出力されます。

CID
カーソル番号が出力されます。

EVT
Cosminexus DABroker Libraryがデータベースに要求した処理内容を示す文字列が出力されます。データベースアクセストレースおよび拡張データベースアクセストレースの内容が含まれます。
Cosminexus DABroker Libraryの［環境設定ユティリティ］またはCosminexus DABroker Library動作環境定義ファイルで設定された内容のイベントが出力されます。なお，すべてのイベントを出力しない設定にしている場合は，ヘッダだけが出力されます。なお，何か一つでもイベントを出力する設定にしている場合は，GET_DIAGイベントは必ず出力されます。

出力されるイベントを次に示します。

ATTACH：サーバとのアクセスパス作成要求を実行します。

ATTRGET：ハンドル属性の取得要求を実行します。

ATTRSET：ハンドル属性の設定要求を実行します。

AUTOCOMOFF：AUTO COMMITモードの解除要求を実行します。

AUTOCOMON：AUTO COMMITモードの設定要求を実行します。

BIND：パラメタのバインド要求を実行します。

CHARFORM：キャラクタセットフォームの取得要求を実行します。

CHARID：キャラクタセットIDの取得要求を実行します。

DEFINE：パラメタの定義要求を実行します。

DESALLOC：記述子の領域確保を実行します。

DESC_OUT：前処理したSQLの出力情報を返します。

DESC_IN ：前処理したSQLの入力情報を返します。

DESCANY：オブジェクトの記述要求を実行します。

DESFREE：記述子の領域解放を実行します。

DETACH：データベースアクセスパス削除要求を実行します。

ENVCREATE：環境作成要求を実行します。

ERRGET：エラー情報取得要求を実行します。

EXECDIRECT：SQLの前処理後の実行処理です。

GET_DIAG：エラー詳細情報の取得処理を実行します。

GETINFO：接続後の動作情報の取得要求を実行します。

GETPIECE：ピース情報の取得要求を実行します。

HDLALLOC：ハンドルの領域確保を実行します。

HDLFREE：ハンドルの領域解放を実行します。

LOBCLOSE：BFILEデータのクローズ要求を実行します。

LOBLEN：LOBデータの長さ取得要求を実行します。

LOBOPEN：BFILEデータのオープン要求を実行します。

LOBREAD：LOBデータの読み込み要求を実行します。

LOBWRITE：LOBデータの書き込み要求を実行します。

PARAMGET：パラメタ情報の取得要求を実行します。

SESBEGIN：セッション開始要求を実行します。

SESEND：セッション終了要求を実行します。

SETINFO：接続後の動作情報の設定要求を実行します。

SETPIECE：ピース情報の設定要求を実行します。

START-TIME
アクセス開始日時（YYYY/MM/DD hh:mm:ss.nnnnnn）が出力されます。

YYYY：西暦年，MM：月，DD：日

hh：時，mm：分，ss：秒，nnnnnn：マイクロ秒

END-TIME
アクセス終了日時（YYYY/MM/DD hh:mm:ss.nnnnnn）が出力されます。

YYYY：西暦年，MM：月，DD：日

hh：時，mm：分，ss：秒，nnnnnn：マイクロ秒

RETCODE
データベースから返されるリターンコードが出力されます。

BLOCKCNT
FETCH時の行取得件数が出力されます。

(Windows QueryPerformance Counter)
Windowsの場合に，高分解パフォーマンス情報が表示されます。

HiRDB_CONNECTION_ID
コネクションID（aaaa:bbbb:cccc）が出力されます。

aaaa：
フロントエンドサーバ名（HiRDB/Parallel Server使用時）またはシングルサーバ名（HiRDB/Single Server使用時）

bbbb：
aaaaで示すサーバの接続通番

cccc：
aaaaで示すサーバのプロセスID。
コネクションIDは，HiRDBクライアントのバージョンが07-01以降で，かつサーバがHiRDBである場合だけ出力されます。サーバがHiRDBで，かつHiRDBクライアントのバージョンが07-01よりも前の場合は，ヘッダ（HiRDB_CONNECTION_ID）だけが出力され，コネクションIDは出力されません。また，サーバがXDM/RD E2の場合は，ヘッダ（HiRDB_CONNECTION_ID）およびコネクションIDは出力されません。なお，この情報は，CONNECT，COMMIT，ROLLBACK，PREPARE，EXECUTE，DIRECTを実行したとき，最新の情報に更新されます。

(SQL)SS…SS
クライアントから要求のあったSQLの内容が出力されます。この項目は，必要に応じて出力されます。

注※

Cosminexus DABroker LibraryからOracle8i，Oracle9iおよびOracle10gの機能を使用する場合に出力されます。

(3)　ファイル名称規則

拡張データベースアクセストレースのファイルは，次のディレクトリに作成されます。

Windowsの場合
<Cosminexus DABroker Library運用ディレクトリ>¥spool¥db_access

UNIXの場合
<Cosminexus DABroker Library運用ディレクトリ>/spool/db_access

拡張データベースアクセストレースのファイル名称は，次の規則に従います。斜体は可変の情報です。

spdb_XXXXXXXX_YYYYYYYY_HHHHHHHHHHHHHHHH_<接続データベース名称>ZZZZZ.IIIIII

ファイル名称中の文字列について次に示します。

表F-3　拡張データベーストレースのファイル名称の規則

項目
意味

XXXXXXXX
実行プロセスIDが設定されます。

YYYYYYYY
データベース接続識別子が設定されます。

HHHHHHHHHHHHHHHH_
実行プロセスごとにユニークな接続識別子が設定されます。

＜接続データベース名称＞
接続データベース名称です。指定したデータベース種別によって，次のどれかが設定されます。

HiRDBの場合：HiRDB

Oracle8i接続の場合：ORACLE8i

Oracle7の場合：ORACLE7

ZZZZZ
識別順序番号が設定されます。
同じ実行プロセスIDで，かつ同じデータベース接続識別子のファイルがある場合に，00000から32767までの番号を付加します。

IIIIII
ファイル拡張子が設定されます。

log：最新のトレースファイル

logold：1世代前のトレースファイル

付録F.3　エラートレース

エラートレースは，ログファイルに出力されるCosminexus DABroker Libraryのエラー情報です。

エラートレースとして出力される情報を次に示します。

エラー事象を示す情報
エラーメッセージなどが出力されます。

データベース接続情報
データベース接続に関連する情報が出力されます。

履歴情報
エラーが発生する前に要求を受けた情報，前回コミットまたはロールバックが実行された時間，SQL文の実行要求処理中の実行中カーソルでの要求ごとの履歴情報などが出力されます。

＜この項の構成＞

(1)　エラー事象を示す情報

(2)　データベース接続情報

(3)　履歴情報

(1)　エラー事象を示す情報

エラー事象を示す情報の出力形式および出力項目について説明します。

出力形式

エラー事象を示す情報のファイル出力形式を次に示します。斜体は可変の情報です。

YYYY/MM/DD hh:mm:ss.sss TID=AAAA SS..SS

エラー事象を示す情報の出力例を次に示します。

2004/05/07 13:30:09.555  TID=4040 KFPA11561-E Specified authorization identifier has no connect privilege

出力項目

エラー事象を示す情報の出力項目について，次の表に示します。

表F-4　エラートレースのエラー事象を示す情報の出力項目

項目
意味

YYYY/MM/DD hh:mm:ss.sss
エラー発生日時が出力されます。
YYYY：西暦年，MM：月，DD：日
hh：時，mm：分，ss：秒，sss：ミリ秒

AAAA
エラー発生スレッドID（16進数値）が出力されます。

SS...SS
エラーメッセージが出力されます。

(2)　データベース接続情報

データベース接続情報の出力形式および出力項目について説明します。

出力形式

エラートレースのデータベース接続情報のファイル出力形式を次に示します。斜体は可変の情報です。

YYYY/MM/DD hh:mm:ss.sss PID=BBBB InitID=CCCC ConID=DDDD CName=EEEE DBID=FFFF CID=GGGG(HHHH,IIII)

エラートレースのデータベース接続情報の出力例を次に示します。

2004/05/07 13:30:21.232 PID=1752 InitID=701 ConID=10701 CName=DABLIBAP DBID=1 CID=1(0,0)

出力項目

エラートレースのデータベース接続情報のファイル出力項目について，次の表に示します。

表F-5　エラートレースのデータベース接続情報の出力項目

項目
意味

YYYY/MM/DD hh:mm:ss.sss
データベース接続日時が出力されます。
YYYY：西暦年，MM：月，DD：日
hh：時，mm：分，ss：秒，sss：ミリ秒

BBBB
プロセスID（10進数値）が出力されます。

CCCC
DABroker Library接続ID（16進数値）が出力されます。

DDDD
データベース接続識別子（16進数値）が出力されます。

EEEE
J2EEアプリケーションの名称が出力されます。ただし，名称なしの場合は空白となります。

FFFF
データベースID（10進数値）が出力されます。
1：HiRDB
7：Oracle8i
8：Oracle9i

GGGG
実行中カーソルID（10進数値）が出力されます。

HHHH
保守用情報が出力されます。

IIII
保守用情報が出力されます。

(3)　履歴情報

履歴情報の出力形式および出力項目について説明します。

出力形式

エラートレースの履歴情報のファイル出力形式を次に示します。

ヘッダ「START-TIME EXEC-TIME TID COUNT REQ-CODE DATA」の下に，次に示す形式でトレース情報が出力されます。斜体は可変の情報です。

YYYY/MM/DD hh:mm:ss.sss mmmm:ss.sss JJJJJJJJ KKKKKKKK LLLL MMMM NNNNNNNN OOOOOOOO PP..PP

エラートレースの履歴情報の出力例を以下に示します。

START-TIME               EXEC-TIME    TID    COUNT  REQ-CODE  DATA
2004/05/07 15:37:16.733  0:00.030     1712        7 1022 NOW  00000000 00000001
2004/05/07 15:36:18.369  0:00.000     1712        6 1022 OLD  00000001 00000002
2004/05/07 15:35:59.191  0:00.281     1712        2 1021 PRE  00000000 00000002
INSERT INTO "HS
2004/05/07 15:36:18.369  0:00.000     1712        6 1022 EXE  00000001 00000002

出力項目

エラートレースの履歴情報のファイル出力項目について，次の表に示します。

表F-6　エラートレースの履歴情報の出力項目

項目
意味

YYYY/MM/DD hh:mm:ss.sss
要求開始日時が出力されます。
YYYY：西暦年，MM：月，DD：日
hh：時，mm：分，ss：秒，sss：ミリ秒

mmmm:ss.sss
要求実行時間が出力されます。
mmmm：分，ss：秒，sss：ミリ秒

JJJJJJJJ
要求元スレッドID（16進数値）が出力されます。

KKKKKKKK
コネクト要求からの累計要求カウント数（16進数値）が出力されます。FETの場合は，SQL文実行時のFETの要求回数0xFFFFFFFFを超えた場合は，0から循環します。

LLLL
要求コード（10進数値）要求コードの詳細は，「表F-7　要求コード・応答コード一覧」を参照してください。

MMMM
大きくわけて次の3種類に分類されます。

共通履歴情報
NOW：実行中の情報
OLD：一つ前の要求の情報

SQL文の実行要求時に指定されたカーソルの履歴情報
SPRE：SQL PREPARE処理
EXE：SQL EXECUTE処理
FET1：SQL FETCH処理初回
FET：SQL FETCH処理
CLS：SQL CLOSE処理

コミット/ロールバック情報
CMT：コミット処理
RBK：ロールバック処理

詳細は，「表F-8　各履歴種別によるDATA内容」を参照してください。

NNNNNNNN
情報1（16進数値）
詳細は，「表F-8　各履歴種別によるDATA内容」を参照してください。

OOOOOOOO
情報2（16進数値）
詳細は，「表F-8　各履歴種別によるDATA内容」を参照してください。

PP..PP
詳細情報（任意文字列）
詳細は，「表F-8　各履歴種別によるDATA内容」を参照してください。

データベース接続情報に出力される，要求コードおよび応答コードの一覧を次の表に示します。

表F-7　要求コード・応答コード一覧

要求コード・応答コード
（LLLL）
種別

1001
コネクション解放

1002
データベース接続

1003
データベース切り離し

1004
Commit

1005
Rollback

1006
表一覧取得準備

1007
表一覧取得

1008
表一覧取得後処理

1009
列一覧取得準備

1010
列一覧取得

1011
列一覧取得後処理

1012
索引一覧取得準備

1013
索引一覧取得

1014
索引一覧取得後処理

1015
表権限一覧取得準備

1016
表権限一覧取得

1017
表権限一覧取得後処理

1018
列権限一覧取得準備

1019
列権限一覧取得

1020
列権限一覧取得後処理

1021
SQL実行準備

1022
SQL実行

1023
SQL実行結果取得

1024
SQL実行後処理

1035
SQL実行結果取得オプション

1036
BLOBファイル削除

1037
プライマリキー一覧取得準備

1038
プライマリキー一覧取得

1039
プライマリキー一覧取得後処理

1040
BLOB,CLOBおよびBFILE分割取得

1041
自動Commit設定

1042
自動Commit解除

1050
XAトランザクション制御

1501
ストアドプロシジャ一覧取得準備

1502
ストアドプロシジャ一覧取得

1503
ストアドプロシジャ一覧取得後処理

1504
ストアドプロシジャ列一覧取得準備

1505
ストアドプロシジャ列一覧取得

1506
ストアドプロシジャ列一覧取得後処理

1507
ストアドプロシジャパラメタ定義情報取得

1508
ストアドプロシジャ実行準備

1509
ストアドプロシジャ実行

1510
ストアドプロシジャ拡張実行

2001
正常応答

2002
異常応答

データベース接続情報に出力される，各履歴種別によるDATA内容の一覧を次の表に示します。

表F-8　各履歴種別によるDATA内容

履歴種別(MMMM) | 情報1(NNNNNNN) | 情報2(OOOOOOO) | 詳細情報(PP..PP)
PRE | 検索カラム数 | ?パラメタ定義数 | SQLの先頭16バイト（マルチバイト文字コードの途中の場合はその文字は出力しません）
EXE | SQL実行件数※ | ?パラメタ指定数 | －
FET1 | 要求時検索件数 | 最大検索件数 | －
FET | 累計検索件数 | 要求時検索件数 | －
CLS | 0固定 | 0固定 | －
CMT | － | － | －
RBK | － | － | －
NOW | 今回の要求コードで取得した情報 | － | －
OLD | 前回の要求コードで取得した情報 | － | －

（凡例）

－：該当しない

注※

INSERT，UPDATE，DELETE実行時の件数

付録F.4　Exceptionトレースログ

Exceptionトレースログは，メソッド実行時に障害が発生した場合に障害要因を分析するためのトレース情報です。障害発生時の問題個所の切り分けをするときに有効です。メソッドの呼び出し情報，メソッドの戻り値の情報，および例外（Exception）の情報が，製品名称などが出力されたヘッダと合わせて出力されます。

Exceptionトレースログとして出力される情報を次に示します。

表F-9　 Exceptionトレースログとして出力される情報

情報の種類 | 内容
ヘッダ | 出力情報の通番
製品名称
メソッドの呼び出し情報 | ログの取得時間
スレッド識別情報
メソッドの呼び出し識別情報
クラス名，オブジェクトID，メソッド名
コネクションハンドル
セクションID（カーソルIDと同じことを表現しています）
メソッドの引数
メソッドの戻り情報 | ログの取得時間
スレッド識別情報
メソッドの戻り識別情報
クラス名，オブジェクトID，メソッド名
コネクションハンドル
セクションID（カーソルIDと同じことを表現しています）
メソッドの引数
Exceptionの情報 | ログの取得時間
スレッド識別情報
Exceptionのスタックトレース

Exceptionトレースログは，SQLException，BatchUpdateException，またはXAExceptionが発生したときに，環境変数に設定した設定情報を基に，Exceptionがthrowされる前にファイルに出力されます。Exceptionトレースを出力するメソッドと，ログ出力に関連する環境変数については，「付録E.1　Cosminexus DABroker Libraryで取得できるログの種類と出力先」を参照してください。

＜この項の構成＞

(1)　出力形式と出力項目

(2)　解析方法

(3)　トレース取得レベルごとの出力例

(1)　出力形式と出力項目

Exceptionトレースログの出力形式を，トレース取得レベル5の場合の出力例を基に説明します。

出力される内容について次の表で示します。項番は出力例中の番号と対応しています。

表F-10　 Exceptionトレースログの出力項目

項番 | 区分 | 表示 | 意味
1 | ヘッダ | [XXXX] | 出力情報の通番を示します。
2 | Cosminexus DABroker for Java , DABroker for Java Version 2 XX-XX-XX | Cosminexus DABroker Libraryのログであることを示します。
3 | 共通 | XXXX/XX/XX XX:XX:XX.XXX | ログの取得時間を示します。
4 | Thread[XXXX,XXXXX,XXXX]@XXXX | スレッド識別情報を示します。
5 | [JdbcDbpsvXXXX@XXXX.XXXX] | クラス名，オブジェクトID，メソッド名を示します。
6 | HANDLE(XXXX) | ConnectionHandleを示します。
7 | SID(XXX) | セクションID（カーソルIDと同じことを表現しています）を示します。
8 | メソッドの呼び出し情報 | [E] | メソッドの呼び出し識別情報を示します。
9 | XXXX=XXXX | メソッドの引数を示します。
10 | メソッドの戻り情報 | [R] | メソッドからの戻り識別情報を示します。
11 | Return=XXXX | メソッドの戻り値を示します。
12 | Exception情報 | JP.co.Hitachi.soft.DBPSV_Driver.XXXXException:XXXX | Exceptionのスタックトレースを表示します。

(2)　解析方法

ここでは，(1)で示した出力例を使用して，Exceptionトレースログの解析方法について説明します。

Exceptionトレースログは，次の手順で解析します。

解析するログの通番から，ログ情報を抜き出します。

ログ情報を，Thread識別情報で分類して，ログごとに分割します。

ログの取得時間によって，ログ情報を時系列に並べます。
手順1.～3.を実施すると，次のような表を作成できます。

時間
スレッド1
スレッド2
スレッド3
スレッド4

Thread[main,5,main]
@1259414
Thread[Thread-0,5,main]
@30090737
Thread[Thread-1,5,main]
@5462872
Thread[Thread-2,5,main]
@25253977

2004/07/06 23:07:09.129
JdbcDbpsvConnection
@82c01f.createStatement(1)
－
－
－

2004/07/06 23:07:09.160
JdbcDbpsvStatement
@1e4cbc4.execute
－
－
－

2004/07/06 23:07:14.285
JdbcDbpsvConnection
@82c01f.commit
－
－
－

2004/07/06 23:07:14.301
JdbcDbpsvConnection
@82c01f.prepareStatement(1)
－
－
－

2004/07/06 23:07:26.567
JdbcDbpsvConnection
@82c01f.commit
－
－
－

2004/07/06 23:07:26.567
JdbcDbpsvStatement
@1e4cbc4.executeQuery
－
－
－

2004/07/06 23:07:26.567
JdbcDbpsvStatement
@1e4cbc4.execute
－
－
－

2004/07/06 23:07:28.332
JdbcDbpsvResultSet
@3eca90.close
JdbcDbpsvConnection
@82c01f.prepareStatement(1)
－
－

2004/07/06 23:07:28.332
JdbcDbpsvConnection
@82c01f.commit
－
－
－

2004/07/06 23:07:28.348
－
－
JdbcDbpsvConnection
@82c01f.prepareStatement(1)
－

2004/07/06 23:07:30.332
－
－
－
JdbcDbpsvConnection
@82c01f.rollback

2004/07/06 23:07:42.098
－
－
－
JdbcDbpsvConnection
@82c01f.close

2004/07/06 23:07:42.535
－
－
SQLException発生
KFDJ00002-E Statement or Connection is closed.
－

（凡例）

－：該当しない

Exceptionエラーの内容を確認します。
2004/07/06 23:07:42.535のスレッド3でSQLExceptionが発生しています。メッセージの内容から，この時点でStatementオブジェクト，またはConnectionオブジェクトがすでにクローズされていることによるエラーだとわかります。

時系列にオブジェクトの流れを確認します。
2004/07/06 23:07:09.129のスレッド1，2004/07/06 23:07:28.332のスレッド2，2004/07/06 23:07:28.348のスレッド3，2004/07/06 23:07:30.332のスレッド4のConnectionオブジェクトのオブジェクトIDが同じであることから，四つのスレッドが同一コネクションで処理されていることがわかります。

エラーの原因となっている個所を探します。
四つのスレッドが同一コネクションであることがわかったため，Statement.closeメソッド，またはConnection.closeメソッドを実行している個所を探します。この例の場合は，スレッド4が2004/07/06 23:07:42.098でConnection.closeメソッドを実行しています。
このことから，2004/07/06 23:07:42.535のスレッド3で発生したSQLExceptionの原因は，スレッド４が2004/07/06 23:07:42.098でConnection.closeメソッドを実行していたためであることが，わかります。

(3)　トレース取得レベルごとの出力例

トレース取得レベルごとの出力例を次に示します。

トレース取得レベル1の場合の出力例

[1] Cosminexus DABroker for Java , DABroker for Java Version 2 02-11-/D
2004/07/21 17:59:41.001 Thread[main,5,main]@2113601537 [E][JdbcDbpsvXADataSource@59920001.getXAConnection(1)]
                       HANDLE(0) : SID(0)
2004/07/21 17:59:41.020 Thread[main,5,main]@2113601537 [E][JdbcDbpsvXAConnection@8bf8002.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 17:59:41.554 Thread[main,5,main]@2113601537 [R][JdbcDbpsvXAConnection@8bf8002.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@33690002
2004/07/21 17:59:41.554 Thread[main,5,main]@2113601537
[R][JdbcDbpsvXADataSource@59920001.getXAConnection(1)]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAConnection@8bf8002
2004/07/21 17:59:41.557 Thread[main,5,main]@2113601537 [E][JdbcDbpsvXAConnection@8bf8002.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 17:59:41.557 Thread[main,5,main]@2113601537 [R][JdbcDbpsvXAConnection@8bf8002.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@33690002
2004/07/21 17:59:41.561 Thread[main,5,main]@2113601537 [E][JdbcDbpsvXAConnection@8bf8002.getConnection]
                       HANDLE(0) : SID(0)
2004/07/21 17:59:41.649 Thread[main,5,main]@2113601537 [R][JdbcDbpsvXAConnection@8bf8002.getConnection]
                       HANDLE(883163352) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection@78688002
2004/07/21 17:59:41.649 Thread[main,5,main]@2113601537 [E][JdbcDbpsvConnection@78688002.prepareStatement(1)]
                       HANDLE(883163352) : SID(0)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 17:59:41.819 Thread[main,5,main]@2113601537 [R][JdbcDbpsvConnection@78688002.prepareStatement(1)]
                       HANDLE(883163352) : SID(1)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvPreparedStatement@d334002
2004/07/21 17:59:41.977 Thread[main,5,main]@2113601537 [E][JdbcDbpsvConnection@78688002.close]
                       HANDLE(883163352) : SID(0)
2004/07/21 17:59:42.886 Thread[main,5,main]@2113601537 [R][JdbcDbpsvConnection@78688002.close]
                       HANDLE(883163352) : SID(0)
2004/07/21 17:59:42.945 Thread[main,5,main]@2113601537 [E][JdbcDbpsvConnection@78688002.createStatement(1)]
                       HANDLE(883163352) : SID(0)
2004/07/21 17:59:42.946 Thread[main,5,main]@2113601537:JP.co.Hitachi.soft.DBPSV_Driver.SQLException:
KFDJ00006-E Connection is closed.[JdbcDbpsvConnection.createStatement(1)]
       at JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection.createStatement(JdbcDbpsvConnection.java:529)
       at TRC_ex.main(TRC_ex.java:81)

トレース取得レベル2の場合の出力例

[1] Cosminexus DABroker for Java , DABroker for Java Version 2 02-11-/D
2004/07/21 19:00:56.992 Thread[main,5,main]@2113866091 [E][JdbcDbpsvXADataSource@5996096b.getXAConnection(1)]
                       HANDLE(0) : SID(0)
2004/07/21 19:00:57.012 Thread[main,5,main]@2113866091 [E][JdbcDbpsvXAConnection@8bb8968.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 19:00:57.561 Thread[main,5,main]@2113866091 [R][JdbcDbpsvXAConnection@8bb8968.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0968
2004/07/21 19:00:57.561 Thread[main,5,main]@2113866091 [R][JdbcDbpsvXADataSource@5996096b.getXAConnection(1)]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAConnection@8bb8968
2004/07/21 19:00:57.565 Thread[main,5,main]@2113866091 [E][JdbcDbpsvXAConnection@8bb8968.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 19:00:57.565 Thread[main,5,main]@2113866091 [R][JdbcDbpsvXAConnection@8bb8968.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0968
2004/07/21 19:00:57.569 Thread[main,5,main]@2113866091 [E][JdbcDbpsvXAConnection@8bb8968.getConnection]
                       HANDLE(0) : SID(0)
2004/07/21 19:00:57.660 Thread[main,5,main]@2113866091 [R][JdbcDbpsvXAConnection@8bb8968.getConnection]
                       HANDLE(883163368) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection@7862c968
2004/07/21 19:00:57.660 Thread[main,5,main]@2113866091 [E][JdbcDbpsvConnection@7862c968.prepareStatement(1)]
                       HANDLE(883163368) : SID(0)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 19:00:57.779 Thread[main,5,main]@2113866091 [R][JdbcDbpsvConnection@7862c968.prepareStatement(1)]
                       HANDLE(883163368) : SID(1)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvPreparedStatement@d4dc968
2004/07/21 19:00:57.840 Thread[main,5,main]@2113866091 [E][JdbcDbpsvPreparedStatement@d4dc968.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 19:00:57.854 Thread[main,5,main]@2113866091 [R][JdbcDbpsvPreparedStatement@d4dc968.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       Return=1
2004/07/21 19:00:57.854 Thread[main,5,main]@2113866091 [E][JdbcDbpsvConnection@7862c968.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:00:57.886 Thread[main,5,main]@2113866091 [R][JdbcDbpsvConnection@7862c968.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:00:57.916 Thread[main,5,main]@2113866091 [E][JdbcDbpsvConnection@7862c968.createStatement(1)]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:00:57.917 Thread[main,5,main]@2113866091:JP.co.Hitachi.soft.DBPSV_Driver.SQLException: KFDJ00006-E Connection is closed.[JdbcDbpsvConnection.createStatement(1)]
       at JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection.createStatement(JdbcDbpsvConnection.java:529)
       at TRC_ex.main(TRC_ex.java:81)

（凡例）

下線は，トレース取得レベル1ではトレースが出力されないメソッドの情報です。

トレースレベル3の場合の出力例

[1] Cosminexus DABroker for Java , DABroker for Java Version 2 02-11-/D
2004/07/21 19:01:28.755 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXADataSource@5996095b.getXAConnection(1)]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:28.774 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAConnection@8bb8958.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.329 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAConnection@8bb8958.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0958
2004/07/21 19:01:29.329 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXADataSource@5996095b.getXAConnection(1)]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAConnection@8bb8958
2004/07/21 19:01:29.332 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAConnection@8bb8958.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.332 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAConnection@8bb8958.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0958
2004/07/21 19:01:29.333 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAResource@336d0958.start]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4958
                       flags=0
2004/07/21 19:01:29.372 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAResource@336d0958.start]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.389 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAConnection@8bb8958.getConnection]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.477 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAConnection@8bb8958.getConnection]
                       HANDLE(883163368) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection@78b60958
2004/07/21 19:01:29.478 Thread[main,5,main]@2113866075 [E][JdbcDbpsvConnection@78b60958.prepareStatement(1)]
                       HANDLE(883163368) : SID(0)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 19:01:29.571 Thread[main,5,main]@2113866075 [R][JdbcDbpsvConnection@78b60958.prepareStatement(1)]
                       HANDLE(883163368) : SID(1)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvPreparedStatement@13934958
2004/07/21 19:01:29.614 Thread[main,5,main]@2113866075 [E][JdbcDbpsvPreparedStatement@13934958.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 19:01:29.624 Thread[main,5,main]@2113866075 [R][JdbcDbpsvPreparedStatement@13934958.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       Return=1
2004/07/21 19:01:29.624 Thread[main,5,main]@2113866075 [E][JdbcDbpsvConnection@78b60958.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:01:29.656 Thread[main,5,main]@2113866075 [R][JdbcDbpsvConnection@78b60958.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:01:29.656 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAResource@336d0958.end]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4958
                       flags=67108864
2004/07/21 19:01:29.658 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAResource@336d0958.end]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.659 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAResource@336d0958.prepare]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4958
2004/07/21 19:01:29.675 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAResource@336d0958.prepare]
                       HANDLE(0) : SID(0)
                       Return=0
2004/07/21 19:01:29.675 Thread[main,5,main]@2113866075 [E][JdbcDbpsvXAResource@336d0958.commit]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4958
                       onePhase=false
2004/07/21 19:01:29.681 Thread[main,5,main]@2113866075 [R][JdbcDbpsvXAResource@336d0958.commit]
                       HANDLE(0) : SID(0)
2004/07/21 19:01:29.681 Thread[main,5,main]@2113866075 [E][JdbcDbpsvConnection@78b60958.createStatement(1)]
                       HANDLE(883163368) : SID(0)
2004/07/21 19:01:29.682 Thread[main,5,main]@2113866075:JP.co.Hitachi.soft.DBPSV_Driver.SQLException: KFDJ00006-E Connection is closed.[JdbcDbpsvConnection.createStatement(1)]
        at JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection.createStatement(JdbcDbpsvConnection.java:529)
        at TRC_ex.main(TRC_ex.java:81)

（凡例）

太字は，トレース取得レベル1ではトレースが出力されないメソッドの情報です。

下線は，トレース取得レベル2ではトレースが出力されないメソッドの情報です。

トレース取得レベル5の場合の出力例

[1] Cosminexus DABroker for Java , DABroker for Java Version 2 02-11-/D
2004/07/21 18:58:47.122 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXADataSource@5996092a.getXAConnection(1)]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:47.141 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAConnection@8bb8929.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:47.705 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAConnection@8bb8929.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0929
2004/07/21 18:58:47.706 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXADataSource@5996092a.getXAConnection(1)]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAConnection@8bb8929
2004/07/21 18:58:47.709 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAConnection@8bb8929.getXAResource]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:47.709 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAConnection@8bb8929.getXAResource]
                       HANDLE(0) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvXAResource@336d0929
2004/07/21 18:58:47.710 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAResource@336d0929.start]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4929
                       flags=0
2004/07/21 18:58:47.750 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAResource@336d0929.start]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:47.770 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAConnection@8bb8929.getConnection]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:47.858 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAConnection@8bb8929.getConnection]
                       HANDLE(883163368) : SID(0)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection@78454929
2004/07/21 18:58:47.858 Thread[main,5,main]@2113866026 [E][JdbcDbpsvConnection@78454929.prepareStatement(1)]
                       HANDLE(883163368) : SID(0)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 18:58:47.952 Thread[main,5,main]@2113866026 [R][JdbcDbpsvConnection@78454929.prepareStatement(1)]
                       HANDLE(883163368) : SID(1)
                       Return=JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvPreparedStatement@d2ec929
2004/07/21 18:58:47.994 Thread[main,5,main]@2113866026 [E][JdbcDbpsvPreparedStatement@d2ec929.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 18:58:47.994 Thread[main,5,main]@2113866026 [E][JdbcDbpsvPreparedStatement@d2ec929.execute(1)]
                       HANDLE(883163368) : SID(1)
                       sql=INSERT INTO TRC_ex VALUES(?)
2004/07/21 18:58:48.004 Thread[main,5,main]@2113866026 [R][JdbcDbpsvPreparedStatement@d2ec929.execute(1)]
                       HANDLE(883163368) : SID(1)
                       Return=false
2004/07/21 18:58:48.004 Thread[main,5,main]@2113866026 [R][JdbcDbpsvPreparedStatement@d2ec929.executeUpdate(1)]
                       HANDLE(883163368) : SID(1)
                       Return=1
2004/07/21 18:58:48.004 Thread[main,5,main]@2113866026 [E][JdbcDbpsvConnection@78454929.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 18:58:48.037 Thread[main,5,main]@2113866026 [R][JdbcDbpsvConnection@78454929.close]
                       HANDLE(883163368) : SID(0)
2004/07/21 18:58:48.037 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAResource@336d0929.end]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4929
                       flags=67108864
2004/07/21 18:58:48.039 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAResource@336d0929.end]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:48.039 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAResource@336d0929.prepare]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4929
2004/07/21 18:58:48.053 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAResource@336d0929.prepare]
                       HANDLE(0) : SID(0)
                       Return=0
2004/07/21 18:58:48.053 Thread[main,5,main]@2113866026 [E][JdbcDbpsvXAResource@336d0929.commit]
                       HANDLE(0) : SID(0)
                       xid=MyXid@5ffe4929
                       onePhase=false
2004/07/21 18:58:48.059 Thread[main,5,main]@2113866026 [R][JdbcDbpsvXAResource@336d0929.commit]
                       HANDLE(0) : SID(0)
2004/07/21 18:58:48.059 Thread[main,5,main]@2113866026
[E][JdbcDbpsvConnection@78454929.createStatement(1)]
                       HANDLE(883163368) : SID(0)
2004/07/21 18:58:48.060 Thread[main,5,main]@2113866026:JP.co.Hitachi.soft.DBPSV_Driver.SQLException: KFDJ00006-E Connection is closed.[JdbcDbpsvConnection.createStatement(1)]
       at JP.co.Hitachi.soft.DBPSV_Driver.JdbcDbpsvConnection.createStatement(JdbcDbpsvConnection.java:529)
       at TRC_ex.main(TRC_ex.java:81)

（凡例）

太字は，トレース取得レベル1ではトレースが出力されないメソッドの情報です。

下線は，トレース取得レベル2ではトレースが出力されないメソッドの情報です。

付録F.5　イベントトレース

イベントトレースは，DABroker for C++をインストールしている場合に出力されます。

DABroker for C++の機能を使ってデータベースにアクセスする場合のイベントトレースが出力されます。イベントトレースは，次のファイルに取得されます。

Windowsの場合
<Cosminexus DABroker Library運用ディレクトリ>¥spool¥dabevttrccpp1

UNIXの場合
<Cosminexus DABroker Library運用ディレクトリ>/spool/dabevttrccpp1

なお，イベントトレースファイルが満杯になった場合，ラップアラウンドでトレースが出力されます。この場合は，バックアップファイル（dabevttrccpp2）が作成され，1世代だけ（dabevttrccpp1）が管理されます。

取得するイベントトレースの設定については，「11.6.4　データベース接続の設定」を参照してください。

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(1)　出力形式

イベントトレースの出力形式について説明します。

ヘッダ「LEVEL VPID PID TID DATE TIME EVENT」の下に，次に示す形式でトレース情報が出力されます。

レベル 仮想プロセスID プロセスID スレッドID 日付 時刻 動作結果

イベントトレースの出力例を次に示します。

LEVEL    VPID     PID  TID  DATE       TIME            EVENT
40000010 00120000 711a 0001 2004/06/01 11:38:29.300000 イベント1
40000010 00120000 711a 0002 2004/06/01 11:38:30.100000 イベント2
40000010 00120000 711b 0001 2004/06/01 11:38:30.150000 イベント3
40000010 00120000 711b 0002 2004/06/01 11:38:30.250000 イベント4

(2)　出力項目

イベントトレースの出力項目について，次の表に示します。

表F-11　 Cosminexus DABroker Libraryのイベントトレースの出力項目

ヘッダ | 項目 | 説明
LEVEL | レベル | トレースに出力したレベルが出力されます。
VPID | 仮想プロセスID | 仮想プロセスIDが出力されます。
PID | プロセスID | プロセスIDが出力されます。
TID | スレッドID | スレッドIDが出力されます。
DATE | 日付 | 取得した日付が出力されます。
TIME | 時刻 | 取得した時刻が出力されます。
EVENT | 動作結果 | 実行時の動作結果のログが出力されます。

付録F.6　XAトレースの取得形式

XAインタフェースでのトラブルシュート情報は，XAトレースファイルとして次のファイルに出力されます。

Windowsの場合
<Cosminexus DABroker Library運用ディレクトリ>¥spool¥db_xainfo.log

UNIXの場合
<Cosminexus DABroker Library運用ディレクトリ>/spool/db_xainfo.log

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(1)　出力形式

XAトレースファイルの出力形式を次に示します。斜体は可変の情報です。

日付 時刻 プロセスID:スレッドID イベント種別:XA関数名 rmid=rrrr flags=ffff RMName="nnnn" xa_info="iiii" xid=[ffff:gggg:bbbb:dddd] count=cccc return code=rrrr

XAトレースファイルの出力例を次に示します。

(2)　出力項目

XAトレースファイルの出力項目について，次の表に示します。

表F-12　Cosminexus DABroker LibraryのXAトレースの出力項目

項目名
説明

日付
出力した年月日（YYYY/MM/DD）が出力されます。

YYYY：西暦年，MM：月，DD：日

時刻
出力した時刻（hh:mm:ss:nnnnnn）が表示されます。

hh：時，mm：分，ss：秒，nnnnnn：マイクロ秒

[プロセスID：スレッドID]
プロセスIDとスレッドIDが出力されます。

[イベント種別：XA関数名]
イベント種別と，XA関数の名前が出力されます。

イベント種別
次のどちらかが出力されます。
"call"：関数呼び出しであることを示します。
"end"：関数リターンであることを示します。

XA関数名
XA関数名が出力されます。

rmid=rrrr
RMIDが出力されます。

flags=ffff
フラグパラメタが出力されます。

RMName="nnnn"
RM名称が出力されます。

xa_info="iii "
XA文字列が出力されます。
この項目は，XA関数が，xa_open()，またはxa_close()の場合だけ，出力されます。

xid=[ffff:gggg:bbbb:dddd]
XIDが出力されます。
この項目は，XA関数が，xa_open()，またはxa_close()以外の場合だけ，出力されます。
ffff：フォーマットIDが出力されます。
gggg：グローバルトランザクションID長が出力されます。
bbbb：ブランチ修飾子長が出力されます。
dddd：XIDデータが出力されます。

count=cccc
リカバリ情報取得カウントが出力されます。
この項目は，XA関数がxa_recover()の場合だけ，出力されます。

return code = rrrr
XA関数の戻り値が出力されます。
この項目は，イベント種別が"end"の場合だけ出力されます。

付録F.7　JDBCドライバのトレース（JDBCインタフェースメソッドトレース）

J2EEアプリケーションまたはバッチアプリケーション開発時に，Cosminexus DABroker LibraryのAPIを使用して，JDBCドライバのトレースを出力するように設定できます。

ここでは，JDBCドライバのトレースのうち，JDBCインタフェースメソッドのトレースについて説明します。

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(1)　出力形式

JDBCインタフェースメソッドのトレースの出力形式を次に示します。斜体は可変の情報です。

[DABroker for Java Version 2] [JDBC Interface メソッド状態][JdbcDbpsvクラス名.メソッド名] 引数または戻り値=値

JDBCインタフェースメソッドのトレースの出力例を次の図に示します。

(2)　出力項目

JDBCインタフェースメソッドのトレースの出力項目について，次の表に示します。

表F-13　 JDBCインタフェースメソッドのトレースの出力項目

項目
説明

[DABroker for Java Version 2]
Cosminexus DABroker Libraryのトレースであることを示します。

[JDBC Interface メソッド状態]
使用したJDBCインタフェースメソッドの状態を示します。
Entry：メソッドの呼び出し
Return：メソッドの戻り

[JdbcDbpsvクラス名. メソッド名]
使用したJDBCインタフェースメソッドの「クラス名.メソッド名」を示します。

引数または戻り値=値
該当する「クラス名.メソッド名」の引数の値，または戻り値が出力されます。
引数の場合，引数名=値の形式で出力されます。
戻り値の場合，Return=値の形式で出力されます。

付録F.8　JDBCドライバのトレース（Cosminexus DABroker Libraryとのイベントトレース）

J2EEアプリケーションまたはバッチアプリケーション開発時に，Cosminexus DABroker LibraryのAPIを使用して，JDBCドライバのトレースを出力するように設定できます。

ここでは，JDBCドライバとCosminexus DABroker Libraryとのイベントトレースについて説明します。

＜この項の構成＞

(1)　出力形式

(2)　出力項目

(1)　出力形式

Cosminexus DABroker Libraryとのイベントトレースの出力形式を次に示します。

[DABroker for Java Version 2] [Server Event イベント] 送信データ種別

Cosminexus DABroker Libraryとのイベントトレースの出力例を次に示します。

(2)　出力項目

Cosminexus DABroker Libraryとのイベントトレースの出力項目について，次の表に示します。

表F-14　DABrokerとのイベントトレースの出力項目

項目
説明

[DABroker for Java Version 2]
Cosminexus DABroker Libraryのトレースであることを示します。

[Server Event イベント]
Cosminexus DABroker Libraryでのイベントを示します。

送信データ種別
送受信データ種別が，aa…aa <bb…bb>（cc…cc,dd…dd）SIZE：XXXの形式で出力されます

aa…aa
オペレーション種別が出力されます。
表示されるオペレーション種別とその意味は次のとおりです。

Disconnect(Connection)：Cosminexus DABroker Libraryとのコネクション解放要求

Connect(Database)：データベースとの接続要求

Disconnect(Database)：データベースとの接続解放要求

Commit：トランザクションのコミット要求

Rollback：トランザクションのロールバック要求

LIST(Table)：表一覧取得要求

LIST(Column)：列一覧取得要求

LIST(Index)：索引一覧取得要求

LIST(TablePrivileges)：表権限一覧取得要求

LIST(ColumnPrivileges)：列権限一覧取得要求

LIST(Procedure)：プロシジャ一覧取得要求

LIST(ProcedureColumn)：プロシジャ列一覧取得要求

EXT-CMD：SQLの実行要求

EXE(Procedure)：プロシジャの実行要求

Cancel：非同期キャンセル要求

Result：正常応答

Error：エラー応答

Result(Cancel)：正常応答（非同期キャンセル）

Error(Cancel)：エラー応答（非同期キャンセル）

XA：CALL：XAオペレーションの実行

XA：AUTOCOMMIT<ON>：XALocalCommitMode（true）の実行

XA：AUTOCOMMIT<OFF>：XALocalCommitMode（false）の実行

bb…bb
付加情報が出力されます。
オペレーション種別が，LIST（xxxxx）およびEXT-CMDの場合に表示されます。

cc…cc
リターンコードが出力されます。

dd…dd
詳細コードが出力されます。

XXX
Cosminexus DABroker LibraryでのイベントがPutの場合は，送信したデータのサイズが出力されます。
Cosminexus DABroker LibraryでのイベントがGetの場合は，受け取ったデータのサイズが出力されます。

付録G　Cosminexus DABroker Libraryのメモリ所要量

ここでは，Cosminexus DABroker Libraryのメモリ所要量の計算式について説明します。

なお，Cosminexus DABroker Libraryのメモリ所要量の計算式には，JDBCのメモリサイズを使用します。JDBCのメモリサイズの計算式に使用するデータのサイズについては，「付録G.1　JDBCのメモリサイズの計算式に使用するデータのサイズ」を参照してください。

Cosminexus DABroker Libraryのメモリ所要量の計算式を次に示します。

メモリ所要量＝128＋データベース同時接続数
×〔386＋A×｛20＋B＋定義列数×2＋C×2＋D×E＋F×（G＋H）｝〕＋I

（凡例）

A：並列に使用しているカーソル数

並列に使用しているカーソル数は，一つのConnectionオブジェクトから派生して，同時に使用するStatementインスタンス数，PreparedStatementインスタンス数，CallableStatementインスタンス数，ResultSetインスタンス数の総和です。

B：bufSizeの値

JDBCを使用してデータベースに接続するときに指定するbufSizeの値です。

C：SQLのサイズ

SQLのサイズは，KB（キロバイト）単位に切り上げて算出してください。

D：?パラメタのサイズ

?パラメタのサイズは，一つのSQL文に指定する，?パラメタのデータ長の総和です。?パラメタに指定する列属性ごとのデータ長を次の表に示します。

表G-1　パラメタ長一覧（ネイティブライブラリ内）

データベース種別
列属性
データ長（バイト）
備考

HiRDB
INTEGER
12
－

SMALLINT
8
－

LARGE DECIMAL(m, n)
↓（M/2）↓＋7

Mは指定した値の精度を表します。

4バイト単位で切り上げます。

FLOAT，DOUBLE PRECISION
16
－

SMALLFLT, REAL
12
－

CHAR(n)，MCHAR(n)，NCHAR(n)，VARCHAR(n)，MVARCHAR(n)，NVARCHAR(n)
指定した実データ長+8
4バイト単位で切り上げます。

DATE
16
－

TIME
16
－

TIMESTAMP(p)
p=0，p=2の場合：28
p=4，p=6の場合：32
－

BINARY(n)，BLOB(n)
指定した実データ長＋4
－

ORACLE，Oracle8i
FLOAT
56
－

DATE
64
－

その他のデータ型
指定した実データ長＋54
4バイト単位で切り上げます。

E：配列更新の配列数

配列更新の配列数は，HiRDBの「配列を使用したINSERT機能」，「配列を使用したUPDATE機能」，または「配列を使用したDELETE機能」を使用する場合はaddBatchメソッドの実行回数，そのほかの場合は1となります。

F：検索データのサイズ

検索データのサイズは，検索する列のデータ長の総和（1行分）です。

ただし，接続するデータベースがOracleであり，CLOB，NCLOB，BLOB，BFILE，LONG LAW，LONGのどれかの列を一つ以上含む検索の場合，検索データのサイズはほかの列に関係なく，bufSizeの値となります。

列属性ごとのデータ長を次の表に示します。

表G-2　検索する列のデータ長一覧（ネイティブライブラリ内）

データベース種別
列属性
データ長（バイト）
備考

HiRDB
INTEGER
4
－

SMALLINT
2
－

LARGE DECIMAL(m, n)
m＋2
－

FLOAT，DOUBLE PRECISION
8
－

SMALLFLT，REAL
4
－

CHAR(n)，MCHAR(n)
n＋1
－

NCHAR(n)
n×2＋1
－

VARCHAR(n)，MVARCHAR(n)
n＋2
－

NVARCHAR(n)
n×2＋2
－

DATE
11
－

TIME
9
－

TIMESTAMP(p)

p=0の場合：20

p=0以外の場合：21+p

－

BINARY(n)，BLOB(n)
HiRDBの位置付け子機能を使用する場合
12
－

HiRDBの位置付け子機能を使用しない場合
（nとbufSizeの値を比較してより小さい方の値）＋8
bufSizeの値とは，JDBCを使用してデータベースに接続するときに指定するbufSizeの値です。

ORACLE，Oracle8i
NUMBER
44
－

VARCHAR2(n)，CHAR(n)，VARCHAR2(n)，NCHAR(n)
n＋1
－

MLSLABEL(n)，RAW(n)
n
－

ROWID
9
－

FLOAT
8
－

DATE
20
－

G：FETCHサイズ

FETCHサイズは，Statement，またはResultSetクラスのsetFetchSizeメソッドの指定値です。ただし，指定値が0，または指定を省略した場合は，次のようになります。

指定値が0または指定を省略した場合のFETCHサイズ＝64KB/検索データのサイズ
計算の結果0になる場合は，1に繰り上げられます。

H：データベース用データ領域

データベース用データ領域は，接続データベースがHiRDBの場合は0，そのほかのデータベースの場合は1となります。

I：JDBCのメモリサイズ

JDBCのメモリサイズは，次の値です。

JDBCのメモリサイズ＝（Connectionオブジェクトサイズ
＋Statementオブジェクトサイズ
＋ResultSetオブジェクトサイズ
＋PreparedStatementオブジェクトサイズ
＋CallableStatementオブジェクトサイズ
＋?パラメタの実データサイズ
＋検索データのトータルサイズ
＋SQLサイズ
＋bufSizeの値によるデータサイズ
＋トレースサイズ）/1,024

なお，それぞれのサイズの計算式については，「付録G.1　JDBCのメモリサイズの計算式に使用するデータのサイズ」を参照してください。

＜この節の構成＞

付録G.1　JDBCのメモリサイズの計算式に使用するデータのサイズ

付録G.1　JDBCのメモリサイズの計算式に使用するデータのサイズ

JDBCのメモリサイズの計算式に使用するデータのサイズについて，(1)から(10)で説明します。

＜この項の構成＞

(1)　Connectionオブジェクトサイズ

(2)　Statementオブジェクトサイズ

(3)　ResultSetオブジェクトサイズ

(4)　PreparedStatementオブジェクトサイズ

(5)　CallableStatementオブジェクトサイズ

(6)　?パラメタの実データサイズ

(7)　検索データのトータルサイズ

(8)　SQLサイズ

(9)　bufSizeの値によるデータサイズ

(10)　トレースサイズ

(1)　Connectionオブジェクトサイズ

Connection オブジェクトサイズ（単位バイト）の計算式を次に示します。

Connectionオブジェクトサイズ＝1223500※¹＋（80364※¹＋bufSizeの値※²×1024）×Connectionインスタンス数※³

注

Connectionオブジェクトサイズとして，次のどちらかのタイミングで「bufSizeに指定した値 × 生成したコネクション数分のメモリ」をJavaヒープ領域に確保します。

コネクションプールのウォーミングアップ機能使用時

初回getConnection()発行時

bufSizeに必要以上に大きな値を設定すると，Connectionオブジェクトサイズ分のメモリを確保したときにJavaヒープを使い切り，OutOfMemoryErrorが発生するおそれがあります。

HiRDBのBLOB型データやBINARY型データへアクセスする場合は，bufSizeに大きな値を指定しないで，HiRDBの位置付け子機能を使用することを検討してください。HiRDBの位置付け子機能については，マニュアル「HiRDB 解説」を参照してください。

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

bufSizeのデフォルト値は64です。

注※3

Connectionインスタンス数とは，同時接続数のことです。

(2)　Statementオブジェクトサイズ

Statementオブジェクトサイズ（単位バイト）の計算式を次に示します。

Statementオブジェクトサイズ＝1000※¹＋1400※¹×Statementインスタンス数※²

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

Statementインスタンス数とは，システム全体で同時に使用するStatement数です。システム全体でStatementオブジェクトを使用しないときは0になります。

(3)　ResultSetオブジェクトサイズ

ResultSetオブジェクトサイズは，接続先のデータベースがOracle8i以降で，BLOB，CLOBの列属性がある表を検索した場合と，それ以外の処理を実行した場合で異なります。それぞれの場合の，ResultSetオブジェクトサイズ（単位バイト）の計算式を次に示します。

接続先のデータベースがOracle8i以降で，BLOB，CLOBの列属性がある表を検索した場合
ResultSetオブジェクトサイズ＝
2400※¹＋｛3400※¹＋MIN（ROW_SIZEの値※²×1024×1024, BLOBおよびCLOBの実データ長）×2｝×ResultSetインスタンス数※³

1.以外の処理を実行した場合
ResultSetオブジェクトサイズ＝2400※¹＋3400※¹×ResultSetインスタンス数※³

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

デフォルト値は16です。

注※3

ResultSetインスタンス数とは，システム全体で同時に使用するResultSet数です。システム全体で，検索SQLを実行しない，またはResultSetオブジェクトを生成しないときは0になります。

(4)　PreparedStatementオブジェクトサイズ

PreparedStatementオブジェクトサイズ（単位バイト）の計算式を次に示します。

PreparedStatementオブジェクトサイズ＝

79900※¹＋4700※¹×PreparedStatementインスタンス数※²

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

PreparedStatementインスタンス数とは，全体で同時に使用するPreparedStatement数です。システム全体でPreparedStatementオブジェクトを使用しないときは0になります。

(5)　CallableStatementオブジェクトサイズ

CallableStatementオブジェクトサイズ（単位バイト）の計算式を次に示します。

CallableStatementオブジェクトサイズ＝

65000※¹＋4700※¹×CallableStatementインスタンス数※²

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

CallableStatementインスタンス数とは，全体で同時に使用するCallableStatement数です。システム全体でCallableStatementオブジェクトを使用しないときは0になります。

(6)　?パラメタの実データサイズ

?パラメタの実データサイズ（単位バイト）の計算式を次に示します。

?パラメタの実データサイズ＝

9000※¹＋180※¹×?パラメタ数※²＋?パラメタのトータル長※²

注※1

オブジェクトを構成する大きさであり，実行するプラットフォームおよびJDKのバージョンにより若干値が異なる場合があります。

注※2

?パラメタ数と?パラメタのトータル長は，システム全体で同時に指定する，?パラメタ数と?パラメタのトータル長です。?パラメタのトータル長は，実データの長さの総和です。?パラメタに指定する列属性ごとの実データ長を次の表に示します。

表G-3　パラメタ長一覧（JDBC内）

データベース種別 | 列属性 | データ長（バイト）
HiRDB | INTEGER | 4
SMALLINT | 2
LARGE DECIMAL(m, n) | ↓（m/2）↓+1
FLOATまたはDOUBLE PRECISION | 8
SMALLFLTまたはREAL | 4
上記以外 | 指定した実データ長
ORACLE，Oracle8i | NUMBER | 指定した実データを数値文字列で表現したときの実際の長さ
FLOAT | 8
上記以外 | 指定した実データ長

(7)　検索データのトータルサイズ

検索データのトータルサイズ（単位バイト）は，実際のレコード長＋4×（取得する列数＋1）を1件のレコード長とし，検索した件数の総和になります。実際のレコード長は列属性ごとの実際のデータ長の総和です。

なお，検索データのトータルサイズは，ResultSetのタイプがスクロール可能のときだけ必要です。それ以外は0になります。

列属性ごとの実際のデータ長を次の表に示します。

表G-4　検索する列のデータ長一覧（JDBC内）

データベース種別 | 列属性 | データ長（バイト）
HiRDB | INTEGER | 4
SMALLINT | 2
LARGE DECIMAL(m, n) | ↓(m/2)↓+1
FLOATまたはDOUBLE PRECISION | 8
SMALLFLTまたはREAL | 4
上記以外 | データベースに格納している実データ長
ORACLE，Oracle8i | NUMBER | データベースに格納している実データを数値文字列で表現したときの実際の長さ
FLOAT | 8
上記以外 | データベースに格納している実データ長

(8)　SQLサイズ

実際のSQLのサイズがbufSizeの値×1024バイト以上のときだけ必要です。それ以外は0になります。なお，bufSizeのデフォルト値は64です。

(9)　bufSizeの値によるデータサイズ

bufSizeの値によるデータサイズ（単位バイト）の計算式を次に示します。なお，計算式は，受信バッファプール数指定機能の使用の有無によって異なります。

受信バッファプール数指定機能を使用しない場合
データサイズ＝bufSizeの値※×1024
×（同一コネクション内に存在する，検索SQL以外を実行するStatementインスタンス数
＋同一コネクション内に存在する，検索SQL以外を実行するPreparedStatementインスタンス数
＋同一コネクション内に存在する，CallableStatementインスタンス数
＋同一コネクション内に存在する，ResultSetインスタンス数）

受信バッファプール数指定機能を使用する場合
データサイズ＝bufSizeの値※×1024
×（同一コネクション内で同時に使用する，検索SQL以外を実行するStatementインスタンス数
＋同一コネクション内で同時に使用する，検索SQL以外を実行するPreparedStatementインスタンス数
＋同一コネクション内で同時に使用する，CallableStatementインスタンス数
＋同一コネクション内で同時に存在する，ResultSetインスタンス数）

注※　bufSizeのデフォルト値は64です。

(10)　トレースサイズ

トレースサイズの計算式（単位バイト）を次に示します。

トレースサイズ＝2048×メモリ情報取得量

メモリ情報取得量とは，環境変数DAB_ONMEMNUMの値です。デフォルト値は1000です。

付録H　各バージョンでの主な機能変更

ここでは，08-70よりも前のアプリケーションサーバの各バージョンでの主な機能の変更について，変更目的ごとに説明します。08-70での主な機能変更については，「1.4　アプリケーションサーバ 08-70での主な機能変更」を参照してください。

説明内容は次のとおりです。

アプリケーションサーバの各バージョンで変更になった主な機能と，その概要を説明しています。機能の詳細については「参照先マニュアル」の「参照個所」の記述を確認してください。「参照先マニュアル」および「参照個所」には，その機能についての主な記載個所を記載しています。

「参照先マニュアル」に示したマニュアル名の「Cosminexus アプリケーションサーバ V8」は省略しています。

＜この節の構成＞

付録H.1　08-53での主な機能変更

付録H.2　08-50での主な機能変更

付録H.3　08-00での主な機能変更

付録H.1　08-53での主な機能変更

＜この項の構成＞

(1)　導入・構築の容易性強化

(2)　標準機能・既存機能への対応

(3)　信頼性の維持・向上

(4)　運用性の維持・向上

(5)　そのほかの目的

(1)　導入・構築の容易性強化

導入・構築の容易性強化を目的として変更された項目を次の表に示します。

表H-1　導入・構築の容易性強化を目的とした変更

項目
変更の概要
参照先マニュアル
参照個所

さまざまなハイパーバイザに対応した仮想化環境の構築
さまざまなハイパーバイザを使用して実現する仮想サーバ上に，アプリケーションサーバを構築できるようになりました。
また，複数のハイパーバイザが混在する環境にも対応しました。
仮想化システム構築・運用ガイド
2章，3章，5章

(2)　標準機能・既存機能への対応

標準機能・既存機能への対応を目的として変更された項目を次の表に示します。

表H-2　標準機能・既存機能への対応を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
トランザクション連携に対応したOpenTP1からの呼び出し | OpenTP1からアプリケーションサーバ上で動作するMessage-driven Beanを呼び出すときに，トランザクション連携ができるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 4章
JavaMail | POP3に準拠したメールサーバと連携して，JavaMail 1.3に準拠したAPIを使用したメール受信機能を利用できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 8章

(3)　信頼性の維持・向上

信頼性の維持・向上を目的として変更された項目を次の表に示します。

表H-3　信頼性の維持・向上を目的とした変更

項目
変更の概要
参照先マニュアル
参照個所

JavaVMのトラブルシュート機能強化
JavaVMのトラブルシュート機能として，次の機能が使用できるようになりました。

OutOfMemoryError発生時の動作を変更できるようになりました。

JITコンパイル時に，Cヒープ確保量の上限値を設定できるようになりました。

スレッド数の上限値を設定できるようになりました。

拡張verbosegc情報の出力項目を拡張しました。

このマニュアル
4章，5章，8章

(4)　運用性の維持・向上

運用性の維持・向上を目的として変更された項目を次の表に示します。

表H-4　運用性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
JP1/ITRMへの対応 | ITリソースを一元管理する製品であるJP1/ITRMに対応しました。 | 仮想化システム構築・運用ガイド | 1.3，2.1

(5)　そのほかの目的

そのほかの目的で変更された項目を次の表に示します。

表H-5　そのほかの目的による変更

項目
変更の概要
参照先マニュアル
参照個所

Microsoft IIS 7.0およびMicrosoft IIS 7.5への対応
WebサーバとしてMicrosoft IIS 7.0およびMicrosoft IIS 7.5に対応しました。
－
－

HiRDB Version 9およびSQL Server 2008への対応
データベースとして次の製品に対応しました。

HiRDB Server Version 9

HiRDB/Developer's Kit Version 9

HiRDB/Run Time Version 9

SQL Server 2008

また，SQL Server 2008に対応するJDBCドライバとして，SQL Server JDBC Driverに対応しました。
機能解説 基本・開発編(コンテナ共通機能)
3章

（凡例）－：該当なし。

付録H.2　08-50での主な機能変更

＜この項の構成＞

(1)　導入・構築の容易性強化

(2)　標準機能・既存機能への対応

(3)　信頼性の維持・向上

(4)　運用性の維持・向上

(5)　そのほかの目的

(1)　導入・構築の容易性強化

導入・構築の容易性強化を目的として変更された項目を次の表に示します。

表H-6　導入・構築の容易性強化を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
Webサービスプロバイダ側でのweb.xmlの指定必須タグの変更 | Webサービスプロバイダ側でのweb.xmlで，listenerタグ，servletタグおよびservlet-mappingタグの指定を必須から任意に変更しました。 | リファレンス 定義編(サーバ定義) | 2.4
論理サーバのネットワークリソース使用 | J2EEアプリケーションからほかのホスト上にあるネットワークリソースやネットワークドライブにアクセスするための機能を追加しました。 | 機能解説 運用／監視／連携編 | 1.2.3，5.2，5.8
サンプルプログラムの実行手順の簡略化 | 一部のサンプルプログラムをEAR形式で提供することによって，サンプルプログラムの実行手順を簡略化しました。 | ファーストステップガイド | 3.4.1
システム構築・運用ガイド | 付録F
運用管理ポータルの画面の動作の改善 | 画面の更新間隔のデフォルトを「更新しない」から「3秒」に変更しました。 | 運用管理ポータル操作ガイド | 7.4.1
セットアップウィザードの完了画面の改善 | セットアップウィザード完了時の画面に，セットアップで使用した簡易構築定義ファイルおよびConnector属性ファイルが表示されるようになりました。 | システム構築・運用ガイド | 2.2.12，3.3
仮想化環境の構築 | ハイパーバイザを使用して実現する仮想サーバ上に，アプリケーションサーバを構築する手順を追加しました。※ | 仮想化システム構築・運用ガイド | 3章，5章

注※

08-50モードで構築する場合は，マニュアル「Cosminexus アプリケーションサーバ 仮想化システム構築・運用ガイド」の「付録D　08-50モードの仮想サーバマネージャを利用する場合の設定」を参照してください。

(2)　標準機能・既存機能への対応

標準機能・既存機能への対応を目的として変更された項目を次の表に示します。

表H-7　標準機能・既存機能への対応を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
OpenTP1からの呼び出しへの対応 | OpenTP1からアプリケーションサーバ上で動作するMessage-driven Beanを呼び出せるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 4章
JMSへの対応 | JMS1.1仕様に対応したCosminexus JMSプロバイダ機能を使用できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 7章
Java SE 6への対応 | Java SE 6の機能が使用できるようになりました。 | このマニュアル | 5.5，5.8.1
ジェネリクスの使用への対応 | EJBでジェネリクスを使用できるようになりました。 | 機能解説 基本・開発編(EJBコンテナ) | 4.2.17

(3)　信頼性の維持・向上

信頼性の維持・向上を目的として変更された項目を次の表に示します。

表H-8　信頼性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
明示管理ヒープ機能の使用性向上 | 自動配置設定ファイルを使用して，明示管理ヒープ機能を容易に使用できるようになりました。 | システム設計ガイド | 7.1.1，7.6.3，7.10.5，7.11.1
機能解説 拡張編 | 8章
データベースセッションフェイルオーバ機能のURI単位での抑止 | データベースセッションフェイルオーバ機能を使用する場合に，機能の対象外にするリクエストをURI単位で指定できるようになりました。 | 機能解説 拡張編 | 6.6
仮想化環境での障害監視 | 仮想化システムで，仮想サーバを監視し，障害の発生を検知できるようになりました。 | 仮想化システム構築・運用ガイド | 付録D

(4)　運用性の維持・向上

運用性の維持・向上を目的として変更された項目を次の表に示します。

表H-9　運用性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
管理ユーザアカウントの省略 | 運用管理ポータル，Management Serverのコマンド，またはSmart Composer機能のコマンドで，ユーザのログインIDおよびパスワードの入力を省略できるようになりました。 | システム構築・運用ガイド | 7.6.1，7.6.2，7.6.5
運用管理ポータル操作ガイド | 2.2，7.1.1，7.1.2，7.1.3，8.1，8.2.1，付録G.2
リファレンス コマンド編 | 1.4，mngsvrctl（Management Serverの起動／停止／セットアップ），mngsvrutil（Management Serverの運用管理コマンド），8.3，cmx_admin_passwd（Management Serverの管理ユーザアカウントの設定）
仮想化環境の運用 | 仮想化システムで，複数の仮想サーバを対象にした一括起動・一括停止，スケールイン・スケールアウトなどを実行する手順を追加しました。※ | 仮想化システム構築・運用ガイド | 4章，6章

注※

08-50モードで運用する場合は，マニュアル「Cosminexus アプリケーションサーバ 仮想化システム構築・運用ガイド」の「付録D　08-50モードの仮想サーバマネージャを利用する場合の設定」を参照してください。

(5)　そのほかの目的

そのほかの目的で変更された項目を次の表に示します。

表H-10　そのほかの目的による変更

項目
変更の概要
参照先マニュアル
参照個所

Tenured領域内不要オブジェクト統計機能
Tenured領域内で不要となったオブジェクトだけを特定できるようになりました。
このマニュアル
8.8

Tenured増加要因の基点オブジェクトリスト出力機能
Tenured領域内不要オブジェクト統計機能を使って特定した，不要オブジェクトの基点となるオブジェクトの情報を出力できるようになりました。
8.9

クラス別統計情報解析機能
クラス別統計情報をCSV形式で出力できるようになりました。
8.10

論理サーバの自動再起動回数オーバー検知によるクラスタ系切り替え
Management Serverを系切り替えの監視対象としているクラスタ構成の場合，論理サーバが異常停止状態(自動再起動回数をオーバーした状態，または自動再起動回数の設定が0のときに障害を検知した状態)になったタイミングでの系切り替えができるようになりました。
機能解説 運用／監視／連携編
20.4.3，20.5.3，
22.2.2，
22.3.3，22.3.4

ホスト単位管理モデルを対象とした系切り替えシステム
クラスタソフトウェアと連携したシステム運用で，ホスト単位管理モデルを対象にした系切り替えができるようになりました。
22章

ACOS（AX2000，BS320）のサポート
使用できる負荷分散機の種類にACOS（AX2000，BS320）が追加になりました。
システム構築・運用ガイド
4.3.1，8.2，8.3，8.11.6，付録A，付録A.2

リファレンス 定義編(サーバ定義)
4.5，4.6.2，4.6.4，4.6.5，4.6.6，4.10.1

CMTでトランザクション管理をする場合にStateful Session Bean（SessionSynchronization）に指定できるトランザクション属性の追加
CMTでトランザクション管理をする場合に，Stateful Session Bean（SessionSynchronization）にトランザクション属性としてSupports，NotSupportedおよびNeverを指定できるようになりました。
機能解説 基本・開発編(EJBコンテナ)
2.7.3

OutOfMemoryError発生時の運用管理エージェントの強制終了
JavaVMでOutOfMemoryErrorが発生したときに，運用管理エージェントが強制終了するようになりました。
このマニュアル
2.5.7

スレッドの非同期並行処理
TimerManagerおよびWorkManagerを使用して，非同期タイマ処理および非同期スレッド処理を実現できるようになりました。
機能解説 拡張編
13章

付録H.3　08-00での主な機能変更

＜この項の構成＞

(1)　開発生産性の向上

(2)　標準機能への対応

(3)　信頼性の維持・向上

(4)　運用性の維持・向上

(5)　そのほかの目的

(1)　開発生産性の向上

開発生産性の向上を目的として変更された項目を次の表に示します。

表H-11　開発生産性の向上を目的とした変更

項目
変更の概要
参照先マニュアル
参照個所

ほかのアプリケーションサーバ製品からの移行容易化
ほかのアプリケーションサーバ製品からの移行を円滑に実施するため，次の機能を使用できるようになりました。

HTTPセッションの上限が例外で判定できるようになりました。

JavaBeansのIDが重複している場合や，カスタムタグの属性名とTLDの定義で大文字・小文字が異なる場合に，トランスレーションエラーが発生することを抑止できるようになりました。

機能解説 基本・開発編(Webコンテナ)
2.3，2.7.5

cosminexus.xmlの提供
Cosminexus アプリケーションサーバ独自の属性をcosminexus.xmlに記載することによって，J2EEアプリケーションをJ2EEサーバにインポート後，プロパティの設定をしないで開始できるようになりました。
機能解説 基本・開発編(コンテナ共通機能)
10.3

(2)　標準機能への対応

標準機能への対応を目的として変更された項目を次の表に示します。

表H-12　標準機能への対応を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
Servlet 2.5への対応 | Servlet 2.5に対応しました。 | 機能解説 基本・開発編(Webコンテナ) | 2.2，2.5.4，2.6，5章
JSP 2.1への対応 | JSP 2.1に対応しました。 | 機能解説 基本・開発編(Webコンテナ) | 2.3.1，2.3.3，2.5，2.6，5章
JSPデバッグ | MyEclipseを使用した開発環境でJSPデバッグができるようになりました。 | 機能解説 基本・開発編(Webコンテナ) | 2.4
タグライブラリのライブラリJARへの格納とTLDのマッピング | タグライブラリをライブラリJARに格納した場合に，Webアプリケーション開始時にWebコンテナによってライブラリJAR内のTLDファイルを検索し，自動的にマッピングできるようになりました。 | 機能解説 基本・開発編(Webコンテナ) | 2.3.4
application.xmlの省略 | J2EEアプリケーションでapplication.xmlが省略できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 10.4
アノテーションとDDの併用 | アノテーションとDDを併用できるようになり，アノテーションで指定した内容をDDで更新できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 11.5
アノテーションのJava EE 5標準準拠（デフォルトインターセプタ） | デフォルトインターセプタをライブラリJARに格納できるようになりました。また，デフォルトインターセプタからDIできるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 10.4
@Resourceの参照解決 | @Resourceでリソースの参照解決ができるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 11.4
JPAへの対応 | JPA仕様に対応しました。 | 機能解説 基本・開発編(コンテナ共通機能) | 5章，6章

(3)　信頼性の維持・向上

信頼性の維持・向上を目的として変更された項目を次の表に示します。

表H-13　信頼性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
セッション情報の永続化 | HTTPセッションのセッション情報をデータベースに保存して引き継げるようになりました。 | 機能解説 拡張編 | 5章，6章
フルガーベージコレクションの抑止 | フルガーベージコレクションの要因となるオブジェクトをJavaヒープ外に配置することで，フルガーベージコレクション発生を抑止できるようになりました。 | 機能解説 拡張編 | 8章
クライアント性能モニタ | クライアント処理に掛かった時間を調査・分析できるようになりました。 | 機能解説 拡張編 | 9章

(4)　運用性の維持・向上

運用性の維持・向上を目的として変更された項目を次の表に示します。

表H-14　運用性の維持・向上を目的とした変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
運用管理ポータルでのアプリケーション操作性向上 | アプリケーションおよびリソースの操作について，サーバ管理コマンドと運用管理ポータルの相互運用ができるようになりました。 | 運用管理ポータル操作ガイド | 1.1.4

(5)　そのほかの目的

そのほかの目的で変更された項目を次の表に示します。

表H-15　そのほかの目的による変更

項目 | 変更の概要 | 参照先マニュアル | 参照個所
無効なHTTP Cookieの削除 | 無効なHTTP Cookieを削除できるようになりました。 | 機能解説 基本・開発編(Webコンテナ) | 2.7.4
ネーミングサービスの障害検知 | ネーミングサービスの障害が発生した場合に，EJBクライアントが，より早くエラーを検知できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 2.7
コネクション障害検知タイムアウト | コネクション障害検知タイムアウトのタイムアウト時間を指定できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 3.15.1
Oracle11gへの対応 | データベースとしてOracle11gが使用できるようになりました。 | 機能解説 基本・開発編(コンテナ共通機能) | 3章
バッチ処理のスケジューリング | バッチアプリケーションの実行をCTMによってスケジューリングできるようになりました。 | 機能解説 拡張編 | 4章
バッチ処理のログ | バッチ実行コマンドのログファイルのサイズ，面数，ログの排他処理失敗時でのリトライ回数とリトライ間隔を指定できるようになりました。 | リファレンス 定義編(サーバ定義) | 3.6
snapshotログ | snapshotログの収集内容が変更されました。 | このマニュアル | 付録A.1，付録A.2
メソッドキャンセルの保護区公開 | メソッドキャンセルの対象外となる保護区リストの内容を公開しました。 | 機能解説 運用／監視／連携編 | 付録C
統計前のガーベージコレクション選択機能 | クラス別統計情報を出力する前に，ガーベージコレクションを実行するかどうかを選択できるようになりました。 | このマニュアル | 8.7
Survivor領域の年齢分布情報出力機能 | Survivor領域のJavaオブジェクトの年齢分布情報を日立JavaVMログファイルに出力できるようになりました。 | このマニュアル | 8.11
ファイナライズ滞留解消機能 | JavaVMのファイナライズ処理の状態を監視して，処理の滞留を解消できるようになりました。 | このマニュアル | 8.12
サーバ管理コマンドの最大ヒープサイズの変更 | サーバ管理コマンドが使用する最大ヒープサイズが変更されました。 | リファレンス 定義編(サーバ定義) | 5.2，5.3
推奨しない表示名を指定された場合の対応 | J2EEアプリケーションで推奨しない表示名を指定された場合にメッセージが出力されるようになりました。 | メッセージ 2 | KDJE42374-W

付録I　このマニュアルの参考情報

このマニュアルを読むに当たっての参考情報を示します。

＜この節の構成＞

付録I.1　関連マニュアル

付録I.2　マニュアル体系の変更について

付録I.3　このマニュアルでの表記

付録I.4　英略語

付録I.5　KB（キロバイト）などの単位表記について

付録I.1　関連マニュアル

アプリケーションサーバのマニュアルについて次に示します。

Cosminexus アプリケーションサーバ V8 概説（3020-3-U01）
アプリケーションサーバの概要について説明しています。

Cosminexus アプリケーションサーバ V8 ファーストステップガイド（3020-3-U02）
Application ServerまたはDeveloperを使用して，サンプルプログラムを動かすためのシステムを構築する手順について説明しています。

Cosminexus アプリケーションサーバ V8 システム設計ガイド（3020-3-U03）
システム設計時に，システムの目的に応じたシステム構成や運用方法を検討するための指針について説明しています。また，チューニングの方法についても説明しています。

Cosminexus アプリケーションサーバ V8 システム構築・運用ガイド（3020-3-U04）
セットアップウィザードおよびSmart Composer機能を使用したシステムの構築・運用の手順について説明しています。

Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(Webコンテナ)（3020-3-U05）
アプリケーションサーバで提供するWebコンテナの機能，およびWebコンテナに関連する機能（Webサーバ，サーブレット／JSPなど）について説明しています。

Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(EJBコンテナ)（3020-3-U06）
アプリケーションサーバで提供するEJBコンテナの機能，およびEJBコンテナに関連する機能（EJB，EJBクライアントなど）について説明しています。

Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(コンテナ共通機能)（3020-3-U07）
WebコンテナおよびEJBコンテナで共通して利用する機能について説明しています。

Cosminexus アプリケーションサーバ V8 機能解説 拡張編（3020-3-U08）
アプリケーションサーバで提供する拡張機能（セッションフェイルオーバ機能，バッチサーバ，CTMなど）について説明しています。

Cosminexus アプリケーションサーバ V8 機能解説 運用／監視／連携編（3020-3-U09）
アプリケーションサーバで提供する運用・監視機能，およびほかのプログラムとの連携について説明しています。

Cosminexus アプリケーションサーバ V8 アプリケーション設定操作ガイド（3020-3-U12）
アプリケーションサーバで動作するアプリケーションの操作方法について説明しています。

Cosminexus アプリケーションサーバ V8 運用管理ポータル操作ガイド（3020-3-U13）
運用管理ポータルの使用方法について説明しています。

Cosminexus アプリケーションサーバ V8 リファレンス コマンド編（3020-3-U14）
アプリケーションサーバを構築・運用するときに使用するコマンドについて説明しています。

Cosminexus アプリケーションサーバ V8 リファレンス 定義編(サーバ定義)（3020-3-U15）
アプリケーションサーバを構築・運用するとき，またはアプリケーションを開発するときに，使用するファイルのうち，J2EEサーバやManagement Serverなどのサーバの定義に使用するファイルの形式について説明しています。

Cosminexus アプリケーションサーバ V8 リファレンス 定義編(アプリケーション／リソース定義)（3020-3-U16）
アプリケーションサーバを構築・運用するとき，またはアプリケーションを開発するときに使用するファイルのうち，アプリケーションやリソースの属性設定に使用するファイルの形式について説明しています。

Cosminexus アプリケーションサーバ V8 仮想化システム構築・運用ガイド（3020-3-U18）
アプリケーションサーバを仮想化したサーバ上に構築する場合の設計，構築，運用の手順について説明しています。

Cosminexus アプリケーションサーバ V8 アプリケーション開発ガイド（3020-3-U25）
アプリケーションサーバで動作させるアプリケーションの開発方法について説明しています。

Cosminexus アプリケーションサーバ V8 リファレンス API編（3020-3-U26）
アプリケーションを開発するときに使用するAPIの形式について説明しています。

Cosminexus アプリケーションサーバ V8 メッセージ 1 KDAL-KDCGおよびHitachi Web Server編（3020-3-U41）
アプリケーションサーバで出力されるKDALからKDCGまでのメッセージ，およびHitachi Web Serverのメッセージについて説明しています。

Cosminexus アプリケーションサーバ V8 メッセージ 2 KDJE-KDJW編（3020-3-U42）
アプリケーションサーバで出力されるKDJEからKDJWまでのメッセージについて説明しています。

Cosminexus アプリケーションサーバ V8 メッセージ 3 KECX-KEDT／KEOS02000-29999／KEUC-KFRM編（3020-3-U43）
アプリケーションサーバで出力されるKECXからKEDTまでのメッセージ，KEOS02000からKEOS29999までのメッセージ，およびKEUCからKFRMまでのメッセージについて説明しています。

Cosminexus アプリケーションサーバ V8 メッセージ 4 監査ログ編（3020-3-U44）
アプリケーションサーバで出力される監査ログメッセージについて説明しています。

また，このマニュアルと関連するこのほかのマニュアルを次に示します。必要に応じてお読みください。

Hitachi Web Server（3020-3-U17）

TPBroker Version 5 トランザクショナル分散オブジェクト基盤TPBroker ユーザーズガイド（3020-3-U19）

Cosminexus アプリケーションサーバ V8 Cosminexus Reliable Messaging（3020-3-U21）

Cosminexus アプリケーションサーバ V8 SOAPアプリケーション開発の手引（3020-3-U30）

Cosminexus アプリケーションサーバ V8 Webサービスセキュリティ　使用の手引（3020-3-U32）

DABroker for C++（3020-6-032）

スケーラブルデータベースサーバ HiRDB Version 7 解説（UNIX(R)用）（3000-6-271）

スケーラブルデータベースサーバ HiRDB Version 7 システム導入・設計ガイド（UNIX(R)用）（3000-6-272）

スケーラブルデータベースサーバ HiRDB Version 7 システム定義（UNIX(R)用）（3000-6-273）

スケーラブルデータベースサーバ HiRDB Version 7 コマンドリファレンス（UNIX(R)用）（3000-6-275）

スケーラブルデータベースサーバ HiRDB Version 7 UAP開発ガイド（UNIX(R)/Windows(R)用）（3000-6-276）

スケーラブルデータベースサーバ HiRDB Version 7 SQLリファレンス（UNIX(R)/Windows(R)用）（3000-6-277）

スケーラブルデータベースサーバ HiRDB Version 8 解説（UNIX(R)用）（3000-6-351）

スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド（UNIX(R)用）（3000-6-352）

スケーラブルデータベースサーバ HiRDB Version 8 システム定義（UNIX(R)用）（3000-6-353）

スケーラブルデータベースサーバ HiRDB Version 8 コマンドリファレンス（UNIX(R)用）（3000-6-355）

HiRDB Version 9 解説（UNIX(R)用）（3000-6-451）

HiRDB Version 9 システム導入・設計ガイド（UNIX(R)用）（3000-6-452）

HiRDB Version 9 システム定義（UNIX(R)用）（3000-6-453）

HiRDB Version 9 コマンドリファレンス（UNIX(R)用）（3000-6-455）

スケーラブルデータベースサーバ HiRDB Version 7 解説（Windows(R)用）（3020-6-271）

スケーラブルデータベースサーバ HiRDB Version 7 システム導入・設計ガイド（Windows(R)用）（3020-6-272）

スケーラブルデータベースサーバ HiRDB Version 7 システム定義（Windows(R)用）（3020-6-273）

スケーラブルデータベースサーバ HiRDB Version 7 コマンドリファレンス（Windows(R)用）（3020-6-275）

スケーラブルデータベースサーバ HiRDB Version 7 UAP開発ガイド（Windows(R)用）（3020-6-276）

スケーラブルデータベースサーバ HiRDB Version 7 SQLリファレンス（Windows(R)用）（3020-6-277）

スケーラブルデータベースサーバ HiRDB Version 8 解説（Windows(R)用）（3020-6-351）

スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド（Windows(R)用）（3020-6-352）

スケーラブルデータベースサーバ HiRDB Version 8 システム定義（Windows(R)用）（3020-6-353）

スケーラブルデータベースサーバ HiRDB Version 8 コマンドリファレンス（Windows(R)用）（3020-6-355）

スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド（3020-6-356）

スケーラブルデータベースサーバ HiRDB Version 8 SQLリファレンス（3020-6-357）

HiRDB Version 9 解説（Windows(R)用）（3020-6-451）

HiRDB Version 9 システム導入・設計ガイド（Windows(R)用）（3020-6-452）

HiRDB Version 9 システム定義（Windows(R)用）（3020-6-453）

HiRDB Version 9 コマンドリファレンス（Windows(R)用）（3020-6-455）

HiRDB Version 9 UAP開発ガイド（3020-6-456）

HiRDB Version 9 SQLリファレンス（3020-6-457）

JP1 Version 8 JP1/Base 運用ガイド（3020-3-K06）

JP1 Version 8 JP1/Automatic Job Management System 2 操作ガイド（3020-3-K24）

JP1 Version 9 JP1/Base 運用ガイド（3020-3-R71）

JP1 Version 9 JP1/Automatic Job Management System 3 操作ガイド（3020-3-S09）

このマニュアルは，利用目的に合わせて章を選択して読むことができます。利用目的別にお読みいただくことをお勧めします。

なお，このマニュアルでは，次のマニュアルについて，対象OSおよびバージョン番号を省略して表記しています。マニュアルの正式名称とこのマニュアルでの表記を次の表に示します。

正式名称 | このマニュアルでの表記
Cosminexus アプリケーションサーバ V8 概説 | Cosminexus アプリケーションサーバ 概説
Cosminexus アプリケーションサーバ V8 システム設計ガイド | Cosminexus アプリケーションサーバ システム設計ガイド
Cosminexus アプリケーションサーバ V8 システム構築・運用ガイド | Cosminexus アプリケーションサーバ システム構築・運用ガイド
Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(Webコンテナ) | Cosminexus アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)
Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(EJBコンテナ) | Cosminexus アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)
Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(コンテナ共通機能) | Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
Cosminexus アプリケーションサーバ V8 機能解説 拡張編 | Cosminexus アプリケーションサーバ 機能解説 拡張編
Cosminexus アプリケーションサーバ V8 機能解説 運用／監視／連携編 | Cosminexus アプリケーションサーバ 機能解説 運用／監視／連携編
Cosminexus アプリケーションサーバ V8 アプリケーション設定操作ガイド | Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド
Cosminexus アプリケーションサーバ V8 運用管理ポータル操作ガイド | Cosminexus アプリケーションサーバ 運用管理ポータル操作ガイド
Cosminexus アプリケーションサーバ V8 リファレンス コマンド編 | Cosminexus アプリケーションサーバ リファレンス コマンド編
Cosminexus アプリケーションサーバ V8 リファレンス 定義編(サーバ定義) | Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)
Cosminexus アプリケーションサーバ V8 リファレンス 定義編(アプリケーション／リソース定義) | Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション／リソース定義)
Cosminexus アプリケーションサーバ V8 仮想化システム構築・運用ガイド | Cosminexus アプリケーションサーバ 仮想化システム構築・運用ガイド
Cosminexus アプリケーションサーバ V8 Cosminexus Reliable Messaging | Cosminexus Reliable Messaging
Cosminexus アプリケーションサーバ V8 アプリケーション開発ガイド | Cosminexus アプリケーションサーバ アプリケーション開発ガイド
Cosminexus アプリケーションサーバ V8 リファレンス API編 | Cosminexus アプリケーションサーバ リファレンス API編
Cosminexus アプリケーションサーバ V8 メッセージ 1 KDAL-KDCGおよびHitachi Web Server編 | Cosminexus アプリケーションサーバ メッセージ 1
Cosminexus アプリケーションサーバ V8 メッセージ 2 KDJE-KDJW編 | Cosminexus アプリケーションサーバ メッセージ 2
Cosminexus アプリケーションサーバ V8 メッセージ 3 KECX-KEDT／KEOS02000-29999／KEUC-KFRM編 | Cosminexus アプリケーションサーバ メッセージ 3
Cosminexus アプリケーションサーバ V8 メッセージ 4 監査ログ編 | Cosminexus アプリケーションサーバ メッセージ 4
TPBroker Version 5 トランザクショナル分散オブジェクト基盤TPBroker ユーザーズガイド | TPBroker ユーザーズガイド
Cosminexus アプリケーションサーバ V8 SOAPアプリケーション開発の手引 | Cosminexus アプリケーションサーバ SOAPアプリケーション開発の手引
Cosminexus アプリケーションサーバ V8 Webサービスセキュリティ　使用の手引 | Cosminexus アプリケーションサーバ Webサービスセキュリティ　使用の手引
HiRDB Version 9 解説（UNIX(R)用） | HiRDB 解説
HiRDB Version 9 解説（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 解説（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 解説（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 解説（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 解説（Windows(R)用）
HiRDB Version 9 システム導入・設計ガイド（UNIX(R)用） | HiRDB システム導入・設計ガイド
HiRDB Version 9 システム導入・設計ガイド（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド（Windows(R)用）
HiRDB Version 9 システム定義（UNIX(R)用） | HiRDB システム定義
HiRDB Version 9 システム定義（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 システム定義（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 システム定義（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 システム導入・設計ガイド（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 システム導入・設計ガイド（Windows(R)用）
HiRDB Version 9 コマンドリファレンス（UNIX(R)用） | HiRDB コマンドリファレンス
HiRDB Version 9 コマンドリファレンス（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 コマンドリファレンス（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 8 コマンドリファレンス（Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 コマンドリファレンス（UNIX(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 コマンドリファレンス（Windows(R)用）
HiRDB Version 9 UAP開発ガイド | HiRDB UAP開発ガイド
スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
スケーラブルデータベースサーバ HiRDB Version 7 UAP開発ガイド（UNIX(R)/Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 UAP開発ガイド（Windows(R)用）
HiRDB Version 9 SQLリファレンス | HiRDB SQLリファレンス
スケーラブルデータベースサーバ HiRDB Version 8 SQLリファレンス
スケーラブルデータベースサーバ HiRDB Version 7 SQLリファレンス（UNIX(R)/Windows(R)用）
スケーラブルデータベースサーバ HiRDB Version 7 SQLリファレンス（Windows(R)用）
JP1 Version 8 JP1/Base 運用ガイド | JP1/Base 運用ガイド
JP1 Version 9 JP1/Base 運用ガイド
JP1 Version 8 JP1/Automatic Job Management System 2 操作ガイド | JP1/Automatic Job Management System 操作ガイド
JP1 Version 9 JP1/Automatic Job Management System 3 操作ガイド

付録I.2　マニュアル体系の変更について

08-00では，07-60のマニュアル「Cosminexus　機能解説」，マニュアル「Cosminexus　システム構築ガイド」およびマニュアル「Cosminexus　システム運用ガイド」の内容を6分冊して，マニュアル体系を変更しました。変更後のマニュアル体系については，「1.1　機能の分類」を参照してください。

付録I.3　このマニュアルでの表記

このマニュアルで使用している表記と，対応する製品名を次に示します。

表記 | 製品名
ACOS | AX2000 | AX2000
AX2500 | AX2500
BS320 | BS320ロードバランサブレード
Application Server | Application Server Enterprise | uCosminexus Application Server Enterprise
Application Server Standard | uCosminexus Application Server Standard
BIG-IP | BIG-IP v10.1 | BIG-IP ソフトウェアバージョン 10.1.0以降
BIG-IP v10.2 | BIG-IP ソフトウェアバージョン 10.2.0以降
BIG-IP v9 | BIG-IP ソフトウェアバージョン 9.1.0以降
Developer | Developer Professional | uCosminexus Developer Professional
Developer Standard | uCosminexus Developer Standard
Eclipse | Eclipse 3.6.1
HiRDBまたはHiRDBサーバ | HiRDB Server | HiRDB Server Version 9
HiRDB/Parallel Server | HiRDB/Parallel Server Version 7
HiRDB/Parallel Server Version 8
HiRDB/Single Server | HiRDB/Single Server Version 7
HiRDB/Single Server Version 8
HiRDB Run TimeまたはHiRDBクライアント | HiRDB/Developer's Kit Version 8
HiRDB/Developer's Kit Version 9
HiRDB/Run Time Version 7
HiRDB/Run Time Version 8
HiRDB/Run Time Version 9
IPF | Itanium(R) Processor Family
JP1/AJS | JP1/AJS - Agent | JP1/Automatic Job Management System 2 - Agent※
JP1/Automatic Job Management System 3 - Agent
JP1/AJS - Manager | JP1/Automatic Job Management System 2 - Manager※
JP1/Automatic Job Management System 3 - Manager
JP1/AJS - View | JP1/Automatic Job Management System 2 - View※
JP1/Automatic Job Management System 3 - View
JP1/AJS2 - SO | JP1/AJS2 - SO Manager | JP1/Automatic Job Management System 2 - Scenario Operation Manager
JP1/AJS2 - SO View | JP1/Automatic Job Management System 2 - Scenario Operation View
JP1/IM | JP1/IM - CM | JP1/Integrated Management - Central Information Master
JP1/IM - Manager | JP1/Integrated Management - Manager
JP1/IM - View | JP1/Integrated Management - View
JP1/ITRM | JP1/ITRM - Manager | JP1/IT Resource Management - Manager
JP1/NETM/Audit | JP1/NETM/Audit - Manager
Oracle | Oracle10g | Oracle 10g
Oracle 10g R2
Oracle Database 10g
Oracle11g | Oracle Database 11g
Oracle Database 11g R2
Oracle9i | Oracle9i
Oracle9i R2
UNIX | AIX | AIX 5L V5.3
AIX V6.1
AIX V7.1
HP-UXまたはHP-UX（IPF） | HP-UX 11i V2（IPF）
HP-UX 11i V3（IPF）
Linux | Linux（IPF） | Red Hat Enterprise Linux(R) AS 4（IPF）
Red Hat Enterprise Linux(R) 5 Advanced Platform（Intel Itanium）
Red Hat Enterprise Linux(R) 5（Intel Itanium）
Linux（x86/AMD64 & Intel EM64T） | Red Hat Enterprise Linux AS 4（x86）
Red Hat Enterprise Linux ES 4（x86）
Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux 5 Advanced Platform（x86）
Red Hat Enterprise Linux 5（x86）
Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）
Red Hat Enterprise Linux 5（AMD/Intel 64）
Red Hat Enterprise Linux Server 6（32-bit x86）
Red Hat Enterprise Linux Server 6（64-bit x86_64）
Solaris | Solaris 10（SPARC）
Solaris 10（x64）
Solaris 9（SPARC）
VMware | VMware ESX | VMware(R) ESX
VMware Tools | VMware(R) Tools
VMware vCenter Server | VMware(R) vCenter Server
VMware vSphere Client | VMware(R) vSphere Client
Web Redirector | uCosminexus Web Redirector
XDM/RD E2 | VOS3 XDM/RD E2

注※　総称して，JP1/AJS2と表記することがあります。

なお，Application ServerおよびDeveloperを総称して，アプリケーションサーバと表記します。

また，Linuxに関しては，バージョンごとに次のように表記することがあります。

表記 | OS名
Red Hat Enterprise Linux 4 | Red Hat Enterprise Linux(R) AS 4（IPF）
Red Hat Enterprise Linux(R) AS 4（x86）
Red Hat Enterprise Linux(R) ES 4（x86）
Red Hat Enterprise Linux(R) AS 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux(R) ES 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux 5 | Red Hat Enterprise Linux(R) 5 Advanced Platform（Intel Itanium）
Red Hat Enterprise Linux(R) 5（Intel Itanium）
Red Hat Enterprise Linux(R) 5 Advanced Platform（x86）
Red Hat Enterprise Linux(R) 5（x86）
Red Hat Enterprise Linux(R) 5 Advanced Platform（AMD/Intel 64）
Red Hat Enterprise Linux(R) 5（AMD/Intel 64）
Red Hat Enterprise Linux Server 6 | Red Hat Enterprise Linux Server 6（32-bit x86）
Red Hat Enterprise Linux Server 6（64-bit x86_64）

このマニュアルで使用している表記と，対応するアプリケーションサーバの機能名を次に示します。

表記 | アプリケーションサーバの機能名
CJMSPブローカー | Cosminexus JMSプロバイダのブローカー機能
CJMSPリソースアダプタ | Cosminexus JMSプロバイダのリソースアダプタ
Cosminexus Developer's Kit for Java | Cosminexus Developer's Kit for JavaTM
Cosminexus RM | Cosminexus Reliable Messaging
CSC | Cosminexus Service Coordinator
CTM | Cosminexus Component Transaction Monitor
Management Server | Cosminexus Management Server
MyEclipse | MyEclipse for Cosminexus
PRF | Cosminexus Performance Tracer
Smart Composer | Cosminexus Smart Composer

このマニュアルで使用している表記と，対応するJava関連用語を次に示します。

表記 | Java関連用語
Connector 1.0 | J2EETM Connector Architecture 1.0
Connector 1.5 | J2EETM Connector Architecture 1.5
DI | Dependency Injection
EAR | Enterprise ARchive
EJBまたはEnterprise JavaBeans | Enterprise JavaBeansTM
J2EEまたはJava 2 Platform, Enterprise Edition | J2EETM
JavaTM 2 Platform, Enterprise Edition
J2SE | JavaTM 2 Platform, Standard Edition
JAAS | JavaTM Authentication and Authorization Service
JAR | JavaTM Archive
Java | JavaTM
Java 2 Runtime Environment, Standard Edition | JavaTM 2 Runtime Environment, Standard Edition
Java 2 SDK, Standard Edition | JavaTM 2 Software Development Kit, Standard Edition
JavaBeans | JavaBeansTM
Java EEまたはJava Platform, Enterprise Edition | JavaTM Platform, Enterprise Edition
JavaMail | JavaMailTM
Java SE | JavaTM Platform, Standard Edition
JavaVM | JavaTM Virtual Machine
JCA | J2EETM Connector Architecture
JDBC | JDBCTM
JavaTM Database Connectivity
JDK | JDKTM
JavaTM Development Kit
JMS | JavaTM Message Service
JNDI | Java Naming and Directory InterfaceTM
JNI | JavaTM Native Interface
JSP | JSPTM
JavaServer PagesTM
JTA | JavaTM Transaction API
JTS | JavaTM Transaction Service
Servletまたはサーブレット | JavaTM Servlet
WAR | Web ARchive

付録I.4　英略語

このマニュアルで使用している英略語を次に示します。

英略語 | 英字での表記
ACOS | Advanced Core Operating System
API | Application Programming Interface
ASCII | American Standard Code for Information Interchange
BMP | Bean-Managed Persistence
BMT | Bean-Managed Transaction
CMP | Container-Managed Persistence
CMR | Container-Managed Relationship
CMT | Container-Managed Transaction
CORBA | Common Object Request Broker Architecture
CSV | Comma Separated Value
CUI | Character User Interface
DB | Database
DBMS | Database Management System
DD | Deployment Descriptor
DMZ | Demilitarized Zone
DN | Distinguished Name
EIS | Enterprise Information System
EL | Expression Language
GUI | Graphical User Interface
HTML | Hyper Text Markup Language
HTTP | Hyper Text Transfer Protocol
HTTPS | Hyper Text Transfer Protocol Security
IDE | Integrated Development Environment
IIOP | Internet Inter-Orb Protocol
JVMPI | Java Virtual Machine Profiler Interface
JVMTI | Java Virtual Machine Tool Interface
MHP | Message Handling Program
MIB | Management Information Base
OS | Operating System
OTM | Object Transaction Monitor
OTS | Object Transaction Service
POP3 | Post Office Protocol - Version 3
RAC | Real Application Clusters
RDB | Relational Database
RMI | Remote Method Invocation
SFO | Session Fail Over
SNMP | Simple Network Management Protocol
SPP | Service Providing Program
SUP | Service Using Program
SSL | Secure Sockets Layer
URL | Uniform Resource Locator
VM | Virtual Machine
XML | Extensible Markup Language

付録I.5　KB（キロバイト）などの単位表記について

1KB（キロバイト），1MB（メガバイト），1GB（ギガバイト），1TB（テラバイト）はそれぞれ1,024バイト，1,024²バイト，1,024³バイト，1,024⁴バイトです。

付録J　用語解説

アプリケーションサーバで使用する用語について説明します。

（数字）

1.4モード

サーバの動作モードです。J2EE 1.4以降の機能を使用できます。データベースを含む複数のリソースのトランザクション管理ができます。

1:1系切り替えシステム

実行系のアプリケーションサーバと待機系のアプリケーションサーバが1:1で対応しているシステムです。実行系のアプリケーションサーバに障害が発生すると，待機系のアプリケーションサーバで処理を引き継ぎます。

（英字）

Application Server

アプリケーションサーバの実行環境を構築する基盤製品です。Application Server Standardと，Application Server Enterpriseの総称です。

Cosminexus Component Container

サーバ・サイドの業務処理プログラム（ビジネスロジック）をコンポーネントとして実行するための構成ソフトウェアです。また，アプリケーションサーバの運用管理をするためのManagement Server，統合ユーザ管理，snapshotログ収集などの機能も提供しています。

Cosminexus Component Transaction Monitor

クライアントからのリクエストのスケジューリングを実現するための構成ソフトウェアです。

Cosminexus JMSプロバイダ

アプリケーションサーバで提供しているJMSプロバイダです。JMS1.1仕様に基づいた機能を提供しています。CJMSPブローカーとCJMSPリソースアダプタによって構成されています。

Cosminexus Performance Tracer

リクエストが処理されるときに，決められたポイントごとに各機能が出力する性能解析情報をファイルに出力するための構成ソフトウェアです。

Cosminexus アプリケーションサーバ

アプリケーションサーバを中核とした，性能および信頼性の高いアプリケーションを実行および開発するためのシステム構築基盤製品です。

CTM

Cosminexus Component Transaction Monitorのことです。リクエストのスケジューリングをするための構成ソフトウェアです。

DB Connector

データベースに接続するためのリソースアダプタです。

DD

アプリケーションを運用環境に配置するときの定義情報を記述したものです。

Dependency Injection

EJBやインターセプタクラスのフィールドやsetterメソッドに，EJBやResourceアノテーションを指定することで，EJBやリソースへの参照をEJBコンテナが自動的にセットする機能です。Dependency Injectionを使用すると，EJBやリソースへの参照をJNDIを使用してルックアップする必要がなくなります。

EJBクライアント

J2EEサーバ上で開始されているEnterprise Beanを呼び出すクライアントプログラムです。次の3種類があります。

EJBクライアントアプリケーション

サーブレットまたはJSPなどのWebアプリケーション

ほかのEnterprise Bean

EJBクライアントアプリケーション

Enterprise Beanを呼び出すJavaアプリケーションです。

EJBコンテナ

Enterprise Beanを制御する実行環境です。また，通信，トランザクション管理などのシステムレベルのサービスも提供します。Enterprise Beanの実体は，EJBコンテナの中で実行されます。

J2EEアプリケーション

JSP，サーブレット，EnterpriseBeanなどで構成されるアプリケーションです。アプリケーションサーバで扱うJ2EEアプリケーションの形式には，EARファイル形式でパッケージ化されたアーカイブ形式のアプリケーションと，アーカイブ化しない展開ディレクトリ形式のアプリケーションがあります。EARファイル形式でパッケージ化されたアプリケーションの場合，複数のEJB-JARファイル，複数のWARファイル，および一つのDDから構成されます。

J2EEサーバ

J2EEコンテナを生成，実行する環境です。

J2EEサーバモード

J2EEサーバの動作モードの一つです。このモードの場合，J2EEコンテナ上で動作するアプリケーションから，J2EE関連のAPIを利用できます。なお，J2EEサーバモードには，1.4モードと，互換用の動作モードであるベーシックモードがあります。

JCAコンテナ

J2EEサーバやバッチサーバと，EISを接続するためのシステムレベルのプラグイン機能を提供するコンテナです。

JNDI（Java Naming and Directory Interface）

Javaプラットフォーム用の標準拡張機能で，Java テクノロジに対応したアプリケーションに，企業内の複数のネーミングおよびディレクトリサービスへの統一したインタフェースを提供します。

アプリケーションサーバでは，Cosminexus TPBrokerのCORBAネーミングサービスを利用して，JNDIの機能を実現しています。

JP1

日立の統合システム運用管理ソフトウェアです。

Management Server

運用管理ドメインを構成するサーバプログラムです。運用管理ドメイン単位に一つ配置します。

Management Serverは運用管理ドメイン内の各ホストに配置した運用管理エージェントに指示を出して，運用管理ドメイン全体の運用管理を実行します。

N:1リカバリシステム

クラスタ構成の実行系のアプリケーションサーバに対して，1台のリカバリ専用サーバを待機系として配置したシステムです。リカバリ専用サーバでは，障害が発生した実行系のアプリケーションサーバのトランザクションの決着をします。

ORBゲートウェイ

CORBAクライアントからJ2EEサーバ内で動作しているEJBアプリケーションを直接呼び出しできるゲートウェイ機能です。CTMレギュレータプロセスによって提供されます。

OTMゲートウェイ

TPBroker OTMのクライアントからJ2EEサーバ内で動作しているEJBアプリケーションを直接呼び出しできるゲートウェイ機能です。OTMゲートウェイプロセスによって提供されます。

OTS（Object Transaction Service）

1.4モードで，TPBroker OTSによる分散トランザクションを使用するために必要なサービスです。

PRFデーモン

バッファに出力されたPRFトレースをPRFトレースファイルに出力するIOプロセスです。

Management Serverでは，論理サーバとして扱えます。Management Serverで扱う場合は，パフォーマンストレーサといいます。

PRFトレース

リクエストを処理する時にアプリケーションサーバの各機能で出力されたトレース情報です。バッファに出力されて，一定量たまったらPRFトレースファイルに出力されます。

PRFトレース出力ライブラリ

アプリケーションサーバで構築したシステムの各機能に組み込まれているライブラリです。機能レイヤごとのPRFトレースをバッファに出力する機能を提供しています。

PRFトレース取得レベル

PRFトレースを取得するレベルです。「標準レベル」，「詳細レベル」，「保守レベル」があります。「詳細レベル」または「保守レベル」を指定した場合，「標準レベル」に比べてトレース取得ポイントが多くなります。

PRFトレースファイル

PRFトレースを出力したバイナリ形式のファイルです。性能解析トレースファイル（CSV形式）に変換する基になるファイルです。

SFOサーバ

システム内のJ2EEサーバのJ2EEアプリケーション内で生成されたグローバルセッション情報を管理するJ2EEサーバです。セッションフェイルオーバ機能を使用するときにシステム構成に含めます。

snapshotログ

ある時点でのJ2EEサーバやバッチサーバの状態が出力されたログファイルです。

トラブルシューティングに必要な情報が自動的に出力されます。

Management Serverを利用している場合は，次のタイミングで出力されます。

論理サーバに異常が発生した時

運用管理ポータルまたは運用管理コマンドによってsnapshotログの収集を要求した時

Management Serverを利用していない場合は，コマンド（snapshotlog）を実行した時に出力されます。このコマンドで出力できるのは，そのコマンドを実行したホストの情報だけです。

TP1インバウンドアダプタ

TP1インバウンド連携機能で使用するリソースアダプタです。Connector 1.5仕様に準拠しています。

TP1インバウンド連携機能

TP1インバウンドアダプタを使用して，OpenTP1システムのSUPからアプリケーションサーバ上のMessage-driven BeanをInboundで呼び出す機能です。

Webアプリケーション

Webブラウザを備えたクライアントを対象に作成されたアプリケーションです。具体的には，サーブレットプログラム，JSPファイル，HTML/XMLドキュメントなどの集合体です。

Webコンテナ

Webアプリケーションを制御する実行環境です。また，セキュリティ，トランザクションなどの各種サービスも提供します。Webアプリケーションは，Webコンテナ上で動作します。

Java Servlet2.5仕様，およびJavaServer Pages Specification v2.1仕様に準拠したWebアプリケーションを実行できます。

Webコンテナサーバ

サーブレットエンジンモードで動作するサーバを指します。

Webサーバ

Webブラウザからのリクエスト受信およびWebブラウザへのデータ送信に関連する処理を実行するプログラムです。アプリケーションサーバでは，Hitachi Web Server，Microsoft IIS，またはインプロセスHTTPサーバを使用できます。インプロセスHTTPサーバは，J2EEサーバプロセス内で動作するWebサーバです。

なお，Management Serverを利用する場合，Hitachi Web Serverは論理サーバとして扱えます。

Webサーバ連携

アプリケーションサーバで使用するWebサーバとして，Hitachi Web ServerまたはMicrosoft IISを使用する方法です。

Hitachi Web ServerまたはMicrosoft IISにCosminexus Component Containerが提供するリダイレクタモジュールを組み込んで使用します。

（ア行）

アウトプロセス

プロセスの起動のしかたです。アウトプロセスで起動させると，J2EEサーバのプロセス外で実行します。アウトプロセスでネーミングサービスを使用する場合，CORBAネーミングサービスはユーザが起動する必要があります。

アプリケーションサーバ

情報システムの中間に位置し，ユーザの要求（プレゼンテーション層）とデータベースなどの業務システム（データ層）の処理を橋渡しするためのアプリケーション層を構築するためのミドルウェアです。

インプロセス

プロセスの起動のしかたです。インプロセスで起動させると，J2EEサーバのプロセス内で実行するように最適化されるので，パフォーマンスの高いシステムが実現できます。ネーミングサービス，トランザクションサービスおよびHTTPサーバ機能をインプロセスで起動できます。このとき，CORBAネーミングサービス，インプロセスOTSおよびインプロセスHTTPサーバは，J2EEサーバ起動時に自動で起動されます。

インプロセスHTTPサーバ

J2EEサーバのインプロセスで動作するWebサーバ機能です。Webコンテナの機能の一部として提供されます。

運用監視エージェント

ホスト上で動作する論理サーバの稼働状況を監視して，稼働情報を収集するエージェントプログラムです。

運用管理エージェント

運用管理者の代わりに，それぞれのホスト上の論理サーバを起動したり，設定ファイルを更新したりするエージェントプログラムです。

（カ行）

監査ログ

システム構築者やシステム運用者がアプリケーションサーバのプログラムに対して実行した操作，およびその操作に伴うプログラムの動作の履歴が出力されるファイルです。監査者が監査ログを調査することで，「いつ」「だれが」「何をしたか」を知ることができて，システムの運用が法規制，セキュリティ評価基準，または業界ごとの各種の基準に準拠していることを証明できます。

機能レイヤ

性能解析トレース収集をする場合に，PRFトレースを出力する機能の層です。EJBクライアント，リダイレクタ，Webコンテナ，CTM，EJBコンテナ，JNDI，JTA，JCA/JDBCなどがあります。

クライアントアプリケーション情報

性能解析トレースに出力される情報です。次に示すEnterprise Beanを呼び出す単位で設定される情報です。

WebコンテナからEJBコンテナの呼び出し

EJBクライアントからEJBコンテナの呼び出し

EJBコンテナからEJBコンテナの呼び出し

（サ行）

サーバ管理コマンド

サーバで管理しているアプリケーションおよびリソースの設定をするためのコマンド群です。

サーブレットエンジンモード

サーバの動作モードの一つです。Webコンテナ部分だけを使用して，サーブレットエンジンを単独で動作させます。Enterprise Beanは動作しません。

サーブレットエンジンとは，サーブレット実行機能およびJSP実行機能を持つサーバのことです。

なお，サーブレットエンジンモードは互換用の動作モードとなります。

スマートエージェント

1.4モードでグローバルトランザクションを使用する場合，またはCTMを使用する場合に，動的な分散ディレクトリサービスを提供するプロセスです。

Management Serverを利用する場合，スマートエージェントは論理サーバとして扱えます。CTMはスマートエージェントによって管理されます。

なお，グローバルトランザクションの場合でも，インプロセストランザクションサービスを利用するときは，スマートエージェントは不要です。

スレッドの非同期並行処理

Java EE環境で非同期タイマ処理や非同期スレッド処理などのスレッドの非同期並行処理を実現する機能です。Cosminexusのアプリケーションサーバでは，CommonJが定めたTimer and Work Manager for Application Serversの仕様に基づいたAPIを提供しています。これによって，TimerManagerを使用した非同期タイマ処理およびWorkManagerを使用した非同期スレッド処理ができます。

性能解析トレース

アプリケーションサーバで構築したシステムの性能を解析するためのトレース情報です。

性能解析トレースファイル

アプリケーションサーバで構築したシステムの性能を解析するためのトレース情報をCSV形式で編集出力したテキストファイルです。

セッションフェイルオーバ機能

J2EEアプリケーション実行中のHttpSessionオブジェクトに登録されたオブジェクトをセッション情報として管理し，J2EEサーバで障害が発生した場合には，管理しているセッション情報をほかのJ2EEサーバに引き渡す機能です。J2EEサーバで障害が発生し，ほかのJ2EEサーバにリクエストが転送された場合でも，障害発生前の状態で業務を続行できます。

セッションフェイルオーバ機能には，メモリセッションフェイルオーバ機能とデータベースセッションフェイルオーバ機能の2種類があります。メモリセッションフェイルオーバ機能の場合，セッション情報をSFOサーバで管理します。データベースセッションフェイルオーバ機能の場合，セッション情報をデータベースで管理します。

（タ行）

通常モード

J2EEアプリケーションの動作モードです。通常モードは，本番稼働するJ2EEアプリケーションを動作させるためのモードです。

データソース

JDBCを使用してデータベースに接続する機能です。

動作モード

サーバの動作モードです。J2EEサーバモードとサーブレットエンジンモードがあります。J2EEサーバモードには，さらに，1.4モード，ベーシックモードがあります。

ただし，ベーシックモードおよびサーブレットエンジンモードは旧バージョンとの互換用の動作モードとなります。

トレース取得ポイント

アプリケーションサーバで構築したシステムの各機能レイヤでPRFトレースを出力するポイントのことです。PRFトレース取得レベルの指定によって，トレース取得ポイントの数は異なります。

（ハ行）

バッチサーバ

バッチアプリケーションを実行するためのサーバです。バッチアプリケーションの実行機能のほかに，バッチアプリケーションからデータベースに接続したり，EJBにアクセスしたりする機能も提供しています。

パフォーマンストレーサ

PRFデーモンのことです。

Management Serverでは，パフォーマンストレーサを論理サーバとして扱えます。

ベーシックモード

旧バージョンとの互換性を確保するためのサーバの動作モードの一つです。

単一リソースとのトランザクション管理ができます。

（マ行）

明示管理ヒープ機能

Javaオブジェクトの配置先として，Explicitヒープを使用する機能です。ExplicitヒープはJavaヒープ外にある，フルガーベージコレクションの対象にならない領域です。明示管理ヒープ機能を使用することによって，フルガーベージコレクションの発生を抑止できます。

面数

ログファイルを保持する数です。ログファイルは面数分作成され，循環して使用されます。

（ヤ行）

ユーザログ

J2EEアプリケーション，バッチアプリケーション，またはEJBクライアントアプリケーションが出力するログのことです。

（ラ行）

リソースアダプタ

J2EE Connector Architectureによって，J2EEサーバまたはバッチサーバと，EISを接続するための接続機能です。

アプリケーションサーバで構築したシステムでは，データベースに接続するためのリソースアダプタであるDB ConnectorおよびDB Connector for Cosminexus RMを提供しています。また，OpenTP1のSPPと接続するためのリソースアダプタであるuCosminexus TP1 Connector，TP1/Message Queueと接続するためのリソースアダプタであるTP1/Message Queue - Access，データベース上に実現したキューに接続するためのリソースアダプタであるCosminexus RMも使用できます。

リソースマネジャ

リソースを管理する機能です。DBMSなどが該当します。

リダイレクタ

Webサーバに登録しWebコンテナへの接続を可能にするプラグインコンポーネント（ライブラリ）です。Webサーバに登録したリダイレクタによって，リクエストをURLパターンまたはラウンドロビン方式で複数のWebコンテナに振り分けて処理できます。

ルートアプリケーション情報

性能解析トレースに出力される情報です。イベントで一連の処理の先頭になるプロセスで取得した情報です。

索引

[記号]
[数字]
[Ａ][Ｂ][Ｃ][Ｄ][Ｅ][Ｈ][Ｉ][Ｊ][Ｌ][Ｍ][Ｎ][Ｏ][Ｐ][Ｑ][Ｒ][Ｓ][Ｔ][Ｕ][Ｖ][Ｗ][Ｘ]
[ア行][カ行][サ行][タ行][ナ行][ハ行][マ行][ヤ行][ラ行][ワ行]

(記号)

-XX:+HitachiJavaClassLibTrace

-XX:+HitachiLocalsInThrowableオプションが指定されている場合

-XX:+HitachiOutOfMemoryStackTrace

-XX:+HitachiVerboseGC

(数字)

1.4モード

1:1系切り替えシステム

1:1系切り替えシステムでトラブルが発生した場合

(英字)

(Ａ)

add.library.path

Application Server

(Ｂ)

built-inフィルタ

built-inフィルタ

(Ｃ)

CallableStatementクラスでのバッチ更新

cjenvupdate

cjgetsysinfoコマンドの実行によって実行されるOSのコマンド

cjrarupdate

cjwebeditpool

cjwebsetup

com.cosminexus.manager.cmdtracelog.fnum

com.cosminexus.manager.cmdtracelog.size

com.cosminexus.manager.log.compatible

com.cosminexus.manager.log.dir

com.cosminexus.manager.messagelog.fnum

com.cosminexus.manager.messagelog.size

com.cosminexus.manager.tracelog.fnum

com.cosminexus.manager.tracelog.size

com.cosminexus.mngsvr.log.level

com.cosminexus.mngsvr.log.rotate

com.cosminexus.mngsvr.log.size

com.cosminexus.mngsvr.trace

Component Container管理者

CORBAネーミングサービスのスレッドダンプの取得

coreダンプ取得の設定

coreダンプの生成を示すメッセージの出力内容

Cosminexus Component Container

Cosminexus Component Transaction Monitor

Cosminexus Component Transaction Monitorのログ

Cosminexus Component Transaction Monitorのログの取得

Cosminexus DABroker Library運用ディレクトリ

Cosminexus DABroker Libraryで開発するアプリケーション

Cosminexus DABroker Libraryのイベントトレースの出力項目

Cosminexus DABroker Libraryの管理ユーザ

Cosminexus DABroker Libraryのスプール情報の内容

Cosminexus DABroker Libraryのセットアップ

Cosminexus DABroker Libraryのディレクトリ構成〔UNIXの場合〕

Cosminexus DABroker Libraryのディレクトリ構成〔Windowsの場合〕

Cosminexus DABroker Libraryの動作環境の設定

Cosminexus DABroker Libraryの動作環境の設定

Cosminexus DABroker Libraryのトレースファイル運用時の留意事項

Cosminexus DABroker Libraryのメモリ所要量

Cosminexus DABroker Libraryのログ取得の設定

Cosminexus DABroker Libraryのログの取得

Cosminexus JMSプロバイダ

Cosminexus JMSプロバイダのログ取得の設定

Cosminexus JPAプロバイダで出力するログ

Cosminexus JPAプロバイダの稼働ログ

Cosminexus JPAプロバイダのトレース取得ポイント

Cosminexus JPAプロバイダのログ

Cosminexus JPAプロバイダのログ

Cosminexus Managerのログ取得の設定

Cosminexus Performance Tracer

Cosminexus Performance Tracerのログ

Cosminexus Performance Tracerのログの出力先

Cosminexus Performance Tracerのログの取得

Cosminexus Performance Tracerのログの種類

Cosminexus TPBrokerのログ取得の設定

Cosminexus アプリケーションサーバ

CTM

CTMのトレース取得ポイント

Cヒープが不足した場合

Cヒープが不足した場合のメッセージログの出力項目

Cヒープ不足を示すメッセージログの出力内容

(Ｄ)

［DABroker動作環境設定］ダイアログ

DataSourceオブジェクトの生成

DB Connector

DB Connector，JCAコンテナのトレース取得ポイント

DB Connectorのコネクション操作のトレース取得ポイントと取得できるトレース情報

DD

Dependency Injection

DIのトレース取得ポイント

(Ｅ)

ejb.server.corefilenum

ejb.server.log.directory

ejb.server.log.directory

ejb.server.log.directory

ejbserver.connector.logwriter.filenum

ejbserver.connector.logwriter.filesize

ejbserver.jndi.cache

ejbserver.jndi.cache.interval

ejbserver.jndi.cache.interval.clear.option

ejbserver.jndi.request.timeout

ejbserver.logger.channels.define.<チャネル名>.filenum

ejbserver.logger.channels.define.<チャネル名>.filenum

ejbserver.logger.channels.define.<チャネル名>.filenum

ejbserver.logger.channels.define.<チャネル名>.filenum

ejbserver.logger.channels.define.<チャネル名>.filesize

ejbserver.logger.channels.define.<チャネル名>.filesize

ejbserver.logger.channels.define.<チャネル名>.filesize

ejbserver.logger.channels.define.<チャネル名>.filesize

ejbserver.logger.enabled.*

ejbserver.logger.enabled.*

ejbserver.logger.enabled.*

ejbserver.logger.enabled.*

ejbserver.rmi.request.timeout

ejbserver.server.j2ee.feature

EJBクライアント

EJBクライアントアプリケーション

EJBクライアントアプリケーションのシステムログ

EJBクライアントアプリケーションのシステムログに関する留意事項

EJBクライアントアプリケーションのシステムログの出力先

EJBクライアントアプリケーションのシステムログの種類

EJBクライアントアプリケーションのユーザログの取得

EJBクライアントアプリケーションのログの内容

EJBクライアントでトラブルが発生した場合

EJBコンテナ

EJBコンテナとの連携

EJBコンテナのトレース取得ポイント

EntityManagerFactoryの取得／解放処理のトレース取得ポイントと取得できるトレース情報

EntityManagerの解放処理のトレース取得ポイントと取得できるトレース情報

EntityManagerの取得処理のトレース取得ポイントと取得できるトレース情報

EntityManagerの操作のトレース取得ポイントと取得できるトレース情報

EntityTransactionの操作のトレース取得ポイントと取得できるトレース情報

Exceptionトレースログ

Exceptionトレースログ取得の設定

Exceptionトレースログとして出力される情報

Exceptionトレースログの出力項目

Exceptionトレースログのファイル

Explicitメモリブロックの自動解放処理

Explicitメモリブロックの自動解放処理時のJavaヒープあふれ

(Ｈ)

HiRDBの設定

HiRDBの場合のバッチ更新

hitachi_web.properties

hndlwrap機能

HttpsdCustomLogFileDir

HttpsdCustomlogFormat

HttpsdCustomMethod

HttpsdErrorLogFileDir

HttpsdErrorMethod

HttpsdRequestLogFileDir

HttpsdRequestMethod

HTTPセッションを作成するリクエスト処理のトレース取得ポイントと取得できるトレース情報

HWSLogTimeVerbose

HWSRequestLogLevel

(Ｉ)

Internal Errorが発生した場合

(Ｊ)

J2EEアプリケーション

J2EEアプリケーション運用のための設定

J2EEアプリケーション運用のための設定

J2EEアプリケーション実行時間監視で出力されるログ情報

J2EEアプリケーションの強制停止に失敗した場合

J2EEアプリケーションのユーザログ

J2EEサーバ

J2EEサーバ・リダイレクタ・サーバ管理コマンドのログの取得

J2EEサーバおよびリダイレクタのログ

J2EEサーバおよびリダイレクタのログ種別

J2EEサーバ起動時に出力されるログ情報

J2EEサーバの移行コマンドで自動的に追加／変更される定義

J2EEサーバの移行コマンドの実行

J2EEサーバの開始・終了時のトレース取得ポイント

J2EEサーバの作業ディレクトリのディスク容量の確認

J2EEサーバのスレッドダンプの取得

J2EEサーバのメモリダンプの取得

J2EEサーバのログ取得の設定

J2EEサーバまたはバッチサーバの作業ディレクトリの内容

J2EEサーバモード

J2EEサーバモードの場合の移行

javagcコマンド

javagcコマンド

javatrace起動コマンドのコマンドライン

JavaVMが異常終了した場合

JavaVMが出力するメッセージログ

JavaVMが出力するメッセージログの内容（標準出力およびエラーリポートファイル）

JavaVMスタックトレース情報の内容

JavaVMのガーベージコレクションログ

JavaVMのガーベージコレクションログの内容

JavaVMの資料取得の設定

JavaVMのスタックトレース情報

JavaVMのスレッドダンプ

JavaVMのスレッドダンプ取得の設定

JavaVMのスレッドダンプ取得の設定

JavaVMのスレッドダンプの内容

Javaヒープの使用状況

JCAコンテナ

JDBC2.0拡張機能で提供する機能のトレースを取得するための情報の指定

JDBC2.0拡張機能の概要

JDBC2.0拡張機能を使用したデータベース接続の設定

JDBC2.0の概要

JDBC SQLタイプの扱い

JDBCインタフェースメソッドのトレースの出力項目

JDBCドライバのトレース（Cosminexus DABroker Libraryとのイベントトレース）

JDBCドライバのトレース（JDBCインタフェースメソッドトレース）

JDBCドライバのトレース情報の取得

JDBCドライバのトレースファイル

JITコンパイル

JNDI

JNDIからの情報の取得

JNDIのトレース取得ポイント

JNDIへの情報の登録

JNDI連携

JP1

JP1/IMと連携したシステムでのトラブルへの対処

JP1と連携したシステムでトラブルが発生した場合

JPAアプリケーションでトラブルが発生した場合

JPAでのトレース取得ポイント

JSPコンパイル結果の出力先の設定〔サーブレットエンジンモード〕

JSPタグライブラリ

JSPファイル更新用インターバル

JSPファイル更新用インターバル

JSPファイルのコンパイル結果の保持

JSPファイルのコンパイル結果の保持

JSPファイルのコンパイル結果の保持の設定

JSPファイルの再コンパイル

JSPファイルの再コンパイルに関する設定項目と設定ファイル

JSP用一時ディレクトリのディレクトリ構成

JTAによるトランザクション実装時の注意事項

JTAのトレース取得ポイント

(Ｌ)

LogLevel

(Ｍ)

Management Server

Management Serverの移行コマンドの実行

Managementイベント発行ログ

Managementイベント発行ログ

Microsoft IISからHitachi Web Serverへの移行

(Ｎ)

N:1リカバリシステム

N:1リカバリシステムでトラブルが発生した場合

(Ｏ)

Oracleと接続する場合の注意事項

Oracleの設定

Oracleの場合のバッチ更新

ORBゲートウェイ

OSの状態情報およびOSのログの内容

OSの状態情報とOSのログ

OSの統計情報

OSの統計情報取得の設定

OSのログの取得

OTMゲートウェイ

OTS

OTSのトレース取得ポイント

OutOfMemoryError発生時に運用管理エージェントが強制終了した場合

(Ｐ)

PreparedStatementクラスでのバッチ更新

PrfTraceBufferSize

PrfTraceCount

PrfTraceFileSize

PrfTraceLevel

PRFデーモン

PRFデーモン

PRFデーモン

PRFトレース

PRFトレース出力ライブラリ

PRFトレース出力ライブラリ

PRFトレース取得レベル

PRFトレース取得レベル

PRFトレース取得レベル

PRFトレース取得レベル

PRFトレース取得レベル

PRFトレース取得レベル〔BMT〕

PRFトレース取得レベル〔CMT〕

PRFトレース取得レベル〔DB Connector〕

PRFトレース取得レベル〔DB Connector〕

PRFトレース取得レベル〔DB Connector for Cosminexus RM〕

PRFトレース取得レベル〔DI〕

PRFトレース取得レベル〔J2EEサーバ〕

PRFトレース取得レベル〔JNDI〕

PRFトレース取得レベル〔Message-driven Bean（EJB2.0）〕

PRFトレース取得レベル〔Message-driven Bean（EJB2.1以降）〕

PRFトレース取得レベル〔OTS〕

PRFトレース取得レベル〔RMI〕

PRFトレース取得レベル〔Session Bean・Entity Bean〕

PRFトレース取得レベル〔TP1インバウンド連携機能〕

PRFトレース取得レベル〔Webコンテナ〕

PRFトレース取得レベル〔Webコンテナ〕

PRFトレース取得レベル〔インプロセスHTTPサーバ〕

PRFトレース取得レベル〔コネクションアソシエーション〕

PRFトレース取得レベル〔コネクション自動クローズ時〕

PRFトレース取得レベル〔トランザクションタイムアウト〕

PRFトレース取得レベル〔バッチアプリケーション実行機能〕

PRFトレース取得レベル〔フィルタのトレース（正常に処理が終了した場合）〕

PRFトレース取得レベル〔フィルタのトレース（例外が発生した場合）〕

PRFトレース取得レベル〔メモリセッションフェイルオーバ機能〕

PRFトレース取得レベル〔ワーク管理〕

PRFトレースファイル

PRFトレースファイル

PRFトレースファイル

(Ｑ)

Queryの操作のトレース取得ポイントと取得できるトレース情報

(Ｒ)

ResultSetタイプ

ResultSetの拡張

RMI-IIOP通信のタイムアウト

RMIのトレース取得ポイント

(Ｓ)

SecurityManagerによるWebコンテナの実行時の保護

SFOサーバ

SFOサーバのログ取得の設定

siginfo情報（UNIXの場合）

snapshotlog.2.conf

snapshotlog.conf

snapshotログ

snapshotログ

snapshotログ

snapshotログ

snapshotログ収集の設定（J2EEアプリケーションを実行するシステム）

snapshotログ収集の設定（バッチアプリケーションを実行するシステム）

snapshotログ収集の流れ

snapshotログとして収集できる資料

snapshotログの収集

snapshotログの収集対象一覧

snapshotログの収集タイミング

Statementクラスでのバッチ更新

STATICメンバ統計機能

STATICメンバ統計機能で出力するクラス別統計情報

Survivor領域の年齢分布情報出力機能

Survivor領域の年齢分布情報出力機能使用時の注意事項

Survivor領域の年齢分布情報出力機能の概要

Survivor領域の年齢分布情報の出力形式と出力例

syslog

syslog

syslogの出力形式と出力項目（UNIXの場合）

(Ｔ)

Tenured増加要因の基点オブジェクトリスト出力機能

Tenured領域内不要オブジェクト統計機能

Tenured領域内不要オブジェクト統計機能で出力するクラス別統計情報

Tenured領域内不要オブジェクト統計機能の概要

Tenured領域内不要オブジェクト統計機能の実行に関する注意事項

TP1インバウンドアダプタ

TP1インバウンド連携機能

TP1インバウンド連携機能のトレース取得ポイント

(Ｕ)

uatags.jar

uatags.tld

usrconf.cfg

usrconf.properties

USRCONF_JVM_ARGS

(Ｖ)

vbroker.orb.htc.comt.entryCount

vbroker.orb.htc.comt.entryCount

vbroker.orb.htc.comt.fileCount

vbroker.orb.htc.comt.fileCount

vbroker.orb.htc.tracePath

vbroker.orb.htc.tracePath

vbroker.orb.htc.tracePath

VMの状態

(Ｗ)

web.add.class.path

web.policy

web.server.log.directory

web.server.log.directory

web.server.log.directory

web.xml

web-users.xml

webserver.connector.ajp13.max_threads

webserver.connector.ajp13.receive_timeout

webserver.connector.http.enabled

webserver.connector.http.permitted.hosts

webserver.connector.redirect_https.port

webserver.logger.access_log.<フォーマット名>

webserver.logger.access_log.format_list

webserver.logger.access_log.inprocess_http.enabled

webserver.logger.access_log.inprocess_http.filename

webserver.logger.access_log.inprocess_http.filenum

webserver.logger.access_log.inprocess_http.filesize

webserver.logger.access_log.inprocess_http.usage_format

webserver.logger.communication_trace.inprocess_http.filenum

webserver.logger.thread_trace.inprocess_http.filenum

webserver.work.clean

webserver.work.directory

Webアプリケーション

Webアプリケーションに組み込むサーブレットフィルタ〔サーブレットエンジンモード〕

Webアプリケーションのアンデプロイ

Webアプリケーションのアンデプロイ〔サーブレットエンジンモード〕

Webアプリケーションの更新検知とリロード

Webアプリケーションの実行

Webアプリケーションのディレクトリ構成

Webアプリケーションのデプロイ

Webアプリケーションのデプロイ

Webアプリケーションのデプロイと設定〔サーブレットエンジンモード〕

Webアプリケーションのユーザログ出力

Webアプリケーションのユーザログ出力の設定

Webアプリケーションのリロード

Webアプリケーションのリロード〔サーブレットエンジンモード〕

Webアプリケーションのリロードの条件

Webクライアント構成の例

Webコンテナ

Webコンテナコネクションプール機能の利用方法

Webコンテナサーバ

Webコンテナサーバの移行コマンドで自動的に追加される定義

Webコンテナサーバの起動

Webコンテナサーバの作業ディレクトリ

Webコンテナサーバのセットアップ

Webコンテナサーバの停止

Webコンテナサーバの動作設定のカスタマイズ

Webコンテナサーバのログ取得の設定

Webコンテナ単位での同時実行スレッド数の制御

Webコンテナのセキュリティ管理

Webコンテナの通信タイムアウト

Webコンテナのトレース取得ポイント（セッショントレース）

Webコンテナのトレース取得ポイント（データベースセッションフェイルオーバ機能のトレース）

Webコンテナのトレース取得ポイント（フィルタのトレース）

Webコンテナのトレース取得ポイント（メモリセッションフェイルオーバ機能のトレース）

Webコンテナのトレース取得ポイント（リクエスト処理のトレース）

Webサーバ

Webサーバで収集した性能解析トレースファイルの例

Webサーバの使用方法〔サーブレットエンジンモード〕

Webサーバのレスポンスタイムの解析

Webサーバのログ取得の設定

Webサーバ連携

Webサーバログ

(Ｘ)

XAトレースの取得形式

XDM/RD E2の設定

(ア行)

(あ)

アウトプロセス

アクセスログの出力項目

アプリケーション管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

アプリケーションサーバ

アプリケーションサーバで収集した性能解析トレースファイルをフィルタリングした例

アプリケーションサーバ内でのリクエストの処理状況の調査

アプリケーションサーバの移行の概要〔J2EEサーバモードの場合〕

アプリケーションサーバの移行の概要〔サーブレットエンジンモードの場合〕

アプリケーションサーバの移行の手順〔J2EEサーバモードの場合〕

アプリケーションサーバの移行の手順〔サーブレットエンジンモードの場合〕

アプリケーションサーバのリソース設定情報

アプリケーションサーバのログの内容

アプリケーションのイベントリスナ

アプリケーションの更新検知とリロードの設定

アプリケーションのユーザログの取得

アプリケーションのユーザログの取得

(い)

移行コマンド（cjenvupdate）のログ

移行コマンド（cjenvupdate）のログ

移行コマンド（cjenvupdate）のログ

移行コマンドで作成されたバックアップの削除

移行前の確認〔J2EEサーバモードの場合〕

移行前の確認〔サーブレットエンジンモードの場合〕

異常終了位置とシグナル種別

一次送付資料

一次送付資料

イベントトレース

イベントログ

イベントログ

イベントログの出力形式と出力項目（Windowsの場合）

インスタンス統計機能

インスタンス統計機能で出力するクラス別統計情報

インプロセス

インプロセスHTTPサーバ

インプロセスHTTPサーバのアクセスログの出力形式と出力項目

インプロセスHTTPサーバのログ

インプロセスHTTPサーバのログ

インプロセスHTTPサーバのログ

インプロセスHTTPサーバのログ取得の設定

インプロセストランザクションサービスへの移行

インプロセストランザクションサービスを使用している場合

(う)

運用監視エージェント

運用管理エージェント

運用管理エージェント，運用監視エージェント，およびManagement Serverのログの出力先

運用管理エージェント・運用監視エージェント・Management Serverのログ

運用管理エージェント・運用監視エージェント・Management Serverのログの取得

運用管理エージェント・運用監視エージェント・Management Serverのログの取得

運用管理コマンドを使用したsnapshotログの収集

(え)

エラー時のJDBCドライバの処理

エラートレース

エラートレースのエラー事象を示す情報の出力項目

エラートレースのデータベース接続情報の出力項目

エラートレースの履歴情報の出力項目

エラートレースファイル

エラーメッセージ出力

エラーリポートファイル

エラーリポートファイルの出力先

エラーリポートファイルの出力先

エンティティクラスのバイナリ変換のトレース取得ポイントと取得できるトレース情報

(カ行)

(か)

ガーベージコレクションの選択の指針

拡張verbosegc情報の取得

拡張verbosegc情報の取得を指定するオプション

拡張スレッドダンプ

拡張スレッドダンプ

拡張スレッドダンプ

拡張スレッドダンプ

拡張データベースアクセストレース

拡張データベースアクセストレースの出力項目

拡張データベースアクセストレースファイル

拡張データベーストレースのファイル名称の規則

カレントスレッド情報

簡易Webサーバ機能

簡易Webサーバ機能を使用するかどうかの設定

簡易Webサーバへのアクセス許可

環境変数

監査ログ

監査ログで出力するログ

管理機能用のWebアプリケーション

(き)

起動順序の依存関係

起動順序の依存関係

機能の分類とマニュアルの対応

機能レイヤ

機能レイヤ

機能レイヤ

旧バージョンからの仕様変更の確認〔J2EEサーバモードの場合〕

旧バージョンからの仕様変更の確認〔サーブレットエンジンモードの場合〕

旧バージョンとの互換用機能（サーブレットエンジンモード）

旧バージョンとの互換用機能（ベーシックモード）

旧バージョンのアプリケーションサーバからの移行

(く)

クライアントアプリケーション情報

クライアントアプリケーション情報

クラス別統計機能

クラス別統計機能を前提とする機能

クラス別統計情報

クラス別統計情報解析機能

クラス別統計情報の出力

クラスまたは配列型の変数の実際の型名を出力する場合の出力例

クラスまたは配列型の変数を文字列として出力する場合の出力例

グローバルセッションID

グローバルセッションの有効期間の確認

(け)

検索データ取得時のデータ変換

(こ)

更新検知のインターバル

更新検知のインターバル

更新検知のインターバル

更新検知のインターバル

構成ソフトウェアのプロセス（論理サーバ）が異常終了した場合

構築済み実行環境の切り替えで出力するログ

構築済み実行環境の切り替えで出力するログの出力形式と出力項目（UNIXの場合）

構築済み実行環境の切り替えで出力するログの取得

コネクションID

コネクション関連のトレース取得ポイント

コネクションプーリングの設定

コマンドおよびVMパラメタ

コマンドによってメソッドキャンセルを実行した場合に出力されるログ情報

コンソールログ

コンテナ拡張ライブラリ

コンテナ拡張ライブラリの設定

コンテナ管理の永続化コンテキストを利用した場合のトレース取得ポイントと取得できるトレース情報

(サ行)

(さ)

サーバ管理コマンド

サーバ管理コマンドのログ

サーバ管理コマンドのログ

サーバ管理コマンドのログ

サーバ管理コマンドのログの出力先（互換モード）

サーバ管理コマンドのログの出力先（互換モード）

サーブレットエンジンモード

サーブレットエンジンモードで使用できるWebコンテナの機能

サーブレットエンジンモードでのシステム構築

サーブレットエンジンモードでのリソース接続

サーブレットエンジンモードとJ2EEサーバモードの比較

サーブレットエンジンモードとは

サーブレットエンジンモードの場合の移行

再コンパイル機能を使用するための設定

再コンパイルに関する設定

作業ディレクトリ

作業ディレクトリのパス長の見積もり式

作成されるスレッドの種類と数

作成されるスレッドの総数

参照関係情報出力機能

参照関係情報出力機能で出力するクラス別統計情報

(し)

時間情報

シグナル情報

シグナル情報の格納先アドレス

システムダウン

システム提供の障害検知時コマンド

システムで提供されている障害検知時コマンドで取得できる情報

システムの起動および停止方法〔サーブレットエンジンモード〕

システムの構築方法〔サーブレットエンジンモード〕

システム名，CPU，実メモリ，およびVM情報

システムモニタの設定

システムモニタの設定内容

受信バッファのプーリングの設定

出力レベルがdebugの場合に出力される内容

出力レベルがnormalの場合に出力される内容

出力レベルがverboseの場合に出力される内容

手動による定義などの修正〔J2EEサーバモードの場合〕

手動による定義などの修正〔サーブレットエンジンモードの場合〕

取得が必要な資料の一覧

取得が必要な資料の取得方法と調査方法の参照先

取得が必要な資料の種類

取得できるトレース情報〔BMT〕

取得できるトレース情報〔CMT〕

取得できるトレース情報〔DB Connector〕

取得できるトレース情報〔DB Connector〕

取得できるトレース情報〔DB Connector for Cosminexus RM〕

取得できるトレース情報〔DI〕

取得できるトレース情報〔J2EEサーバ〕

取得できるトレース情報〔JNDI〕

取得できるトレース情報〔Message-driven Bean（EJB2.0）〕

取得できるトレース情報〔Message-driven Bean（EJB2.1以降）〕

取得できるトレース情報〔OTS〕

取得できるトレース情報〔RMI〕

取得できるトレース情報〔Session Bean・Entity Bean〕

取得できるトレース情報〔TP1インバウンド連携機能〕

取得できるトレース情報〔Webコンテナ〕

取得できるトレース情報〔Webコンテナ〕

取得できるトレース情報〔インプロセスHTTPサーバ〕

取得できるトレース情報〔コネクションアソシエーション〕

取得できるトレース情報〔コネクション自動クローズ時〕

取得できるトレース情報〔トランザクションタイムアウト〕

取得できるトレース情報〔バッチアプリケーション実行機能〕

取得できるトレース情報〔フィルタのトレース（正常に処理が終了した場合）〕

取得できるトレース情報〔フィルタのトレース（例外が発生した場合）〕

取得できるトレース情報〔メモリセッションフェイルオーバ機能〕

取得できるトレース情報〔ワーク管理〕

障害検知時コマンド

障害検知時コマンドによる資料取得

障害検知時コマンドによる資料取得の設定（J2EEアプリケーションを実行するシステム）

障害検知時コマンドによる資料取得の設定（バッチアプリケーションを実行するシステム）

障害発生時のCMR用の表の回復

詳細レベル

使用するJDBCドライバの設定

使用するメモリ，スレッド数，ポート番号〔サーブレットエンジンモード〕

使用できるJava EEおよびJ2EEの機能

使用できるJava EEおよびJ2EEの機能

使用できるアプリケーションサーバの機能〔サーブレットエンジンモード〕

使用できるアプリケーションサーバの機能〔ベーシックモード〕

使用できる機能の一覧〔サーブレットエンジンモード〕

使用できる機能の一覧〔ベーシックモード〕

処理性能の解析作業の概要

資料の取得

(す)

推奨機能への移行

スクロール型ResultSet使用時の注意点

スクロールタイプ

スタックトレース

スタックトレース情報

スタックトレースにローカル変数情報を出力するためのオプション

スタックの先頭から格納されている情報

スマートエージェント

スレッド作成に失敗した場合

スレッド情報

スレッドダンプ情報の構成

スレッドの非同期並行処理

スレッドの非同期並行処理を使用する場合

スローダウン

(せ)

静的コンテンツのキャッシュ

性能解析トレース

性能解析トレース

性能解析トレース

性能解析トレースの概要

性能解析トレースの構成

性能解析トレースの仕組み

性能解析トレースのトレース情報収集の概要

性能解析トレースの内容

性能解析トレースのルートアプリケーション情報取得のための実装

性能解析トレースファイル

性能解析トレースファイル

性能解析トレースファイル

性能解析トレースファイル

性能解析トレースファイルとスレッドダンプを対応づけた問題個所の調査

性能解析トレースファイルに出力する情報

性能解析トレースファイルの収集

性能解析トレースファイルの収集方法

性能解析トレースファイルの出力先

性能解析トレースファイルの出力先と出力情報

性能解析トレースファイルの出力情報

性能解析トレースファイルのファイル名

性能解析トレースファイルをフィルタリングした例

性能解析トレースファイルを利用したシステムの処理性能の解析

セッション情報ファイル

セッショントレース

セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを生成するリクエスト部分）

セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを破棄するリクエスト部分）

セッショントレース情報が出力されている性能解析トレースファイルの例（セッションを利用するリクエスト部分）

セッションの有効期間の確認

セッションのライフサイクルの調査

セッションフェイルオーバ機能

接続するデータベースの設定

接続できるリソース

接続できるリソース

接続できるリソースとトランザクションの管理方法

接続できるリソースとトランザクションの管理方法

接続プール

(タ行)

(た)

退避作業が不要なファイル

退避作業が不要なファイル

タイムアウトが発生したトランザクションの特定

タイムアウトが発生したリクエストの特定

タイムアウトしたリクエストを確認するために使用できる性能解析トレース

タイムアウトの延長でメソッドキャンセルを実行した場合に出力されるログ情報

(つ)

通常モード

通信路の暗号化レベルの要請

(て)

定義などのバックアップ〔J2EEサーバモードの場合〕

定義などのバックアップ〔サーブレットエンジンモードの場合〕

データ型の対応

データソース

データソースからDB Connectorへの移行方法

データソースによるデータベースへの接続で使用できる機能

データソースの設定

データベースセッションフェイルオーバ機能でトラブルが発生した場合

データベース接続の前提条件

データベース接続の前提条件

データベース接続のための設定

データベース接続のための設定

データベースと接続中にトラブルが発生したコネクションの特定

データベースと接続中にトラブルが発生した場合

データベースとの接続

データベースとの接続〔サーブレットエンジンモード〕

データベースの設定

データベースへの接続

(と)

統計前のガーベージコレクション選択機能

統計前のガーベージコレクション選択機能の概要

統合ユーザ管理機能の設定

統合ユーザ管理のログの取得

統合ログ

統合ログ

統合ログの出力先

動作モード

同時実行スレッド数の制御

登録済みシグナルハンドラ

ドメイン名指定でのトップページの表示

ドメイン名指定でのトップページの表示

トラブルが発生したコネクションの特定

トラブルシューティング（資料取得と対処の概要）

トラブルシューティング（資料取得の設定）

トラブルシューティングで使用する資料の種類

トラブルシューティングに関連する留意事項

トラブル種別ごとの取得資料一覧

トラブル発生時に自動的に取得できる資料

トラブル発生時の対処の流れ

トラブルへの対処と回復

トランザクションタイムアウト時に出力される性能解析トレース

トランザクションの管理方法

トランザクションマネージャとのトランザクション連携処理のトレース取得ポイントと取得できるトレース情報

トレース取得ポイント

トレース取得ポイント

トレース取得ポイント

トレース取得ポイント

トレース取得ポイント

トレース取得ポイント〔BMT〕

トレース取得ポイント〔CMT〕

トレース取得ポイント〔DB Connector〕

トレース取得ポイント〔DB Connector〕

トレース取得ポイント〔DB Connector for Cosminexus RM〕

トレース取得ポイント〔DI〕

トレース取得ポイント〔J2EEサーバ〕

トレース取得ポイント〔JNDI〕

トレース取得ポイント〔Message-driven Bean（EJB2.0）〕

トレース取得ポイント〔Message-driven Bean（EJB2.1以降）〕

トレース取得ポイント〔OTS〕

トレース取得ポイント〔RMI〕

トレース取得ポイント〔Session Bean・Entity Bean〕

トレース取得ポイント〔TP1インバウンド連携機能〕

トレース取得ポイント〔Webコンテナ〕

トレース取得ポイント〔Webコンテナ〕

トレース取得ポイント〔インプロセスHTTPサーバ〕

トレース取得ポイント〔コネクションアソシエーション〕

トレース取得ポイント〔コネクション自動クローズ時〕

トレース取得ポイント〔トランザクションタイムアウト〕

トレース取得ポイント〔バッチアプリケーション実行機能〕

トレース取得ポイント〔フィルタのトレース（正常に処理が終了した場合）〕

トレース取得ポイント〔フィルタのトレース（例外が発生した場合）〕

トレース取得ポイント〔メモリセッションフェイルオーバ機能〕

トレース取得ポイント〔ワーク管理〕

トレース情報のキー情報

トレース情報の取得によるトラブルシュート

トレースを取得するための情報の設定

(ナ行)

(に)

二次送付資料

二次送付資料

(ね)

ネーミングサービスの通信タイムアウト

ネーミングのキャッシング

(ハ行)

(は)

バッチアプリケーション実行機能のトレース取得ポイント

バッチアプリケーションのユーザログの出力先

バッチ更新

バッチサーバ

バッチサーバの移行コマンドで自動的に追加／変更される定義

バッチサーバの移行コマンドの実行

バッチサーバの作業ディレクトリのディスク容量の確認

バッチサーバのログ

バッチサーバのログ取得の設定

パフォーマンストレーサ

パフォーマンストレーサ

ハングアップ（無応答）

(ひ)

日立JavaVMログファイル

日立JavaVMログファイル

日立JavaVMログファイル

日立JavaVMログファイルを出力するオプション

日立固有のJavaVMの機能

日立固有のJavaVMの機能の概要

日立固有のJavaVMログ取得の設定

日立固有のJavaVMログ取得の設定

日立固有のJavaVMログの内容（日立JavaVMログファイル）

日立トレース共通ライブラリ

日立トレース共通ライブラリ形式

日立トレース共通ライブラリ形式

日立トレース共通ライブラリ形式（シングルプロセス）

日立トレース共通ライブラリ形式（マルチプロセス）

日立トレース共通ライブラリ形式のログの出力形式と出力項目

日立トレース共通ライブラリ形式のログの出力項目

日立トレース共通ライブラリ形式のログを参照する場合の注意

標準出力／標準エラー出力／ユーザログのトレース取得ポイント

標準の形式および簡易出力フォーマットでの出力例

標準レベル

(ふ)

ファイナライズ滞留解消機能

ファイナライズ滞留解消機能使用時の出力情報

ファイナライズ滞留解消機能使用時の注意事項

ファイナライズ滞留解消機能の概要

フィルタリングに使用するイベントIDが示すトレース取得ポイント

プール管理情報設定ファイル

プロセスの依存関係とプロセスの再起動方法

プロセスの再起動方法

分散トランザクション機能

(へ)

並行処理タイプ

ベーシックモード

ベーシックモードでのリソース接続

ベーシックモードの概要

ベーシックモードの設定

ベーシックモードの場合のプロセスの依存関係

ベーシックモードの場合のプロセスの再起動方法

(ほ)

保守員

保守員に連絡が必要なトラブル

保守用ログ

保守用ログ

保守レベル

保守レベル

ホスト単位管理モデルを対象とした系切り替えシステムでトラブルが発生した場合

(マ行)

(ま)

マシン情報

(め)

明示管理ヒープ機能

明示管理ヒープ機能のイベントログ

明示管理ヒープ機能のイベントログ

明示管理ヒープ機能のイベントログ取得の設定

明示管理ヒープ機能のイベントログの確認方法

明示管理ヒープ機能のイベントログの出力契機

明示管理ヒープ機能のイベントログの内容

明示管理ヒープ自動配置エラー

明示管理ヒープ自動配置設定ファイルオープンエラー

明示管理ヒープ自動配置設定ファイルパースエラー

命令コード情報

メッセージログ

メッセージログ

メッセージログ

メモリ情報

メモリセッションフェイルオーバ機能でトラブルが発生した場合

メモリセッションフェイルオーバ機能を使用している場合のバージョンアップ

メモリダンプ

メモリ不足を示すメッセージの出力内容

面数

(ヤ行)

(ゆ)

ユーザが作成した障害検知時コマンドで取得できる情報

ユーザ作成の障害検知時コマンド

ユーザダンプ取得の設定

ユーザダンプの取得

ユーザへのコールバックメソッドのトレース取得ポイントと取得できるトレース情報

ユーザログ

ユーザログ

ユーザログ

(よ)

抑止レベル

(ラ行)

(ら)

ライブラリ

ランタイム属性

(り)

リソースアダプタ

リソースアダプタの移行コマンドの実行

リソースアダプタのログ取得の設定

リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

リソースアダプタバージョンアップコマンド（cjrarupdate）のログ

リソース更新用インターバル

リソース更新用インターバル

リソース枯渇監視のログ

リソース枯渇監視のログ

リソース枯渇監視のログ

リソース枯渇監視ログ

リソース枯渇監視ログ

リソースへの接続テスト

リソースマネジャ

リダイレクタ

リダイレクタのトレース取得ポイント

リダイレクタのログ取得の設定

リロード機能を使用するための設定

リロード時のセッション引き継ぎ

リロード時のセッション引き継ぎ

リロード処理の流れ

リロード遅延実行

リロード遅延実行

リロードに関する設定項目と設定ファイル

(る)

ルートアプリケーション情報

ルートアプリケーション情報

ルートアプリケーション情報

ルートアプリケーション情報を利用したログ調査

(れ)

例外ログ

例外ログ

レジスタ情報

(ろ)

ローカル変数

ローカル変数情報

ログ以外に取得が必要な情報

ログ以外に取得が必要な情報

ログサイズの変更

ログサイズの変更

ログサイズの変更

ログの出力先

ログの出力先

ログの出力先

ログの出力先

ログの出力先

ログの出力先の変更

ログの出力先の変更

ログの出力先や出力レベルの変更

ログの出力先を設定するユーザ定義ファイル

ログの出力先を設定するユーザ定義ファイル

ログの出力先を設定するユーザ定義ファイル（サーブレットエンジンモードの場合）

ログレベルの変更

ログレベルの変更

ログレベルの変更

(ワ行)

(わ)

ワトソンログが正しく出力されたかどうかを示すメッセージの出力内容

■ 商標類

Active Directoryは，米国Microsoft Corporationの，米国およびその他の国における登録商標または商標です。
AIXは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
AIX 5Lは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
AMDは，Advanced Micro Devices,Inc.の商標です。
AX2000は，A10 Networks,Inc.の商品名称です。
BIG-IP，3-DNS，iControl Services Manager，FirePass　および F5 は F5 Networks Inc の商標，または登録商標です。
CORBAは，Object Management Groupが提唱する分散処理環境アーキテクチャの名称です。
gzipは，米国FSF（Free Software Foundation）が配布しているソフトウェアです。
HP-UXは，Hewlett-Packard Companyのオペレーティングシステムの名称です。
IIOPは，OMG仕様によるORB（Object Request Broker）間通信のネットワークプロトコルの名称です。
Internet Explorerは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Itaniumは，アメリカ合衆国およびその他の国におけるIntel Corporationの商標です。
J2EEは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Javaは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JDBCは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JDKは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
JSPは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Linuxは，Linus Torvalds氏の日本およびその他の国における登録商標または商標です。
Microsoftは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Microsoft Internet Information Servicesは，米国Microsoft Corporationの商品名称です。
Microsoft Office Excelは，米国 Microsoft Corporation の商品名称です。
MyEclipseは，米国Genuitec社の商品名称です。
OMG，CORBA，IIOP，UML，Unified Modeling Language，MDA，Model　Driven　Architectureは，Object Management Group, Inc.の米国及びその他の国における登録商標または商標です。
ORACLEは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle 10gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle8iは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle9iは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle Database 10gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Oracle及びOracle Database 11gは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標もしくは商標です。
SOAP（Simple Object Access Protocol）は，分散ネットワーク環境においてXMLベースの情報を交換するための通信プロトコルの名称です。
Solarisは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
すべてのSPARC商標は，米国SPARC International,Inc. のライセンスを受けて使用している同社の米国およびその他の国における商標または登録商標です。SPARC商標がついた製品は，米国Sun Microsystems,Inc. が開発したアーキテクチャに基づくものです。
SQL Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Sunは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
Sun Microsystemsは，Oracle Corporation 及びその子会社，関連会社の米国 及びその他の国における登録商標または商標です。
UNIXは，The Open Groupの米国ならびに他の国における登録商標です。
VMwareおよびESXは，VMware,Inc.の米国および各国での登録商標または商標です。
VMwareおよびVMware vSphereは，VMware,Inc.の米国および各国での登録商標または商標です。
Windowsは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Vistaは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
X/Openは，The Open Groupの英国ならびに他の国における登録商標です。
Eclipseは，開発ツールプロバイダのオープンコミュニティであるEclipse Foundation,Inc.により構築された開発ツール統合のためのオープンプラットフォームです。
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).