華文網

asp.net core源碼飄香:Logging組件

簡介:

作為基礎元件,日誌元件被其他元件和中介軟體所使用,它提供了一個統一的程式設計模型,即不需要知道日誌最終記錄到哪裡去,只需要調用它即可。

使用方法很簡單,

通過依賴注入ILogFactory(CreateLogger方法)或ILogger物件,獲取一個ILogger物件,然後通過ILogger的各種擴展方法(都是調用Log方法)記錄不同級別的日誌。

源碼剖析:

總結:

日誌元件其實就是工廠模式的應用,但進行了改進,LoggerFactory每次都返回一個Logger物件,而Logger物件裡面包含了真正要幹活的所有ILogger物件的集合,

形成一個面板模式。

遵循卻又不拘泥於設計模式,靈活多變的手法,值得學習!