16.7.5.1 トレース・アシスタントの構文

トレース・アシスタントを実行するには、コマンドラインでtrcasstコマンドを入力します。

trcasst [options] filename

表16-24 トレース・アシスタントの構文オプション

オプション 説明

-elevel

エラー情報を表示します。-eの後に、01または2を使用してエラー・デコーディング・レベルを指定します。

  • 0または何もない場合は、nserrorファンクションからダンプされたNSエラー番号が変換され、他のすべてのエラーがリスト表示されます。

  • 1の場合は、nserrorファンクションから変換されたNSエラーのみが表示されます。

  • 2の場合は、変換されていないエラー番号が表示されます。

-la

接続IDがNS接続パケットに存在する場合、出力結果には接続IDが表示されます。接続IDは、16進数の8バイトのIDとして表示されます。パケットが接続に関連付けられていない場合、生成されるIDはトレース・アシスタントによって作成されます。つまり、トレース・ファイル内の接続パケットは上書きされます。これは、循環方式のトレース・ファイルで発生する可能性があります。

出力には、IDごとに次の内容が表示されます。

  • ソケットID(接続で使用する場合)。

  • 接続パケットの送受信操作。

  • 初期化パラメータ・ファイル内にあるDISPATCHERSパラメータのMULTIPLEX属性の現行設定。MULTIPLEXONに設定すると、セッションの多重化が使用可能になります。

  • セッションID(MULTIPLEXONに設定されている場合)。

  • 接続データ情報。

ノート:

  • このオプションは、他のオプションと一緒には使用しないでください。

  • トレース・アシスタントで生成されたIDは、クライアント/サーバー・トレース・ファイルと相関関係はありません。

-li ID

-laの出力から、特定のIDに関するトレースを表示します。

ノート: このオプションは、必ず-laオプションの出力とともに使用します。

-otype

出力する情報の種類と量を表示します。-oの後には、次のオプションを使用できます。

  • cを指定すると、接続サマリー情報を表示します。

  • dを指定すると、接続詳細情報を表示します。

  • uを指定すると、Two-Task Common (TTC)サマリー情報を表示します。

  • tを指定すると、TTC詳細情報を表示します。

  • qを指定すると、TTCサマリー情報を強化するSQLコマンドが表示されます。このオプションは、-ouqのように、uとともに使用します。

ノート: dの出力にはcを指定した場合の情報も含まれるため、cdの両方を指定しないでください。両方のオプションを指定すると、dの出力のみが表示されます。

-s

次の統計情報を表示します。

  • 送受信の合計バイト数。

  • オープン・カーソルの最大数。

  • 現在のオープン・カーソル数。

  • 操作の件数と率。

  • PL/SQLに関する解析と実行の件数。

  • 送受信コールの合計数。

  • 送受信バイトの合計、平均および最大数。

  • 現行の転送およびセッションの合計数。

  • タイムスタンプ情報(ある場合)。

  • 順序番号(ある場合)。

オプションを指定しない場合、デフォルトは-odt -e0 -sです。この場合、トレース・ファイル内の接続情報とTTCイベントの詳細、エラー・レベル0(ゼロ)のエラー情報、および統計情報が表示されます。

次の例では、トレース・アシスタントで-e1オプションの使用によってどのようにトレース・ファイル情報がより読みやすい書式に変換されるかを示します。

例16-15 trcasst -e1の出力

    ************************************************************************* 
    *                        Trace Assistant                                * 
    ************************************************************************* 

ntus2err: exit 
ntuscni: exit 
ntusconn: exit 
nserror: entry 
-<ERROR>- nserror: nsres: id=0, op=65, ns=12541, ns2=12560; nt[0]=511, nt[1]=2, nt[2]=0 
/////////////////////////////////////////////////////////////// 
Error found. Error Stack follows: 
              id:0 
  Operation code:65 
      NS Error 1:12541 
      NS Error 2:12560 
NT Generic Error:511 
  Protocol Error:2 
        OS Error:0 
 NS & NT Errors Translation 
12541, 00000 "TNS:Cannot connect. No listener at %s."  
 //  *Cause: The connection request could not be completed because either the 
 //   database listener process was not running on the specified host 
 //   and port, or an Interprocess Communication (IPC) protocol 
 //   connection was attempted but there was no listener for the 
 //   specified key running on the local machine. PL/SQL applications
 //   using UTL packages can also get this error if the external server
 //   process is not listening on the specified address. 
 // *Action: 
 //  - If the error shows the host and port that the connection tried to 
 //    use, then ensure that a listener process is running on that host 
 //    and is listening on that port. If the message indicates that there 
 //    was no listener at the specified key, then ensure that the listener 
 //    is running on the local machine and listening for the specified 
 //    key. The listener process is used to initially handle all 
 //    connections to Oracle Database.
 //  - Check for mistakes in the specified connection string.
 //  - If you are using an alias from a tnsnames.ora file, then verify 
 //    the correctness of the host and port. Alternatively, verify the 
 //    correctness of the key if you are using an IPC connection.
 //  - If using an Easy Connect connection string, then ensure that the 
 //    host and port are correct. 
 //  - Use lsnrctl to check that the listener is running and to verify 
 //    the port or key it listens to. Run one of the following:
 //      * lsnrctl status
 //      * Or, when a listener is named in the listener.ora file, run:
 //                 lsnrctl status <listener_name>
 //      * Or, if an Oracle Connection Manager (Oracle CMAN) proxy 
 //                 listener is named in the cman.ora file, run:
 //                 cmctl show status -c <cman_name>
 / 
12560, 00000 "TNS:Database communication protocol error." 
 //  *Cause: A lower level communication protocol adapter error occurred. 
 //  *Action: 
 //  - Check for lower level network transport errors in the error stack
 //    for additional information.
 //  - Ensure the protocol specification used in the address for the
 //    connection is correct.
 //  - For further details, turn on network tracing and rerun the
 //    operation. Turn off tracing when the operation is complete.
 //  - Contact Oracle Support.
 / 
00511, 00000 "No listener" 
 // *Cause: The connect request could not be completed because no application 
 // is listening on the address specified, or the application is unable to 
 // service the connect request in a sufficiently timely manner. 
 // *Action: Ensure that the supplied destination address matches one of 
 // the addresses used by the listener - compare the TNSNAMES.ORA entry with 
 // appropriate LISTENER.ORA file (or TNSNAV.ORA if the connection is to go 
 // by way of an Interchange. Start the listener on the remote machine.  
 / 
/////////////////////////////////////////////////////////////// 
    ************************************************************************* 
    *                    Trace Assistant has completed                      * 
    ************************************************************************* 

ただし、nserrorファンクションでロギングされなかった他のエラーがトレース・ファイル内に存在する場合があります。