DB2 Version 9.7 for Linux, UNIX, and Windows

診断ログ・ファイル項目の解釈

db2diag ログ・ファイル分析ツール (db2diag) は、db2diag ログ・ファイルのフィルター処理とフォーマットに使用します。標準化されたメッセージ・フォーマットで管理通知ログ・メッセージの追加部分が db2diag ログ・ファイルに記録された場合は、データベースで何が起こったのかを理解するために、db2diag ログ・ファイルを最初に表示することをお勧めします。

db2diag を使用する代わりに、テキスト・エディターを使用して、問題が発生した可能性のあるマシンの診断ログ・ファイルを表示できます。最新のイベントは、ファイルの一番下に記録されています。

注: 管理通知 (instance_name.nfy) および診断 (db2diag.log) ログは、単一ログ・ファイルとして継続的に 増加します。diagsize データベース・マネージャーの構成パラメーターがゼロ以外の値に設定されている場合、管理通知および db2diag ログ・ファイルの両方は、diagsize 構成パラメーターの値により決定される限定された合計サイズを持つ、連続した循環ログ・ファイル (instance_name.N.nfy and db2diag.N.log) になります。

以下の例はサンプル・ログ項目のヘッダー情報で、ログのすべての部分が示されています。

注: すべてのログ項目にこれらの部分がすべて含まれるとは限りません。すべての db2diag ログ・ファイルレコードに必ず含まれるのは、最初のいくつかのフィールド (タイム・スタンプから TID まで) および FUNCTION だけです。
2007-05-18-14.20.46.973000-240 1  I27204F655 2  LEVEL: Info 3 
PID : 3228 4  TID : 8796 5  PROC : db2syscs.exe 6 
INSTANCE: DB2MPP 7  NODE : 002 8  DB : WIN3DB1 9 
APPHDL : 0-51 10  APPID: 9.26.54.62.45837.070518182042 11 
AUTHID : UDBADM 12  
EDUID : 8796 13  EDUNAME: db2agntp 14  (WIN3DB1) 2
FUNCTION: 15  DB2 UDB, data management, sqldInitDBCB, probe:4820
DATA #1 : 16  String, 26 bytes
Setting ADC Threshold to: 
DATA #2 : unsigned integer, 8 bytes 
1048576

凡例:

1.
メッセージのタイム・スタンプとタイム・ゾーン。
注: db2diag ログ・ファイルのタイム・スタンプには、タイム・ゾーンが含まれます。例えば、2006-02-13-14.34.35.965000-300 の場合、"-300" は UTC (協定世界時、以前は GMT と呼ばれていた) とアプリケーション・サーバーの現地時間との差異です (単位は分)。つまり -300 とは UTC マイナス 5 時間という意味で、米国の東部標準時 (EST) がこれに該当します。
2.
レコード ID フィールド。db2diag ログ・ファイルのレコード ID は、DB2® 診断ログが作成されたプラットフォームで現在のメッセージが記録されている場所のファイル・オフセット (例えば「27204」) とメッセージの長さ (例えば「655」) を示します。
3.
メッセージの診断レベル。レベルは、Info (通知)、Warning (警告)、Error (エラー)、Severe (重大)、Critical (クリティカル)、および Event (イベント) です。
4.
プロセス ID
5.
スレッド ID
6.
プロセス名
7.
メッセージを生成したインスタンスの名前。
8.
マルチパーティション・システムの場合、メッセージを生成したデータベース・パーティション。非パーティション・データベースでは、この値は「000」です。
9.
データベース名
10.
アプリケーション・ハンドル。この値は、db2pd 出力ファイルおよびロック・ダンプ・ファイルの値と同じになります。コーディネーター・パーティション番号の後にダッシュ (-)、その後にコーディネーター索引番号が示されます。
11.
プロセスが作動しているアプリケーションの識別番号。この例では、メッセージを生成したプロセスは、ID 9.26.54.62.45837.070518182042 のアプリケーションのために作動しています。

TCP/IP によって生成されるアプリケーション ID は、3 つのセクションから構成されます。

  1. IP アドレス: 最大 8 個の 16 進文字を使用する 32 ビットの数値として表されます。
  2. ポート番号: 4 個の 16 進文字として表されます。
  3. このアプリケーションのインスタンスを表すユニーク ID
注: 16 進数の IP アドレスまたはポート番号が 0 から 9 で始まる場合、それらは G から P に変更されます。例えば、"0" は "G" に、"1" は "H" にというように、それぞれマップされます。IP アドレス AC10150C.NA04.006D07064947 は次のように解釈されます: IP アドレスは AC10150C のままで、172.16.21.12 に変換されます。ポート番号は NA04 です。最初の文字 "N" は "7" にマップされます。したがって、16 進形式のポート番号は 7A04 となり、これは 10 進形式で 31236 に変換されます。

この値は appl_id モニター・エレメント・データと同じになります。 この値を解釈する方法の詳細については、appl_id モニター・エレメントの資料を参照してください。

特定のアプリケーション ID の詳細情報を識別するには、以下のいずれかを行ってください。

  • DB2 サーバー上で LIST APPLICATIONS コマンドを使用するか、DB2 Connect™ ゲートウェイ上で LIST DCS APPLICATIONS を使用して、アプリケーション ID のリストを表示します。このリストから、エラーが起きたクライアントに関する情報を判別できます (データベース・パーティション名、TCP/IP アドレスなど)。
  • GET SNAPSHOT FOR APPLICATION コマンドを使用して、アプリケーション ID のリストを表示します。
  • db2pd -applications -db <dbname> コマンドを使用します。
12
許可 ID。
13
エンジン・ディスパッチ可能単位 ID。
14
エンジン・ディスパッチ可能単位の名前。
15.
メッセージを書き込んだ製品の製品名 (「DB2」)、コンポーネント名 (「data management」)、関数名 (「sqlInitDBCB」)、関数内のプローブ点 (「4820」)。
16.
呼び出した関数から返された情報。複数のデータ・フィールドが返される可能性があります。

サンプル db2diag ログ・ファイルの項目をすでに見ましたので、可能なすべてのフィールドのリストをご覧ください。

<timestamp><timezone>       <recordID>         LEVEL: <level> (<source>)
PID     : <pid>             TID  : <tid>       PROC : <procName>  
INSTANCE: <instance>        NODE : <node>      DB   : <database>
APPHDL  : <appHandle>       APPID: <appID>	
AUTHID  : <authID>
EDUID   : <eduID>           EDUNAME: <engine dispatchable unit name>
FUNCTION: <prodName>, <compName>, <funcName>, probe:<probeNum>
MESSAGE : <messageID>  <msgText>
CALLED  : <prodName>, <compName>, <funcName>   OSERR: <errorName> (<errno>)
RETCODE : <type>=<retCode> <errorDesc>
ARG #N  : <typeTitle>, <typeName>, <size> bytes
... argument ...
DATA #N : <typeTitle>, <typeName>, <size> bytes
... data ...

上記の例で説明されなかったフィールドは以下のとおりです。