XX.... XX # YY....YY ERR
2.4.4 JMSPRF トレースファイルの取得形式
JMSPRFトレースファイルには,性能検証用の情報が出力されます。
JMSPRFトレースを編集するには,Cosminexus Performance Tracerをインストールす る必要があります。また,トレース情報の強制ファイル出力(cprfflushコマンド),お よびトレース情報ファイルの編集出力(cprfedコマンド)については,マニュアル
「Cosminexus リファレンス コマンド編」を参照してください。
ここでは,JMSPRFトレースの取得レベルとイベントIDごとの取得内容について説明 します。
(1) 取得レベル
JMSPRFトレースファイルでは取得レベルを指定できます。デフォルトは「レベル1」
です。
• 0:JMSPRFトレースは取得しません。
• 1:イベントIDが0x920,0x921,0x92A,0x92Bで始まる情報を取得します。
(2) 取得ポイント
トレース情報が取得されたタイミングは,出力されたイベントIDで識別します。イベン トIDおよびTP1/Message Queue - AccessのJMSPRFトレース情報の取得ポイントを 次の表に示します。
表2-14 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
注※1
前回のMQGET(検索)の理由コードに,MQRC_NO_MSG_AVAILABLEが返された場合,
MQGET(検索)が繰り返し実行されますが,その場合,0x92A2のトレースファイルは取得さ れません。
注※2
MQGET(検索)の理由コードにMQRC_NO_MSG_AVAILABLEが返された場合,スレッド終 了時を除いて0x92B2のトレースファイルは取得されません。
(3) イベント ID ごとの取得内容
JMSPRFトレースファイルのイベントIDごとの取得内容を,次の表に示します。メッ
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
イベントID トレース取得ポイント 詳細情報データ長
(単位:バイト)
セージ識別子または相関識別子によって,MQCサーバでのメッセージを特定できます。
表2-15 JMSPRFトレースファイルのイベントIDごとの取得内容
イベントID リ
タ ー ン コ ー ド
イ ン タ フ ェ ー ス 名※
2 オ ペ レ ー シ ョ ン 名※
2
詳細情報※1 キ
ュ ー 名 称
(4 8)
メ ッ セ ー ジ 識 別 子
(3 2)
相 関 識 別 子
(3 2)
ユ ー ザ デ ー タ
(3 2)
コ ネ ク シ ョ ン ハ ン ド ル
(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 ○ ○ ○ − − − − − −
(凡例)
○:情報を取得します。
▲:情報を取得しますが,エラーの場合は無効な値です。
△:情報を取得しますが,常に無効な値です。
−:情報を取得しません。
注※1
cprfedコマンドに-Dumpまたは-CSVを指定した場合に出力される情報,および出力順序を示 します。括弧内は,取得バイト数です。
注※2
出力される文字数の詳細については,マニュアル「Cosminexus リファレンス コマンド編」の
「cprfed(性能解析トレース情報の編集出力)」の「出力形式」を参照してください。
0x92B4 ○ ○ ○ ○ △ △ △ ○ ○
0x92A5 ○ ○ ○ − − − − − −
0x92B5 ○ ○ ○ ○ △ △ △ ○ ○
0x92A6 ○ ○ ○ − − − − − −
0x92B6 ○ ○ ○ △ △ △ △ ○ △
0x92A7 ○ ○ ○ − − − − − −
0x92B7 ○ ○ ○ △ △ △ △ ○ △
0x92A8 ○ ○ ○ − − − − − −
0x92B8 ○ ○ ○ △ △ △ △ ○ △
0x92A9 ○ ○ ○ − − − − − −
0x92B9 ○ ○ ○ △ △ △ △ ○ △
0x92AA ○ ○ ○ − − − − − −
0x92BA ○ ○ ○ △ △ △ △ ○ △
0x92AB ○ ○ ○ − − − − − −
0x92BB ○ ○ ○ △ △ △ △ ○ △
0x92AC ○ ○ ○ − − − − − −
0x92BC ○ ○ ○ △ △ △ △ ○ △
イベントID リ
タ ー ン コ ー ド
イ ン タ フ ェ ー ス 名※
2 オ ペ レ ー シ ョ ン 名※
2
詳細情報※1 キ
ュ ー 名 称
(4 8)
メ ッ セ ー ジ 識 別 子
(3 2)
相 関 識 別 子
(3 2)
ユ ー ザ デ ー タ
(3 2)
コ ネ ク シ ョ ン ハ ン ド ル
(4)
オ ブ ジ ェ ク ト ハ ン ド ル
(4)
(4) 表示形式
(a)JMSPRFトレース情報の表示形式
取得したトレース情報はcprfedコマンドで出力される次の形式に対応します。
• リターンコード
リターンコードは,「Rc」に表示されます。
• インタフェース名
インタフェース名は,「INT」に「MQAccess:メソッド名」の形式で表示されます。
イベントID トレース取得ポイント リターンコード
0x920 入口 0
0x921,0x922 正常出口 1
異常出口 -1
0x92B0〜0x92B9 正常出口 0
異常出口 (各MQIの理由コード)
0x92BA〜0x92BC 正常出口 0
異常出口 -1
イベント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
• オペレーション名
オペレーション名は,「OPR」に「オブジェクト名&ハッシュコード」の形式で表示 されます。
注※
オブジェクトの文字列表現の後ろ32文字が出力されます。
(b)JMSPRFトレースファイル個別情報の表示形式
cprfedコマンドの-Dumpオプション(詳細情報をダンプ形式で出力),または-CSVオ プション(詳細情報をCSV形式で出力)で表示される詳細情報は,OPTに連続して表 示されます。
・キュー名称
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(キュー名称(48バ イト))
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
イベント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
イベントID インタフェース名
合計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バイト