工作流跟踪

本主题适用于 Windows Workflow Foundation 4。

Windows 工作流跟踪是专为查看工作流执行情况而设计的一个 .NET Framework 版本 4 功能。它提供一个跟踪基础结构,用于跟踪工作流实例的执行。WF 跟踪基础结构透明地检测工作流以发出反应执行期间关键事件的记录。默认情况下,任何 .NET Framework 4 工作流都可以使用此功能。不需要对 .NET Framework 版本 4工作流进行任何更改即可进行跟踪。只需确定要接收的跟踪数据量。工作流实例开始或完成之后,会发出其处理跟踪记录。跟踪还可以提取与工作流变量关联的相关业务数据。例如,如果工作流表示一个订单处理系统,则可以提取 TrackingRecord 对象以及订单 ID。一般来讲,启用 WF 跟踪便于访问工作流执行的诊断数据或业务分析数据。

这些跟踪组件相当于 .NET Framework 3.0 中的跟踪服务。在 .NET Framework 4 中,WF 跟踪功能的性能已改进,其编程模型也已简化。跟踪运行时会检测工作流实例以发出与工作流生命周期和工作流活动有关的事件以及自定义事件。

若要对工作流运行时进行故障排除,则可以启用诊断工作流跟踪。有关更多信息,请参见 工作流跟踪.

为了了解编程模型,本主题中介绍了跟踪基础结构的主要组件:

  • 从工作流运行时发出的 TrackingRecord 对象。有关更多信息,请参见 跟踪记录.

  • TrackingParticipant 对象订阅 TrackingRecord 对象。跟踪参与者包含用于处理 TrackingRecord 对象中负载的逻辑(例如,它们可以选择向某个文件写入)。有关更多信息,请参见 跟踪参与者.

  • TrackingProfile 对象筛选从工作流实例发出的跟踪记录。有关更多信息,请参见 跟踪配置文件.

工作流跟踪基础结构

工作流跟踪基础结构遵循一个范例,即发布和订阅范例。工作流实例是跟踪记录的发布者,而跟踪记录的订阅者注册为工作流的扩展。订阅 TrackingRecord 对象的这些扩展称为跟踪参与者。跟踪参与者是一些扩展点,这些扩展点按照编写的目的来访问 TrackingRecord 对象和处理对象。跟踪基础结构允许对传出跟踪记录应用筛选器,以便参与者可订阅该记录的子集。此筛选机制是通过跟踪配置文件来实现的。

下图显示了跟踪基础结构的整体概况。

运行时跟踪基础结构

本节内容

  • 跟踪记录
    介绍工作流运行时发出的跟踪记录。
  • 跟踪参与者
    介绍如何使用系统提供的跟踪参与者或如何创建自定义的跟踪参与者。