zoukankan      html  css  js  c++  java
  • ASP.NET Nlog上手练习小例子

    添加NuGet程序包-             Nlog             Nlog.Web.AspNetCore

    两个包。

     public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
            {
    
                //使用NLog作为日志记录工具
                loggerFactory.AddNLog();
                //引入Nlog配置文件
                env.ConfigureNLog("Nlog.config");
            }
    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"
         autoReload="true"
           internalLogLevel="Warn">
      <!--define various log targets-->
      <targets>
        <!--write logs to file-->
        <target xsi:type="File" name="file" fileName="/Nlog/log/${shortdate}.log"
                 layout="${longdate}|${logger}|${uppercase:${level}}|${message} ${exception}" />
    
        <target xsi:type="File" name="ownFile-web" fileName="/Nlog/log/${shortdate}.log"
                 layout="${longdate}|${logger}|${uppercase:${level}}|${message} ${exception}" />
        <target xsi:type="Null" name="blackhole" />
      </targets>
      <rules>
        <!--All logs, including from Microsoft-->
        <logger name="*" minlevel="Trace" writeTo="allfile" />
    
        <!--Skip Microsoft logs and so log only own logs-->
        <logger name="Microsoft.*" minlevel="Trace" writeTo="blackhole" final="true" />
        <logger name="*" minlevel="Trace" writeTo="ownFile-web" />
      </rules>
    </nlog>
     fileName="/Nlog/log/${shortdate}.log"
    会在你的项目所在盘目录下建一个Nlog文件夹/log文件夹-里面就是日志文件txt了。
    shortdate是当前年-月-日
    

      控制器就直接使用就好了

     //Route加了这个链接就是 api/values/5        ----没加       values/5
        [Route("api/[controller]")]
        [ApiController]
        public class ValuesController : ControllerBase
        {
            // GET api/values
            [HttpGet]
            public ActionResult<IEnumerable<string>> Get()
            {
                return new string[] { "value1", "value2" };
            }
            Logger logger = LogManager.GetCurrentClassLogger();
            // GET api/values/5
            [HttpGet("{id}")]
            public ActionResult<string> Get(int id)
            {
                Exception EX = new Exception();
                logger.Error("
    -------XXXXXXX()异常:"+EX.ToString()+"-------
    ");
                return "value";
            }
        }
      用于换行  好看点。
    2019-09-27 17:18:06.5617|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------
     
    2019-09-27 17:18:30.9757|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------
     
    2019-09-27 17:18:31.2428|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------
     
    2019-09-27 17:18:31.3779|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------
     
    2019-09-27 17:18:31.5394|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------
     
    2019-09-27 17:18:31.6806|Nlog_test.Controllers.ValuesController|ERROR|
    -------XXXXXXX()异常:阿达四六级拉数据-------

    nlog自定义配置参数

     

  • 相关阅读:
    16 继续讲C#中的条件执行。if...else if...else
    15 C#中的条件执行,if else
    14 C#编程中的逻辑运算
    13 继续C#中的方法,带返回值的方法介绍
    12 C#中的方法
    在使用实体框架(Entity Framework)的应用中加入审计信息(Audit trail)跟踪数据的变动
    11 在C#中写文件
    10 在C#中读取文件
    9 在C#控制台程序(console)中让用户输入
    大数据组件图谱
  • 原文地址:https://www.cnblogs.com/ya-jun/p/11661708.html
Copyright © 2011-2022 走看看