0
我們使用企業庫應用程序塊6來實現日誌記錄。我們有兩個跟蹤監聽器,一個用於登錄數據庫,另一個用於發送電子郵件警報。他們可以這樣來配置:電子郵件跟蹤偵聽程序爲什麼阻止其他偵聽程序工作?
<loggingConfiguration name="Logging Application Block" tracingEnabled="true" defaultCategory="MyProject" logWarningsWhenNoCategoriesMatch="true">
<listeners>
<add name="Database Trace Listener" type="Microsoft.Practices.EnterpriseLibrary.Logging.Database.FormattedDatabaseTraceListener,Microsoft.Practices.EnterpriseLibrary.Logging.Database" ... />
<add name="Email Trace Listener" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.EmailTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" ... />
</listeners>
<categorySources>
<add switchValue="All" name="MyProject">
<listeners>
<add name="Email Trace Listener" />
<add name="Database Trace Listener" />
</listeners>
</add>
</categorySources>
...
</loggingConfiguration>
我們的問題是,如果電子郵件跟蹤偵聽簡化版,由於某種原因,工作 - 在SMTP服務器關閉,例如 - 然後數據庫跟蹤偵聽器也不起作用。
即使電子郵件跟蹤失敗,是否有辦法配置數據庫跟蹤偵聽器工作?
如果單個源具有多個跟蹤偵聽器,則配置處理將在任何跟蹤偵聽器中發生錯誤時停止。即在失敗後配置的任何跟蹤偵聽器將不會執行(針對該源)。我不喜歡這種方法,因爲我寧願所有的聽衆都會被獨立處理。 – 2014-11-14 17:46:25