Windows ワークフロー追跡は、ワークフローの実行を可視化するように設計された .NET Framework 4.6.1 機能です。 ワークフロー インスタンスの実行を追跡するための追跡インフラストラクチャを提供します。 WF 追跡インフラストラクチャは、ワークフローを透過的にインストルメント化して、実行中の主要なイベントを反映するレコードを出力します。 この機能は、任意の .NET Framework 4.6.1 ワークフローで既定で使用できます。 追跡を行うために、.NET Framework 4.6.1 ワークフローに変更を加える必要はありません。 受信する追跡データの量を決定するだけで済みます。 ワークフロー インスタンスが開始または完了すると、その処理追跡レコードが出力されます。 追跡では、ワークフロー変数に関連付けられているビジネス関連のデータを抽出することもできます。 たとえば、ワークフローが注文処理システムを表している場合、注文 ID を TrackingRecord オブジェクトと共に抽出できます。 一般に、WF 追跡を有効にすると、ワークフローの実行から診断またはビジネス分析データにアクセスできるようになります。
これらの追跡コンポーネントは、WinFX の追跡サービスと同等です。 .NET Framework 4.6.1 では、パフォーマンスが向上し、WF 追跡機能のプログラミング モデルが簡略化されました。 追跡ランタイムは、ワークフロー インスタンスをインストルメント化して、ワークフロー ライフ サイクル、ワークフロー アクティビティ、カスタム イベントに関連するイベントを生成します。
Windows Server App Fabric には、WCF およびワークフロー サービスの実行を監視する機能も用意されています。 詳細については、「Windows Server AppFabric を使用した Windows Server App Fabric の監視および監視アプリケーション」を参照してください。
ワークフロー ランタイムのトラブルシューティングを行うには、診断ワークフロー トレースを有効にします。 詳細については、「 ワークフロー トレース」を参照してください。
プログラミング モデルを理解するために、追跡インフラストラクチャの主要なコンポーネントについては、このトピックで説明します。
TrackingRecord ワークフロー ランタイムから出力されるオブジェクト。 詳細については、「 追跡レコード」を参照してください。
TrackingParticipant オブジェクトは TrackingRecord オブジェクトをサブスクライブします。 追跡参加要素には、 TrackingRecord オブジェクトからのペイロードを処理するロジックが含まれています (たとえば、ファイルへの書き込みを選択できます)。 詳細については、「 参加者の追跡」を参照してください。
TrackingProfile オブジェクトは、ワークフロー インスタンスから出力された追跡レコードをフィルター処理します。 詳細については、「 追跡プロファイル」を参照してください。
ワークフロー追跡インフラストラクチャ
ワークフロー追跡インフラストラクチャは、発行とサブスクライブのパラダイムに従います。 ワークフロー インスタンスは追跡レコードの発行元ですが、追跡レコードのサブスクライバーはワークフローの拡張機能として登録されます。 TrackingRecord オブジェクトをサブスクライブするこれらの拡張機能は、追跡参加要素と呼ばれます。 追跡参加者は、 TrackingRecord オブジェクトにアクセスし、書き込まれた方法でオブジェクトを処理する機能拡張ポイントです。 追跡インフラストラクチャでは、送信追跡レコードにフィルターを適用して、参加者がレコードのサブセットをサブスクライブできるようにします。 このフィルター処理メカニズムは、追跡プロファイル ファイルを使用して実現されます。
追跡インフラストラクチャの概要を次の図に示します。
このセクションにて
レコードの追跡 ワークフロー ランタイムが出力する追跡レコードについて説明します。
追跡プロファイル 追跡プロファイルの使用方法について説明します。
参加者の追跡 システム提供の追跡参加要素を使用する方法、またはカスタム追跡参加者を作成する方法について説明します。
ワークフローの追跡の構成 ワークフローの追跡を構成する方法について説明します。
ワークフロー トレース ワークフローのデバッグ トレースを有効にする 2 つの方法について説明します。
こちらも参照ください
.NET