如何在ASP.NET MVC 加上 NLog

Step01. 到「管理Nuget套件」安裝 Nlog 及 NLog.Config


Step02. 修改 NLog.config

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
autoReload="true"
throwExceptions="false"
internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">

<!-- optional, add some variables
https://github.com/nlog/NLog/wiki/Configuration-file#variables
-->
<variable name="myvar" value="myvalue"/>
<!--
See https://github.com/nlog/nlog/wiki/Configuration-file
for information on customizing logging rules and outputs.
-->
<targets>

<!--
add your targets here
See https://github.com/nlog/NLog/wiki/Targets for possible targets.
See https://github.com/nlog/NLog/wiki/Layout-Renderers for the possible layout renderers.
-->
<!--log檔要儲存的路徑-->
<target xsi:type="File" name="f" fileName="${basedir}/App_Data/Logs/${shortdate}/${logger}.txt"
layout="${longdate} ${uppercase:${level}} ${message}" />
<!--
Write events to a file with the date in the filename.
-->
</targets>

<rules>
<!-- add your logging rules here -->
<!--
Write all events with minimal level of Debug (So Debug, Info, Warn, Error and Fatal, but not Trace) to "f"
-->
<!--以檔案形式儲存-->
<logger name="*" minlevel="Debug" writeTo="f" />
</rules>
</nlog>

Step03. 將NLog 加入程式中

 
public class HomeController : Controller
{
    private NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
    public ActionResult Index()
    {
        logger.Trace("**** Trace *** ");
        logger.Debug("**** Debug ***");
        logger.Info("**** Info ***");
        logger.Warn("**** Warn ***");
        logger.Error("**** Error ***");
        logger.Fatal("**** Fatal ***");
        return View();
    }
}

Step04. 執行程式,檢查是否有寫入

《如何在ASP.NET MVC 加上 NLog》有 2 則留言

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *