記錄會變得很複雜,很快。考慮到你有一些代碼,你如何向它添加日誌記錄?你使用什麼樣的圖書館?什麼是一些記錄你的應用程序的好技巧?
什麼是一些很好的代碼技術,可以最大限度地利用日誌語句,同時對應用程序的影響最小?
記錄會變得很複雜,很快。考慮到你有一些代碼,你如何向它添加日誌記錄?你使用什麼樣的圖書館?什麼是一些記錄你的應用程序的好技巧?
什麼是一些很好的代碼技術,可以最大限度地利用日誌語句,同時對應用程序的影響最小?
我想補充一些關於記錄實踐的方面。
庫:Log4J和Log4Net(分別用於Java和.NET)
從Log4J的網站:
插入記錄語句到你的代碼是用於調試它一個低技術含量的方法。它也可能是唯一的方法,因爲調試器並不總是可用或適用的。分佈式應用程序通常是這種情況。
另一方面,有人認爲日誌語句會污染源代碼並降低易讀性。 (我們相信情況正好相反)。在預處理器不可用的Java語言中,即使關閉日誌記錄,日誌語句也會增加代碼的大小並降低其速度。鑑於合理大小的應用程序可能包含數千條日誌語句,速度尤其重要。
使用log4j,可以在運行時啓用日誌記錄,而無需修改應用程序二進制文件。 log4j軟件包的設計使得這些語句可以保留在附帶的代碼中,而不會產生沉重的性能成本。記錄行爲可以通過編輯配置文件來控制,而不需要觸摸應用程序二進制文件。
日誌功能爲開發人員提供了應用程序故障的詳細上下文。另一方面,測試爲應用程序提供了質量保證和信心。記錄和測試不應該混淆。它們是互補的。當明智地使用記錄時,它可以證明是一個重要的工具。
工具查看Log4X日誌:ChainSaw
已經有關於這方面的其他問題相當長的一段討論。如果你是C#的人看看What is the best logging solution for a c# net 3.5 project或What’s your logging philosophy?
搜索記錄,你會發現更多。 :)