イベント・モニター・データ読み取り用の db2evmonfmt ツール

Java™ ベースの汎用 XML パーサー・ツールである db2evmonfmt は、通常表に出力を書き込んだり未フォーマット・イベント表を使用したりするイベント・モニターによって生成されたデータから、判読可能なフラット・テキスト出力 (テキスト・バージョン) またはフォーマット済み XML 出力を生成します。 指定したパラメーターに基づいて、db2evmonfmt ツールは、イベント・モニター・データの解析方法および作成する出力のタイプを決定します。
db2evmonfmt ツールは、Java ソース・コードとして提供されます。 使用する前に、以下のステップを実行して、このツールをセットアップおよびコンパイルする必要があります。
  1. sqllib/samples/java/jdbc ディレクトリーでソース・コードを見つける。
  2. Java ソース・ファイルに組み込まれている説明に従って、ツールをセットアップおよびコンパイルする。
ソース・コードは、ユーザーの好みに合わせて出力を変えるために変更できます。
このツールは、XSLT スタイル・シートを使用して、イベント・データをフォーマット済みテキストにトランスフォームします。 これらのスタイル・シートについては理解する必要はありません。 ツールは、イベント・モニター・タイプに基づいて正しいスタイル・シートを自動的にロードし、イベント・データをトランスフォームします。 各イベント・モニターは、sqllib/samples/xml/data ディレクトリー内でデフォルトのスタイル・シートを提供します。 さらにツールは、以下のフィルター・オプションを提供します。
  • イベント ID
  • イベント・タイム・スタンプ
  • イベント・タイプ
  • ワークロード名
  • サービス・クラス名
  • アプリケーション名

ツールの構文

構文図を読む構文図をスキップするjavadb2evmonfmt connectXML filefilter options-h
connect
構文図を読む構文図をスキップする-ddb_name -uetable_name-wttwrite_to_table_event_monitor_name -uuser_id-ppassword
XML file
構文図を読む構文図をスキップする-fxml_filename
filter options
構文図を読む構文図をスキップする-fxml-ftext-ssstylesheet_name-idevent_id-typeevent_type-hoursnum_hours-wworkload_name-aappl_name-ssrvc_subclass_name

ツールのパラメーター

java
db2evmonfmt Java ベース・ツールを正常に実行するには、java キーワードをツール名の先頭に付ける必要があります。 このツールを正常に実行するための正しい Java バージョンは、製品のインストール中に sqllib/java/jdk64 ディレクトリーからインストールされます。
-d db_name
接続先のデータベース名を指定します。
-ue table_name
未フォーマット・イベント表の名前を指定します。
-wtt write_to_table_event_monitor_name
WRITE TO TABLE ターゲットのあるイベント・モニターの名前を指定します。作業単位 (UOW)、パッケージ・キャッシュ、ロック、変更履歴の各イベント・モニターだけがサポートされています。
-u user_id
ユーザー ID を指定します。
-p password
パスワードを指定します。
-f xml_filename
フォーマットする入力 XML ファイルの名前を指定します。
-fxml
フォーマット済み XML 文書を生成します (STDOUT にパイプ)。
-ftext
XML 文書をフォーマットしてテキスト文書にします (STDOUT にパイプ)。
-ss stylesheet_name
XML 文書のトランスフォームに使用する XSLT スタイル・シートを指定します。
-id event_id
指定したイベント ID に一致するすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。
-type event_type
指定したイベント・タイプに一致するすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。
-hours num_hours
指定した直近の数時間内に発生したすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。
-w workload_name
指定したワークロードの一部であるすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。
-a appl_name
指定したアプリケーションの一部であるすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。
-s srvc_subclass_name
指定したサービス・サブクラスの一部であるすべてのイベントを表示します。このオプションが有効なのは、-ue オプションを指定した場合に限られます。それ以外の場合は無視されます。

XSLT スタイル・シート

データベース・マネージャーは、デフォルトの XSLT スタイル・シートを提供しています (表 1 を参照)。これは sqllib/samples/java/jdbc ディレクトリー内にあります。 これらのスタイル・シートは、必要とする出力を生成するために変更できます。

表 1. イベント・モニター用のデフォルトの XSLT スタイル・シート
イベント・モニター デフォルトの XSLT スタイル・シート
ロッキング Db2EvmonLocking.xsl
作業単位 Db2EvmonUOW.xsl
パッケージ・キャッシュ Db2EvmonPkgCache.xsl

XML 文書をトランスフォームするための独自の XSLT スタイル・シートを作成できます。 これらのスタイル・シートは、-ss stylesheet_name オプションを使用して Java ベース・ツールに渡すことができます。

例 1
直近の 32 時間内に発生したすべてのイベントについてのフォーマット済みテキスト出力を、データベース SAMPLE にあるパッケージ・キャッシュの未フォーマット・イベント表 PKG から得るには、以下のコマンドを発行します。
java db2evmonfmt -d sample -ue pkg -ftext -hours 32
例 2
直近の 24 時間内に発生した LOCKTIMEOUT タイプのすべてのイベントについてのフォーマット済みテキスト出力を、データベース SAMPLE にある未フォーマット・イベント表 LOCK から得るには、以下のコマンドを発行します。
java db2evmonfmt -d sample -ue LOCK -ftext -hours 24 -type locktimeout
例 3
直近の 5 時間内で、イベント・タイプ LOCKWAIT と一致するすべてのイベントを抽出するために、XML ソース・ファイル LOCK.XML からフォーマット済みテキスト出力を得るには、以下のコマンドを発行します。
java db2evmonfmt -f lock.xml -ftext -type lockwait -hours 5
例 4
データベース SAMPLE 内の未フォーマット・イベント表 UOW にあるすべてのイベントについて、作成済みの XSLT スタイル・シート SUMMARY.XSL を使用してフォーマット済みテキスト出力を得るには、以下のコマンドを発行します。
java db2evmonfmt -d sample -ue uow -ftext -ss summary.xsl

サンプルのフォーマット済みフラット・テキスト出力

ロック・イベント・モニターの XSLT スタイル・シートから生成されたフォーマット済みフラット・テキスト出力のサンプルを以下に示します。
--------------------------------------------------
Event Entry     : 0
Event ID        : 1
Event Type      : Locktimeout
Event Timestamp : 2008-05-23-12.00.14.132329000
--------------------------------------------------

Lock Details
------------
Lock Name       : 02000401000000000000000054
Lock Type       : Table
Lock Attributes : 00000000
Lock Count      : 1
Lock Hold Count : 0
Lock rrIID      : 0
Lock Status     : Waiting
Cursor Bitmap   : 00000000
Tablespace Name : USERSPACE1
Table Name      : NEWTON  .SARAH

Attributes           Requestor                      Holder                        
----------           ---------                      ------                        
Application Handle   [0-35]                         [0-16]                        
Application ID       *LOCAL.horton.080523160016    *LOCAL.horton.080523155938   
Application Name     xaplus0001                     db2bp                         
Authentication ID    NEWTON                         HORTON                        
Requesting Agent     65                             21                            
Coordinating Agent   65                             21                            
Application Status   SQLM_CONNECTPEND               SQLM_CONNECTPEND              
Lock Timeout         5000                           0                             
Workload Name        XAPLUS0010_WL02                SYSDEFAULTUSERWORKLOAD        
Service Subclass     XAPLUS0010_SC02                SYSDEFAULTSUBCLASS            
Current Request      Execute                        Execute Immediate             
Lock Mode            Intent Exclusive               Exclusive                     
tpmon Userid                                                                      
tpmon Wkstn                                                                       
tpmon App                                                                         
tpmon Accstring                                                                   

Lock Requestor Current Activities
---------------------------------
Activity ID     : 2
Uow ID          : 1
Package ID      : 65426E4D4B584659
Package SectNo  : 3
Package Name    : NEWTON  
Package Schema  : AKINTERF
Package Version : 
Reopt           : always
Eff Isolation   : Cursor Stability
Eff Locktimeout : 5
Eff Degree      : 0
Nesting Level   : 0
Stmt Unicode    : No
Stmt Flag       : Dynamic
Stmt Type       : DML, Insert/Update/Delete
Stmt Text       : INSERT INTO SARAH VALUES(:H00008, :H00013, :H00014)


Lock Requestor Past Activities
------------------------------
Activity ID     : 1
Uow ID          : 1
Package ID      : 65426E4D4B584659
Package SectNo  : 2
Package Name    : NEWTON  
Package Schema  : AKINTERF
Package Version : 
Reopt           : always
Eff Isolation   : Cursor Stability
Eff Locktimeout : 5
Eff Degree      : 0
Nesting Level   : 0
Stmt Unicode    : No
Stmt Flag       : Dynamic
Stmt Type       : DML, Insert/Update/Delete
Stmt Text       : INSERT INTO NADIA VALUES(:H00007)


Lock Holder Current Activities
------------------------------

Lock Holder Past Activities
------------------------------
Activity ID     : 1
Uow ID          : 2
Package ID      : 41414141414E4758
Package SectNo  : 201
Package Name    : NULLID  
Package Schema  : SQLC2G13
Package Version : 
Reopt           : none
Eff Isolation   : Cursor Stability
Eff Locktimeout : 5
Eff Degree      : 0
Nesting Level   : 0
Stmt Unicode    : No
Stmt Flag       : Dynamic
Stmt Type       : DML, Select (blockable)
Stmt Text       : select * from newton.sarah

Activity ID     : 2
Uow ID          : 2
Package ID      : 41414141414E4758
Package SectNo  : 203
Package Name    : NULLID  
Package Schema  : SQLC2G13
Package Version : 
Reopt           : none
Eff Isolation   : Cursor Stability
Eff Locktimeout : 5
Eff Degree      : 0
Nesting Level   : 0
Stmt Unicode    : No
Stmt Flag       : Dynamic
Stmt Type       : DML, Lock Table
Stmt Text       : lock table newton.sarah in exclusive mode


--------------------------------------------------
Event Entry     : 1
Event ID        : 2
Event Type      : Locktimeout
Event Timestamp : 2008-05-23-12.04.42.144896000
--------------------------------------------------

...
...
...

使用上の注意

db2evmonfmt ユーティリティーは、Java ベース・ツールであり、正常に実行するには java キーワードを先頭に付ける必要があります。 必要な Java バージョンは、製品と共に sqllib/java/jdk64 ディレクトリーからインストールされたものです。

接続パラメーターを指定した場合、db2evmonfmt ツールはイベント・モニターから直接データを取得します。 db2evmonfmt ツールがイベント・モニターから直接データを取得する場合、このコマンドは EVMON_FORMAT_UE_TO_XML 表関数を呼び出して、イベント・モニター内のバイナリー・イベントから XML 文書を構築します。 部分的なイベントについて詳しく知る必要がある場合は、Java ベースのツールで EVMON_FORMAT_UE_TO_XML 呼び出しを修正し、LOG_PARTIAL_EVENTS オプションを追加する必要があります。 EVMON_FORMAT_UE_TO_XML 呼び出しを修正した後は、ツールを再コンパイルする必要があります。 部分的なイベントと LOG_PARTIAL_EVENTS オプションについて詳しくは、EVMON_FORMAT_UE_TO_XML 表関数 - 不定形式イベントを XML に変換するを参照してください。

注: さらに、EVMON_FORMAT_UE_TO_XML 表関数を直接使用して、未フォーマット・イベント表の BLOB 列に含まれているバイナリー・イベントを XML 文書にフォーマットすることもできます。