簡體   English   中英

WCF MSMQ有毒消息異常

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM