Hitachi

OpenTP1 Version 7 分散アプリケーションサーバ TP1/LiNK 使用の手引


4.4.1 性能検証用トレース使用時の環境設定

性能検証用トレース情報を取得する場合,次の定義ファイルにオペランドを追加する必要があります。

〈この項の構成〉

(1) システム共通定義の変更

形式

set prf_trace = Y|N
  〜《N》
set trn_prf_trace_level = 性能検証用トレースの取得レベル
  〜((00000001〜00000003))《00000003》
set nam_prf_trace_level = NAMイベントトレースの取得レベル
  〜((00000000〜00000007))《00000003》
set fil_prf_trace_option = 0|1
  〜《1》
set fil_prf_trace_delay_time = FILイベントトレース取得条件となるファイルアクセス処理時間のしきい値
  〜〈符号なし整数〉((1〜65535))《3》(単位:秒)

説明

●prf_trace

性能検証用トレース情報を取得するかどうかを指定します。

Y

性能検証用トレース情報を取得します。

N

性能検証用トレース情報を取得しません。

●trn_prf_trace_level

性能検証用トレースの取得レベルを指定します。性能検証用トレース情報で,トランザクション関係のトレースの取得レベルを指定します。トランザクション関係のトレースのイベントIDは0x4000から0x4150です。イベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

00000001

イベントIDが0x4000から0x4017の性能検証用トレース情報を取得します。

00000002

トランザクションの開始時および終了時のイベント(イベントIDが0x4100,0x4150)の性能検証用トレース情報を取得します。

00000003

00000001および00000002の両方の性能検証用トレース情報を取得します。

●nam_prf_trace_level

性能検証用トレース情報の取得で,ネームサービス関係のトレース(NAMイベントトレース)の取得レベルを指定します。NAMイベントトレースのイベントIDは0xf000から0xffffです。

なお,次の値以外を指定した場合は,00000003を指定したと仮定されます。

00000000

NAMイベントトレースを取得しません。

00000001

サービスグループ情報の登録,削除などのイベント情報を取得します。イベントIDの0xf100から0xf1ffまでが該当します。

00000002

ネームサーバ(namd)が行う他ノードとの通信処理に関するNAMイベントトレースを取得します。イベントIDの0xf000から0xf0ffまでが該当します。

00000003

00000001および00000002の両方のNAMイベントトレースを取得します。

00000004

UAPおよび運用コマンドのプロセスとネームサーバ(namd)との通信処理に関するNAMイベントトレースを取得します。イベントIDの0xf200から0xf2ffまでが該当します。

00000005

00000001および00000004の両方のNAMイベントトレースを取得します。

00000006

00000002および00000004の両方のNAMイベントトレースを取得します。

00000007

すべてのNAMイベントトレース(00000001,00000002および00000004に該当するNAMイベントトレース)を取得します。

取得したトレースをファイル出力または編集出力するには,prfgetコマンドまたはprfedコマンドを使用します。prfgetコマンドまたはprfedコマンドの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

●fil_prf_trace_option

FILイベントトレースを取得するかどうかを指定します。

0

FILイベントトレースを取得しません。

1

ステータスファイル,XARファイル,またはノードリストファイルへのアクセス要求で,fil_prf_trace_delay_timeオペランドの指定値以上の処理時間が掛かった場合,遅延情報としてFILイベントトレースを取得します。

このオペランドに0または1以外の値を指定しないでください。0または1以外の値を指定した場合の動作は保証できません。

FILイベントトレースで取得されるイベントIDは,0x6805,0x6807,0x6905,0x6907,および0x6909です。

イベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

●fil_prf_trace_delay_time

FILイベントトレースの取得条件となるファイルアクセス処理時間のしきい値を指定します。

しきい値を監視する時間精度は秒単位です。そのため,タイミングによっては,このオペランドに指定した値よりも短いファイルアクセス処理時間でFILイベントトレースが取得されることがあります。しきい値が小さくなるほど,誤差の影響を受けやすくなるため,注意してください。

(2) トランザクションサービス定義の変更

形式

set trn_prf_event_trace_level = TRNイベントトレースの取得レベル
  〜((00000000〜00000007))《00000007》
set trn_prf_event_trace_condition = TRNイベントトレースの種類〔,TRNイベントトレースの種類〕
  〜《xafunc》

説明

●trn_prf_event_trace_level

TRNイベントトレースの取得レベルを指定します。

このオペランドは,イベントトレースの取得機能を制御します。このオペランドの指定を省略した場合は,入り口情報,正常出口情報,およびエラー出口情報をトレースとして取得します。TRNイベントトレースの詳細については,マニュアル「OpenTP1 解説」のトレース機能についての記述を参照してください。

00000000

TRNイベントトレースを取得しません。

00000001

イベントの入り口でトレースを取得します(入り口情報)。

00000002

イベントの出口でトレースを取得します(正常出口情報)。

trn_prf_event_trace_conditionオペランドに,xafuncを指定した場合は,XA関数のリターン値が0以上のときにトレースを取得します。

00000004

イベントの出口で障害が発生したときにトレースを取得します(エラー出口情報)。

00000007

イベントの入り口,および出口(障害発生時を含む)でトレースを取得します(入り口情報,正常出口情報,およびエラー出口情報)。

取得したトレースをファイル出力または編集出力するには,prfgetコマンドまたはprfedコマンドを使用します。ファイルの出力結果は,%DCDIR%\spool\dctrninf\trace\prfに保存されます。prfgetコマンドまたはprfedコマンドの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

●trn_prf_event_trace_condition

取得するTRNイベントトレースの種類を指定します。取得したいトレースによって,複数の種類を指定できます。このオペランドの指定を省略した場合は,XA関数についてのトレースを取得します。

xafunc

XA関数についてのトレースを取得します。

trnservice

トランザクションサービスの動作状況についてのトレースを取得します。

(3) 性能検証用トレース定義の変更

形式

set prf_file_size = トレースファイルのサイズ
  〜〈符号なし整数〉((1024〜1048576))《10240》(単位:キロバイト)

説明

性能検証用トレース情報のトレースファイルのサイズを指定します。

このファイルは性能検証用トレース定義の3世代分用意され,3世代すべてを使用したらオーバラップして上書きします。このため,ある程度時間が経つと古いトレース情報がなくなります。このprf_file_sizeを大きくすることで,ファイルを上書きする時間を延長できます。

トレースファイルのサイズは次の式で求められます。

1ファイルサイズ=128+(1トランザクションで必要なトレースデータ長
×実行トランザクション数)
注※

1トランザクションで必要なトレースデータ長は,マニュアル「OpenTP1 運用と操作」を参照して計算してください。

なお,TP1/LiNKの終了時にprfトレースファイルのバックアップを取得します。バックアップファイルは,%DCDIR%\spool\save下に作成されます。prfトレースファイルのバックアップの対象となるファイルの一覧を次の表に示します。

表4‒5 prfトレースファイルのバックアップの対象となるファイルの一覧

トレースファイル名称

ファイル名

バックアップファイル名

性能検証用トレース情報のトレースファイル

prf_001,prf_002,prf_003

prf_nnn.bk1,prf_nnn.bk2

TRNイベントトレースファイル

_tr_001,_tr_002,_tr_003

_tr_nnn.bk1,_tr_nnn.bk2

NAMイベントトレースファイル

_nm_001,_nm_002,_nm_003

_nm_nnn.bk1,_nm_nnn.bk2

XAR性能検証用トレース情報ファイル

_xr_001,_xr_002,_xr_003

_xr_nnn.bk1,_xr_nnn.bk2

プロセスサービスイベントトレース

_pr_001,_pr_002,_pr_003

_pr_nnn.bk1,_pr_nnn.bk2

FILイベントトレース情報ファイル

_fl_001,_fl_002,_fl_003

_fl_nnn.bk1,_fl_nnn.bk2

注※

nnn:各トレースファイルのファイル名に対応した値です。

各トレースファイルの詳細については,マニュアル「OpenTP1 解説」を参照してください。

(4) TRNイベントトレース定義の変更

形式

set prf_file_size = トレースファイルのサイズ
  〜〈符号なし整数〉((1024〜1048576))《10240》(単位:キロバイト)

説明

TRNイベントトレース情報のトレースファイルのサイズを指定します。

TRNイベントトレース情報は,3世代分用意され,3世代すべてを使用したらオーバラップして上書きします。このため,ある程度時間が経つと古いトレース情報がなくなります。prf_file_sizeオペランドを大きくすることで,ファイルを上書きする時間を延長できます。

トランザクション実行中に取得するトレースファイルの1ファイルサイズの算出式を,次に示します。

1ファイルサイズ=128+(12×アクセスするリソースマネジャ数
×320×実行トランザクション数)
注※

2相コミットのトランザクションの場合,1トランザクションブランチ当たりに取得するトレース量は「12×アクセスするリソースマネジャ数」です。ただし,トレース量は,ユーザサーバにリンケージされているXAインタフェースオブジェクトファイルや,トランザクションの最適化などの条件によって異なります。

(5) XAリソースサービス定義の変更

形式

set xar_prf_trace_level = XAR性能検証用トレース情報の取得レベル
  〜((00000000〜00000003))《00000003》

説明

XAR性能検証用トレースの取得レベルを指定します。複数の取得レベルを指定したい場合は,それぞれの指定値の論理和を指定してください。

XAR性能検証用トレースの詳細については,マニュアル「OpenTP1 解説」の障害の原因解析の説明を参照してください。

00000000

XAR性能検証用トレースを取得しません。

00000001

アプリケーションサーバからのトランザクション要求の入り口および出口で,トレース(イベントIDが0x4a00から0x4a0fまで)を取得します。

00000002

TP1/LiNKのトランザクション処理の入り口および出口で,トレース(イベントIDが0x4b00から0x4b0fまで)を取得します。

取得したトレースをファイル出力または編集出力するには,prfgetコマンドまたはprfedコマンドを使用します。ファイルの出力結果は,%DCDIR%\spool\dcxarinfに保存されます。

prfgetコマンド,prfedコマンド,およびイベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

(6) XAR性能検証用トレース定義の変更

形式

set prf_file_size = XAR性能検証用トレース情報ファイルのサイズ
  〜〈符号なし整数〉((1024〜1048576))《10240》(単位:キロバイト)

説明

XAR性能検証用トレース情報ファイルのサイズを指定します。

XAR性能検証用トレース情報は,3世代分用意され,3世代すべてを使用したらオーバラップして上書きします。このため,ある程度時間がたつと古いトレース情報がなくなります。prf_file_sizeオペランドを大きくすることで,ファイルを上書きする時間を延長できます。

トランザクション実行中に取得するトレースファイルの1ファイルサイズの算出式を,次に示します。

1ファイルサイズ=128+(384×(4+1トランザクションで実行するRPCコール回数)×実行トランザクション数)
注※

トレース量は,トランザクションの最適化などの条件によって異なります。

(7) プロセスサービス定義の変更

形式

set prc_prf_trace = Y|N
  〜《Y》

説明

プロセスサービスのイベントトレースを取得するかどうかを指定します。

Y

プロセスサービスのイベントトレースを取得します。

N

プロセスサービスのイベントトレースを取得しません。

このオペランドでYを指定した場合,プロセスサービスの動作を検証するためのイベントトレースが取得されます。

イベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

イベントトレースは次に示すファイルに取得されます。

イベントトレースのうち,プロセスの生成と消滅については次に示すタイミングで情報が取得されます。

  1. プロセス生成時に子プロセスで取得(イベントIDは0xb001)

  2. プロセス消滅時に取得(イベントIDは0xb002)

  3. プロセス生成時に親プロセスで取得(イベントIDは0xb003)

prfedコマンド実行時に-dオプションを指定すると,1.では生成したプロセスのサーバ名を,2.では消滅したIDとその終了状態を,また3.では生成したプロセスIDを,表示されるデータとして取得します。したがって,取得したトレース情報をprfedコマンドで出力する場合は,-dオプションを指定してください。

-dオプションを指定すると次のようにトレース情報が出力されます。

1.の場合
Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
 +0000  aa aa aa aa aa aa aa aa                          AAAAAAAA
  • aa:生成したプロセスのサーバ名(16進数字)

  • AAAAAAAA:生成したプロセスのサーバ名(ASCIIコード)

2.の場合
Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
 +0000  bb bb bb bb cc cc cc cc                          BBBBCCCC
  • bb:消滅したプロセスID(16進数字)

  • BBBB:消滅したプロセスID(ASCIIコード)

  • cc:消滅したプロセスの終了状態(16進数字)

  • CCCC:消滅したプロセスの終了状態(ASCIIコード)

3.の場合
Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
 +0000  dd dd dd dd                                      DDDD
  • dd:生成したプロセスID(16進数字)

  • DDDD:生成したプロセスID(ASCIIコード)

prfedコマンドの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

(8) rapリスナーサービス定義の変更

形式

set scs_prf_trace_level = リモートAPI機能での性能検証用トレース取得レベル
  〜〈符号なし整数〉((00000000〜00000009))《00000001》

説明

リモートAPI機能での性能検証用トレースの取得レベルを指定します。指定した値が次に示すビットを含む場合,情報を取得します。性能検証用トレースの取得レベルを複数指定する場合,それぞれの指定値の論理和を指定してください。

00000000

リモートAPI機能での性能検証用トレースを取得しません。

00000001

イベントIDが0x5001〜0x5008の性能検証用トレースを取得します。

00000008

イベントIDが0x5200,または0x5201の性能検証用トレースを取得します。

イベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

なお,rapリスナーサービス定義を変更したあと,[RAPサービス環境]ウィンドウで,対象のRAPサービスの[RAPサービス環境設定]ダイアログボックスを開き,[上書き保存(V)]ボタンをクリックしてください。