PD_GET_DIAG_HIST 表関数 - 指定された機能からレコードを戻す
PD_GET_DIAG_HIST 関数は、指定された機能からログ・レコード、イベント・レコード、および通知レコードを戻します。
また、レコードのタイプ、レコードの顧客影響値、および from-until タイム・スタンプに基づいてフィルター操作を行うためのオプションも提供されます。
許可
このルーチンを実行するには、以下のいずれかの権限が必要です。
- ルーチンに対する EXECUTE 特権
- DATAACCESS 権限
- DBADM 権限
- SQLADM 権限
デフォルトの PUBLIC 特権
制限のないデータベースでは、この関数が自動的に作成されると、EXECUTE 特権が PUBLIC に付与されます。
構文
スキーマは SYSPROC です。
表関数パラメーター
- 機能
- レコードが戻される機能を指定する、タイプ VARCHAR(20) のオプション入力引数。 機能とは、レコードが関連付けられる論理グループです。 可能な値は次のとおりです。
- ALL: すべての機能からレコードを戻します。
- MAIN: 一般診断ログからレコードを戻します。 現時点では、db2diag ログ・ファイル、管理通知ログ、および循環イベント・ログのことです。
- OPTSTATS: オプティマイザー統計に関連したレコードを戻します。
rectype - 戻すレコード・タイプを指定する、タイプ VARCHAR(30) のオプション入力引数。 '+' で区切られた組み合わせのタイプがサポートされます。例えば、'D + EI' などです。 可能な値は次のとおりです。
- 「ALL」: すべてのレコード・タイプを戻します。
- 「D」: すべての診断レコードを戻します。
- 「E」: すべてのイベント・レコードを戻します。
- 「DI」: 内部診断レコード。 これらは、診断状況で IBM サポートによって使用される変換されていない診断レコードです。
- 「DX」: 外部診断レコード。 これらは、ユーザーに役立つ翻訳済みの診断です。 これらのレコードは通知レコードです。
- 「EI」: 内部イベント・レコード。 これらは、診断状況で IBM サポートによって使用されるイベント・レコードです。
- 「EX」: 外部イベント・レコード。 これらは、ユーザーに役立つ診断レコードです。
影響 - 戻されるレコードの最小の顧客影響レベルを指定する、タイプ VARCHAR(18) のオプション入力引数。 可能な値は次のとおりです。
- 「NONE」
- 'UNLIKELY'
- 'POTENTIAL'
- 'IMMEDIATE'
- 'CRITICAL'
開始時刻 - 有効なタイム・スタンプを指定する、タイプ TIMESTAMP のオプション入力引数。 項目のタイム・スタンプがこの値より新しい場合は、それらの項目が戻されます。 このパラメーターが NULL の場合は、項目の古さに関係なくレコードが戻されます。 終了時刻
- 有効なタイム・スタンプを指定する、タイプ TIMESTAMP のオプション入力引数。 項目のタイム・スタンプがこの値より古い場合は、それらの項目が戻されます。 このパラメーターが NULL の場合は、項目の新しさに関係なくレコードが戻されます。 member
- レコードの取り出し元である有効なデータベース・メンバーを指定する、タイプ INTEGER の オプションの入力引数。 現行メンバーの場合は -1 または NULL、 すべてのアクティブ・データベース・メンバーからの情報の場合は -2 を指定します。 アクティブ・データベース・メンバーとは、アプリケーションがデータベースに接続して使用できるところのことです。 このパラメーターが指定されない場合は、デフォルトの値がすべてのアクティブ・データベース・メンバーになります。
戻される情報
列名 | データ・タイプ | 説明 |
---|---|---|
FACILITY | VARCHAR(20) | 機能とは、レコードが関連付けられる論理グループです。 可能な値は次のとおりです。
|
RECTYPE | VARCHAR(3) | レコードのタイプ。 可能な値は次のとおりです。
|
TIMESTAMP | TIMESTAMP | メッセージが作成された時刻。 |
TIMEZONE | INTEGER | 協定世界時 (UCT) との時差 (分単位)。 例えば、-300 は米東部標準時です。 |
INSTANCENAME | VARCHAR(128) | メッセージが作成されたインスタンスの名前。 |
DBPARTITIONNUM | SMALLINT | dbpartitionnum - データベース・パーティション番号 : モニター・エレメント |
LEVEL | CHAR(1) | レコードの重大度レベル。 可能な値は次のとおりです。
|
IMPACT | VARCHAR(18) | ユーザーの視点からこのメッセージの影響を限定します。 これは、データベース・システム構成要素となっているビジネス・プロセスに関するメッセージの影響を明確にします。 可能な値は以下のとおりです。
|
DBNAME | VARCHAR(128) | このメッセージの作成中にアクセスされているデータベースの名前。 |
EDU_ID | BIGINT | edu_ID - エンジン・ディスパッチ可能単位 ID : モニター・エレメント |
EDUNAME | VARCHAR(64) | このメッセージを作成したエンジン・ディスパッチ可能単位の名前。 |
PID | BIGINT | このメッセージを作成したオペレーティング・システム・プロセス ID。 |
PROCESS_NAME | VARCHAR(255) | このメッセージを作成したオペレーティング・システム・プロセス名。 |
TID | BIGINT | このメッセージを作成したスレッド数値 ID。 |
APPLNAME | VARCHAR(255) | 接続を開始したクライアント・アプリケーションの名前 (使用可能な場合)。 |
APPL_ID | VARCHAR(64) | appl_id - アプリケーション ID : モニター・エレメント |
APPLHANDLE | VARCHAR(9) | 使用可能な場合に接続を開始したアプリケーションの、システム全体におけるユニーク ID。 これはエージェント ID と同義です。 ID は、コーディネーター・メンバー番号と、「-」で区切られた 16 ビット・カウンターで構成されます。形式は次のとおりです: 'nnn-xxxxx ' |
AUTH_ID | VARCHAR(30) | auth_id 許可 ID: モニター・エレメント |
製品 | VARCHAR(50) | メッセージを作成したプロダクトの名前。 例えば、「Db2 Common」などです。 |
COMPONENT | VARCHAR(255) | メッセージを作成したコンポーネントの名前。 |
FUNCTION | VARCHAR(255) | メッセージを生成した関数の名前。 |
PROBE | INTEGER | メッセージが関数で生成された場所を識別するために使用されるプローブ・ポイント番号。 |
CALLEDPRODUCT | VARCHAR(50) | エラーのソースにあるプロダクトの名前。 エラーのソースがメッセージが作成された場所ではない場合にこれが使用されます。 |
CALLEDCOMPONENT | VARCHAR(255) | エラーのソースにあるコンポーネントの名前。 エラーのソースがメッセージが作成された場所ではない場合にこれが使用されます。 |
CALLEDFUNCTION | VARCHAR(255) | エラーのソースにある関数の名前。 エラーのソースがメッセージが作成された場所ではない場合にこれが使用されます。 |
OSERR | INTEGER | オペレーティング・システム・エラー番号。 |
RETCODE | INTEGER | プロダクト固有の戻りコード。 |
MSGNUM (M) | INTEGER | 関連メッセージの数値メッセージ番号 (使用可能な場合)。 例えば、これは ADM7513W の数値部分です。 |
MSGTYPE | CHAR(3) | メッセージ ID に関連したタイプ (使用可能な場合)。 例えば、ADM は管理通知ログ・メッセージに使用されます。 |
MSG | CLOB(16K) | このレコードの簡略説明テキスト。 これは、翻訳済みメッセージの MSGNUM、および MSGTYPE に対応する翻訳済みメッセージ・テキストです。 翻訳済みでないメッセージの場合、これは簡略説明です。 例えば、「Bringing down all db2fmp processes as part of db2stop」のようになります。 |
OBJTYPE | VARCHAR(64) | オブジェクトのタイプ。 以下のいずれか
|
OBJNAME | VARCHAR(255) | イベントが関連するオブジェクトの名前 (使用可能な場合)。 |
OBJNAME_QUALIFIER | VARCHAR(255) | オブジェクトの追加情報 (使用可能な場合)。 |
EVENTTYPE | VARCHAR(24) | イベント・タイプは、このイベントに関連したアクションまたは verb です。 可能な値は次のとおりです。
|
EVENTDESC | VARCHAR(256) | このイベントのキー・フィールドの簡略表現。 |
FIRST_EVENTQUALIFIERTYPE | VARCHAR(64) | 最初のイベント修飾子のタイプです。 イベント修飾子は、イベントによって影響を受けた対象について記述するために使用します。 可能な値は次のとおりです。
|
FIRST_EVENTQUALIFIER | CLOB(16K) | イベントの最初の修飾子です。 facility が OPTSTATS の場合、これは統計収集が行われた時を示すタイム・スタンプになります。 |
SECOND_EVENTQUALIFIERTYPE | VARCHAR(64) | 2 番目のイベント修飾子のタイプです。 facility が OPTSTATS の場合、値は 'BY' です。 |
SECOND_EVENTQUALIFIER | CLOB(16K) | イベントの 2 番目の修飾子です。 facility が OPTSTATS の場合、使用できる値は次のとおりです。
|
THIRD_EVENTQUALIFIERTYPE | VARCHAR(64) | 3 番目のイベント修飾子のタイプです。 facility が OPTSTATS の場合、値は 'DUE TO' です。 |
THIRD_EVENTQUALIFIER | CLOB(16K) | イベントの 3 番目の修飾子です。 facility が OPTSTATS の場合、使用できる値は次のとおりです。
|
EVENTSTATE | VARCHAR(255) | イベントの結果のオブジェクトまたはアクションの状態。 また、これにはイベントの進捗を示すパーセントも含めることができます。 |
EVENTATTRIBUTE | VARCHAR(255) | イベント属性。 これはイベントに関連した属性のリストです。 複数の属性が使用される場合、リストは '+' 文字で区切られます。 例えば、'CACHED + LOGICAL + AUTO' などです。 可能な値は次のとおりです。
|
EVENTSTACK | CLOB(16K) | 該当する場合に、レコードが記録された地点の論理イベント・スタック。 |
CALLSTACK | CLOB(16K) | 該当する場合に、このレコードを生成したスレッドのオペレーティング・システム・スタック・ダンプ。 |
DUMPFILE | CLOB(5000) | 該当する場合に、ログ・レコードに関連した 2 次ダンプ・ファイルの名前。 これはファイルへの絶対パス、またはメッセージに関連した追加情報を検索できるディレクトリーです。 |
FULLREC | CLOB(16K) | レコード全体のフォーマット済みテキスト・バージョン。 このセクションには追加 DATA フィールドも含まれます。 |
メンバー | SMALLINT | member - データベース・メンバー・モニター・エレメント |
HOSTNAME | VARCHAR(255) | hostname - ホスト名 |
使用上の注意
PD_GET_DIAG_HIST 表関数では、関連データベースに最低 8K のページ・サイズを持つ TEMPORARY 表スペースがあることが必要です。 ページ・サイズが 8K 未満である場合にこの関数を使用すると、 SQL1585N エラー・メッセージが戻されます。
例
例 1: 指定された機能からレコードを取得します。
SELECT FACILITY, RECTYPE, TIMESTAMP, IMPACT, SUBSTR(MSG,1, 50) AS MSG
FROM TABLE (PD_GET_DIAG_HIST( 'MAIN', 'E', '', NULL,
NULL ) ) AS T
WHERE T.PROCESS_NAME = 'db2star2' OR T.PROCESS_NAME = 'db2stop2'
以下はこの照会の出力例です。
FACILITY RECTYPE TIMESTAMP ...
-------------------- ------- -------------------------- ...
MAIN EX 2007-06-25-11.34.05.756171 ...
MAIN EX 2007-06-25-11.34.25.946646 ...
2 record(s) selected.
この照会の出力 (続き)。
... IMPACT MSG
... ------------------ --------------------------------------------------
... - ADM7514W Database manager has stopped.
... - ADM7513W Database manager has started.
例 2: 特定のメンバーのレコードを取得します。
SELECT MEMBER,DBPARTITIONNUM, FACILITY, RECTYPE, TIMESTAMP, IMPACT,
SUBSTR(MSG,1, 50) AS MSG FROM TABLE (PD_GET_DIAG_HIST('MAIN', 'E', '',
CAST (NULL AS TIMESTAMP), CAST (NULL AS TIMESTAMP), NULL ) ) AS T
WHERE T.PROCESS_NAME = 'db2star2' OR T.PROCESS_NAME = 'db2stop2' ORDER BY MEMBER
以下はこの照会の出力例です。
MEMBER DBPARTITIONNUM FACILITY RECTYPE TIMESTAMP ...
--------- ----------------- ------------- ------- -------------------------- ...
0 0 MAIN EI 2011-04-28-09.44.57.720041 ...
0 0 MAIN EI 2011-04-28-09.44.57.723015 ...
0 0 MAIN EI 2011-04-28-09.44.57.723736 ...
0 0 MAIN EI 2011-04-28-09.44.59.409586 ...
0 0 MAIN EX 2011-04-28-09.45.01.554096 ...
0 0 MAIN EI 2011-04-28-09.45.01.605231 ...
0 0 MAIN EI 2011-04-28-12.34.20.571551 ...
0 0 MAIN EI 2011-04-28-12.34.20.574612 ...
0 0 MAIN EI 2011-04-28-12.34.20.575323 ...
0 0 MAIN EI 2011-04-28-12.34.20.602452 ...
0 0 MAIN EI 2011-04-28-12.34.20.665227 ...
0 0 MAIN EI 2011-04-28-09.44.57.715392 ...
12 record(s) selected.
この照会の出力 (続き)。... IMPACT MSG
... ------------------ --------------------------------------------------
... - -
... - -
... - Obtained exclusive mode lock on the file:
... - -
... - ADM7513W Database manager has started.
... - Released lock on the file:
... - -
... - -
... - Obtained exclusive mode lock on the file:
... - ZRC=0xFFFFFBFE=-1026
... - Released lock on the file:
... - -