NLog,自定义日志级别

NLog, custom LogLevels

在配置文件中config.json我有这个条目

 "Logging": {
    "LogLevel": {
        "Default": "Trace",
        "Microsoft": "Warning",
        "Microsoft.Hosting.Lifetime": "Information",
        "MyEntry": "Critical"
    }
  }

我缺少在这里进行适当搜索的术语。

我添加了一个额外的条目“MyEntry”。那是什么?它是一个类别吗?我需要做什么才能让它做某事?

我实际上想做的只是制作一个参考沙箱项目,这样我就可以使用 nlog 的各种设置

感谢评论中的帮助,现在已排序

这里有 2 个示例,一个使用 class 名称,一个使用随机名称。

日志文件

    "LogLevel": {
        "Default": "Critical",
        "Microsoft": "Critical",
        "Microsoft.Hosting.Lifetime": "Critical",
        "NLogUsing.Controllers.TempController": "Critical",
        "SomeRandomNameLogger": "Information"
    }
  },

以及一些使用它的代码

namespace NLogUsing.Controllers
{
   [Route("/Temp")]
    public class TempController : Controller
    {
        private readonly ILogger<TempController> classLogger;
        private readonly Microsoft.Extensions.Logging.ILogger namedLogger = null;

        public TempController(ILogger<TempController> logger, ILoggerFactory logFactory)
        {
            classLogger = logger;
            namedLogger = logFactory.CreateLogger("SomeRandomNameLogger");
        }

        [AllowAnonymous]
        [HttpGet("Bob")]
        public async Task<string> Bob()
        {
            classLogger.LogDebug(1, "ClassName Debug");
            classLogger.LogInformation(1, "ClassName Info");
            classLogger.LogTrace(1, "ClassName trace");
            classLogger.LogWarning(1, "ClassName warning");
            classLogger.LogCritical(1, "ClassName critical");
            classLogger.LogError(1, "ClassName error");

            namedLogger.LogDebug(1, "Named Debug");
            namedLogger.LogInformation(1, "Named Info");
            namedLogger.LogTrace(1, "Named trace");
            namedLogger.LogWarning(1, "Named warning");
            namedLogger.LogCritical(1, "Named critical");
            namedLogger.LogError(1, "Named error");


            return await Task.FromResult<string>("Bob");
        }