モニター・データを XML 文書で返すインターフェース

一部のモニター・データが XML 文書の要素として報告されるようになりました。

XML を使用してモニター情報を報告するという方法は、拡張性と柔軟性を高めます。 出力表に新しい列を追加する必要なしに、新しいモニター・エレメントを追加できます。 また、必要に応じて XML 文書をさまざまに処理できます。 例えば、
  • XQuery を使用して、XML 文書に対して照会を実行できます。
  • XSLTRANSFORM スカラー関数を使用して、文書を他のフォーマットに変換できます。
  • 組み込み MON_FORMAT_XML_* フォーマット関数または XMLTABLE 表関数を使用して、内容をフォーマット済みテキストとして表示できます。
モニター・エレメントを含んだ XML 文書は、いくつかのモニター・インターフェースによって生成されます。 以下のセクションでは、結果がどのように XML 文書として返されるかを説明します。

名前の終わりが「_DETAILS」のモニター表関数

これらの表関数の例として、以下の関数があります。
  • MON_GET_PKG_CACHE_STMT_DETAILS
  • MON_GET_WORKLOAD_DETAILS
  • MON_GET_CONNECTION_DETAILS
  • MON_GET_SERVICE_SUBCLASS_DETAILS
  • MON_GET_ACTIVITY_DETAILS
  • MON_GET_UNIT_OF_WORK_DETAILS
これらの表関数は、システムとアクティビティーのモニターの観点からのモニター・エレメントを返します。 これらの関数が返すモニター・エレメントのほとんどは、XML 文書に含められます。 例えば、MON_GET_CONNECTION_DETAILS 表関数は、以下の列を返します。
  • APPLICATION_HANDLE
  • MEMBER
  • DETAILS
各行の DETAILS 列には、モニター・エレメント・データのある XML 文書が含まれます。 この XML 文書は、モニター・エレメントに対応するいくつかの文書エレメントで構成されます。 図 1 は、XML 文書が含まれる DETAILS 列を図示したものです。さらに、DETAILS 列の XML 文書で返されるモニター・エレメントも示しています。
図 1. MON_GET_CONNECTION_DETAILS によって返される表における XML 文書を含んだ DETAILS 列. 第 3 行の XML 文書の内容 ( 1 ) を表に続いて示しています。
MON_GET_CONNECTION_DETAILS 関数の出力における DETAILS 文書。
DETAILS 文書の内容。
この例では、XML 文書の <agent_wait_time> エレメントは、agent_wait_time モニター・エレメントに対応します。

DETAILS 列で返される XML 文書のスキーマは、sqllib/misc/Db2MonRoutines.xsd ファイルにあります。 さらに詳細なものが、sqllib/misc/Db2MonCommon.xsd ファイルにあります。

DETAILS 列の文書に含まれるモニター・エレメントのうちのいくつかは、より上位の文書エレメントにグループ化される場合があります。 例えば、アクティビティー関連のメトリックについて報告する各モニター・エレメントは、activity_metrics エレメントの一部です。 同様に、システム・レベルのメトリックは、system_metrics エレメントの一部です。

イベント・モニターによって返される XML データ

いくつかのイベント・モニターは、XML 形式でデータを返します。 これについては、表 1で要約されています。 以下のセクションでは、さまざまなイベント・モニターによって返される XML 文書の詳細について説明します。
表 1. さまざまなイベント・モニターによって返される XML 文書
イベント・モニター イベント・モニター出力形式 返される XML 文書
統計イベント・モニター リレーショナル表
ファイル
名前付きパイプ
metrics
この文書に報告されるメトリックは、 統計が最後に収集された時からの各メトリックの値の変化を示します。
details_xml
この文書で報告されるメトリックは、データベースが非活動化されるまで累積されます。
アクティビティー・イベント・モニター リレーショナル表
ファイル
名前付きパイプ
details_xml
パッケージ・キャッシュ・イベント・モニター 未フォーマット・イベント (UE) 表 metrics

この文書は、 UE 表を XML またはリレーショナル表のいずれかに変換しないと表示できません。

作業単位イベント・モニター 未フォーマット・イベント (UE) 表 metrics

この文書は、 UE 表を XML またはリレーショナル表のいずれかに変換しないと表示できません。

統計イベント・モニター

統計イベント・モニターは、イベント・モニター出力に以下の 2 つの論理データ・グループのいずれかが含まれる場合には、XML 形式でメトリックを記録します。
  • EVENT_SCSTATS
  • EVENT_WLSTATS
これらのグループのうち、いずれかのグループのモニター・エレメントについて報告する統計イベント・モニターを作成すると、いくつかのシステム・メトリックが 2 つの XML 文書の一部として収集されます。 details_xml モニター・エレメントおよび metrics モニター・エレメントのそれぞれの XML 文書です。 どちらの XML 文書にも、同じセットのモニター・エレメントが含まれています。metrics 文書の場合、 エレメントの値は、統計が最後に収集された時からの各エレメントの値の変化を示します。details_xml に含まれているエレメントの値は、間隔ごとにリセットされることはありません。リセットされるのは、データベースが再活動化される場合だけです。 データがファイルまたは名前付きパイプに書き込まれると、これらのエレメントは自己記述型データ・ストリームの一部になります。イベント・モニター・データが表に書き込まれる場合には、metrics 文書は METRICS という列に、details_xml は DETAILS_XML という列に保管されます。図 2 は、統計イベント・モニターによって生成された SCSTATS 表に表示される METRICS 列と DETAILS_XML 列の XML 文書を示しています。
図 2. 表に書き込まれた統計イベント・モニター出力における DETAILS_XML および METRICS 列. 第 3 行の XML 文書の内容 ( 1 ) を表に続いて示しています。
統計イベント・モニターの表出力における DETAILS_XML および METRICS 列。
これらの列に含まれている各文書には最上位エレメントとして system_metrics が含まれており、 このエレメントには、システム関連メトリックについて報告するいくつかのモニター・エレメントが含まれています。
統計イベント・モニターからの典型的な metrics 文書の内容。

metrics モニター・エレメントの XML 文書でシステム・メトリックを確認できる他、EVENT_SCMETRICS 論理データ・グループおよび EVENT_WLMETRICS 論理データ・グループに関連する出力から直接、個々のメトリックを確認することもできます。

注 :
  • 統計イベント・モニターによって生成される DETAILS_XML 列に含まれる details_xml 文書で報告される system_metrics エレメントは、MON_GET_SERVICE_SUBCLASS_DETAILS および MON_GET_WORKLOAD_DETAILS 表関数が返す DETAILS 列にある XML 文書の一部でもあります。details_xml 文書で報告されるメトリック同様、DETAILS 列に含まれる文書で報告されるメトリックの値は、データベースが非活動化されるまで累積されます。

アクティビティー・イベント・モニター

event_activity 論理データ・グループのモニター・エレメントについて報告するアクティビティー・イベント・モニターを作成した場合、生成される列の 1 つは DETAILS_XML になります。イベント・モニターが表に書き込まれる場合、DETAILS_XML は 1 つの列になります。ファイルまたは Named PIPE に書き込まれる場合、DETAILS_XML は自己記述型データ・ストリームの一部になります。 いずれにしても、文書には activity_metrics モニター・エレメントが含まれ、そのエレメント自体に、アクティビティー関連のメトリックについて報告するいくつかのモニター・エレメントが含まれます。
注: アクティビティー・イベント・モニターが生成する DETAILS_XML 列の XML 文書で報告される activity_metrics は、MON_GET_ACTIVITY_DETAILS 表関数が返す DETAILS 列にある XML 文書の一部でもあります。

パッケージ・キャッシュ・イベント・モニター

パッケージ・キャッシュ・イベント・モニターは、その出力を未フォーマット・イベント (UE) 表に書き込みます。この表のデータを EVMON_FORMAT_UE_TO_TABLES 表関数を使用して変換した場合、生成される表の 1 つは PKGCACHE_EVENT です。この表には、METRICS 列が含まれます。 各行のこの列には、パッケージ・キャッシュ・イベント・モニター・エレメントに関連したエレメントのある XML 文書が含まれます。
注: EVMON_FORMAT_UE_TO_TABLES 表関数は、このイベント・モニターによって収集されるメトリックのための PKGCACHE_METRICS という別個の表も作成します。この表には、PKGCACHE_EVENT 表の METRICS 列で報告されるその同じ情報が含まれます。 したがって、PKGCACHE_METRICS 表の列からメトリックを取得することも、PKGCACHE_EVENT 表の METRICS 列にある XML 文書を使用することもできます。

EVMON_FORMAT_UE_TO_XML 関数は、パッケージ・キャッシュ・イベント・モニター・エレメントに関連したエレメントのある XML 文書も生成します。 例えば、XML 文書エレメント <num_executions> は、num_executions モニター・エレメントに対応します。

作業単位イベント・モニター

作業単位イベント・モニターは、その出力を未フォーマット・イベント (UE) 表に書き込みます。この表のデータを EVMON_FORMAT_UE_TO_TABLES 表関数を使用して変換した場合、生成される表の 1 つは UOW_EVENT です。この表には、作業単位イベント・モニター・エレメントに関連したエレメントのある XML 文書を含んだ METRICS 列があります。

EVMON_FORMAT_UE_TO_XML 関数は、作業単位イベント・モニター・エレメントに関連したエレメントのある XML 文書も生成します。 例えば、XML 文書エレメント <workload_name> は、workload_name モニター・エレメントに対応します。