ODBC トレース

さまざまな方法で ODBC アクティビティーのトレースを開始することができますが、これらは使用するオペレーティング・システムに応じて変わります。

Windows platform Windows® では、ODBC 機能の 「トレース」タブを次のように使用します。

  1. 「スタート」 > 「設定」 > 「コントロール パネル」 > 「管理ツール」をクリックします。
  2. 「データ ソース」をダブルクリックします。
  3. 「トレース」タブをクリックします。
  4. 「トレースの開始」をクリックします。
  5. 「OK」をクリックします。

ODBC トレースを停止するには、「トレース」タブで「トレースの停止」をクリックしてから、「OK」をクリックします。

UNIX platform Linux® および UNIX® オペレーティング・システムで、ODBC.ini ファイルを編集し、ODBC アクティビティーのトレースを開始してください (デフォルトの ODBC.ini ファイルを使用している場合、/var/wmqi/odbc/.odbc.ini にあります)。
  1. スタンザ・エントリー [ODBC] で、Trace=0Trace=1 に変更します。
  2. オプションとして、TraceFile ファイル・パスの値を希望する値に変更します。すべてのトレース記録は 1 つのファイルにまとめられるため、複数のフローまたは実行グループがある場合に混乱させられてしまう可能性があります。

トレース情報は、.odbc.ini ファイルまたは Windows の ODBC 構成で指定された場所に出力されます。デフォルトでは、Windows システム以外の場合、これは /var/wmqi/odbc/odbctrace.out です。

z/OS platform z/OS® で、ODBC アクティビティーのアプリケーション・トレースを開始するには以下のようにします。変更の始まり
  1. コンポーネント・データ・セット内の BIPDSNAO ファイルを編集し、スタンザ・エントリー [COMMON] で、APPLTRACE=0APPLTRACE=1 に変更します。
  2. コメントを、WebSphere® Message Broker 開始澄みタスク JCL 内の COMPDIR 変数宣言と APPLTRACE DD から削除します。
  3. BIPDSNAO ファイルと開始済みタスク JCL に変更を加えた後、ブローカーを停止してから再始動します。

    デフォルトでは、トレース出力ファイルは <component_HFS>/output/db2appltrace. という名前のファイルに書き込まれます。 各アドレス・スペースには、db2appltrace. の最後に固有の番号が追加されます。

    ODBC ファイルに追加されるこの固有番号は、実行グループ・アドレス・スペース JOBLOG の SE 番号です。

    ODBC トレースを表示する JOBLOG 内の SE の値を探し、db2appltrace.<SE number> という名前のファイルを検索します。

変更の終わり
変更の始まり

WebSphere Message Broker for z/OS 上の DB2®

以下の ODBC トレース・ファイルのサンプルには、トレース・ファイルのレイアウトが、正常な戻りとエラーの戻りの例がいくつか表示されています。ODBC ファイル内の各グループの一般的なレイアウトは、以下のとおりです。
  • タイム・スタンプが各行の前に付きます。
  • 1 行目には、呼び出しの実行内容が表示されます。
  • 2 行目には、戻りが表示されます。
  • 3 行目には、結果が表示されます。
最初のトレース・ファイルには、オブジェクトにアクションを実行するための正しい権限がないために失敗する呼び出しについてのトレースが表示されています。
[2008-09-24 15:49:20.544123] SQLAllocStmt( hDbc=2, phStmt=&1c7f9554 )
[2008-09-24 15:49:20.544156] SQLAllocStmt( phStmt=1 )
[2008-09-24 15:49:20.544163]     ---> SQL_SUCCESS

[2008-09-24 15:49:20.544179] SQLFreeStmt( hStmt=1, fOption=SQL_CLOSE )
[2008-09-24 15:49:20.544189] SQLFreeStmt( )
[2008-09-24 15:49:20.544194]     ---> SQL_SUCCESS

[2008-09-24 15:49:20.544205] SQLPrepare( hStmt=1 )
[2008-09-24 15:49:20.544212] ( pszSqlStr="SELECT TESTTABLE.ID FROM 
WMQI77.TESTTABLE TESTTABLE", cbSqlStr=-3 )
[2008-09-24 15:49:20.587083] SQLPrepare( )
[2008-09-24 15:49:20.587101]     ---> SQL_ERROR

[2008-09-24 15:49:20.587157] SQLError( hEnv=0, hDbc=0, hStmt=1, 
pszSqlState=&3902af28, pfNativeError=&3902af24, pszErrorMsg=&1b88b0b0, 
cbErrorMsgMax=1024, pcbErrorMsg=&3902aefc )
[2008-09-24 15:49:20.587190] SQLError( pszSqlState="42501", pfNativeError=-551, 
pszErrorMsg="{DB2 FOR OS/390}{ODBC DRIVER}{DSN09015}
 DSNT408I SQLCODE = -551, ERROR:  WMQI83 DOES NOT HAVE THE PRIVILEGE TO PERFORM
          OPERATION SELECT ON OBJECT WMQI77.TESTTABLE
 DSNT418I SQLSTATE   = 42501 SQLSTATE RETURN CODE
 DSNT415I SQLERRP    = DSNXOSC SQL PROCEDURE DETECTING ERROR
 DSNT416I SQLERRD    = -100  0  0  -1  0  0 SQL DIAGNOSTIC INFORMATION
 DSNT416I SQLERRD    = X'FFFFFF9C'  X'00000000'  X'00000000'  X'FFFFFFFF'
          X'00000000'  X'00000000' SQL DIAGNOSTIC INFORMATION    ERRLOC=1:13:2", pcbErrorMsg=623 )
[2008-09-24 15:49:20.587666]     ---> SQL_SUCCESS

[2008-09-24 15:49:20.587725] SQLError( hEnv=0, hDbc=0, hStmt=1, 
pszSqlState=&3902af28, pfNativeError=&3902af24, pszErrorMsg=&1b88b0b0, 
cbErrorMsgMax=1024, pcbErrorMsg=&3902aefc )
[2008-09-24 15:49:20.587752] SQLError( )
[2008-09-24 15:49:20.587757]     ---> SQL_NO_DATA_FOUND

[2008-09-24 15:49:20.588049] SQLFreeStmt( hStmt=1, fOption=SQL_DROP )
[2008-09-24 15:49:20.588075] SQLFreeStmt( )
[2008-09-24 15:49:20.588080]     ---> SQL_SUCCESS

[2008-09-24 15:49:20.593800] SQLTransact( hEnv=1, hDbc=0, fType=SQL_COMMIT )
[2008-09-24 15:49:20.593887] SQLTransact( )
[2008-09-24 15:49:20.593893]     ---> SQL_SUCCESS
2 番目のトレース・ファイルは、作動した操作についての同じトレース・ファイルが示されています。
[2008-09-24 16:00:25.287052] SQLAllocStmt( hDbc=1, phStmt=&1c7f8e54 )
[2008-09-24 16:00:25.287068] SQLAllocStmt( phStmt=1 )
[2008-09-24 16:00:25.287075]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.287088] SQLFreeStmt( hStmt=1, fOption=SQL_CLOSE )
[2008-09-24 16:00:25.287098] SQLFreeStmt( )
[2008-09-24 16:00:25.287104]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.287114] SQLPrepare( hStmt=1 )
[2008-09-24 16:00:25.287121] ( pszSqlStr="SELECT TESTTABLE.ID FROM 
WMQI77.TESTTABLE TESTTABLE", cbSqlStr=-3 )
[2008-09-24 16:00:25.302484] SQLPrepare( )
[2008-09-24 16:00:25.302510]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302539] SQLFreeStmt( hStmt=1, 
fOption=SQL_CLOSE )
[2008-09-24 16:00:25.302555] SQLFreeStmt( )
[2008-09-24 16:00:25.302560]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302573] SQLExecute( hStmt=1 )
[2008-09-24 16:00:25.302622] SQLExecute( )
[2008-09-24 16:00:25.302628]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302660] SQLNumResultCols( hStmt=1, 
pcCol=&3902c7fa )
[2008-09-24 16:00:25.302672] SQLNumResultCols( pcCol=1 )
[2008-09-24 16:00:25.302679]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302697] SQLDescribeCol( hStmt=1, iCol=1, 
pszColName=&3902cb10, cbColNameMax=200, pcbColName=&3902c804, 
pfSQLType=&3902c802, pcbColDef=&3902c858, pibScale=&3902c800, 
pfNullable=&3902c7fe )
[2008-09-24 16:00:25.302733] SQLDescribeCol( pszColName="ID", 
pcbColName=2, pfSQLType=SQL_CHAR, pcbColDef=10, pibScale=0, 
pfNullable=SQL_NULLABLE )
[2008-09-24 16:00:25.302819]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302826] SQLColAttribute( hStmt=1, iCol=1, 
fDescType=SQL_DESC_OCTET_LENGTH, rgbDesc=NULL, cbDescMax=0, 
pcbDesc=NULL, pfDesc=&3902c864 )
[2008-09-24 16:00:25.302850] SQLColAttribute( pfDesc=10 )
[2008-09-24 16:00:25.302857]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302866] SQLBindCol( hStmt=1, iCol=1, 
fCType=SQL_C_CHAR, rgbValue=&1b48829c, cbValueMax=12, 
pcbValue=&1b488298 )
[2008-09-24 16:00:25.302888] SQLBindCol( )
[2008-09-24 16:00:25.302894]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302901] SQLSetStmtAttr( hStmt=1, 
fAttribute=SQL_ATTR_ROW_BIND_TYPE, pvParam=&10, iStrLen=0 )
[2008-09-24 16:00:25.302917] SQLSetStmtAttr( )
[2008-09-24 16:00:25.302922]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302928] SQLSetStmtAttr( hStmt=1, 
fAttribute=Unknown value 9, pvParam=&20, iStrLen=0 )
[2008-09-24 16:00:25.302943] SQLSetStmtAttr( )
[2008-09-24 16:00:25.302949]     ---> SQL_SUCCESS

[2008-09-24 16:00:25.302956] SQLExtendedFetch( hStmt=1, 
fFetchType=SQL_FETCH_NEXT,iRow=0, pcRow=&1c7f6894, 
rgfRowStatus=&1bca17d0 )
[2008-09-24 16:00:25.317947] ( Row=1, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLG     ", pcbValue=10 )
[2008-09-24 16:00:25.317980] ( Row=2, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLF     ", pcbValue=10 )
[2008-09-24 16:00:25.318001] ( Row=3, iCol=1, fCType=SQL_C_CHAR, r
gbValue="TABLE     ", pcbValue=10 )
[2008-09-24 16:00:25.318022] ( Row=4, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLD     ", pcbValue=10 )
[2008-09-24 16:00:25.318044] ( Row=5, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLC     ", pcbValue=10 )
[2008-09-24 16:00:25.318065] ( Row=6, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLB     ", pcbValue=10 )
[2008-09-24 16:00:25.318087] ( Row=7, iCol=1, fCType=SQL_C_CHAR, 
rgbValue="TABLA     ", pcbValue=10 )
[2008-09-24 16:00:25.318109] SQLExtendedFetch( pcRow=7 )
変更の終わり
関連タスク
トラブルシューティングとサポート
トレースの使用
関連資料
サポートされるデータベース
データベース機能
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
最終更新 : 2009-02-20 12:44:44

au14215_