rpcdump
形式
rpcdump 〔{-r|-m}〕 〔{-c|-f}〕 〔-d 電文長〕 〔-t 〔開始〕〔,終了〕〕 〔-s サービスグループ名〔,サービス名〕…〕 〔-b ノード識別子〔,ノード識別子〕…〕 〔-v サーバ名〔,サーバ名〕…〕 〔-p プロセスID〔,プロセスID〕…〕 〔-x xid〔,xid〕…〕 〔-n 〔開始トレース番号〕〔,終了トレース番号〕〕 〔RPCトレースファイル名〕
機能
指定したRPCトレースファイルのトレース情報を編集して,標準出力に出力します。
オプション
●-r
編集した結果をRPCトレースファイルの形式で出力します。
●-m
RPCトレースの概要情報を出力します。
このオプションを指定すると,-c,-f,および-dオプションの指定は無効になります。
●-c
コール元とコール先のコール関係を抽出して編集し,コール関係にあるトレース情報単位に出力します。トレース情報単位の出力順序は,ほかのオプションの出力条件に従って時系列にソートした順序です。
ほかのオプションを指定して抽出されたトレース情報とコール関係にあるトレース情報は,ほかのオプションの出力条件に合わなくても出力されます。
●-f
RPCの一連のフローを抽出して編集し,ネスト関係にあるトレース情報単位に出力します。トレース情報単位の出力順序は,ほかのオプションの出力条件に従って時系列にソートした順序です。
ほかのオプションを指定して抽出されたトレース情報と同一のフロー内のトレース情報は,ほかのオプションの出力条件に合わなくても出力されます。
-c,および-fオプションを両方とも指定をしないと,RPCトレース情報が時系列に表示されます。
●-d 電文長 〜((0〜4096))
指定した長さの電文の内容を出力します。
このオプションの指定を省略すると,すべての電文の内容が出力されます。
●-t 〔開始〕〔,終了〕
トレース情報の出力範囲をトレース取得日時で指定します。
開始には,出力を開始する日時を指定します。終了には出力を終了する日時を指定します。
開始,および終了は,1970年1月1日0時0分0秒から当年当月当日の現在時刻までの範囲で指定します。
開始,または終了のどちらか一方を必ず指定してください。開始の指定を省略すると,RPCトレースファイルの先頭から指定した終了時刻までが出力範囲になります。終了の指定を省略すると,指定した開始時刻からRPCトレースファイルの最後までが出力範囲になります。
開始,および終了は,「hhmmss〔MMDD〔YYYY〕〕」の形式で指定します。
- hh:時(00≦hh≦23)
-
指定を省略できません。
- mm:分(00≦mm≦59)
-
指定を省略できません。
- ss:秒(00≦ss≦59)
-
指定を省略できません。
- MM:月(01≦MM≦12)
-
指定を省略できます。※
- DD:日(01≦DD≦31)
-
指定を省略できます。※
- YYYY:年(1970からの西暦を4けたで指定します)
-
指定を省略できます。※
- 注※
-
開始,または終了の「年」の指定を省略した場合は,当年の指定月日時刻と見なされます。「年,月,日」の指定を省略した場合,当年当月当日の指定時刻と見なされます。「月,日」,「月」,または「日」だけを省略することはできません。省略した場合はオプションエラーになります。「月」または「日」を省略したい場合は,「年」,「月」,「日」のすべてを省略してください。
-tオプションの指定を省略すると,指定したファイル内のすべての情報を編集出力します。
●-s サービスグループ名〔,サービス名〕 〜〈1〜31文字の識別子〉
特定のサービスのコール先トレース情報も含めたトレース情報を編集して出力する場合,サービスグループ名,およびサービス名を指定します。
サービスグループに複数のサービスを指定できます。複数のサービスを指定する場合,サービス名とサービス名との間をコンマ(,)で区切ります。
サービス名の指定を省略すると,指定したサービスグループのすべてのサービスのトレース情報が編集されて出力されます。
サービス名だけを指定することはできません。
XATMIリクエスト/レスポンス型通信のサービスを指定する場合,サービスグループ名にはSPPのサービス定義で指定した名称を指定します。XATMI会話型通信のサービス名は指定できません。
●-b ノード識別子 〜〈4文字の識別子〉
指定したノード識別子のOpenTP1ノードで取得したトレース情報を出力します。システム共通定義に指定したノード識別子を指定してください。
複数のノード識別子を指定する場合は,ノード識別子名とノード識別子名との間をコンマ(,)で区切ります。
●-v サーバ名 〜〈1〜8文字の識別子〉
指定したサーバで取得したトレース情報を出力します。
複数のサーバ名を指定する場合は,サーバ名とサーバ名との間をコンマ(,)で区切ります。
●-p プロセスID 〜((0〜2147483647))
指定したプロセスで取得したトレース情報を出力します。
複数のプロセスを指定する場合は,プロセスIDとプロセスIDとの間をコンマ(,)で区切ります。
●-x xid 〜〈1〜8けたの16進数字〉((0〜ffffffff))
指定したグローバルトランザクション識別子のシーケンシャル番号のトレース情報が出力されます。
複数のxidを指定する場合は,xidとxidとの間をコンマ(,)で区切ります。
●-n 〔開始トレース番号〕〔,終了トレース番号〕 〜((1〜2147483647))
開始トレース番号から終了トレース番号までのトレース情報を出力します。
トレース番号とは,RPCトレースファイル内のトレース情報の通番です。
開始トレース番号の指定を省略すると,RPCトレースファイルの先頭から指定した終了トレース番号までが出力範囲となります。
終了トレース番号の指定を省略すると,指定した開始トレース番号からRPCトレースファイルの最後までが出力範囲となります。
開始トレース番号,または終了トレース番号のどちらか一方は,必ず指定してください。
コマンド引数
●RPCトレースファイル名 〜〈パス名〉
トレース情報を編集するRPCトレースファイルの名称を指定します。次のどれかの名称を指定してください。
-
システム共通定義,またはユーザサービス定義のrpc_trace_nameで指定したファイルの名称
-
rpcmrgコマンドの実行結果を格納したファイルの名称
-
-rオプション指定のrpcdumpコマンドの実行結果を格納したファイルの名称
このコマンド引数の指定を省略すると,$DCDIR/spool/rpctrから編集されて出力されます。
なお,パス名に含まれるRPCトレースファイルの名称(デフォルト:rpctr)の最大長は,13文字です。
出力形式
●-mオプションを指定した場合
-
1:ノード識別子,サーバ名,サービスグループ名,サービス名で特定されるRPC電文,またはXATMI会話型の電文ごとに概要情報を編集して出力します。
-
ff...ff:RPCトレースファイルの名称
-
oo...oo:編集対象となった最も古いトレース情報の日時
-
nn...nn:編集対象となった最新のトレース情報の日時
-
aaaa:RPCトレースを取得したノード識別子(4文字)
-
bb...bb:RPCトレースを取得したサーバ名(8文字以内)
-
cc...cc:RPC電文受信先のサービスグループ名(31文字以内)
XATMI会話型の電文の場合は'****'が表示されます。
-
dd...dd:RPC電文受信先のサービス名(31文字以内)
XATMI会話型の電文の場合は'****'が表示されます。
-
eee:プロセスID(10進数 左詰め)
-
ff...ff:RPC要求電文,またはXATMI要求電文の送信電文数(10進数 左詰め)
-
gg...gg:RPC要求電文,またはXATMI要求電文の受信電文数(10進数 左詰め)
-
hh...hh:RPC応答電文,またはXATMI応答電文の送信電文数(10進数 左詰め)
-
ii...ii:RPC応答電文,またはXATMI応答電文の受信電文数(10進数 左詰め)
-
jj...jj:RPCエラー応答電文,またはXATMIエラー電文の送信電文数(10進数 左詰め)
-
kk...kk:RPCエラー応答電文,またはXATMIエラー電文の受信電文数(10進数 左詰め)
●-r,および-mオプションを両方とも指定しない場合
-
1:RPC要求電文の送信時,または受信時にだけ表示します。
-
2:XATMI会話型通信時には,表示されないことがあります。
-
3:受信側のトレース情報の場合は送信元の情報を,送信側のトレース情報の場合は受信先の情報を表示します。
-
4:XATMI関数を使用した通信のときだけ表示されます。ただし,電文種別,電文の送信状態によっては表示されない項目があります。
-
5:電文が終わるまで繰り返し表示します。
-
6:-dオプションで指定した電文の長さが0の場合は表示されません。
-
aa...aa :RPCトレース種別
-
Send…RPCの要求電文を送信しました
-
Receive…RPCの要求電文を受信しました
-
Send-Reply…RPCの応答電文を送信しました
-
Recv-Reply…RPCの応答電文を受信しました
-
Send-Error…RPCのエラー応答電文を送信しました
-
Recv-Error…RPCのエラー応答電文を受信しました
-
XATMI-R/R-Send…XATMIリクエスト/レスポンス型の要求電文を送信しました
-
XATMI-R/R-Recv…XATMIリクエスト/レスポンス型の要求電文を受信しました
-
XATMI-R/R-Send-Reply…XATMIリクエスト/レスポンス型の応答電文を送信しました
-
XATMI-R/R-Recv-Reply…XATMIリクエスト/レスポンス型の応答電文を受信しました
-
XATMI-R/R-Send-Error…XATMIリクエスト/レスポンス型のエラー電文を送信しました
-
XATMI-R/R-Recv-Error…XATMIリクエスト/レスポンス型のエラー電文を受信しました
-
XATMI-CNV-Send…XATMI会話型の要求電文を送信しました
-
XATMI-CNV-Recv…XATMI会話型の要求電文を受信しました
-
XATMI-CNV-Send-Error…XATMI会話型のエラー電文を送信しました
-
XATMI-CNV-Recv-Error…XATMI会話型のエラー電文を受信しました
-
-
bbb:RPCトレースファイル内のトレース通番(10進数)
-
ccc:ネスト表示(10進数)
RPCネストコールのルートで1を表示し,ネスト数が増えるごとに1を加えた値を表示します。
CUP,他システム,およびTP1/Server Base 03-00以前のシステムからRPCの電文を受信した場合,またはXATMI会話型の電文の場合は,0を表示します。ただし,CUPからトランザクションを起動した場合は,CUPからの要求を受け付けるシステムプロセスからのRPC要求がルートとなり,1を表示します。
-
dd...dd:サーバ名(8文字以内)
シェル起動SUPの場合は'****'が表示されます。
-
eeee:OpenTP1ノードのノード識別子(4文字)
-
fff.fff.fff.fff:RPCトレース取得元のノードアドレス(IPアドレス)
システム共通定義のmy_hostオペランドの指定値(省略時はhostnameコマンドが返すホスト名を名前解決した結果)※を出力します。
-
ggggg:RPCトレース取得元のプロセスID(10進数 左詰め)
-
hhhhh:RPCトレース取得元のBSDソケットのポート番号(10進数 左詰め)
-
ii...ii:RPCトレースファイルに電文を出力した時刻
(xxx.xxx x hh:mm:ss xxxx yyy:zzz)
出力例:Wed Jan 1 12:34:56 2003 789:012
最後の「yyy:zzz」はそれぞれ次の情報を示しています。
yyy:ミリ秒
zzz:マイクロ秒
出力例では,電文を出力した時刻が2003年1月1日水曜日12時34分56.789012秒であることを示しています。
-
jj...jj:サービスグループ名(31文字以内)
-
kk...kk:サービス名(31文字以内)
-
ll...ll:連鎖RPC表示
-
Chained…連鎖RPC実行中です
-
Unchained…連鎖RPCではありません
-
-
mmm:グローバルトランザクション識別子のシーケンス番号(16進数 左詰め)
-
nn...nn :RPCの形態
-
Reply…同期応答型RPC
-
Noreply…非応答型RPC
-
Nowait…非同期応答型RPC
-
Chained…連鎖RPC
-
-
oo:サービス要求のプライオリティ値(10進数 左詰め)
-
xx...xx:通信相手の表示
-
Send source…通信相手はRPC電文を送信(RPCトレース出力元はRPC電文を受信)
-
Receive destination…通信相手はRPC電文を受信(RPCトレース出力元はRPC電文を送信)
-
-
ppp.ppp.ppp.ppp:送信元,受信先のノードアドレス(IPアドレス)
-
自ノード内でRPCを実行した場合,システム共通定義のmy_hostオペランドの指定値(省略時はhostnameコマンドが返すホスト名を名前解決した結果)※を出力します。
-
他ノードとRPCを実行した場合,OpenTP1システム内の通信に使用するIPアドレス※を出力します。
-
-
q:ネットワークの種類
-
rrrrr:送信元,受信先のBSDソケットのポート番号(10進数 左詰め)
-
sss:送信元のスレッドID(10進数 左詰め)
-
ttttt:電文のロケーション(16進数)
-
uu...uu:1行につき最大16バイトの電文本体(16進数)
-
vv...vv:電文本体をASCIIコードに変換した表示(16文字以内)
ただし,変換の結果,印字できない文字は,ピリオド(.)で表示します。
-
AA...AA:XATMIのサービス名(31文字以内)
-
BB...BB:バッファのタイプ名
X_OCTET,X_COMMON,またはX_C_TYPEのどれかが表示されます。意味については,XATMIのマニュアルを参照してください。
-
CC....CC:バッファのサブタイプ名(16文字以内)
バッファのタイプがX_OCTETの場合は表示されません。
-
DD...DD:XATMI関数で指定したtpflagsの値(16進数)
値が0の場合は表示されません。
-
EE...EE:XATMI関数で発生したエラーコード(tperror)(16進数)
-
FF...FF:tprecv関数で発生したイベント
TREV_SENDONLY,TREV_SVCERR,TREV_SVCFAIL,TREV_SVCSUCC,またはTREV_DISCONIMMのどれかが表示されます。意味については,XATMIのマニュアルを参照してください。
-
GG...GG:XATMI会話型通信時のcall descriptor(16進数)
- 注※
-
コンテナ内ではPodに割り当てられたIPアドレスを出力します。このIPアドレスはOpenTP1システム内の通信には使用しません。送信元または受信先のどちらか,もしくは両方がコンテナ内のノードの場合,OpenTP1システム内の通信に使用するIPアドレスについては,システム共通定義のipc_response_hostオペランドの説明を参照してください。
出力メッセージ
メッセージID |
内容 |
出力先 |
---|---|---|
KFCA00308-E |
RPCトレースファイルにデータがありません |
標準エラー出力 |
KFCA00310-E |
指定したRPCトレースファイルはありません |
標準エラー出力 |
KFCA00312-E |
RPCトレースファイルに対するアクセスエラーが発生しました |
標準エラー出力 |
KFCA00314-I |
ヘルプメッセージ |
標準出力 |
KFCA00352-E |
RPCトレースファイルのデータが正しくありません |
標準エラー出力 |
注意事項
-
rpcdumpコマンドでRPCトレースを出力すると,受信情報が送信情報より先に出力されることがあります。これは,電文の送信完了後に,送信情報をRPCトレースファイルに書き込んでいるためです。
-
-t,-s,-b,-v,-p,-n,および-xオプションで指定した条件は,すべてAND条件となります。
-
rpcdumpコマンドを実行する場合は,RPCトレースファイルを退避し,RPCトレースの書き込みが行われない状態で入力してください。RPCトレース取得中にrpcdumpコマンドを入力すると,タイミングによってはRPCトレースファイルのアクセスエラーが発生するため,rpcdumpコマンドが失敗する場合があります。アクセスエラーが発生するタイミングとは,RPCトレース編集中にRPCトレースを書き込むファイルが切り替わったときのことです。
なお,RPCトレースファイルを退避するときは,RPCトレースファイルの更新日時を変更しないで(例えばcpコマンドに-pオプションを指定するなどして)ください。RPCトレースファイルの更新日時を変更してしまうと,ソート処理の影響でrpcdumpコマンドの実行時間が長くなるおそれがあります。
-
システム共通定義,ユーザサービスデフォルト定義,またはユーザサービス定義に指定したrpc_trace_sizeオペランドの指定値よりも大きい電文が送受信された場合,rpcdumpコマンドが何も出力しなかったり,出力情報に抜けがあったりすることがあります。