共用方式為


使用 BAM 監視服務導向解決方案

解決方案會使用商務活動監視 (BAM) API,監視 所有 CustomerService 協調流程版本中的活動。 更具體來說,它會使用新的 OrchestrationEventStream 物件。

什麼是 OrchestrationEventStream 物件?

新的 OrchestrationEventStream 物件可用於協調流程的追蹤和監控。 擷取的資訊在交易上與編排狀態一致。 例如,如果協調流程主機實例在執行協調流程的中間重新啟動,協調流程實例就會從實例的最後一個持續性點重新啟動。 OrchestrationEventStream 類別可確保擷取的數據與協調流程實例的最後一個持續性點交易一致。 所有 OrchestrationEventStream 方法都是靜態的,因此您的協調流程不需要建立它的實例。

備註

若要使用 OrchestrationEventStream 物件,您必須將參考新增至 Microsoft.BizTalk.Bam.XLANGsMicrosoft.BizTalk.Bam.EventObservation 程式集。 雖然 OrchestrationEventStream 對象位於 Microsoft.BizTalk.Bam.EventObservation 命名空間中,但它位於 Microsoft.BizTalk.Bam.XLANGs 元件中。

雖然追蹤配置檔編輯器 (TPE) 是使用 BAM 的慣用方式,但 TPE 無法擷取協調流程變數值,也無法處理自定義物件。 解決方案會使用 BAM API 來克服這些限制。

如需 BAM 的一般資訊,請參閱 使用商務活動監視。 如需追蹤配置檔編輯器 (TPE) 的相關信息,請參閱 追蹤配置檔編輯器

封裝 OrchestrationEventStream 物件

服務導向解決方案會使用 ServiceLevelTracking 類別包裝 OrchestrationEventStream 類別。 ServiceLevelTracking 類別提供應用程式特定的里程碑方法,並隱藏使用 OrchestrationEventStream 的一些詳細數據。

如同 OrchestrationEventStream,ServiceLevelTracking 的所有方法都是靜態的。 因此,協同處理或自定義元件不需要建立實例。 開始追蹤活動 TrackingBeginRequest 的方法會傳回唯一的活動實例識別碼。 所有後續追蹤事件都必須與此活動實例標識符相關聯,才能正確擷取服務等級數據,因為它對 CustomerService 協調流程的實例而言是唯一的。

另請參閱

開發服務導向解決方案
服務導向解決方案的實作重點