Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

付録D 保守情報の採取> D.3 スナップショット機能> D.3.3 運用

D.3.3.3 スナップ情報の分析

 以下の4つの例をもとにスナップ情報を分析する方法について説明します

例1:サーバアプリケーションとクライアントアプリケーションが同一マシン上で動作している場合

 ここではクライアントアプリケーション、サーバアプリケーション(ネーミングサービス)、OD_startサービスがすべて同一マシン"hostABC"にある場合のスナップ情報について説明します。

Time        ProcessID Action            Type   requestID  QueueID  implID                         operation  host
--------------------------------------------------------------------------------------------------------------------
22:33:39.180      359 request send      client         1  -------  IDL:CosNaming/NamingContext:1.0  resolve  hostABC
22:33:39.191      202 request queue-in  manager        1  1b3f664  IDL:CosNaming/NamingContext:1.0  ---      ---  
22:33:39.191      248 request recv      server         1  1b3f664  IDL:CosNaming/NamingContext:1.0  resolve  ---  
22:33:39.831      248 reply send        server         1  1b3f664  IDL:CosNaming/NamingContext:1.0  resolve  ---  
22:33:39.831      359 reply recv        client         1  -------  IDL:CosNaming/NamingContext:1.0  ---      hostABC
  1. まず、時刻「22:33:39.180」にクライアントアプリケーションはリクエストID1のリクエストを送信しています。相手先サーバアプリケーションのインプリメンテーションリポジトリIDは"IDL:CosNaming/NamingContextExt:1.0"で、相手先サーバアプリケーションはネーミングサービスです。メソッド名は"resolve"であり、相手先のホストは"hostABC"であることがわかります。
  2. 時刻「22:33:39.191」にOD_startサービスはクライアントアプリケーションからのリクエスト(リクエストIDは1)を受け付けてキューイングしています。キューイングしたキューIDは、"1b3f664"です。
  3. 時刻「22:33:39.191」にサーバアプリケーションはキューID"1b3f664"のキューを取り出し、リクエストID1のリクエストを受け付けています。メソッド"resolve"が呼び出されています。
  4. 時刻「22:33:39.831」にサーバアプリケーションはリクエストID1のリクエストに対する返信をクライアントアプリケーションに返しています。このリクエストに対応していたキューIDは"1b3f664"であり、メソッド名は"resolve"であることを示します。
  5. 時刻「22:33:39.831」にクライアントアプリケーションはリクエストID1のリクエストに対する返信をサーバアプリケーションから受け取っています。

注意事項

 送受信のタイミングとスナップ情報の書き込みのタイミングは完全に一致しないため、"reply send"と"reply recv"の時刻が逆転する場合があります。

例2:サーバアプリケーションとクライアントアプリケーションが別マシン上で動作している場合

 ここではサーバアプリケーション(ネーミングサービス)とOD_startサービスが"hostXYZ"にあり、クライアントアプリケーションは別マシンで動作している場合のスナップ情報について説明します。

<クライアントマシンでの出力例>

Time        ProcessID Action            Type   requestID  QueueID  implID                         operation  host
-----------------------------------------------------------------------------------------------------------------
22:35:39.150      407 request send      client         3  -------  IDL:CosNaming/NamingContext:1.0  resolve  hostXYZ
22:35:40.534      407 reply recv        client         3  -------  IDL:CosNaming/NamingContext:1.0  ---      hostXYZ

<サーバマシンでの出力例>

Time        ProcessID Action            Type   requestID  QueueID  implID                         operation  host
-----------------------------------------------------------------------------------------------------------------
22:35:39.182      328 request queue-in  manager        3  2b3f656  IDL:CosNaming/NamingContext:1.0  ---      ---
22:35:40.012      258 request recv      server         3  2b3f656  IDL:CosNaming/NamingContext:1.0  resolve  ---
22:35:40.442      258 reply send        server         3  2b3f656  IDL:CosNaming/NamingContext:1.0  resolve  ---

 クライアントアプリケーション側で採取されるスナップ情報は、動作種別が"request send"のものと"reply recv"のものです。クライアントアプリケーション側のスナップ情報を見ると、リクエストID3のリクエストを時刻「22:35:39.150」に送信し、時刻「22:35:40.534」に返信を受け取っていることがわかります。

 サーバアプリケーション側で採取されるスナップ情報は、動作種別が"request queue-in"、"request recv"、"reply send"のものです。サーバアプリケーション側のスナップ情報を見ると時刻「22:35:39.182」にOD_startサービスがリクエストID3のリクエストをキューイングし、サーバアプリケーションが時刻「22:35:40.442」に返信をクライアントアプリケーションに送っていることがわかります。

例3:サーバアプリケーションが異常状態にある場合

 ここではサーバアプリケーション(ネーミングサービス)が異常状態にある場合のスナップ情報について説明します。

Time        ProcessID Action           Type   requestID  QueueID  implID                         operation  host
-----------------------------------------------------------------------------------------------------------------
22:41:59.730      237 request send     client        10  -------  IDL:CosNaming/NamingContext:1.0  resolve  hostABC
22:41:59.730      202 request recv     manager       10  3bff4b8  IDL:CosNaming/NamingContext:1.0  resolve  ---  
22:41:59.730      202 reply send       manager       10  3bff4b8  IDL:CosNaming/NamingContext:1.0  resolve  ---  
22:41:59.730      237 reply recv       client        10  -------  IDL:CosNaming/NamingContext:1.0  ---      hostABC

 リクエストの送信先サーバプロセスが起動されていない等の異常状態にある場合は、OD_startサービスがサーバアプリケーションの代わりにリクエストを受け取り、例外情報をクライアントアプリケーションに返すことがあります。
 例外情報は、スナップ情報の出力からはわかりません。また、OD_startサービスがリクエストを処理している場合はリクエストがキューイングされません。そのため、動作種別が"request queue-in"であるスナップ情報はなく、キューID"3bff4b8"は意味を持ちません。

例4:OD_startサービスに対してリクエストが発行された場合

 ここではOD_startサービスに対してリクエストが発行された場合のスナップ情報について説明します。

Time        ProcessID Action           Type   requestID  QueueID  implID                 operation  host
-----------------------------------------------------------------------------------------------------------
22:35:51.541      359 request send     client         6  -------  IDL:OM_ORB/admin:1.0       synch  hostABC
22:35:51.551      202 request recv     manager        6        0  IDL:OM_ORB/admin:1.0       synch  ---
22:35:51.581      202 reply send       manager        6        0  IDL:OM_ORB/admin:1.0       synch  ---
22:35:51.581      359 reply recv       client         6  -------  IDL:OM_ORB/admin:1.0       ---    hostABC

 管理用コマンドの中には、OD_startサービスに対してリクエストを送るものがあります(例:OD_impl_inst)。OD_startサービスに送られたリクエストは、キューイングされずにOD_startサービスによって直接処理されます。"request recv"に対応するプロセス種別が"server"ではなく"manager"である場合、OD_startサービスがリクエストを処理していることを示します。その場合、リクエストがキューイングされないため、動作種別が"request queue-in"であるスナップ情報はありません。キューIDは"0"になっていますが、OD_startサービスによって直接処理されるリクエストに対応するキューIDは意味を持ちません。


目次 索引 前ページ次ページ

Copyright 2005 FUJITSU LIMITED