我正在尋找什麼您使用在您的應用程序執行日誌記錄。這log4net的事情讓我頭痛。在那裏有更好的答案,或者是有史以來只是自制解決方案?我知道System.Diagnostics.Trace子系統是否能夠在此層上進行分層?
回答
NLog可能是這方面的另一個大玩家。此外,還有一個專門用於追蹤和記錄的企業圖書館中的application bloc。
NLog的+1,沒有看到它使用我會看看。 – 2009-10-11 15:21:11
爲什麼不使用.NET類進行日誌記錄?
有定製的監聽器可以用於記錄幾乎無所不能,可以使用過濾器,傳播你的日誌到多個目標,數據庫,文件,網絡,等等。
只要注意.NET Framework的能力,你會感到驚訝。
我正在考慮這種方法。最大的挑戰是你最終還是會實現線程安全的所有編寫器,並且封裝客戶端API調用以防止字符串格式化等崩潰應用程序。由於大多數日誌記錄是在catch塊中完成的,因此生成異常是不好的mojo。儘管如此,仍然是一個可行的方法來使用機械師,但它最終仍然是家釀。 – 2009-10-11 15:18:33
嘗試Elmah它很容易,你要知道,一旦你讓你的頭進去log4net的是沒有那麼糟糕....
其實你有什麼頭痛?
多實例應用程序的大多數問題。這和整個事情是相當不容忍的。例如,當記錄器失敗時,其他記錄器不被調用。由於與實際軟件的文件鎖定衝突,NUnits會產生錯誤輸出,這實在令人煩惱。這主要是由於我們通過運行Asp.net主機in-proc來測試web服務的方式,而沒有「專門化」web.config。 – 2009-10-11 15:12:05
@ csharptest.net:不太清楚你的意思。 Log4net通過設計進行故障停止;請參閱「Log4net是可靠的日誌記錄系統?」下的http://logging.apache.org/log4net/release/faq.html。如果你依靠日誌記錄工作,log4net不適合你。 – TrueWill 2009-10-11 19:10:54
我們使用Enterprise Library只在我們的企業環境(Logging Block)。我最近開始在個人項目上使用Log4Net。
從經驗來看,企業圖書館雖然功能強大,但是啓動和運行起來非常痛苦。不僅僅是試圖弄清楚哪個dll會被使用,但是配置會變得很笨重。
在另一面,我發現log4net的是非常容易的,你最多可以在任何時間運行;不到一個小時的時間。
授予我一個MS變形金剛迷(好吧,不是真的,但他們是我謀生的原因),通常用MS去。但是,我建議在工作中遷移到Log4Net。它的簡單性真的很令人耳目一新。
看看Common.Logging。它適用於所有主要的日誌框架(system.diagnostics,log4net,nlog,企業庫),並允許您從配置切換日誌框架。
從我個人的經歷 - 我使用.NET跟蹤在企業環境中並沒有允許我們使用開源,經過我們完善的滾動文件的TraceListener,這是很容易使用。現在我使用log4net,這很不錯,但需要一些習慣。
有相當多的.NET日誌庫和工具,在那裏,這裏是一個廣泛的名單:
你可能也想看看我們的.NET日誌記錄的產品SmartInspect,它提供豐富的日誌記錄功能(與大多數其他日誌記錄工具的純文本日誌記錄功能形成對比),並附帶日誌查看器和可選的日誌服務器應用程序。
我知道這個問題是太舊,您正在尋找替代log4net的,但相信我log4net的是最好的記錄解決方案,是最常用的,並且還提供大範圍的比任何其他日誌框架日誌聽衆。此外,你甚至可以與內置的appender一起實現自定義appender。對於那些在配置log4net時遇到困難的用戶,可以使用以下描述逐步指導的帖子使其工作。
Log4Net section in Web.Config generates Error
幸福日誌:)
- 1. 什麼是使用log4net(或其他日誌框架)記錄列表中所有項目的簡單方法?
- 2. log4net的日誌記錄
- 3. Log4Net日誌記錄異常
- 4. Log4net /日誌記錄 - 你發現什麼有用?
- 5. C#日誌記錄設計:擴展方法,替代方法?
- 6. 除了替換()函數,還有其他替代方法嗎?
- 7. Java日誌記錄:它是日誌還是日誌記錄器?
- 8. MassTransit log4net記錄與城堡log4net日誌記錄設施
- 9. log4net日誌記錄沒有創建日誌文件
- 10. 不同級別的log4net日誌記錄
- 11. log4net的設置日誌記錄
- 12. 暫時禁用log4net的日誌記錄
- 13. 力log4net的日誌記錄級別
- 14. 事件日誌記錄的log4net配置
- 15. log4net日誌記錄查找方法名稱
- 16. Nlog日誌記錄方法
- 17. Docker GELF日誌記錄其他字段
- 18. cf.net異常和其他日誌記錄
- 19. 爲什麼ABRecordCopyCompositeName是NULL,還有什麼替代方法?
- 20. TextView有沒有其他替代方法?
- 21. CSharpOptParse還有什麼替代方案?
- 22. drupal替代日誌記錄系統
- 23. ASP.NET MVC(2)log4net日誌記錄模式
- 24. log4net - 按用戶日誌記錄
- 25. Log4Net/C# - 禁用默認日誌記錄
- 26. log4net自定義日誌記錄
- 27. 在dll中配置log4net日誌記錄
- 28. nHibernate Log4Net日誌記錄異常
- 29. 使用log4net啓用日誌記錄!
- 30. 還有什麼替代mousejoint?
你爲什麼不與log4net的定義您的要求/痛苦?一旦你習慣了它,這是相當方便的。 – ripper234 2009-10-11 13:52:03
查看Rippo發佈的關於log4net的一些問題的評論。 – 2009-10-11 15:24:10