3.3.3 snapshotログ収集の設定(J2EEアプリケーションを実行するシステム)
ここでは,snapshotログ収集のための設定について説明します。snapshotログとして収集するファイルの設定や,収集したsnapshotログの格納先などの設定を変更できます。
- 〈この項の構成〉
(1) snapshotログを収集するタイミングごとに収集できる資料
snapshotログの収集方法を変更するための設定を収集タイミングごとに次の表に示します。
分類 |
収集のタイミング |
デフォルトの設定を変更するために必要な設定 |
---|---|---|
自動的に収集する※ |
論理サーバが障害時に自動停止される直前 |
|
J2EEサーバが障害時に自動再起動される直前 |
||
J2EEサーバを手動で一括再起動する直前 |
|
|
任意のタイミングで収集する |
Management Serverの運用管理コマンド(mngsvrutil)で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. トラブルシューティングで必要な資料の出力先と出力方法」を参照してください。
- (例)
-
-
Windowsの場合
ユーザダンプは,運用開始前に環境変数(CJMEMDUMP_PATH)の設定が必要です。また,環境変数(CJMEMDUMP_PATH)を設定した場合にはsnapshotログの収集先を変更する必要があります。
-
UNIXの場合
coreダンプは,運用開始前にcoreファイルのサイズの設定が必要です。運用開始前に取得のための設定をした上で,ユーザ作成の障害検知時コマンドを使用して障害発生時のcoreダンプを取得し,そのcoreダンプをsnapshotログとして収集することをお勧めします。また,デフォルトのsnapshotログ収集対象定義ファイルには,coreダンプのデフォルトの出力先が指定されています。
運用開始前に実施する取得のための設定については,「3.3.15 ユーザダンプ取得の設定」,または「3.3.16 coreダンプ取得の設定」を参照してください。ユーザ作成の障害検知時コマンドについては,「3.3.1 障害検知時コマンドによる資料取得の設定(J2EEアプリケーションを実行するシステム)」を参照してください。
-
snapshotlog.confおよびsnapshotlog.2.confの指定については,「3.3.3(3) snapshotログの収集先のカスタマイズ」を参照してください。デフォルトの設定で一次送付資料および二次送付資料として収集できる資料については,「付録A snapshotログの収集対象一覧」を参照してください。
(3) snapshotログの収集先のカスタマイズ
snapshotログの収集先は,snapshotログ収集対象定義ファイルでカスタマイズできます。また,adminagent.propertiesでは,論理サーバごとのsnapshotログのファイル数を指定できます。ファイルの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2.1 snapshotログ収集対象定義ファイル」を参照してください。
(a) snapshotログの収集先の指定
snapshotログ収集対象定義ファイルを編集して,snapshotログの収集先を指定してください。snapshotログ収集対象定義ファイルの格納場所を次に示します。
-
Windowsの場合
<製品のインストールディレクトリ>\manager\config\snapshotlog.conf
<製品のインストールディレクトリ>\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.home}」を使用して,snapshotログ収集対象定義ファイルに「${cosminexus.home}/manager/log/.+」(ピリオド(.)は任意の文字,プラス(+)は1回以上を表します)と指定すると,<製品のインストールディレクトリ>\manager\log(Windowsの場合),または/opt/Cosminexus/manager/logディレクトリ(UNIXの場合)直下のファイルがすべて収集されます。なお,snapshotログ収集対象定義ファイルの変数の値には,ドル記号($)を含めないでください。
(b) snapshotログのファイル数の指定
論理サーバごとのsnapshotログファイルの数は,adminagent.propertiesの次のキーで変更できます。デフォルトの設定は10です。adminagent.propertiesについては,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「8.2.1 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については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「8.2.1 adminagent.properties(運用管理エージェントプロパティファイル)」を参照してください。
(4) snapshotログ収集のタイムアウトの設定
snapshotログ収集時に実行する処理に対してタイムアウトを設定できます。タイムアウトは,mserver.propertiesで設定します。snapshotログ収集時に実行する処理とタイムアウトの設定を次の表に示します。
処理 |
タイムアウトの設定(mserver.propertiesのキー) |
説明 |
---|---|---|
システム提供の障害検知時コマンドの実行 |
com.cosminexus.mngsvr.sys_cmd.abnormal_end.timeout |
次に示すそれぞれの処理の終了を待つ時間です。
指定した時間を経過してもコマンド,または性能解析トレースの収集が終了しない場合は,実行したコマンド,または性能解析トレースの収集を無視して処理を続行します。 |
ユーザ作成の障害検知時コマンドの実行 |
com.cosminexus.mngsvr.usr_cmd.abnormal_end.timeout |
ユーザ作成の障害検知時に実行したコマンドの終了を待つ時間です。指定した時間を経過してもコマンドが終了しない場合は,実行したコマンドを無視して処理を続行します。 |
snapshotログ(一次送付資料)の収集 |
com.cosminexus.mngsvr.snapshot.auto_collect.timeout |
一次送付資料および二次送付資料の収集の終了を待つ時間です。指定した時間を経過しても収集が終了しない場合は,Management Serverから運用管理エージェントにsnapshotログ収集中止のサービス要求が実行され,Management ServerのログにKEOS20052-Eメッセージが出力されます。 |
snapshotログ(二次送付資料)の収集 |
mserver.propertiesについては,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「8.2.6 mserver.properties(Management Server環境設定ファイル)」を参照してください。