次の方法で共有


永続ワークフローのリアルタイム監視

[永続的な WF インスタンス] セクションには、永続ワークフロー サービスの永続的なインスタンスに関する「現在の」メトリックが表示されます。メトリックは [ダッシュボード] が呼び出されたときに取得され、永続化ストア内にある永続ワークフロー インスタンスの現在の状態を表します。これらのメトリックは他の 2 つのセクション ([WCF 呼び出しの履歴] および [WF インスタンスの履歴]) で表示される履歴メトリックのような履歴的性質を持ちません。これらはサマリー ワークフロー インスタンス メトリックで、[アクティブ]、[アイドル状態]、または [中断] に分類されます。[永続的な WF インスタンス] セクションを展開すると (下矢印またはセクションの [永続的な WF インスタンス] 名をクリック)、[アクティブなインスタンスまたはアイドル状態のインスタンス] または [中断されたインスタンス] ワークフロー サービス インスタンスの上位 5 つのサービスが表示されます。これらのサマリー値およびその降順に関連付けられた詳細表示を使用して AppFabric の永続ワークフロー インスタンスをリアルタイムで監視できます。

永続的なワークフロー インスタンス メトリック

監視ダッシュボードの [永続的な WF インスタンス] セクションでは、完了状態に達していないすべての永続的なワークフロー インスタンス ([アクティブ]、[アイドル状態]、または [中断]) の概要が表示されます。これらのサマリー メトリックは、タイトルが [永続的な WF インスタンス] の網掛けのヘッダー ボックスにあります。次のサマリー メトリックは永続的なワークフローの主な状態または条件を表しています。

  • [アクティブ]。ワークフローがメモリでロックされている [実行中 (アクティブ)] の状態。

  • [アイドル]。ワークフローがメモリにあり、メッセージを待っている [実行中 (アイドル)] の状態。

  • [中断]。ワークフローの実行が例外により中断されたか、または長時間実行される通常部分として永続化ストアに保持されました。

次のサマリー メトリックは、サービスを特定のカテゴリに降順でグループ化するサービス メトリックです。

  • [アクティブなインスタンスまたはアイドル状態のインスタンス - サービスでグループ化 (上位 5)]。特定の時間内でアクティブなインスタンスまたはアイドル状態のインスタンスが最も多い上位 5 つのサービス。

  • [中断されたインスタンス - サービスでグループ化 (上位 5)]。特定の時間内で中断されたインスタンスが最も多い上位 5 つのサービス。

[永続的な WF インスタンス] ページ

[永続的な WF インスタンス] ページを使用すると、さまざまな永続化の状態の永続的なワークフロー インスタンスをリアルタイムで表示できます。サマリー メトリックのいずれか (たとえば [中断]) をクリックするか、列の下にあるサービス リンクの 1 つ (たとえば [中断されたインスタンス - サービスでグループ化 (上位 5)]) をクリックすると、[永続的な WF インスタンス] ページに移動します。

[永続的な WF インスタンス] ページ

クリックすると [ダッシュボード] ページから [永続的な WF インスタンス] ページへ移動するリンクは、永続的なワークフロー インスタンスをフィルター処理するのに使用されます。これにより、[永続的な WF インスタンス] ページで列挙される内容が移動元のリンク固有になります。たとえば、[中断されたインスタンス - サービスでグループ化 (上位 5)]) 列の下のサービス リンクをクリックすると、[永続的な WF インスタンス] ページに移動し、フィルター処理されたワークフロー サービス インスタンスが表示され、クエリ結果ウィンドウの [状態] 列には [中断] の値が入力されています。 ただし、[クエリ サマリー] フレーム内の 1 つまたは複数のフィールド (たとえば [状態]) の値を変更し、初期出力を変更して、特定のワークフローに対してさらにトラブルシューティングを実行することができます。たとえば、[追跡対象イベント] ページに移動する元の状態が [中断] の場合、そのフィールドの値を [実行中 (アクティブ)] に変更して、[クエリの実行] をクリックすると、異なる結果が表示されます。

AppFabric では、[永続的な WF インスタンス] ページ内に [状態] 列の状態値が列挙されます。次の値を使用すると、インスタンスの状態を簡単に特定でき、さらに細かく並べ替えまたはグループ化することもできます。

  • [完了] 状態は複数の値 ([-成功]、[-キャンセル]、および [-終了]) に分けられ、インスタンスがどのように [完了] 状態に達したかについて、状態に関する追加情報が提供されます。

  • [実行中] 状態は複数の値 ([-アクティブ] および [-アイドル]) に分けられ、インスタンスの実行について、状態に関する追加情報が提供されます。

  • [中断] は複数の値 ([-例外] および [–ユーザー中断]) に分けられます。

[実行中 (アイドル)] と [中断] ワークフロー状態の違いについて、重要な点をいくつか説明します。この微妙な違いが混乱を招く可能性がありますが、それらの意味がわかると、ダッシュボードで使用されるメトリックをより簡単に理解することができます。

  • アイドルと中断は同じ意味ではありません。アイドル状態では、スケジュールされた作業はありませんが、イベントが届くとワーフフローが再開されます。

  • AppFabric などのホスト マネージャーによって明示的に中断された場合を除き、通常の実行中に中断されることはありません。ただし、ハンドルされない例外が発生した場合、および AppFabric のインスタンスでハンドルされない例外が発生する場合に備えてユーザーがサービスを "破棄と中断" に構成した場合は中断されます。

  • ワークフローが中断されると、処理の実行が中止され、ホストによって明示的に再開されるまで作業が行われません。

孤立したワークフロー インスタンス

AppFabric では、孤立したワークフロー インスタンスの列挙と制御を行います。ただし、孤立したインスタンスに適用できる制御操作は [削除] のみです。孤立したワークフロー インスタンスは、状態が [実行中] または [中断] のとき、ユーザーが接続されたコンピューター上に展開されなくなったサービスに属します。

ワークフロー インスタンス制御

[永続的なインスタンス] ページのクエリ結果として表示されたワークフロー インスタンスの場合は、インスタンスを右クリックして文脈依存の制御コマンド メニューを表示します。このメニューからは、ワークフローの現在の状態に適用する制御操作のみを選択できます。たとえば、[実行中 (アイドル)] または [実行中 (アクティブ)] 状態のワークフローがある場合、文脈依存の操作は [中断]、[キャンセル]、[終了]、および [削除] です。[再開] 操作は実行中状態のワーフフローには適用されないため無効です。

インスタンスの完了状態となる制御コマンドではすべて、標準の警告確認ダイアログ ボックスが表示されます。各ダイアログ ボックスでは確認だけではなく、選択したコマンドが選択したインスタンスに与える影響についても説明されています。設定を変更する場合、または誤って制御操作を開始した場合は、ここで操作をキャンセルすることができます。

詳細については、「[永続的な WF インスタンス] ページ」を参照してください。

永続ワークフロー メトリックの監視によるトラブルシューティング

[永続的な WF インスタンス] セクションを使用して永続ワークフローの永続的な状態を監視することにより、上記の情報を集めてトラブルシューティングに役立てることができます。[永続的な WF インスタンス] セクションを初めて表示するとき、永続的なワーフフロー インスタンスの状態に関する詳細な概要が表示されます。中断されたワークフローが存在するかどうかによって、永続的なワーフフロー レベルで問題があるかどうかをすぐに確認できます。[中断されたインスタンス - サービスでグループ化 (上位 5)] サマリー メトリックに 0 以外の値が含まれている場合は、問題が発生した可能性を示しています。サマリー メトリックはすべて [永続的な WF インスタンス] ページにリンクされており、永続的なワークフロー インスタンス データの明示的な詳細メトリックを確認できます。これは、最初の [ダッシュボード] ページがより詳細にまとめられたものです。この未処理データは、永続的な WF インスタンスの呼び出しに関する問題を特定するときの追加情報となります。

たとえば、[永続的な WF インスタンス] セクションを使用して、あらゆる問題について指定したスコープでサービスを監視するとします。中断されたサマリー メトリックが 0 以外であることを確認すると、ウィジェットを展開し、上位 5 つのサービスの中断されたインスタンスの詳細を確認できます。これにより、潜在的な問題が最も多いサービスを確認できます。さらに、特定の問題があるサービスを選択し、列挙ページを表示してクエリの値を変更することにより、詳細情報を指定できます。

[中断] サマリー ヘッダー に 0 以外の値が表示され、一部の永続ワークフロー インスタンスが中断されたことを示しているとします。[永続的な WF インスタンス] ウィジェットを展開し、[中断されたインスタンス - サービスでグループ化 (上位 5)] 列で、選択した期間に最も多く中断されたワーフフロー インスタンスがある上位 5 つのサービスを確認します。ここに表示されたサービスのいずれかをクリックすると、[永続的な WF インスタンス] ページが開きます。

ヒント

上位 5 つのサービスの 1 つとして表示されていない特定のサービスを探している場合は、[中断] サマリー列をクリックすると [永続的な WF インスタンス] のインスタンス列挙ページが表示され、そこでスコープ クエリ条件およびクエリの再実行によりサービスを特定できます。

[永続的な WF インスタンス] ページには、IIS 階層の特定のスコープでの永続的なワーフフロー インスタンスがリアルタイムで表示されます。中央ウィンドウ ([永続的な WF インスタンス] ページ内) でこれらのワーフフロー インスタンスの 1 つをクリックすると、ページの下部の [詳細] ウィンドウにそのワークフローに特定の情報が表示されます。[詳細] ウィンドウの [概要] タブで、永続的なワーフフロー インスタンスに関する情報を確認できます。このタブには、[サービスの仮想パス]、その [ワークフロー インスタンス ID]、その有効期間に対する [追跡対象イベント] の数、[作成日時]、およびその他の情報など、永続的なワーフフロー インスタンスに関する情報が表示されます。この情報を使用すると、永続的なワーフフロー インスタンスのより確かな有効期間を把握することができます。

[永続的な WF インスタンス] ページを使用して、列挙された永続ワークフロー インスタンスに対してインスタンス制御コマンドを発行できます。より高レベルおよびより抽象的なレベルからの問題があると判断し、トラブルシューティングを実行してその問題が何か、またはそれは修正可能かどうかを特定したら、インスタンスを中断または終了する制御操作を実行できます。

ヒント

追跡 (監視) および永続化はそれぞれ個別に有効にできるため、永続的な WF インスタンスは追跡対象の WF インスタンスに直接関連付けられません。

永続的なワーフフロー インスタンスに関する問題を解決するのにさらに情報が必要な場合は、中央ウィンドウでインスタンスを右クリックし、[追跡対象イベントの表示] を選択します。これにより、[追跡対象イベント] ページに移動し、該当するワークフロー インスタンス ID に関する情報が表示されます。このワークフローが追跡機能もサポートしている場合、ワークフロー インスタンスのショートカット メニューから [追跡対象イベントの表示] を選択することもできます。[追跡対象 WF インスタンス] ページが表示され、元のワークフロー インスタンス ID に関する永続的なワークフロー情報が表示されています。

ヒント

[追跡対象インスタンスの表示] および [追跡対象イベントの表示] オプションを有効にするには、永続的な WF サービス インスタンスが永続化を使用するように構成され、追跡が有効になっている必要があります。

問題を解決するために永続的なワークフロー インスタンスに関するより詳細な情報を取得する方法については、「[追跡対象イベント] ページ」および「[追跡対象 WF インスタンス] ページ」を参照してください。

関連項目

参照

[永続的な WF インスタンス] ページ
[追跡対象イベント] ページ
[永続的な WF インスタンス] ページ

  2011-12-05