6.2.1 MCPトレースファイルの運用
MCPトレースファイルには,送受信メッセージ,状態などの情報がシステムコール単位,または入出力ユーザメッセージ編集UOCのメッセージ単位で,MCPトレース情報として取得されます。
MCPトレースには,次に示す3種類があります。
- ■メッセージ送受信イベントトレース
-
MCPトレース送受信イベント情報(MCP保守用トレース)です。
eemcptrc定義コマンドの-mオプションのfilterオペランドの指定によって取得内容が決まります。
1回の送受信メッセージをトレースに取得する量は,eemcptrc定義コマンドの-mオプションの指定によって決まります。
詳細は,「(5) MCPトレース情報の取得量の変更」を参照してください。
- ■ユーザトレース
-
入出力メッセージなどのユーザ情報トレースです。ee_mcp_utrace_put関数,またはee_mcp_utrace_put_long関数で要求したデータです。
- ■メッセージ送信結果トレース
-
出力メッセージ編集UOCでユーザトレースを取得した場合,メッセージ送信の成否に関係なく取得する結果トレースです。送受信メッセージの内容は取得しません。出力メッセージ編集UOCでユーザトレースを取得したあとに,UOCパラメタ不正などで実際に送信しなかった場合でも,保守情報として送信結果トレースを取得します。このトレースは,eemcptrc定義の-sオプションのsendresultオペランドにyesを指定した場合にだけ取得します。
通常,これらのMCPトレース情報は,イベント発生時の要求ごとに取得されます。
なお,MCPトレースは,TP1/EEシステム定義のmcp_useオペランドにYを指定した場合に機能します。
MCPトレースファイルに取得したMCPトレース情報は,eemcpedコマンドを実行して編集し,標準出力,またはCSV形式のファイルとして出力します。また,eemcpdumpコマンドを実行すると,コアファイルまたはメモリダンプファイルを入力情報として,MCPトレースファイルの編集結果を標準出力,またはCSV形式のファイルとして出力することもできます。
PPトレーススレッドの異常やI/Oが間延びしてバッファが不足した場合,eemcpedコマンドではMCPトレース情報を出力できません。ただし,eemcpfputコマンドを実行すると強制出力できます。
- 〈この項の構成〉
(1) MCPトレースファイルの容量設定
MCPトレースファイルは,eemcptrc定義コマンドの-fオプションのfileszオペランドに指定したサイズで,TP1/EEのプロセスごとにUNIXファイルとして作成されます。プロセスごとに,eemcptrc定義コマンドの-fオプションのfilenoオペランドに指定した数のMCPトレースファイルが作成され,ラウンドロビン方式で使用されます。MCPトレースファイルのサイズおよびファイル数は,ノードで稼働するTP1/EEのプロセス数やノードのリソース容量などを考慮して,指定してください。
全体のMCPトレースファイルサイズの見積もり式を次に示します。
全体のMCPトレースファイルサイズ(T) =((L + 40) × x) + ((M + 40) × y) +((N + 40) × z) + (40 × u) +(↑((((L + 40) × x) + ((M + 40) × y) +((N + 40) × z) + (40 × u)) ÷ b)↑ × 96) +F
見積もり式の変数または定数を次の表に示します。
変数または定数 |
意味 |
---|---|
L |
メッセージ受信単位のバイト数 |
M |
メッセージ送信単位のバイト数 |
N |
ee_mcp_utrace_put関数で指定するトレースのデータ長 |
40 |
トレースヘッダバイト数 |
96 |
1ブロック単位に付加する情報のバイト数 |
F※ |
1ファイル単位に付加する情報のバイト数 |
x |
受信メッセージ数 |
y |
送信メッセージ数 |
z |
ee_mcp_utrace_put関数の発行回数 |
u |
出力メッセージ編集UOC内でee_mcp_utrace_put関数を発行して送信した送信回数 |
b |
eemcptrc定義コマンドの-bオプションのbufferszオペランドに指定した値 |
- 注※
F = 128 + 34 ×(サービス数)+ 16 ×(論理端末数)+ 16 ×(コネクションID数)+ 256
(2) MCPトレースファイルの作成
MCPトレースファイルは,TP1/EEの起動時,$DCDIR/spool/dceeinf/mcpディレクトリ下にMCPが作成します。したがって,OpenTP1管理者はMCPトレースファイルを作成する必要はありません。MCPが作成するファイル名は,次に示す規則で付けられます。
サービスグループ名mcpXXX(XXXは,3けたのファイル通番)
(3) MCPトレースファイルの削除
MCPの起動時に,前回のMCP稼働時のMCPトレースファイルが存在する場合は,最も古いMCPトレースファイルにMCPトレース情報を上書きします。したがって,OpenTP1管理者はMCPトレースファイルを削除する必要はありません。
(4) MCPトレースファイルの保存
出力中のMCPトレースファイルのサイズが,eemcptrc定義コマンドの-fオプションのfileszオペランドに指定した値を超えた場合,出力先が新しいMCPトレースファイルに切り替わります。この場合,出力先が新しいMCPトレースファイルに切り替わることを通知するKFSB85400-Iメッセージが出力されます。このメッセージが出力されるタイミングで,MCPトレースファイルのバックアップを取得して,同一論理ボリューム上でファイル移動(mvコマンド)することをお勧めします。
MCPトレースファイル数が,eemcptrc定義コマンドの-fオプションのfilenoオペランドに指定した値を超えた場合,最も古いMCPトレースファイルにMCPトレース情報を上書きします。古いMCPトレースファイルのMCPトレース情報を保存したい場合は,MCPが上書きする前に,OpenTP1管理者がバックアップしてください。
使用中のMCPトレースファイルをバックアップした場合,編集結果が正しく表示できないことがあります。そのため,MCPトレースファイルを切り替えることを通知するメッセージが出力されてから,バックアップを取得してください。また,使用中のMCPトレースファイルは,移動または削除しないでください。
(5) MCPトレース情報の取得量の変更
送受信データごとにMCPトレースを取得する場合,I/O処理の増加によって性能が低下したり,重要なMCPトレースが欠落したりすることがあります。これを防止するために,eemcptrc定義コマンドの-mオプションのfilterオペランドによって,送受信時のMCPトレース情報の取得内容を変更できます。
それぞれのオペランドの指定値別に,取得内容および取得サイズの差異について説明します。
- 00000000(デフォルト)
-
すべての送受信イベントをMCPトレース情報に取得します。送受信データは,1回の送受信イベントごとに最大で32000バイトを取得します。
- 00000010
-
すべての送受信イベントをMCPトレース情報に取得します。送受信データは,1回の送受信イベントごとにeemcptrc定義コマンドの-mオプションのmsgsizeオペランドに指定された最大サイズまでを取得します。msgsizeオペランドに0を指定した場合は,データ長0として取得します。