この章では、Oracle BPEL Controlレポートの概要について説明します。すなわち、作成できるレポートのタイプ、レポートの作成方法、および結果の分析方法について説明しました。
この章の内容は次のとおりです。
Oracle BPEL Controlでレポートを作成すると、次のことが可能になります。
ビジネス・プロセス・インスタンスのパフォーマンスの概要の取得
BPELプロセス・インスタンスのデータ分析および重要な決定の実行
ビジネス・プロセスを構成するアクティビティのデータ分析
フォルトの識別とデバッグ、および適切な修正処理の実行
レポートを作成するには、次の手順に従います。この項の各例は、サンプルBPELプロセスであるLoanFlowPlusに対するレポート作成方法を示しています。このサンプルは、SOA_Oracle_Home
¥bpel¥samples¥demos¥LoanDemoPlus¥LoanFlowPlus
ディレクトリにあります。このサンプルをOracle JDeveloperで自動的に生成するには、空のプロジェクトを持つアプリケーションを作成し、LoanFlowPlus
ディレクトリのLoanFlowPlus.jpr
ファイルを開きます。
Oracle BPEL Controlの「ダッシュボード」タブで、「デプロイ済のBPELプロセス」列の特定のプロセスをクリックし、そのすべてのインスタンスに対してレポートを作成します(この例では、LoanFlowPlusが選択されています)。
「開始」タブはデフォルトで表示されています。
インスタンスを開始するための固有の詳細を入力し、「XMLメッセージの転送」をクリックします。
「BPELプロセス」タブの「レポート」をクリックします。
「レポート」タブが表示されます。
このページを使用して、複数のタイプのレポートを生成できます。レポート作成のために入力するフィールドは、次の表で説明しています。
たとえば、終了日として7/29/05、終了時間として22:00、期間としてWeekly、期間の数として3を入力すると、レポートは2005年7月8日午後10:00から2005年7月29日午後10:00までの3週間にわたって作成されます。
利用可能なレポート・タイプの作成の詳細は、次の各項を参照してください。
注意:
|
プロセス・レポートにより、選択したBPELプロセス・インスタンスの状態およびこれらのインスタンスの実行時間に関するデータが表示されます。データは、指定した問合せ基準に基づき、時系列(X軸)で期間の数ごとにグループ化されます。
「レポート・タイプ」リストから「プロセス」を選択します。
手順3の表を参照して、期間問合せの該当詳細を入力し、「実行」を選択します。
レポートの作成中は、「問合せ」フィールドの下に進行状況バーと「取消」ボタンが表示されることに注意してください。この2つは、すべてのレポート・タイプの作成中に表示されます。レポートの作成を停止する場合は、「取消」をクリックします。
レポートの結果が表示されます。
プロセス・レポートの「インスタンス状態」セクション(左側)を確認します。
グラフには、起動済、失敗、正常に完了および現在実行中のBPELプロセス・インスタンス数が表示されます。この例では、サンプルBPELプロセスとしてLoanFlowPlusを使用しています。グラフには、リクエストされた(起動された)ローン数、システム・フォルトにより異常停止した数、正常に完了した数および保留中の数が示されます。
カーソルを棒グラフの上に置くと、情報が表示されます。この例では、表示される情報によって、系列が失敗したインスタンスであること、この情報が集計された日付(「グループ」)が2005年7月28日であること、および失敗したインスタンスの数(「値」)が4であることがわかります。
失敗したインスタンスのリストを表示するため、この棒グラフをクリックします。
これにより、「インスタンス」タブに、4つの失敗インスタンスのリストが表示されます。
デバッグするには、リスト内のインスタンスをクリックします。
これにより、インスタンスをデバッグし、適切な修正処理を実行できます。
手順2で示したプロセス・レポートの結果に戻ります。
プロセス・レポートの「インスタンス実行時間」セクション(右側)を確認します。
このグラフは、選択した期間においてビジネス・プロセスのクローズされたインスタンスをすべて集計し、最大実行時間、最小実行時間および平均実行時間を示します。デフォルト(「すべてクローズ」を選択した場合と同じ)では、プロセス・レポートは、正常に完了したプロセスと失敗したプロセスをすべて表示します。
正常に完了したプロセス・インスタンスのみ、または失敗したプロセス・インスタンスのみを表示する場合は、グラフ上の「実行時間を表示」リストで、それぞれ「正常にクローズ」または「失敗」を選択します。
グラフの最小または最大データ・ポイントをクリックすると、追加詳細が表示されます。たとえば、最大実行時間をクリックすると、最も実行時間が長かったインスタンスの情報が表示されます。
このインスタンスは、「インスタンス」タブに表示されます。
リスト内のインスタンスをクリックします。
これにより、インスタンスをデバッグし、適切な修正処理を実行できます。
パフォーマンス・レポートにより、「完了時間SLA」フィールドの値を満たすBPELプロセス・インスタンスの割合が表示されます。これにより、インスタンスのパフォーマンス上のボトルネックを特定できます。この値は、Oracle JDeveloperの「デプロイメント・ディスクリプタのプロパティ」ウィンドウにある、「構成」タブのSLACompletionTimeパラメータに割り当てます。SLACompletionTimeパラメータの値は、P0YT書式で指定します。P0YTの実際の表記はPnYnMnDTnHnMnSのようになります。それぞれの意味は次のとおりです。
Tは日付と時間を区切ります。
nY、nM、nD、nH、nMおよびnSは、年数、月数、日数、時間数、分数、秒数にそれぞれ相当します。
たとえば、P0YT1.5Sは、0年1.5秒を表します。常に文字Pと少なくとも1つの時間単位が必須です。
LoanFlowPlusプロセスの完了時間SLAをP0YT450S秒(450秒)と定義すると、レポートのグラフには、その時間内で完了したインスタンスと完了しなかったインスタンスの割合が表示されます。
この割当てにより、SLACompletionTimeパラメータがbpel.xml
ファイルに追加されます。
<configurations> <property name="SLACompletionTime">P0YT450S</property> </configurations>
「レポート・タイプ」リストから、「パフォーマンス」を選択します。
手順3の表を参照して、期間問合せの該当詳細を入力し、「実行」を選択します。
レポートの結果が表示されます。
このグラフには、この時間内で完了したインスタンスと完了しなかったインスタンスの割合が表示されます。
カーソルを棒グラフの上に置くと、情報が表示されます。この例では、下の情報により、系列がSLACompletionTimeパラメータ値を満たしているインスタンスであること、情報が収集された日付(「グループ」)が2005年7月29日であること、正常に完了したインスタンスの割合と数、およびその日のインスタンス合計数がわかります。
棒グラフをクリックすると、「インスタンス」タブが表示されます。たとえば、赤い棒グラフをクリックすると、SLA値を満たさなかったインスタンスが表示されます。クリックする前にこの棒グラフの上にカーソルを置くと、これらのインスタンスに固有の情報が表示されます。
リスト内のインスタンスをクリックします。
これにより、インスタンスをデバッグし、適切な修正処理を実行できます。
bpel.xml
ファイルのSLACompletionTimeパラメータの値をオーバーライドする場合は、グラフの上にある「完了時間SLA」フィールドの値を変更して「実行」をクリックし、レポートを再実行します。
パラメータへのこの新しい入力値により、レポートの結果に表示される詳細が変わります。「Default」リンクが、手順6で入力した値の右側に表示されている点に注意してください。
「Default」をクリックすることで、「デプロイメント・ディスクリプタのプロパティ」ウィンドウの「構成」タブで設計時に設定したSLACompletionTimeパラメータの初期値を使用してレポートを再実行します。
アクティビティ・センサー・レポートは、指定した期間において選択したBPELプロセスに関連付けられたアクティビティ・センサーのデータを表示します。これにより、アクティビティのトレンド分析が可能になります。アクティビティ・センサー・レポートには、アクティビティ名、センサー名、アクティビティ・タイプ、アクティビティの最小実行時間、最大実行時間、平均実行時間、およびアクティビティの発生回数が表示されます。このレポートは、BPELプロセスに対してアクティビティ・センサーが定義されている場合のみアクティビティ実行時間を表示します。
「レポート・タイプ」リストから、「アクティビティ・センサー」を選択します。
手順3の表を参照して、期間問合せの該当詳細を入力します。
「アクティビティ・センサー」リストから値を選択します。センサーを持つアクティビティのみがこのリストに表示されます。
BPELプロセスのすべてのアクティビティのレポートを作成するには、「すべて」を選択します。
レポートを作成するアクティビティを選択します。
「実行」をクリックします。
レポートの結果が表示されます(この例では、「すべて」が「アクティビティ・センサー」リストから選択されています)。
アクティビティ・センサーの追加情報を表示するには、左端にある「詳細の表示」をクリックします。
アクティビティ・センサーに関連付けられたすべての変数の詳細が表示されます。選択した期間において選択したアクティビティ・センサーによって収集された最小実行時間、最大実行時間および平均実行時間を示すグラフも表示されます。
「変数名」列の変数名(この例ではinput)をクリックし、選択した期間において収集された変数の詳細な値を表示します。
「変数の詳細」ウィンドウのインスタンスIDをクリックすると、そのインスタンスのフロー・ダイアグラムが表示されます。
これにより、インスタンスをデバッグし、適切な修正処理を実行できます。
フォルト・センサー・レポートにより、指定した期間においてフォルト・センサーが収集したデータが表示されます。これにより、融資申請処理中のフォルトのトレンド分析が可能になります。このレポートは、発生したフォルトの日付および時間、フォルトが発生したアクティビティ、失敗したインスタンスへのリンクを表示します。この例では、LoanFlowPlusがサンプルBPELプロセスとして使用されています。このサンプルでは、データのあるフォルトは次の2種類です。
破産レポート: 顧客の信用格付けが負になるとフォルトが発生
融資をリクエストしている顧客の社会保障番号が見つからない
「レポート・タイプ」リストから、「フォルト・センサー」を選択します。
手順3の表を参照して、期間問合せの該当詳細を入力し、「実行」を選択します。
レポートの結果には、フォルト・メッセージのタイプが表示されます。
「インスタンスID」列のインスタンスIDをクリックすると、失敗したインスタンスのアクティビティに関するフロー・ダイアグラムが表示されます。
アクティビティをデバッグし、適切な修正処理を実行します。
プロセス時間分布レポートを使用すると、BPELプロセス・インスタンスのアクティビティの実行時間分布を表示できます。たとえば、融資提案を返す融資申請対象会社ごとに1つずつ、計2つのアクティビティがあるとします。融資提案の処理上最も時間がかかったアクティビティはどれであるかを確認できます。このレポートを使用するために、アクティビティにセンサーを作成する必要はありません。このレポートを使用することで、処理時間が最も長かったアクティビティを特定できます。
「レポート・タイプ」リストから「プロセス時間分布」を選択します。
手順3の表を参照して、期間問合せの該当詳細を入力し、「実行」を選択します。
レポートの結果が表示されます。
完了までに最も時間がかかったアクティビティを確認します。
アクティビティをデバッグし、適切な修正処理を実行します。