[英]WCF MSMQ poison messages exception
我正在編寫具有事務隊列的WCF服務。 如果消息處理繼續失敗,它將被發送到中毒隊列,並將被記錄這些失敗的另一個服務讀取。
問題是:如何訪問拋出的異常以阻止消息處理?
您的消息最終進入中毒隊列的原因是因為您的WCF服務引發了一個未捕獲的異常。
因此,您可以在WCF服務中添加一個全局異常處理程序,並將其記錄在事件查看器或日志中,或使用您喜歡的任何內容。
您可以做的另一件事是配置跟蹤,方法是將以下內容添加到app.config中以記錄任何嚴重錯誤:
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Error, Critical" propagateActivity="true">
<listeners>
<add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener" initializeData="c:\traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
看一下receiveErrorHandling選項 ,當WCF遇到未捕獲的異常時可以執行的操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.