2.4.4 JMSPRFトレースファイルの取得形式
JMSPRFトレースファイルには,性能検証用の情報が出力されます。
JMSPRFトレースを編集するには,Cosminexus Performance Tracerをインストールする必要があります。また,トレース情報の強制ファイル出力(cprfflushコマンド),およびトレース情報ファイルの編集出力(cprfedコマンド)については,マニュアル「Cosminexus V9 アプリケーションサーバ リファレンス コマンド編」を参照してください。
ここでは,JMSPRFトレースの取得レベルとイベントIDごとの取得内容について説明します。
- 〈この項の構成〉
(1) 取得レベル
JMSPRFトレースファイルでは取得レベルを指定できます。デフォルトは「レベル1」です。
-
0:JMSPRFトレースは取得しません。
-
1:イベントIDが0x920,0x921,0x92A,0x92Bで始まる情報を取得します。
(2) 取得ポイント
トレース情報が取得されたタイミングは,出力されたイベントIDで識別します。イベントIDおよびTP1/Message Queue AccessのJMSPRFトレース情報の取得ポイントを次の表に示します。
イベントID |
トレース取得ポイント |
詳細情報データ長 (単位:バイト) |
---|---|---|
0x9200 |
send(message only)の入口 |
0 |
0x9210 |
send(message only)の出口 |
152 |
0x9201 |
send(message and 3 parameters)の入口 |
0 |
0x9211 |
send(message and 3 parameters)の出口 |
152 |
0x9202 |
send(queue, message)の入口 |
0 |
0x9212 |
send(queue, message)の出口 |
152 |
0x9203 |
send(queue, message and 3 parameters)の入口 |
0 |
0x9213 |
send(queue, message and 3 parameters)の出口 |
152 |
0x9204 |
receive()の入口 |
0 |
0x9214 |
receive()の出口 |
152 |
0x9205 |
receive(long timeout)の入口 |
0 |
0x9215 |
receive(long timeout)の出口 |
152 |
0x9206 |
receiveNoWait()の入口 |
0 |
0x9216 |
receiveNoWait()の出口 |
152 |
0x9207 |
nextElement()の入口 |
0 |
0x9217 |
nextElement()の出口 |
152 |
0x92A0 |
キュー監視スレッド・MQCONNの入口 |
0 |
0x92B0 |
キュー監視スレッド・MQCONNの出口 |
152 |
0x92A1 |
キュー監視スレッド・MQOPENの入口 |
0 |
0x92B1 |
キュー監視スレッド・MQOPENの出口 |
152 |
0x92A2 |
キュー監視スレッド・MQGET(検索)の入口※1 |
0 |
0x92B2 |
キュー監視スレッド・MQGET(検索)の出口※2 |
152 |
0x92A3 |
キュー監視スレッド・MQGET(削除)の入口 |
0 |
0x92B3 |
キュー監視スレッド・MQGET(削除)の出口 |
152 |
0x92A4 |
キュー監視スレッド・MQGET(ガーベッジ)の入口 |
0 |
0x92B4 |
キュー監視スレッド・MQGET(ガーベッジ)の出口 |
152 |
0x92A5 |
キュー監視スレッド・MQCLOSEの入口 |
0 |
0x92B5 |
キュー監視スレッド・MQCLOSEの出口 |
152 |
0x92A6 |
キュー監視スレッド・MQDISCの入口 |
0 |
0x92B6 |
キュー監視スレッド・MQDISCの出口 |
152 |
0x92A7 |
キュー監視スレッド・MQBEGINの入口 |
0 |
0x92B7 |
キュー監視スレッド・MQBEGINの出口 |
152 |
0x92A8 |
キュー監視スレッド・MQCMITの入口 |
0 |
0x92B8 |
キュー監視スレッド・MQCMITの出口 |
152 |
0x92A9 |
キュー監視スレッド・MQBACKの入口 |
0 |
0x92B9 |
キュー監視スレッド・MQBACKの出口 |
152 |
0x92AA |
キュー監視スレッド・onMessageの入口 |
0 |
0x92BA |
キュー監視スレッド・onMessageの出口 |
152 |
0x92AB |
キュー監視スレッド・beforeDeliveryの入口 |
0 |
0x92BB |
キュー監視スレッド・beforeDeliveryの出口 |
152 |
0x92AC |
キュー監視スレッド・afterDeliveryの入口 |
0 |
0x92BC |
キュー監視スレッド・afterDeliveryの出口 |
152 |
(3) イベントIDごとの取得内容
JMSPRFトレースファイルのイベントIDごとの取得内容を,次の表に示します。メッセージ識別子または相関識別子によって,MQCサーバでのメッセージを特定できます。
イベントID |
リターンコード |
インタフェース名※2 |
オペレーション名※2 |
詳細情報※1 |
|||||
---|---|---|---|---|---|---|---|---|---|
キュー名称(48) |
メッセージ識別子(32) |
相関識別子(32) |
ユーザデータ(32) |
コネクションハンドル(4) |
オブジェクトハンドル(4) |
||||
0x9200 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9210 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x9201 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9211 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x9202 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9212 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
△ |
0x9203 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9213 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
△ |
0x9204 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9214 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x9205 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9215 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x9206 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9216 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x9207 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x9217 |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
▲ |
0x92A0 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B0 |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
▲ |
△ |
0x92A1 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B1 |
○ |
○ |
○ |
○ |
△ |
△ |
△ |
○ |
▲ |
0x92A2 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B2 |
○ |
○ |
○ |
○ |
▲ |
▲ |
▲ |
○ |
○ |
0x92A3 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B3 |
○ |
○ |
○ |
○ |
▲ |
▲ |
▲ |
○ |
○ |
0x92A4 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B4 |
○ |
○ |
○ |
○ |
△ |
△ |
△ |
○ |
○ |
0x92A5 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B5 |
○ |
○ |
○ |
○ |
△ |
△ |
△ |
○ |
○ |
0x92A6 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B6 |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92A7 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B7 |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92A8 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B8 |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92A9 |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92B9 |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92AA |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92BA |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92AB |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92BB |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
0x92AC |
○ |
○ |
○ |
− |
− |
− |
− |
− |
− |
0x92BC |
○ |
○ |
○ |
△ |
△ |
△ |
△ |
○ |
△ |
(4) 表示形式
(a) JMSPRFトレース情報の表示形式
取得したトレース情報はcprfedコマンドで出力される次の形式に対応します。
-
リターンコード
リターンコードは,「Rc」に表示されます。
イベントID
トレース取得ポイント
リターンコード
0x920
入口
0
0x921,0x922
正常出口
1
異常出口
-1
0x92B0〜0x92B9
正常出口
0
異常出口
(各MQIの理由コード)
0x92BA〜0x92BC
正常出口
0
異常出口
-1
-
インタフェース名
インタフェース名は,「INT」に「MQAccess:メソッド名」の形式で表示されます。
イベントID
インタフェース名
0x9200,0x9210
MQAccess:send(message only)
0x9201,0x9211
MQAccess:send(msg, 3param)
0x9202,0x9212
MQAccess:send(queue, message)
0x9203,0x9213
MQAccess:send(que, msg, 3param)
0x9204,0x9214
MQAccess:receive(no argument)
0x9205,0x9215
MQAccess:receive(timeout)
0x9206,0x9216
MQAccess:receiveNoWait
0x9207,0x9217
MQAccess:browse(nextElement)
0x92A0,0x92B0
MQAccess:run MQCONN
0x92A1,0x92B1
MQAccess:run MQOPEN
0x92A2,0x92B2
MQAccess:run MQGET(browse)
0x92A3,0x92B3
MQAccess:run MQGET(delete)
0x92A4,0x92B4
MQAccess:run MQGET(garbage)
0x92A5,0x92B5
MQAccess:run MQCLOSE
0x92A6,0x92B6
MQAccess:run MQDISC
0x92A7,0x92B7
MQAccess:run MQBEGIN
0x92A8,0x92B8
MQAccess:run MQCMIT
0x92A9,0x92B9
MQAccess:run MQBACK
0x92AA,0x92BA
MQAccess:run onMessage
0x92AB,0x92BB
MQAccess:run beforeDelivery
0x92AC,0x92BC
MQAccess:run afterDelivery
-
オペレーション名
オペレーション名は,「OPR」に「オブジェクト名&ハッシュコード」の形式で表示されます。
イベントID
オペレーション名
0x9200,0x9210,0x9201,0x9211,0x9202,0x9212,0x9203,0x9213
jp.co.Hitachi.soft.mqadaptor.QueueSenderImpl@00000000
【出力文字列※】*adaptor.QueueSenderImpl@00000000
0x9204,0x9214,0x9205,0x9215,0x9206,0x9216
jp.co.Hitachi.soft.mqadaptor.QueueReceiverImpl@00000000
【出力文字列※】*aptor.QueueReceiverImpl@00000000
0x9207,0x9217
jp.co.Hitachi.soft.mqadaptor.MessageEnumeration@00000000
【出力文字列※】*ptor.MessageEnumeration@00000000
0x92A0,0x92B0,0x92A1,0x92B1,0x92A2,0x92B2,0x92A3,0x92B3,0x92A4,0x92B4,0x92A5,0x92B5,0x92A6,0x92B6,0x92A7,0x92B7,0x92A8,0x92B8,0x92A9,0x92B9,0x92AA,0x92BA,0x92AB,0x92BB,0x92AC,0x92BC
jp.co.Hitachi.soft.mqadaptor.ThreadController@00000000
【出力文字列※】*daptor.ThreadController@00000000
(b) JMSPRFトレースファイル個別情報の表示形式
cprfedコマンドの-Dumpオプション(詳細情報をダンプ形式で出力),または-CSVオプション(詳細情報をCSV形式で出力)で表示される詳細情報は,OPTに連続して表示されます。
-
キュー名称
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(キュー名称(48バイト)) 合計48バイト キュー名称が48バイト以下の場合,後ろが「\0」で埋められます。
-
メッセージ識別子
bbbbbbbbbbbbbbbbbbbbbbbb(メッセージ識別子(24バイト) + ”\0\0\0\0\0\0\0\0”) 合計32バイト 接頭辞が「ID:」で始まる場合,取得する情報は「ID:」以降の24バイトと なります。
-
相関識別子
cccccccccccccccccccccccc(相関識別子(24バイト) + ”\0\0\0\0\0\0\0\0”) 合計32バイト 接頭辞が「ID:」で始まる場合,取得する情報は「ID:」以降の24バイトと なります。
-
ユーザデータ
dddddddddddddddddddddddddddddddd(ユーザデータ先頭32バイト) 合計32バイト ユーザデータが32バイト以下の場合,後ろが「\0」で埋められます。
-
コネクションハンドル
eeeeeeee(コネクションハンドル,4バイト16進情報) 合計4バイト
-
オブジェクトハンドル
ffffffff(オブジェクトハンドル,4バイト16進情報) 合計4バイト