[C#.NET] 開發夥伴的除錯利器 NLog - 初體驗 (1)

[C#.NET] 開發夥伴的除錯利器 NLog - 初體驗 (1)

NLog http://nlog-project.org/ 是一套 open source 的開發夥伴的好用工具,讓開發人員輕鬆的紀錄軟體執行狀態

 

安裝NLog

開始使用 NLog 前,需要從 Nuget上安裝 NLog、NLog.Config、NLog.Schema。

安裝完成後可以在專案裡面看到 NLog.Config、NLog.xsd這兩個檔案,NLog.Config 是組態設定要跟著專案跑,NLog.xsd 則是 NLog 組態的 Intellisense

image

 

NLog.Config

組態配置位置,主要是跟著專案跑,以下有更完整的說明

https://github.com/nlog/NLog/wiki/Configuration-file#configuration-file-locations

 

主要設定是 targets、rules

targets:決定輸出格式、位置、內容

以下是 targets 的屬性

https://github.com/nlog/NLog/wiki/Configuration-file#targets

rules:決定套用哪一個target

以下是 rules 的屬性

https://github.com/nlog/NLog/wiki/Configuration-file#rules

 

預設,NLog.Config 的 target、rule 都被註解了起來,把它們解開

image

 

NLog 使用 ${} 作為變數,藉由他們可以取得應用程式的資訊,要深入了解 NLog,這一定不能錯過

https://github.com/nlog/NLog/wiki/Layout-Renderers

 

調用 NLog

NLog 有六個等級,團隊應該為不同的情境定義不同的等級,以便查看 log 時速度才會快,調用時也沒太大的困難,因為都已經交給 NLog.Config 處理掉了,當然要用程式處理也不是問題

{
    protected void Page_Load(object sender, EventArgs e)
    {
        Logger logger = LogManager.GetCurrentClassLogger();
        logger.Trace("我是Trace");
        logger.Debug("我是Debug");
        logger.Info("我是Info");
        logger.Warn("我是Warn");
        logger.Error("我是Error");
        logger.Fatal("我是Fatal");
    }
}

 

預設的範例是存放到文字檔,檔名是依 target 設定,內容則是 rule

image


文章出自:http://www.dotblogs.com.tw/yc421206/archive/2015/10/12/153536.aspx

若有謬誤,煩請告知,新手發帖請多包涵


Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET

Image result for microsoft+mvp+logo