5.3.6 障害の原因解析
ここでは,OpenTP1システムで障害の原因を解析するための機能について説明します。
なお,次に示す機能は,TP1/Extension 1をインストールしていることが前提です。TP1/Extension 1をインストールしていない場合の動作は保証できません。
-
性能検証用トレース
-
XAR性能検証用トレース
-
JNL性能検証用トレース
-
LCK性能検証用トレース
-
MCF性能検証用トレース
-
TRNイベントトレース
-
NAMイベントトレース
-
プロセスサービスのイベントトレース
-
FILイベントトレース
- 〈この項の構成〉
(1) MCFトレース
MCFのプロセスごとに,発生したイベントや送受信データの情報を取得しています。これをMCFトレースといいます。MCFトレース情報は,共用メモリ中のトレース領域(トレースバッファ)に取得されます。MCF通信構成定義でMCFトレースのディスク出力機能を使うことを指定しておくと,トレース領域に空きがなくなった場合に,ディスク上のMCFトレースファイルに出力されます。MCFトレースのディスク出力機能を使用しない場合で,一時的にMCFトレース情報が必要になったときは,MCFトレース取得開始コマンド(mcftstrtr),およびMCFトレース取得終了コマンド(mcftstptr)を使用すると,MCFトレース情報をMCFトレースファイルに出力できます。コマンドの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。
MCFトレースは,障害発生までのプロセス内での制御関数と各イベントの制御の流れを解析するために利用します。
(2) UAPトレース
OpenTP1のUAP(SUP,SPP,MHP)が異常終了すると,UAPから呼び出したAPIのトレース情報が出力されます。この機能をUAPトレースといい,取得した情報をUAPトレース情報といいます。OpenTP1では,UAPプロセス単位にUAPトレース情報を取得しています。
UAPトレース情報は,$DCDIR/spool/save/ディレクトリの下に,ファイル名"サーバ名n.uat"(nはUAPプロセスの退避コアファイルに付けられる通番を示します)で取得されます。このファイルを,UAPトレース編集出力ファイルといいます。
任意の退避コアファイルを基にUAPトレース情報を出力する場合は,UAPが異常終了したときに生成した退避コアファイルをuatdumpコマンドに指定して実行します。uatdumpコマンドの出力先をリダイレクトすると,任意のファイルにUAPトレース情報を取得できます。
UAPトレース情報を格納する件数の最大数は,ユーザサービス定義のuap_trace_maxオペランドに指定します。ここに指定した値を超えた場合は,ラップアラウンドして取得します。
UAPトレース情報は,異常終了したUAPのプロセス単位に取得されます。RPCでノードをわたるトランザクション処理が異常終了した場合は,UAPトレース情報はノードで実行したUAPプロセスごとに取得されます。
UAPトレースについては,マニュアル「OpenTP1 テスタ・UAPトレース使用の手引」のUAPトレースの説明を参照してください。
(3) RPCトレース
RPCのサービス要求情報をファイルにトレースとして取得できます。これをRPCトレースといいます。RPCトレースは,RPC管理コマンドでダンプ出力できます。RPCトレースは,次の目的に利用できます。
-
どのクライアントUAPとどのサーバUAPが,RPCでプロセス間通信をしたか調査します。
-
特定のサーバUAPで,どの順番にサービスを処理したか調査します。
-
RPCに障害が発生した場合に,障害発生までのサービス要求の流れを解析します。
RPCトレースファイルを編集出力する場合は,rpcdumpコマンドを実行します。
RPCトレースファイルは,システムサービスごとに取得できます。該当するシステムサービスの定義に,RPCトレースファイルを取得する指定をします。これらのRPCトレースファイルは,マージして時系列に出力できます。この場合は,rpcmrgコマンドを実行します。
(4) 性能検証用トレース
OpenTP1で動作する各種サービスの主なイベントでOpenTP1識別子などのトレース情報を取得しています。これを性能検証用トレースといいます。
性能検証用トレースには次の特長があります。
-
ノードおよびプロセスにわたる場合でもトレースを追うことができます。
-
API単位ではなく内部のイベント単位でトレースを取得するので,どの処理が性能のボトルネックであるか検証できます。
性能検証用トレースに関係するシステム定義は,次の表に示すとおりです。
定義名 |
形式 |
オペランド |
定義内容 |
---|---|---|---|
システム共通定義 |
set |
prf_trace |
性能検証用トレース情報を取得するかどうかを指定 |
set |
trn_prf_trace_level |
トレースの取得レベル |
|
性能検証用トレース定義 |
set |
prf_file_size |
トレースファイルのサイズ |
それぞれの定義の詳細については,マニュアル「OpenTP1 システム定義」を参照してください。
なお,性能検証用トレースはprfgetコマンドによってバイナリ形式で取り出したあと,prfedコマンド,またはdcalzprfコマンドによってキャラクタ形式で出力できます。
また,ユーザ固有のトレース情報をdc_prf_utrace_put関数によってトレースファイルに取得したり,直前に取得したトレースのプロセス内取得通番をdc_prf_get_trace_num関数によって取得したりできます。
- 注意事項
-
-
通常のOpenTP1再開始,およびホットスタンバイでは,トレース情報は引き継ぎません。
-
性能検証用トレース取得機能では,オンラインの性能に影響がないように,トレース取得での排他を行いません。そのため,トレース取得の競合が発生した場合,トレース情報が抜けたり,不正なトレース情報が取得されたりすることがあります。
-
(5) XAR性能検証用トレース
XAリソースサービスを使用したトランザクション連携の各種イベント(アプリケーションサーバからのトランザクション要求,OpenTP1のトランザクション処理)のトレース情報を取得しています。これをXAR性能検証用トレースといいます。
XAR性能検証用トレースは,$DCDIR/spool/dcxarinfディレクトリの下に,"_xr_001","_xr_002","_xr_003"…というファイル名で取得されます。これらのファイルをXAR性能検証用トレース情報ファイルといいます。XAR性能検証用トレース情報ファイルの出力先およびファイル名は変更できませんが,取得サイズおよび取得ファイル数は変更できます。詳細については,マニュアル「OpenTP1 システム定義」のXAR性能検証用トレース定義の説明を参照してください。
XAR性能検証用トレースを取得するには,次の手順で定義を設定します。
-
システム共通定義のprf_traceオペランドにYを指定します。
-
XAリソースサービス定義のxar_prf_trace_levelオペランドでXAR性能検証用トレースの取得レベルを指定します。
次の表にxar_prf_trace_levelオペランドの指定値とXAR性能検証用トレースの取得情報の関係を示します。
xar_prf_trace_levelオペランドの指定値 |
XAR性能検証用トレースの取得情報 |
イベントID |
トレースデータ長(単位:バイト) |
取得タイミング |
|
---|---|---|---|---|---|
00000001 |
アプリケーションサーバからのトランザクション要求 |
0x4a00 |
128 |
トランザクションブランチの開始要求 |
呼び出し直後 |
0x4a01 |
128 |
リターン直前 |
|||
0x4a02 |
128 |
トランザクションブランチ内からのRPC実行要求 |
呼び出し直後 |
||
0x4a03 |
128 |
リターン直前 |
|||
0x4a04 |
128 |
トランザクションブランチの終了要求 |
呼び出し直後 |
||
0x4a05 |
128 |
リターン直前 |
|||
0x4a06 |
128 |
トランザクションブランチのコミット準備要求 |
呼び出し直後 |
||
0x4a07 |
128 |
リターン直前 |
|||
0x4a08 |
128 |
トランザクションブランチのコミット要求 |
呼び出し直後 |
||
0x4a09 |
128 |
リターン直前 |
|||
0x4a0a |
128 |
トランザクションブランチのロールバック要求 |
呼び出し直後 |
||
0x4a0b |
128 |
リターン直前 |
|||
0x4a0c |
64 |
Prepared状態,Heuristically Completed状態のトランザクションブランチ通知要求 |
呼び出し直後 |
||
0x4a0d |
64 |
リターン直前 |
|||
0x4a0e |
128 |
Heuristically Completed状態のトランザクションブランチ破棄要求 |
呼び出し直後 |
||
0x4a0f |
128 |
リターン直前 |
|||
00000002 |
OpenTP1のトランザクション処理 |
0x4b00 |
64 |
トランザクションブランチ開始 |
直前 |
0x4b01 |
64 |
直後 |
|||
0x4b02 |
64 |
トランザクションブランチ内からのRPC実行 |
直前 |
||
0x4b03 |
64 |
直後 |
|||
0x4b04 |
64 |
トランザクションブランチの終了 |
直前 |
||
0x4b05 |
64 |
直後 |
|||
0x4b06 |
64 |
トランザクションブランチのコミット準備 |
直前 |
||
0x4b07 |
64 |
直後 |
|||
0x4b08 |
64 |
トランザクションブランチのコミット |
直前 |
||
0x4b09 |
64 |
直後 |
|||
0x4b0a |
64 |
トランザクションブランチのロールバック |
直前 |
||
0x4b0b |
64 |
直後 |
|||
0x4b0c |
64 |
Prepared,Heuristically Completed状態のトランザクションブランチの通知 |
直前 |
||
0x4b0d |
64 |
直後 |
|||
0x4b0e |
64 |
Heuristically Completed状態のトランザクションブランチの破棄 |
直前 |
||
0x4b0f |
64 |
直後 |
xar_prf_trace_levelオペランドの詳細については,マニュアル「OpenTP1 システム定義」のXAリソースサービス定義の説明を参照してください。
XAR性能検証用トレース情報ファイルの取得,編集出力には,prfgetコマンド,prfedコマンド,またはdcalzprfコマンドを使用します。取得方法,および編集出力方法を次に示します。
- XAR性能検証用トレース情報ファイルの取得方法
-
- 最新のランIDで取得されていないトレース情報だけ取得する場合
$DCDIR/bin/prfget -f _xr | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -f _xr | $DCDIR/bin/dcalzprf
- すべてのトレース情報を取得する場合
$DCDIR/bin/prfget -a -f _xr | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _xr | $DCDIR/bin/dcalzprf
- XAR性能検証用トレース情報ファイルの編集出力方法
-
XAR性能検証用トレース情報ファイルからトレース情報を編集出力する場合,prfedコマンド,またはdcalzprfコマンドを実行してください。オプションは必要に応じて指定してください。
XAR性能検証用トレース情報の出力形式は,性能検証用トレースと同じです。出力形式の詳細については,マニュアル「OpenTP1 運用と操作」のprfedコマンド,またはdcalzprfコマンドを参照してください。
(6) JNL性能検証用トレース
ジャーナルサービスで実行されるジャーナルバッファリング,およびジャーナル出力の各種イベントトレース情報を取得しています。これをJNL性能検証用トレースといいます。
JNL性能検証用トレースは,$DCDIR/spool/dcjnlinf/prfinfディレクトリの下に,"_jl_001","_jl_002","_jl_003"…というファイル名で取得されます。これらのファイルをJNL性能検証用トレース情報ファイルといいます。JNL性能検証用トレース情報ファイルの出力先およびファイル名は,変更できません。
JNL性能検証用トレースを取得するには,次の手順で定義を設定します。
-
システム共通定義のprf_traceオペランドにYを指定します。
-
システム共通定義のjnl_prf_event_trace_levelオペランドでJNL性能検証用トレースの取得レベルを指定します。
次の表にjnl_prf_event_trace_levelオペランドの指定値と取得するトレース情報の関係を示します。各イベントの取得タイミングについては,マニュアル「OpenTP1 運用と操作」の性能検証用トレース情報の取得の説明を参照してください。
jnl_prf_event_trace_levelオペランドの指定値 |
トレース情報のイベントID |
|
---|---|---|
0xc202,0xc203,0xc401,0xc402 |
0xc001〜0xc201,0xc204〜0xc400 |
|
00000000 |
× |
× |
00000001 |
○ |
× |
00000002 |
○ |
○ |
その他 |
○ |
○ |
JNL性能検証用トレース情報ファイルの取得,編集出力には,prfgetコマンド,prfedコマンド,またはdcalzprfコマンドを使用します。取得方法を次に示します。
- JNL性能検証用トレース情報ファイルの取得方法
-
- 最新のランIDで取得されていないトレース情報だけ取得する場合
$DCDIR/bin/prfget -f _jl | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -f _jl | $DCDIR/bin/dcalzprf
- すべてのトレース情報を取得する場合
$DCDIR/bin/prfget -a -f _jl | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _jl | $DCDIR/bin/dcalzprf
(7) LCK性能検証用トレース
トランザクション処理に伴う各種排他制御のトレース情報を取得しています。これをLCK性能検証用トレースといいます。
LCK性能検証用トレースは,$DCDIR/spool/dclckinf/prfディレクトリの下に,"_lk_001","_lk_002","_lk_003"…というファイル名で取得されます。これらのファイルをLCK性能検証用トレース情報ファイルといいます。LCK性能検証用トレース情報ファイルの出力先およびファイル名は変更できませんが,取得サイズおよび取得ファイル数は変更できます。詳細については,マニュアル「OpenTP1 システム定義」のLCK性能検証用トレース定義の説明を参照してください。
LCK性能検証用トレースを取得するには,次の手順で定義を設定します。
-
システム共通定義のprf_traceオペランドにYを指定します。
-
ロックサービス定義のlck_prf_trace_levelオペランドでLCK性能検証用トレースの取得レベルを指定します。
次の表にlck_prf_trace_levelオペランドの指定値とLCK性能検証用トレースの取得情報の関係を示します。
lck_prf_trace_levelオペランドの指定値 |
LCK性能検証用トレースの取得情報 |
イベントID |
トレースデータ長(単位:バイト) |
取得タイミング |
|
---|---|---|---|---|---|
00000000 |
排他制御についてのトレースを取得しない |
− |
− |
− |
|
00000001 |
排他制御についてのトレースを取得する |
0x6400 |
128 |
資源の排他 |
呼び出し直後 |
0x6401 |
128 |
リターン直前 |
|||
0x6410 |
128 |
排他待ち合せ |
開始直前 |
||
0x6411 |
128 |
終了直後 |
|||
0x6420 |
128 |
全資源の排他の解除 |
呼び出し直後 |
||
0x6421 |
128 |
リターン直前 |
|||
0x6430 |
128 |
資源名称を指定した排他の解除 |
呼び出し直後 |
||
0x6431 |
128 |
リターン直前 |
lck_prf_trace_levelオペランドの詳細については,マニュアル「OpenTP1 システム定義」のロックサービス定義の説明を参照してください。
LCK性能検証用トレース情報ファイルの取得,編集出力には,prfgetコマンド,prfedコマンド,またはdcalzprfコマンドを使用します。取得方法,および編集出力方法を次に示します。
- LCK性能検証用トレース情報ファイルの取得方法
-
- 最新のランIDで取得されていないトレース情報だけ取得する場合
$DCDIR/bin/prfget -f _lk | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -f _lk | $DCDIR/bin/dcalzprf
- すべてのトレース情報を取得する場合
$DCDIR/bin/prfget -a -f _lk | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _lk | $DCDIR/bin/dcalzprf
- LCK性能検証用トレース情報ファイルの編集出力方法
-
LCK性能検証用トレース情報ファイルからトレース情報を編集出力する場合,prfedコマンド,またはdcalzprfコマンドを実行してください。オプションは必要に応じて指定してください。
LCK性能検証用トレース情報の出力形式は,性能検証用トレースと同じです。出力形式の詳細については,マニュアル「OpenTP1 運用と操作」のprfedコマンド,またはdcalzprfコマンドを参照してください。
(8) MCF性能検証用トレース
TP1/Message Controlを使用したメッセージ送受信での主なイベントで,MCF識別子などのトレース情報を取得しています。これをMCF性能検証用トレースといいます。
MCF性能検証用トレースには次の特長があります。
-
スレッドIDや論理端末名称,API名称など,MCF固有の詳細情報を出力できます。
-
出力した詳細情報をキーとしてMCF性能検証用トレースを分析することで,一連のメッセージ送受信処理やUAPの性能検証ができます。
MCF性能検証用トレースに関係するシステム定義は,次の表に示すとおりです。
定義名 |
形式 |
オペランド |
定義内容 |
---|---|---|---|
ユーザサービス定義 |
set |
mcf_prf_trace |
ユーザサーバごとに,MCF性能検証用トレース情報を取得するかどうかを指定 |
MCF性能検証用トレース定義 |
set |
prf_file_size |
MCF性能検証用トレース情報のトレースファイルサイズ |
set |
prf_file_count |
MCF性能検証用トレース情報のトレースファイル世代数 |
|
システムサービス情報定義 |
set |
mcf_prf_trace |
MCF通信サービスごとにMCF性能検証用トレース情報を取得するかどうかを指定 |
システムサービス共通情報定義 |
set |
mcf_prf_trace_level |
MCF性能検証用トレース情報の取得レベル |
それぞれの定義の詳細については,マニュアル「OpenTP1 システム定義」を参照してください。
なお,MCF性能検証用トレースはprfgetコマンドによってバイナリ形式で取り出したあと,prfedコマンド,またはdcalzprfコマンドによってキャラクタ形式で出力できます。
- 注意事項
-
-
メッセージ送受信時(イベントID:0xa000,0xa001)にMCF性能検証用トレースを取得できるのは,次のどれかのプロトコル製品を使用した通信だけです。
・TP1/NET/TCP/IP
・TP1/NET/XMAP3
・TP1/NET/OSAS-NIF
メッセージ送受信(イベントID:0xa000,0xa001)以外のイベントについては,通信プロトコル種別に関係なく,MCF性能検証用トレースを取得できます。
-
(9) XARイベントトレース
XAリソースサービスを使用したアプリケーションサーバからのトランザクション要求種別を,イベントトレース情報として取得します。この機能をXARイベントトレースといい,取得した情報をXARイベントトレース情報といいます。
アプリケーションサーバからのトランザクション要求種別,要求コードおよび要求コードの意味を次の表に示します。
要求種別※ |
要求コード |
要求コードの意味 |
---|---|---|
Start() |
xar_start |
トランザクションブランチの開始処理 |
Call() |
xar_call |
トランザクションブランチ内からのRPCの実行 |
End() |
xar_end |
トランザクションブランチの終了処理 |
Prepare() |
xar_prepare |
トランザクションブランチのコミット準備処理(2相コミットの1相目) |
Commit() |
xar_commit |
トランザクションブランチのコミット処理(2相コミットの2相目) |
Rollback() |
xar_rollback |
トランザクションブランチのロールバック処理 |
Recover() |
xar_recover |
Prepared状態,Heuristically Completed状態のトランザクションブランチを通知 |
Forget() |
xar_forget |
Heuristically Completed状態のトランザクションブランチを破棄 |
- 注※
-
トランザクション要求種別は,OpenTP1の内部関数です。
XARイベントトレース情報は,$DCDIR/spool/dcxarinf/trace/ディレクトリの下に,ファイル名"xarevtr1"および"xarevtr2"で取得されます。これらのファイルを,XARイベントトレース情報ファイルといいます。XARイベントトレース情報ファイルの出力先およびファイル名は,変更できません。
XAリソースサービス開始時に,XARイベントトレース情報ファイルがすでに存在する場合は,バックアップファイルが作成され,新規に出力ファイルが作成されます。例えば,xarevtr1というXARイベントトレース情報ファイルが存在した場合,XAリソースサービス開始時に,xarevtr1をxarevtr1.bk1というファイルにリネームします。xarevtr1という名前のファイルは,リネームされて存在しなくなるため,新規にxarevtr1というXARイベントトレース情報ファイルが作成されます。
バックアップファイルは3世代まで保存されます。バックアップファイルが作成されるのは,XAリソースサービス開始時に,XARイベントトレース情報ファイルがすでに存在する場合だけです。オンライン中に,1ファイルへの書き込みレコード数が,XARイベントトレース情報ファイルの最大出力レコード数(XAリソースサービス定義のxar_eventtrace_recordオペランドで指定)を超えた場合には,バックアップファイルは作成されません。オンライン中に,1ファイルへの書き込みレコード数が,XARイベントトレース情報ファイルの最大出力レコード数を超えると,出力先ファイルを切り替え,XARイベントトレース情報ファイルを順次上書きしていきます。オンライン中はXARイベントトレース情報ファイルを削除しないでください。
XARイベントトレース情報の出力レベルは,XAリソースサービス定義のxar_eventtrace_levelオペランドで指定できます。デフォルトは,エラーが発生した場合だけXARイベントトレースを取得する出力レベルに指定されています。すべてのXARイベントトレース情報を取得することもできますが,その場合オンライン性能に影響を与えるため,デバッグ時以外は,デフォルトの出力レベルで運用することをお勧めします。
出力ファイルに取得されたXARイベントトレース情報は,xarevtrコマンドによって編集,表示できます。
XARイベントトレース情報の出力レベルおよび出力レコード数の指定方法についてはマニュアル「OpenTP1 システム定義」を,編集・表示方法についてはマニュアル「OpenTP1 運用と操作」を参照してください。
(10) TRNイベントトレース
トランザクションブランチで発行されるXA関数や,トランザクションサービス(トランザクション管理サービス,トランザクション回復サービス,リソースマネジャ監視サービス)の各種イベントのトレース情報を取得しています。これをTRNイベントトレースといいます。
TRNイベントトレースは,$DCDIR/spool/dctrninf/trace/prf/ディレクトリの下に,"_tr_001","_tr_002","_tr_003"…というファイル名で取得されます。これらのファイルを,TRNイベントトレース情報ファイルといいます。TRNイベントトレース情報ファイルの出力先およびファイル名は,変更できません。
TRNイベントトレース情報ファイルは,取得サイズおよび取得ファイル数を変更できます。詳細については,マニュアル「OpenTP1 システム定義」のTRNイベントトレース定義を参照してください。
TRNイベントトレースを取得するには,次の手順で定義を設定します。
-
システム共通定義のprf_traceオペランドにYを指定します。
-
トランザクションサービス定義のtrn_prf_event_trace_levelオペランドでTRNイベントトレースの取得レベルを指定します。
-
トランザクションサービス定義のtrn_prf_event_trace_conditionオペランドで,TRNイベントトレースの取得種別を指定します。
次の表にtrn_prf_event_trace_conditionオペランドの指定値とTRNイベントトレースの取得情報の関係を示します。
trn_prf_event_trace_conditionオペランドの指定値 |
TRNイベントトレースの取得情報 |
イベントID |
トレースデータ長(単位:バイト) |
取得タイミング |
---|---|---|---|---|
xafunc |
XA関数に関するトレース |
0x4500 |
320(xa_open関数,xa_close関数の場合は192) |
トランザクション処理中※ |
trnservice |
トランザクションサービスの動作状況に関するトレース |
0x4501 |
192 |
トランザクションサービスの起動,停止または回復処理時 |
- 注※
-
2相コミットのトランザクションの場合,1トランザクションブランチ当たりに取得するトレース量は「12×リソースマネジャ数」となります。ただし,トレース量は,ユーザサーバにリンケージされているXAインタフェースオブジェクトファイルや,トランザクションの最適化などの条件によって異なります。
このオペランドの詳細については,マニュアル「OpenTP1 システム定義」のシステムサービス定義を参照してください。
TRNイベントトレース情報ファイルの取得,編集出力には,prfget,prfed,またはdcalzprfコマンドを使用します。取得方法,および編集出力方法を次に示します。
- TRNイベントトレース情報ファイルの取得方法
-
- 最新のランIDで取得されていないトレース情報だけ取得する場合
$DCDIR/bin/prfget -f _tr | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -f _tr | $DCDIR/bin/dcalzprf
- すべてのトレース情報を取得する場合
$DCDIR/bin/prfget -a -f _tr | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _tr | $DCDIR/bin/dcalzprf
- TRNイベントトレース情報ファイルの編集出力方法
-
TRNイベントトレース情報を出力する場合,prfedコマンドに-dオプションを指定してください。dcalzprfコマンドには-dオプションの指定は必要ありません。そのほかのオプションは,必要に応じて指定してください。
TRNイベントトレース情報の出力形式は,性能検証用トレースと同じです。出力形式の詳細については,マニュアル「OpenTP1 運用と操作」のprfedコマンドを参照してください。
trn_prf_event_trace_conditionオペランドにxafuncを指定した場合のprfedコマンドのTRNイベントトレース情報の出力例を次に示します。
PRF: Rec Node: trn1 Run-ID: 0x4046b806 Process: 26264 Trace: 10 Event: 0x4500 Time: 2004/01/01 12:34:56 678.123.000 Server-name: Sup Rc: 0 Client: **** - ********** Server: **** Root: trn1 - ******** Svc-Grp: *************************** Svc: **************************** Trn: 78d0trn100000001trn1trn100000001 xa_commit (IN) OpenTP1_TAM axid:010000000000000c00000010 3738643074726e330000000174726e3374726e330000000100000000 Internal code1:0x2007 Internal code2: 0 Internal code3:0
(11) NAMイベントトレース
ネームサービスで実行される通信処理,キャッシュへのサービス情報の登録,削除などの各種イベントのトレース情報を取得しています。これをNAMイベントトレースといいます。
NAMイベントトレースは,$DCDIR/spool/dcnaminf/ディレクトリの下に,"_nm_001","_nm_002","_nm_003"…というファイル名で取得されます。これらのファイルを,NAMイベントトレース情報ファイルといいます。NAMイベントトレース情報ファイルの出力先およびファイル名は,変更できません。
NAMイベントトレースを取得するには,次の手順で定義を設定します。
-
システム共通定義のprf_traceオペランドにYを指定します。
-
システム共通定義のnam_prf_trace_levelオペランドでNAMイベントトレースの取得レベルを指定します。
次の表にnam_prf_trace_levelオペランドの指定値と取得するトレース情報の関係を示します。各イベントの取得タイミングについては,マニュアル「OpenTP1 運用と操作」の性能検証用トレース情報の取得の説明を参照してください。
nam_prf_trace_levelオペランドの指定値 |
トレース情報のイベントID |
||
---|---|---|---|
0xf000〜0xf035 |
0xf100〜0xf114 |
0xf200〜0xf220 |
|
00000000 |
× |
× |
× |
00000001 |
× |
○ |
× |
00000002 |
○ |
× |
× |
00000003 |
○ |
○ |
× |
00000004 |
× |
× |
○ |
00000005 |
× |
○ |
○ |
00000006 |
○ |
× |
○ |
00000007 |
○ |
○ |
○ |
その他 |
○ |
○ |
× |
- (凡例)
-
○:トレース情報を取得します。
×:トレース情報を取得しません。
NAMイベントトレース情報ファイルの取得,編集出力には,prfget,prfedコマンド,またはdcalzprfコマンドを使用します。取得方法を次に示します。
- NAMイベントトレース情報ファイルの取得方法
$DCDIR/bin/prfget -a -f _nm | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _nm | $DCDIR/bin/dcalzprf
(12) プロセスサービスのイベントトレース
プロセスの生成,消滅,起動,完了などのプロセスイベント情報を取得します。これをプロセスサービスのイベントトレースといいます。
プロセスサービスのイベントトレースは,$DCDIR/spool/dcprcinf/ディレクトリの下に,"_pr_001","_pr_002","_pr_003"…というファイル名で取得されます。これらのファイルを,プロセスサービスイベントトレース情報ファイルといいます。プロセスサービスイベントトレース情報ファイルの出力先およびファイル名は,変更できません。
プロセスサービスのイベントトレースを取得するには,プロセスサービス定義のprc_prf_traceオペランドにYを指定します。
各イベントの取得タイミングについては,マニュアル「OpenTP1 運用と操作」の性能検証用トレース情報の取得の説明を参照してください。
プロセスサービスイベントトレース情報ファイルの取得,編集出力には,prfget,prfed,またはdcalzprfコマンドを使用します。取得方法を次に示します。
- プロセスサービスイベントトレース情報ファイルの取得方法
$DCDIR/bin/prfget -a -f _pr | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _pr | $DCDIR/bin/dcalzprf
(13) FILイベントトレース
OpenTP1制御下のプロセスから内部的に発行されるOpenTP1ファイルへのアクセス要求に対して,処理完了までに,システム共通定義のfil_prf_trace_delay_timeオペランドの指定値以上の処理時間が掛かった場合,イベント情報を取得します。これをFILイベントトレースといいます。
FILイベントトレースを分析することで,OpenTP1ファイルアクセスに関する処理の遅延状況を確認できます。
FILイベントトレースは,$DCDIR/spool/dcfilinf/ディレクトリの下に,"_fl_001","_fl_002","_fl_003"というファイル名で取得されます。これらのファイルをFILイベントトレース情報ファイルといいます。FILイベントトレース情報ファイルの出力先およびファイル名は,変更できません。
FILイベントトレース情報ファイルの取得,編集出力には,prfgetコマンド,prfedコマンド,またはdcalzprfコマンドを使用します。取得方法を次に示します。
- FILイベントトレース情報ファイルの取得方法
$DCDIR/bin/prfget -a -f _fl | $DCDIR/bin/prfed -d
または
$DCDIR/bin/prfget -a -f _fl | $DCDIR/bin/dcalzprf
(14) コマンドログ
OpenTP1の運用コマンドを実行した場合に,コマンド実行時刻や終了時刻などの情報を$DCDIR/spool/cmdlogのcmdlog1,およびcmdlog2に出力します。
cmdlog1,およびcmdlog2は,viエディタなどで参照できます。コマンドログにはコマンドの開始,終了時刻が出力されるので,コマンドの実行に必要な時間(レスポンスタイム)の測定などができます。