dcalzprf

名称

性能検証用トレース情報解析

形式

dcalzprf 〔-H ヘッダオプション〔,ヘッダオプション〕〕
〔-L 付加情報オプション〔,付加情報オプション〕〕
〔-x 表示するプロセス数〕
〔-d 起点時刻〕
〔-C 時刻差計算開始イベントID〔,時刻差計算開始イベントID〕...
 -F 時刻差計算終了イベントID〔,時刻差計算終了イベントID〕...〕
〔-o ファイル出力先ディレクトリ〕
〔-T 〔開始時刻〕〔,終了時刻〕〕
〔-r ランID〔,ランID〕...〕
〔-n ノードID〔,ノードID〕...〕
〔-g サービスグループ名〔,サービスグループ名〕...〕
〔-s サービス名〔,サービス名〕...〕
〔-p プロセスID〔,プロセスID〕...〕
〔-v サーバ名〔,サーバ名〕...〕
〔-e イベントID〔,イベントID〕...|-S|-U〕
〔-c 通信番号〔,通信番号〕...〕
〔-G グローバルトランザクションID〔,グローバルトランザクションID〕...〕
〔-f 送信元ノード〔,送信元ノード〕...〕
〔-t 送信先ノード〔,送信先ノード〕...〕
〔-R ルート通信番号〔,ルート通信番号〕...〕
〔-E〕
〔トレースデータファイル名〔 トレースデータファイル名〕...〕

機能

標準入力,または指定されたトレースデータファイルから,性能検証用トレース(prfトレース)情報を入力し,トレース情報を編集出力します。編集結果は,時間とプロセスの関連を表の形式で示したcsv形式でファイル出力します。

このコマンドの使用は,TP1/Extension 1をインストールしていることが前提です。

このコマンドのメインオプション一覧を次に示します。

表13-1 dcalzprfコマンドのメインオプション一覧

オプション機能複数指定
-H編集結果ファイルのヘッダを変更
-L編集結果にレコード固有の付加情報を追加
-x一つのファイルに編集出力するプロセスのカラム数を指定×
-d指定した起点時刻から各トレース情報までの時刻差を出力×
-C指定したイベントIDのトレース情報と-Fオプションの引数に指定されたイベントIDのトレース情報の時刻差を出力
-F指定したイベントIDのトレース情報と-Cオプションの引数に指定されたイベントIDのトレース情報の時刻差を出力
-o編集結果ファイルの出力先ディレクトリを指定×
(凡例)
○:コンマ区切りで複数の値を指定できます。
×:複数の値の指定はできません。

このコマンドのサブオプション一覧を次に示します。サブオプションによって,編集出力対象とするトレース情報を選択できます。サブオプションを活用することで,出力ファイルサイズを小さくすることができます。

表13-2 dcalzprfコマンドのサブオプション一覧

オプション機能複数指定
-T指定された時刻内に取得されたトレース情報だけを編集出力×
-r指定されたランIDを持つのトレース情報だけを編集出力
-n指定されたノードIDを持つのトレース情報だけを編集出力
-g指定されたサービスグループ名を持つトレース情報だけを編集出力
-s指定されたサービス名を持つのトレース情報だけを編集出力
-p指定されたプロセスIDの持つのトレース情報だけを編集出力
-v指定されたサーバ名を持つトレース情報だけを編集出力
-e指定されたイベントIDを持つトレース情報だけを編集出力
-SOpenTP1のシステムが出力しているトレース情報だけを編集出力×
-Uユーザが出力しているトレース情報だけを編集出力×
-c指定されたクライアント通信番号を持つトレース情だけを編集出力
-G指定されたグローバルトランザクションIDを持つトレース情報だけを編集出力
-f指定された送信元ノードIDを持つトレース情報だけを編集出力
-t指定された送信先ノードIDを持つトレース情報だけを編集出力
-R指定されたルート通信番号を持つトレース情報だけを編集出力
-E処理がエラーリターンしていることを記録したトレース情報だけを編集出力×
(凡例)
○:コンマ区切りで複数の値を指定できます。
×:複数の値の指定はできません。

オプションで説明するイベントIDについては,「付録L.1 性能検証用トレースの取得情報」を参照してください。

オプション

●-H pid|name|pid,name

編集結果ファイルのヘッダを変更します。

トレース情報にサーバ名が含まれていない場合,サーバ名を「****」と表示します。

このオプションの指定を省略すると,通番表示となります。

pid
編集結果ファイル内でプロセスごとに割り当てた通番を,プロセスID表示に変更します。
name
編集結果ファイル内でプロセスごとに割り当てた通番を,サーバ名表示に変更します。
pid,name
編集結果ファイル内でプロセスごとに割り当てた通番を,サーバ名(プロセスID)表示に変更します。

●-L MCF|MQ|MCF,MQ

編集結果に,レコード固有の付加情報を追加します。

MCF
TP1/Message Controlのイベント情報で取得されるMCF固有情報から,論理端末名を切り出して出力します。
MQ
TP1/Message Queueイベント情報で取得されるキュー名,メッセージトークン,メッセージ識別子を出力します。
MCF,MQ
TP1/Message Controlのイベント情報で取得されるMCF固有情報から,論理端末名を切り出して出力します。また,TP1/Message Queueのイベント情報で取得されるキュー名,メッセージトークン,メッセージ識別子を出力します。

●-x 表示するプロセス数  ~〈符号なし整数〉((1~65536))《256》

一つのファイルに編集出力するプロセスのカラム数を指定します。指定を省略すると256が設定されていることを仮定します。

編集対象のprfトレースファイルに,指定した数より多いプロセスが含まれていた場合,複数のファイルに分割して編集出力します。出力ファイル数の計算式を次に示します。

↑P/-x指定値↑

(凡例)
↑↑:値を切り上げます
P:出力対象となるプロセス数

小さい値を指定し,上記の計算式の結果が大きくなりすぎた場合,出力ファイル数の上限により,編集結果ファイルが出力されないことがあります。

必要以上に大きな値を指定した場合,使用する表計算ソフトウェアの表示制限を超える形式でファイルを作成することがあり,編集結果を正しく表示できないときがあります。

●-d 起点時刻

指定した起点時刻から,各トレース情報までの時刻差を出力します。

起点時刻は,設定されているタイムゾーンの下限値(グリニッジ標準時の場合1970年1月1日0時0分0秒)から当年当月当日の現在時刻までの範囲で指定します。

起点時刻は,「hhmmss〔MMDD〔YYYY〕〕」の形式で指定します。

hh:時(00≦hh≦23)
指定を省略できません。
mm:分(00≦mm≦59)
指定を省略できません。
ss:秒(00≦ss≦59)
指定を省略できません。
MM:月(01≦MM≦12)
指定を省略できます。
DD:日(01≦DD≦31)
指定を省略できます。
YYYY:年(西暦を4けたで指定します(1970≦YYYY))
指定を省略できます。
注※
「年」の指定を省略した場合は,当年の指定月日時刻と見なされます。「年,月,日」の指定を省略した場合,当年当月当日の指定時刻と見なされます。「月,日」,「月」,または「日」だけを省略することはできません。省略した場合はオプションエラーになります。「月」または「日」を省略したい場合は,「年」,「月」,「日」のすべてを省略してください。

起点時刻に0を指定した場合("-d 0")は,出力結果ファイルの先頭に出現したトレース情報の取得時刻を起点時刻として,各トレース情報までの時刻差を計算します。

●-C 時刻差算出開始イベントID  ~〈6けたの16進数(先頭の0xを含む)〉

このオプションに指定したイベントIDのトレース情報と,-Fオプションの引数に指定されたイベントIDのトレース情報の時刻差を出力します。-FオプションのイベントIDと重複しないように,セットで指定してください。

時刻差を計算できるのは,一つのプロセスが出力しているトレース情報に出現しているイベントの間ごとになります。二つ以上のプロセス間で出力しているイベントごとの時刻差は計算できません。

複数のイベントIDを指定する場合,イベントIDとイベントIDとの間をコンマ(,)で区切ります。複数イベントIDを指定した場合,該当のイベントIDがトレースから見つかるたびに,時刻差計算の始点を上書きしていきます。

●-F 時刻差算出終了イベントID  ~〈6けたの16進数(先頭の0xを含む)〉

このオプションに指定したイベントIDのトレース情報と,-Cオプションの引数に指定されたイベントIDのトレース情報の時刻差を出力します。-CオプションのイベントIDと重複しないように,セットで指定してください。

時刻差を計算できるのは,一つのプロセスが出力しているトレース情報に出現しているイベントの間ごとになります。二つ以上のプロセス間で出力しているイベントごとの時刻差は計算できません。

複数のイベントIDを指定する場合,イベントIDとイベントIDとの間をコンマ(,)で区切ります。

●-o ファイル出力先ディレクトリ  ~〈パス名〉

prfトレースの編集結果ファイルを出力するディレクトリを指定します。

指定を省略した場合は,カレントディレクトリに編集結果ファイルを出力します。

●-T 〔開始時刻〕〔,終了時刻〕

指定された時刻内に取得されたトレース情報だけを出力します。

開始時刻,および終了時刻は,設定されているタイムゾーンの下限値(グリニッジ標準時の場合1970年1月1日0時0分0秒)から当年当月当日の現在時刻までの範囲で指定します。

開始時刻,または終了時刻のどちらかを必ず指定してください。開始時刻の指定を省略すると,先頭から指定した終了時刻までが出力範囲となります。終了時刻の指定を省略すると,指定した開始時刻から最後までが出力範囲となります。

開始時刻,および終了時刻は,「hhmmss〔MMDD〔YYYY〕〕」の形式で指定します。

hh:時(00≦hh≦23)
指定を省略できません。
mm:分(00≦mm≦59)
指定を省略できません。
ss:秒(00≦ss≦59)
指定を省略できません。
MM:月(01≦MM≦12)
指定を省略できます。
DD:日(01≦DD≦31)
指定を省略できます。
YYYY:年(西暦を4けたで指定します(1970≦YYYY))
指定を省略できます。
注※
開始時刻,または終了時刻の「年」の指定を省略した場合は,当年の指定月日時刻と見なされます。「年,月,日」の指定を省略した場合,当年当月当日の指定時刻と見なされます。「月,日」,「月」,または「日」だけを省略することはできません。省略した場合はオプションエラーになります。「月」または「日」を省略したい場合は,「年」,「月」,「日」のすべてを省略してください。

●-r ランID  ~〈3~10けたの16進数(先頭の0xを含む)〉

指定されたランIDを持つトレース情報だけを編集出力します。

●-n ノードID  ~〈4文字の識別子〉

指定されたノードIDを持つトレース情報だけを編集出力します。

●-g サービスグループ名  ~〈1~31文字の識別子〉

指定されたサービスグループ名を持つトレース情報だけを編集出力します。

●-s サービス名  ~〈1~31文字の識別子〉

指定されたサービス名を持つトレース情報だけを編集出力します。

●-p プロセスID  ~〈符号なし整数〉

指定されたプロセスIDのトレース情報だけを編集出力します。

●-v サーバ名  ~〈1~8文字の識別子〉

指定されたサーバ名を持つトレース情報だけを編集出力します。

●-e イベントID  ~〈6けたの16進数(先頭の0xを含む)〉

指定されたイベントIDを持つトレース情報だけを編集出力します。

●-S

OpenTP1のシステムが出力しているトレース情報だけを編集出力します。

●-U

ユーザが出力しているトレース情報だけを編集出力します。

●-c 通信番号  ~〈10けたの16進数(先頭の0xを含む)〉

指定されたクライアント通信番号を持つトレース情報だけを編集出力します。

●-G グローバルトランザクションID  ~〈128文字以内の英数字〉

指定されたグローバルトランザクションIDを持つトレース情報だけを編集出力します。

●-f 送信元ノード  ~〈4文字の識別子〉

指定された送信元ノードIDを持つトレース情報だけを編集出力します。

●-t 送信先ノード  ~〈4文字の識別子〉

指定された送信先ノードIDを持つトレース情報だけを編集出力します。

●-R ルート通信番号  ~〈10けたの16進数(先頭の0xを含む)〉

指定されたルート通信番号を持つトレース情報だけを編集出力します。

●-E

処理がエラーリターンしていることを記録したトレース情報だけを出力します。

コマンド引数

●トレースデータファイル名  ~<パス名>

性能検証用トレースファイルを指定します。トレースデータファイル名の指定がない場合,標準入力からデータを入力します。また,複数のファイルを指定した場合は,取得時刻順に並べ替えて出力することができます。

出力形式

dcalzprfコマンドでは,編集したトレース情報を編集結果ファイルに出力します。

編集結果ファイル名は「prfdataX.csv」です。Xの範囲は,0から次に示す値までです。出力先ディレクトリに,編集結果ファイル名(prfdataX.csv)と同名のファイルがある場合は,内容を上書きします。

「-C,-F」「-d」「-H pid,name」「-L MCF,MQ」の各オプションを指定したときの性能検証用トレースファイルの出力形式を次に示します。

図13-1 性能検証用トレースファイルの出力形式

[図データ]

(凡例)
1,2,および3:1行で表示します。

性能検証用トレースファイルの出力形式を,表計算ソフトで表示したときの例を次に示します。

図13-2 性能検証用トレースファイルの出力形式(表計算ソフトで表示)

[図データ]

性能検証用トレースファイルの出力条件とヘッダの詳細を次に示します。

表13-3 性能検証用トレースファイルの出力条件とヘッダの詳細

出力条件ヘッダ内容
共通Dateaaaa:トレースを取得した時刻(年)
bb:トレースを取得した時刻(月)
cc:トレースを取得した時刻(日)
共通Timedd:トレースを取得した時刻(時)
ee:トレースを取得した時刻(分)
ff:トレースを取得した時刻(秒)
共通under-Secgggggg:トレースを取得した時刻(マイクロ秒で6けた)
共通Node-idhhhh:ノードID(4文字)
-C,-Fオプション指定時Diffii...ii:-C,-Fオプションに指定されたイベントID間の時刻差(マイクロ秒で16けた以内)(-Fに設定したイベントIDの行に出力されます)
-dオプション指定時Totaljj...jj:-dオプションに指定した起点時刻から各トレース情報の時刻差(マイクロ秒で16けた以内)(起点時刻を省略した場合は編集出力ファイルごとの先頭トレース情報が起点時刻になります)
-Hオプション省略時1,2,...,256※1kk...kk:イベントID(詳細については「付録L.1 性能検証用トレースの取得情報」を参照)
-H pid指定時ll...ll※2
-H name指定時nn...nn※2,※3
-H pid,name指定時nn...nn(ll...ll)※2,※3
共通pidll...ll:プロセスID(10進10けた以内)
共通Tracemm...mm:該当プロセスでのトレース通番(10進5けた以内)
共通Server-namenn...nn:イベントの発生したサーバ名(8文字以内)
共通rcoo...oo:リターンコード(10進11けた以内(先頭の符号を含む))
共通cltpppp:クライアントOpenTP1識別子(4文字)
qqqqqqqqqq:クライアント通信番号(16進10けた(先頭の0xを含む))
共通serverrrrr:サーバOpenTP1識別子(4文字)
共通rootssss:ルートOpenTP1識別子(4文字)
tttttttttt:ルート通信番号(16進10けた(先頭の0xを含む))
共通svguu...uu:サービスグループ名(32文字以内)
共通svcvv...vv:サービス名(32文字以内)
共通trnww...ww:グローバルトランザクションID(128文字以内)
xxxxxxxxxxxxxxxx:ブランチID(16文字)
共通XAxx...xx:イベント種別(75文字以内)※4
共通JNLyy:ジャーナル種別(2文字)※5
-L MQ指定時Que-namezz...zz:TP1/Message Queueを利用した際のキュー名(48文字以内)※6
Msg-TokenAA...AA:TP1/Message Queueを利用した際のメッセージトークン(16進18けた(先頭の0xを含む))※6
Msg-IDBB...BB:TP1/Message Queueを利用した際のメッセージ識別子
(16進66けた(先頭の0xを含む))※6
-L MCF指定時MCFData1CC...CC:TP1/Message Controlを利用した際の論理端末名(8文字以内)※7
MCFData2DD...DD:TP1/Message Controlを利用した際のUOC,API名,ジャーナル種別などの情報(8文字以内)※7
共通BinEE...EE:詳細情報の16進数字列(8文字ごとの△(半角スペース)を含む,575文字以内)※8
共通Ascii"FF...FF":詳細情報のアスキー文字列(256文字以内)※8
トレースで取得されていない項目は「**...**」で表示されます。
注※1
コマンドに指定した性能検証用トレースファイルに含まれていたプロセスに振られた通番です。デフォルトでは一つの出力結果ファイルで1~256が出力されます。-xオプションで1ファイル当たりの上限値を変更できます。
注※2
デフォルトでは一つの出力結果ファイルで256個のカラムが出力され,-xオプションで1ファイル当たりのカラム数を変更できます。トレースファイル上のプロセス数がカラム数未満の場合は,カラム数に満たない残りのヘッダおよび内容が空となります。
注※3
トレース情報にサーバ名が含まれていない場合,サーバ名を「****」と表示します。
注※4
trn_prf_event_trace_conditionオペランドにxafuncを指定した場合は,XA関数名が出力されます。
trn_prf_event_trace_conditionオペランドにtrnserviceを指定した場合は,次に示すイベント種別が出力されます。

表13-4 trn_prf_event_trace_conditionオペランドにtrnserviceを指定した場合の出力イベント種別

イベントタイミングイベント種別
トランザクション管理サービス開始中trnd starting
開始完了trnd started
終了中trnd ending
終了完了trnd ended
トランザクション回復サービス開始中trnrvd starting
開始完了trnrvd started
回復開始trnrvd recovery started
回復終了trnrvd recovery ended
終了中trnrvd ending
終了完了trnrvd ended
リソースマネジャ監視サービス開始中trnrmd starting
開始完了trnrmd started
終了中trnrmd ending
終了完了trnrmd ended
※5
イベントIDが0xc001の場合だけ出力します。1文字目はジャーナル種別の1文字目(例:CJの場合は'C'),2文字目は保守情報を示します。
※6
イベントIDが0xdで始まるものだけ出力します。それ以外は「**...**」で出力します。
※7
イベントIDが0xaで始まるものだけ出力します。それ以外は「**...**」で出力します。
※8
システムまたはユーザによる固有データが含まれないレコードでは出力されません。

dcalzprfコマンドでは編集出力ファイルとは別に,編集出力ファイルごとに割り振られたプロセスの通番と,実際のプロセスの情報の関連一覧を,標準出力に表示します。

形式は次のとおりです。

[図データ]

出力メッセージ

メッセージID内容出力先
KFCA01861-Eコマンドでエラーが発生しました標準エラー出力
KFCA01882-Eコマンドの引数に誤りがあります標準エラー出力
KFCA33303-Eファイルのオープンに失敗しました標準エラー出力
KFCA33304-Eファイルのアクセス中に障害が発生しました標準エラー出力
KFCA33305-Eファイルの書き込みに失敗しました標準エラー出力
KFCA33307-Iヘルプメッセージ標準出力
KFCA33308-W条件に合致するトレースデータがありません標準エラー出力

注意事項