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");
}
在配置文件中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");
}