• 検索結果がありません。

JMSPRF トレースファイルの取得形式

ドキュメント内 TP1/Message Queue - Access 使用の手引 (ページ 77-85)

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

0x92B00x92B9 正常出口 0

異常出口 (各MQIの理由コード)

0x92BA0x92BC 正常出口 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バイト

ドキュメント内 TP1/Message Queue - Access 使用の手引 (ページ 77-85)