ナビゲーションをスキップ.

WebLogic Integration ソリューションの管理

  前 次 vertical dots separating previous/next from contents/index/pdf 目次  

WebLogic Integration レポート データのクエリ

システム管理について」で説明しているように、レポート データベース テーブルには、プロセスの実行中に発生するイベントに関する情報が格納されます。「プロダクション データベースのコンフィグレーション」での説明のとおり、これらのテーブルは、wli_archive.sql ファイルの SQL コマンドによって作成されます。

レポート データベースからレポートを生成するには、SQL クエリを実行する必要があります。この節では、有用なテーブルについて説明し、サンプル クエリを示します。

 


WLI_PROCESS_EVENT_ARCH テーブル

プロセスが実行されると、その実行をトラッキングするイベントが生成されます。生成されるイベントは、コンフィグレーションされているトラッキング レベルによって異なります (「プロセス トラッキング データの管理」を参照)。たとえば、プロセスのトラッキング レベルが [Full] または [Node] に設定されている場合は、ノードごとに開始ノードと終了 (または中止) ノードという 2 つのイベントが生成されます。

プロセス トラッキング データがレポート データベースに転送される場合、各イベントは WLI_PROCESS_EVENT_ARCH テーブルに行として格納されます。行には、プロセス名 (URI 値)、プロセス インスタンス ID、プロセス イベント タイプ (「com.bea.wli.management.archiving.TrackingEventType」を参照)、およびその他の値が格納されます。

PROCESS_LABEL カラムは、次の呼び出しによって生成されるイベントに対してのみ設定されます。

JpdContext.setProcessLabel(String)

 


WLI_DOCUMENT_DATA テーブル

JpdContext.trackData(payload) メソッドを呼び出すと、タイプが EVENT_TYPE_PROCESS_LOG のイベントが生成されます。データがレポート データベースに転送される場合、各イベントは、WLI_DOCUMENT_DATA テーブルに新しい行として格納されます。このテーブルの DATA カラムに payload が格納され、EVENT_DATA_ID カラムに WLI_PROCESS_EVENT_ARCH テーブル内のイベントへのリンクが設定されます。

trackData() の結果のほかに、WLI_DOCUMENT_DATA テーブルには、プロセス インスタンスによって生成された未処理の例外とビジネス メッセージのペイロード (ビジネス メッセージがトラッキングされる場合) が格納されます。

WLI_DOCUMENT_DATA.TYPE の有効タイプは、「com.bea.wli.management.archiving.DocumentDataType」に定義されています。

詳細情報の参照先

 


サンプル クエリ

次のサンプル クエリについて説明します。

注意 : 各イベント タイプの定数フィールド値については、「com.bea.wli.management.archiving.TrackingEventType」を参照してください。たとえば、この後のサンプルでは、3EVENT_TYPE_PROCESS_ACTIVITY_END に該当し、20EVENT_TYPE_PROCESS_LOG に該当します。

プロセスの平均経過時間の取得

特定の日における特定のプロセスの平均経過時間を取得するための SQL は次のとおりです。

SELECT AVG(EVENT_ELAPSED_TIME) FROM WLI_PROCESS_EVENT_ARCH
WHERE PROCESS_TYPE = PROC_TYPE
AND ACTIVITY_ID = 0
AND EVENT_TYPE = 3
AND (EVENT_TIME >= START_TIME AND EVENT_TIME < END_TIME)
AND DEPLOYMENT_ID IN
(SELECT MAX(DEPLOYMENT_ID)
FROM WLI_PROCESS_EVENT_ARCH
WHERE PROCESS_TYPE = PROC_TYPE)

このクエリの PROC_TYPEWLI_PROCESS_EVENT_ARCH テーブルの値に置き換え、START_TIMEEND_TIME にリテラル タイムスタンプを指定します。

ノードの平均経過時間の取得

特定の日における特定のプロセスの特定のノードでの平均経過時間を取得するための SQL は次のとおりです。

SELECT AVG(WPEA.EVENT_ELAPSED_TIME)
FROM WLI_PROCESS_EVENT_ARCH WPEA, WLI_PROCESS_DEF_ARCH WPDA
WHERE WPEA.PROCESS_TYPE = PROC_TYPE
AND WPEA.EVENT_TYPE = 3
AND (WPEA.EVENT_TIME >= START_TIME and WPEA.EVENT_TIME < END_TIME)
AND WPEA.PROCESS_TYPE = WPDA.PROCESS_TYPE
AND WPEA.ACTIVITY_ID = WPDA.ACTIVITY_ID
AND WPEA.DEPLOYMENT_ID = WPDA.DEPLOYMENT_ID
AND WPDA.USER_NODE_NAME = NODE_NAME
AND WPDA.DEPLOYMENT_ID IN
(SELECT MAX(DEPLOYMENT_ID) FROM WLI_PROCESS_DEF_ARCH
WHERE PROCESS_TYPE = PROC_TYPE)

このクエリの PROC_TYPENODE_NAMEWLI_PROCESS_EVENT_ARCH テーブルの値に置き換え、START_TIMEEND_TIME にリテラル タイムスタンプを指定します。

trackData() API の結果の取得

特定のプロセス タイプに対するすべての trackData() 呼び出しの結果を取得するための SQL は次のとおりです。

SELECT WDD.DATA, WDD.TYPE, WPEA.PROCESS_INSTANCE
FROM WLI_DOCUMENT_DATA WDD, WLI_PROCESS_EVENT_ARCH WPEA
WHERE WDD.EVENT_DATA_ID = WPEA.EVENT_DATA_ID
AND WPEA.PROCESS_TYPE = PROC_TYPE
AND WPEA.EVENT_TYPE = 20

このクエリの PROC_TYPEWLI_PROCESS_EVENT_ARCH テーブルの値に置き換えます。

 

ナビゲーション バーのスキップ  ページの先頭 前 次