0

我在Windows Server 2003 R2上運行Windows服務。我們正在使用Exchange Server發送電子郵件。使用Exchange Server在Windows Server 2003 R3上使用Windows服務的不穩定的log4net電子郵件

我使用的是log4net.dll 1.2.11.0。

我有這樣的情況,log4net有時會發送電子郵件,有時甚至沒有更改設置。

所有其他log4net記錄工作得很好。如前所述,應用程序有時會發送電子郵件,有時甚至沒有發送電子郵件,因此沒有對應用程序進行任何更改。

我所有的方法都在try-catch子句中,但是我沒有收到任何錯誤。

當我我的本地機器上運行的Windows服務,log4net的電子郵件總是工作,和在遠程服務器上說,有時log4net的電子郵件的作品,有時不這樣做,在作出任何更改設置。

我使用log4net.Internal.Debug,並有在那裏的東西被寫入System.Diagnostics.TextWriterTraceListener文件。 掃描此文件我沒有注意到任何特別的東西,但我不知道具體要找什麼。

有關什麼問題或做什麼的任何想法?

回答

0

如果SMTP appender無法發送電子郵件,它將以此文本記錄異常:發送電子郵件通知時發生錯誤。如果啓用內部調試,這將會顯示。也許你有過濾器或類似的配置,防止log4net發送電子郵件。

您可以下載log4net的源代碼並向SMTP appender添加額外的日誌記錄以查明appender的「SendMail」方法是否被調用。如果有,並且沒有顯示電子郵件和錯誤,則我們需要假定交換服務器以某種方式吞下電子郵件。如果appender沒有被觸發,那麼你需要檢查你的filter/buffer/threshold配置。您可以嘗試使用SmtpPickupDirAppender

+0

感謝您的回覆Stefan Egli :)有趣的是,有時log4net工作正常,併發送電子郵件,有時它不會,沒有改變配置。當我在本地機器上測試相同的代碼時,它始終工作。但是在生產中,它不穩定,有時可以工作,有時不可以。我正在使用log4net.Internal.Debug,但我還沒有注意到發送電子郵件通知時發生錯誤。信息。似乎有一種趨勢是,當交換服務器可能最忙時,電子郵件不起作用。我可能會考慮SmtpPickupDirAppender。 – RuneHansen

+0

我已經做了一些測試,發送郵件列表,其中一個是公司自己的電子郵件地址。事實證明,發送給雅虎賬戶的電子郵件得到了正確處理,而發送給公司自己的電子郵件地址的電子郵件卻沒有收到。目前,這似乎是由我的問題。這是關於公司自己的電子郵件地址,這使他們不穩定。 – RuneHansen

+0

好的。所以現在你至少知道你的應用程序不是問題。:) –

相關問題