2012-07-02 48 views
5

我想獲取/創建所有當前正在執行的操作的集合並選擇元數據(可從OperationContext獲得)。如何枚舉當前正在執行的所有WCF操作?

+0

您是否考慮編寫自定義跟蹤偵聽器並偵聽所有感興趣的事件(一旦啓用跟蹤http://msdn.microsoft.com/en-us/library/ms733025.aspx)? –

+0

我創建了一個IDispatchMessageInspector。其AfterReceiveRequest和BeforeSendReply方法使用當前正在執行的請求元數據維護一個ConcurrentDictionary。在WCF已經擁有這些數據(在1個或多個對象中)的情況下,在每個操作的開始/結束處注入一個同步點似乎是錯誤的。 – chilltemp

+0

如果你是在代碼*中開始執行*的人,爲什麼不在某個地方留下一個標誌來顯示wcf操作正在運行? –

回答

0

Read this文章,是否有庫排隊和最終取消WCF異步操作。它對你的情況可能有用。

如果您打算構建監視工具您可以在Windows Server上使用appfabric框架來託管WCF服務。 Appfabric提供了一個IIS擴展,可以將其配置爲跟蹤和記錄WCF對SQL Server數據庫的調用,並在IIS管理控制檯中監控儀表板。更多信息herehere

相關問題