7.3.3 障害情報の取得方法(サービスプラットフォーム以外の前提製品)
サービスプラットフォーム以外の主な前提製品が出力する障害情報について,取得方法の概略を説明します。障害情報の詳細や,ログファイルおよびトレースファイルの見積もりについては,各製品のマニュアルを参照してください。
- 〈この項の構成〉
(1) J2EEサーバが出力する障害情報の取得方法
J2EEサーバが出力するログのディレクトリのデフォルトは,<サービスプラットフォームのインストールディレクトリ>\CC\server\public\ejb\<J2EEサーバ名>\logsです。以降,「J2EEサーバのログ出力ディレクトリ」と表記します。なお,J2EEサーバが出力するログのディレクトリは,usrconf.cfg(J2EEサーバ用オプション定義ファイル)のejb.server.log.directoryキーで変更できます。
(a) 障害情報の種類と取得方法
障害が発生した際,サービスプラットフォームが出力するログやトレースで障害要因の特定が困難な場合は,次に示すJ2EEサーバが出力する障害情報が必要になります。
-
J2EEサーバ,リダイレクタ,サーバ管理コマンドのログ
-
運用管理エージェント,運用監視エージェント,Management Serverのログ
-
DB Connectorのログ
-
EJBクライアントアプリケーションのログ
-
ユーザログ
-
保守用ログ
J2EEサーバが出力する障害情報は,次のコマンドを使って一括して取得できます(手動で取得できます)。なお,一括して取得した場合,サービスプラットフォームが出力するログやトレースと一部重複する情報もあります。障害情報の取得方法の詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」を参照してください。
-
snapshotlogコマンド
snapshotlogコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「snapshotlog(snapshotログの収集)」を参照してください。
-
mngsvrutilコマンド(サブコマンドにcollect snapshotを指定)
mngsvrutilコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「mngsvrutil(Management Serverの運用管理コマンド)」を参照してください。
これらのコマンドを実行すると,次のディレクトリ下の情報を取得します。
-
<サービスプラットフォームのインストールディレクトリ>\CC\server\public\ejb\*\logs\csc
-
<サービスプラットフォームのインストールディレクトリ>\CC\server\public\ejb\*\logs\csc\maintenance
-
<サービスプラットフォームのインストールディレクトリ>\CSC\config\manager
-
<サービスプラットフォームのインストールディレクトリ>\CSC\config\msg
-
<サービスプラットフォームのインストールディレクトリ>\CSC\log\manager
-
<サービスプラットフォームのインストールディレクトリ>\CSC\repository
-
<サービスプラットフォームのインストールディレクトリ>\CSC\spool
-
<サービスプラットフォームのインストールディレクトリ>\CSC\system\msg
なお,取得する情報はsnapshotログ収集対象定義ファイルで指定します。必要に応じてsnapshotログ収集対象定義ファイルを変更し,取得する情報を変更してください。snapshotログ収集対象定義ファイルの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2.1 snapshotログ収集対象定義ファイル」を参照してください。
(b) 運用開始前の準備
コマンドを使って一括取得する場合,取得する障害情報の種類(Path)をあらかじめ定義しておく必要があります。メールなどで早急に送付する一次送付資料と,別途送付する二次送付資料のそれぞれを指定します。詳細は,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「2.4 取得が必要な資料の種類」を参照してください。
(c) 障害調査に必要な定義ファイル
障害を調査するために,J2EEサーバに設定した定義が必要になる場合があります。サービスプラットフォーム以外の定義ファイルを次の表に示します。
定義ファイル |
説明 |
---|---|
Component Containerの設定ファイル※1 |
<サービスプラットフォームのインストールディレクトリ>\CC\server\usrconf\ejb\<J2EEサーバ名>\ディレクトリ配下のすべてのファイルおよびディレクトリ |
Managerの設定ファイル※1 |
<サービスプラットフォームのインストールディレクトリ>\manager\config\ディレクトリ配下のすべてのファイルおよびディレクトリ |
dbcon-xadisplaynameに設定したDB Connectorの属性情報※2 |
「3.1.2(8) DB Connectorのセットアップ(Reliable Messagingを使用する場合)」で設定した定義ファイル |
dbcon-nodisplaynameに設定したDB Connectorの属性情報※2 |
(2) Reliable Messagingが出力する障害情報の取得方法
次に示す受付やサービスアダプタを使用している場合は,Reliable Messagingが出力する障害情報を取得することで障害要因の特定ができます。
-
非同期(MDB(WS-R))の標準受付
-
非同期(MDB(DBキュー))の標準受付
-
MDB(WS-R)アダプタ
-
MDB(DBキュー)アダプタ
Reliable Messagingが出力する障害情報の取得方法の詳細については,マニュアル「Reliable Messaging」の「9.1 障害時の出力情報概要」を参照してください。
(a) Reliable Messagingが出力するメッセージ
Reliable Messagingが出力するメッセージは,次のログに出力されます。ログには,開始停止メッセージログとJ2EEサーバのメッセージログの2種類があります。Reliable Messagingが出力するメッセージを次の表に示します。
ログの種類 |
出力内容 |
ディレクトリおよびファイル名 |
---|---|---|
開始停止メッセージログ |
開始や停止についての情報,およびユーザが指定したプロパティの値 |
|
J2EEサーバのメッセージログ |
Reliable Messagingの開始,停止および動作中の情報 |
|
(b) HCSCサーバとReliable Messagingのトレースとの関係
HCSCサーバとReliable Messagingのトレースとの関係は,ローカルキューや転送キューを使用する場合と,共用キューを使用する場合とで異なります。
-
ローカルキューや転送キューを使用する場合
Reliable Messagingのトレースには,メソッドトレースと回線トレースの2種類があります。メソッドトレースは,エラー情報(例外発生原因)およびメソッドの入口情報,出口情報,デバッグ情報を出力します。回線トレースは,キュー間転送でやり取りされる電文の情報を出力します。ローカルキューや転送キューを使用する場合のトレース取得ポイントを次の図に示します。
図7‒2 ローカルキューや転送キューを使用する場合のトレース取得ポイント トレース取得ポイントとファイル名の関係を次の表に示します。表の「図中の番号」は,「図7-2 ローカルキューや転送キューを使用する場合のトレース取得ポイント」中の番号と対応しています。
表7‒7 トレース取得ポイントとファイル名の関係 図中の番号
取得ポイント
トレース
種類
出力マシン
出力先
ファイル名
1
サービスリクエスタから転送キューに要求を出すとき
メソッドトレース
サービスリクエスタ稼働マシン側
<J2EEサーバのログ出力ディレクトリ>\RM\maintenance
mtd_<サービスリクエスタ側Reliable Messagingのディスプレイ名>_<数字>.log
2
サービスリクエスタ側の転送キューからHCSCサーバ側のローカルキューに転送するとき
回線トレース
lin_<サービスリクエスタ側Reliable Messagingのディスプレイ名>_<数字>.log
3
サービスリクエスタ側の転送キューからHCSCサーバ側のローカルキューへの転送を受け取るとき,またはHCSCサーバ側の転送キューからサービス部品側のローカルキューに転送するとき
回線トレース
HCSCサーバ稼働マシン側
<J2EEサーバのログ出力ディレクトリ>\RM\maintenance
lin_<HCSCサーバ側Reliable Messagingのディスプレイ名>_<数字>.log
4
HCSCサーバがローカルキューからメッセージを取り出すとき,またはサービスアダプタから転送キューに要求を出すとき
メソッドトレース
mtd_<HCSCサーバ側Reliable Messagingのディスプレイ名>_<数字>.log
5
HCSCサーバ側の転送キューからサービス部品側のローカルキューへの転送を受け取るとき
回線トレース
サービス部品稼働マシン側
<J2EEサーバのログ出力ディレクトリ>\RM\maintenance
lin_<サービス部品側Reliable Messagingのディスプレイ名>_<数字>.log
6
サービス部品がローカルキューからメッセージを取り出すとき
メソッドトレース
mtd_<サービス部品側Reliable Messagingのディスプレイ名>_<数字>.log
-
共用キューを使用する場合
Reliable Messagingのトレースには,メソッドトレースと共用キューイベントトレースの2種類があります。メソッドトレースは,エラー情報(例外発生原因)およびメソッドの入口情報,出口情報,デバッグ情報を出力します。共用キューイベントトレースは,共用キューにメッセージが格納されたことを表すイベントの情報を出力します。共用キューを使用する場合のトレース取得ポイントを次の図に示します。
図7‒3 共用キューを使用する場合のトレース取得ポイント トレース取得ポイントとファイル名の関係を次の表に示します。表の「図中の番号」は,「図7-3 共用キューを使用する場合のトレース取得ポイント」中の番号と対応しています。
表7‒8 トレース取得ポイントとファイル名の関係 図中の番号
取得ポイント
トレース
種類
出力マシン
出力先
ファイル名
1
サービスリクエスタ側からHCSCサーバ側の受信用共用キューへメッセージが格納されたとき,またはHCSCサーバのサービスアダプタから送信用共用キューへメッセージが格納されたとき
共用キューイベントトレース
HCSCサーバ稼働マシン側
<J2EEサーバのログ出力ディレクトリ>\RM\maintenance
shq_<HCSCサーバ側Reliable Messagingのディスプレイ名>_<数字>.log
2
HCSCサーバがローカルキューからメッセージを取り出すとき,またはサービスアダプタから転送キューに要求を出すとき
メソッドトレース
mtd_<HCSCサーバ側Reliable Messagingのディスプレイ名>_<数字>.log
(c) 運用開始前の準備
メソッドトレースや回線トレースの出力レベルを変更して,出力する情報の種類を変更する場合は,HCSCサーバ起動前のReliable Messagingの設定で変更する必要があります。Reliable MessagingのコンフィグレーションプロパティのRMMethodTraceLevelおよびRMLineTraceLevelで変更します。
(d) 障害調査に必要な定義ファイル
障害を調査するためにReliable Messagingのコンフィグレーションプロパティに対して設定している情報が必要になる場合があります。障害調査に必要なReliable Messagingの定義ファイルを次の表に示します。定義ファイルの詳細については,マニュアル「Reliable Messaging」の「6. コンフィグレーションプロパティ」を参照してください。
定義ファイル |
説明 |
---|---|
Reliable Messagingコンフィグレーションプロパティの設定情報 |
「3.1.2(9) Reliable Messagingのセットアップ」で設定した定義ファイル |
(3) SOAP通信基盤またはJAX-WSエンジンが出力する障害情報の取得方法
同期の標準受付(Webサービス),またはSOAPアダプタを使用している場合は,SOAP通信基盤またはJAX-WSエンジンが出力する障害情報を取得することで障害要因を特定できます。また,サービスリクエスタからHCSCサーバを呼び出すときのSOAPメッセージや,HCSCサーバのサービスアダプタからサービス部品を呼び出すときのSOAPメッセージの電文形式を確認することで,送受信するユーザ電文に誤りがある場合の障害要因を特定できます。
SOAP通信基盤が出力する障害情報の取得方法の詳細については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「14. 障害対策」を参照してください。
JAX-WSエンジンが出力する障害情報の取得方法の詳細については,マニュアル「アプリケーションサーバ Webサービス開発ガイド」の「39. 障害対策」を参照してください。
(a) HCSCサーバとSOAPのトレースやアプリケーションログの関係
HCSCサーバの構成で,取得ポイントとSOAPのトレースやアプリケーションログのファイル名との関係を説明します。Webサービスの受付からSOAPアダプタを呼び出す場合と,Webサービス以外の受付からSOAPアダプタを呼び出す場合とで異なります。
-
同期の標準受付(Webサービス)またはSOAP受付からSOAPアダプタを呼び出す場合
同期の標準受付(Webサービス)からSOAPアダプタを呼び出す場合や,SOAP受付からSOAPアダプタを呼び出す場合は,次のような名称でSOAPのトレースやアプリケーションログが出力されます。途中にビジネスプロセスを経由している場合も同様の名称で出力されます。SOAPトレースやアプリケーションログの取得ポイントを次の図に示します。
図7‒4 SOAPトレースやアプリケーションログの取得ポイント(Webサービスの受付からSOAPアダプタを呼び出す場合) トレース取得ポイントとファイル名の関係を次の表に示します。表の「図中の番号」は,上の図の番号と対応しています。
表7‒10 トレース取得ポイントとファイル名の関係(Webサービスの受付からSOAPアダプタを呼び出す場合) 図中の番号
取得ポイント
ファイル名
トレース※1
アプリケーションログ※1
1※2
サービスリクエスタから要求を出したとき(送信),およびサービスリクエスタへ応答が返ってきたとき(受信)のSOAP通信のトレース
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-<数字>.log」
<プリフィックス>※3はサービスリクエスタ側のクライアント定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwmessage<数字>.log」
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」
<プリフィックス>※3はサービスリクエスタ側のクライアント定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwtransport<数字>.log」
2
サービスリクエスタから要求をHCSCサーバのリクエスト受付で受け取ったとき(受信),およびHCSCサーバから応答を返したとき(送信)のSOAP通信のトレース
- 同期の標準受付(Webサービス)の場合
-
「<クラスタ名>-j2ee-<J2EEサーバ名>-<数字>.log」
- SOAP受付の場合
-
「<受付ID>-j2ee-<J2EEサーバ名>-<数字>.log」
- 同期の標準受付(Webサービス)の場合
-
「<クラスタ名>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」
- SOAP受付の場合
-
「<受付ID>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」
3
HCSCサーバのサービスアダプタから要求を出したとき(送信),およびサービスアダプタへ応答が返ってきたとき(受信)のSOAP通信のトレース
図中の番号2と同じトレースファイルに出力します。
図中の番号2と同じアプリケーションログファイルに出力します。
4※2
HCSCサーバのサービスアダプタからの要求をサービス部品側で受け取ったとき(受信),およびサービス部品側から応答を返したとき(送信)のSOAP通信のトレース
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-<数字>.log」
<プリフィックス>※3はサービス部品側のサーバ定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwmessage<数字>.log」
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」
<プリフィックス>※3はサービス部品側のサーバ定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwmessage<数字>.log」
-
Webサービス以外の受付からSOAPアダプタを呼び出す場合
同期の標準受付(Webサービス)やSOAP受付以外のリクエスト受付からSOAPアダプタを呼び出す場合は,次のような名称でSOAPトレースやアプリケーションログが出力されます。SOAPトレースやアプリケーションログの取得ポイントを次の図に示します。
図7‒5 SOAPトレースやアプリケーションログの取得ポイント(Webサービス以外の受付からSOAPアダプタを呼び出す場合) トレース取得ポイントとファイル名の関係を次の表に示します。表の「図中の番号」は,上の図の番号と対応しています。
表7‒11 トレース取得ポイントとファイル名の関係(Webサービス以外の受付からSOAPアダプタを呼び出す場合) 図中の番号
取得ポイント
ファイル名
トレース※1
アプリケーションログ※1
1
HCSCサーバのサービスアダプタから要求を出したとき(送信),およびサービスアダプタへ応答が返ってきたとき(受信)のSOAP通信のトレース
「<サービスID>-j2ee-<J2EEサーバ名>-<数字>.log」※3
「<サービスID>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」※3
2※2
HCSCサーバのサービスアダプタからの要求をサービス部品側で受け取ったとき(受信),およびサービス部品側から応答を返したとき(送信)のSOAP通信のトレース
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-<数字>.log」
<プリフィックス>※4はサービス部品側のサーバ定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwmessage<数字>.log」
- SOAP通信基盤を使用している場合
-
「<プリフィックス>-j2ee-<J2EEサーバ名>-aplog-<数字>.log」
<プリフィックス>※4はサービス部品側のサーバ定義ファイルで設定。
- JAX-WSエンジンを使用している場合
-
「cjwtransport<数字>.log」
(b) 運用開始前の準備
SOAPメッセージのログを取得すると,サービスリクエスタからHCSCサーバを呼び出すときのSOAPメッセージや,HCSCサーバのサービスアダプタからサービス部品を呼び出すときのSOAPメッセージについて,電文形式を確認できます。これによって,送受信するユーザ電文に誤りがある場合の障害要因を特定できます。
ログの出力に関しては,HCSCサーバが稼働するマシンで,次に示す共通定義ファイルに設定します。
-
SOAP通信基盤の場合:c4webcom.cfg
-
JAX-WSエンジンの場合:cjwconf.properties
HCSCサーバが稼働するマシンの共通定義ファイルへの設定を次の表に示します。
設定項目 |
キー名称 |
設定値 (デフォルト) |
説明 |
---|---|---|---|
アプリケーションログ出力の重要度 |
c4web.logger.aplog_level |
WARN |
SOAPメッセージのログを採取する(SOAPメッセージの電文形式を確認する)場合,INFOを指定してください。HCSCサーバ起動前にあらかじめ設定する必要があります。 |
SOAP通信基盤を利用する場合の共通定義ファイルの作成については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「10.4 共通定義ファイルの設定」を参照してください。
JAX-WSエンジンを利用する場合の共通定義ファイルの作成については,マニュアル「アプリケーションサーバ Webサービス開発ガイド」の「10.1.2 共通定義ファイルの設定項目」を参照してください。
(c) 障害調査に必要な定義ファイル
障害を調査するためにSOAP通信基盤およびJAX-WSエンジンの設定情報が必要になる場合があります。SOAP通信基盤の定義ファイルを次の表に示します。
定義ファイル |
説明 |
ファイルの格納場所 |
ファイル名 |
---|---|---|---|
サーバ定義ファイル |
HCSCサーバ稼働マシンのリクエスト受付でのSOAP通信の動作を制御します |
HCSCサーバ稼働マシンの次のフォルダ
|
c4websv.cfg |
共通定義ファイル |
HCSCサーバ稼働マシンのリクエスト受付およびサービスアダプタに共通のSOAP通信の動作を制御します |
HCSCサーバ稼働マシンの次のフォルダ
|
c4webcom.cfg |
SOAP通信基盤を利用する場合のサーバ定義ファイルの詳細については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「10.2 サーバ定義ファイルの設定」を参照してください。SOAP通信基盤を利用する場合の共通定義ファイルの詳細については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「10.4 共通定義ファイルの設定」を参照してください。
JAX-WSエンジンの定義ファイルを次の表に示します。
定義ファイル |
説明 |
ファイルの格納場所 |
ファイル名 |
---|---|---|---|
共通定義ファイル |
HCSCサーバ稼働マシンのリクエスト受付およびサービスアダプタに共通のSOAP通信の動作を制御します |
HCSCサーバ稼働マシンの次のフォルダ
|
cjwconf.properties |
JAX-WSエンジンを利用する場合の定義ファイルの詳細については,マニュアル「アプリケーションサーバ Webサービス開発ガイド」の「10.1 動作定義ファイル」を参照してください。
(4) HTTP Serverが出力する障害情報の取得方法
HTTP Serverを使用して運用する場合,HTTP Serverが出力する障害情報が必要な場合があります。HTTP Serverが出力する障害情報の取得方法の詳細は,マニュアル「HTTP Server」を参照してください。
(5) データベースが出力する障害情報の取得方法
障害の要因がデータベースにある場合,データベースの障害情報を確認することで,障害要因を特定できます。データベースの障害情報には,サーバ側とクライアント側の情報があります。HCSCサーバ稼働マシンのデータベース(クライアント側)とデータベース(サーバ側)の関係を次の図に示します。
使用しているデータベース |
サーバ/クライアント |
障害情報 |
---|---|---|
HiRDBを使用している場合 |
サーバ側の障害情報 |
|
サーバ側の障害情報(定義情報) |
|
|
クライアント側の障害情報 |
|
|
Oracleを使用している場合 |
サーバ側の障害情報 |
Oracleのログ |
クライアント側の障害情報 |
Oracle JDBC Thin Driverのログ |
HiRDBを使用する場合は,マニュアル「HiRDB システム運用ガイド」を参照してください。Oracleを使用する場合は,Oracle Corporationが発行するドキュメントを参照してください。
(6) JavaVMの情報の取得方法
(a) JavaVM出力メッセージログ
JavaVMでクラッシュが発生した場合,JavaVMはデバッグ情報を標準出力とエラーリポートファイルに出力します。詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「4.11 JavaVM出力メッセージログ(標準出力またはエラーリポートファイル)」を参照してください。エラーリポートファイルの出力先および出力ファイル名は次のとおりです。
-
Windowsの場合
<サービスプラットフォームのインストールディレクトリ>\CC\server\usrconf\ejb\<J2EEサーバ名>\hs_err_pid<サーバプロセスのプロセスID>.log
-
UNIXの場合
<サービスプラットフォームのインストールディレクトリ>/CC/server/usrconf/ejb/<J2EEサーバ名>/hs_err_pid<サーバプロセスのプロセスID>.log
(b) JavaVMのスレッドダンプ
JavaVMの稼働情報やスレッドのスタック状態が出力されます。詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「4.7 JavaVMのスレッドダンプ」を参照してください。出力先は次のとおりです。
-
Windowsの場合
<サービスプラットフォームのインストールディレクトリ>\CC\server\usrconf\ejb\<J2EEサーバ名>\javacore*.txt
-
UNIXの場合
<サービスプラットフォームのインストールディレクトリ>/CC/server/usrconf/ejb/<J2EEサーバ名>/javacore*.txt
(c) JavaVMのGCログ
JavaVMのGCの活動状態が出力されます。詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「4.8 JavaVMのGCログ」を参照してください。
(d) メモリダンプ
システムで障害が発生したときに,システム管理者または保守員が障害を解析するために使用します。詳細については,マニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「4.9 メモリダンプ」を参照してください。