雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

.NET官方日志库Microsoft.Extensions.Logging用法

2024-09-14 19

.NET中的 Microsoft.Extensions.Logging 是一个通用的日志记录接口,它提供了一个日志记录框架,允许你通过多种日志记录提供程序(如控制台、文件、数据库等)记录日志。

以下是 Microsoft.Extensions.Logging 的基本用法:

步骤一:安装 NuGet 包

确保你的项目中已经安装了 Microsoft.Extensions.Logging 包。

步骤二:在应用程序中配置和使用日志记录

创建 Logger 实例

using Microsoft.Extensions.Logging;

ILogger logger = LoggerFactory.Create(builder =>
{
    builder.AddConsole(); // 添加控制台输出作为日志记录提供程序
}).CreateLogger<YourClassName>(); // 指定日志记录的类名

使用 Logger 记录日志

logger.LogInformation("这是一条信息日志");
logger.LogWarning("这是一条警告日志");
logger.LogError("这是一条错误日志");
// 还有其他的日志级别可供选择,如 Debug, Trace 等

配置选项

可以通过 appsettings.json 文件进行日志记录的配置:

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

添加其他日志提供程序

除了控制台日志,你可以添加其他的日志提供程序,比如文件日志:

ILogger logger = LoggerFactory.Create(builder =>
{
    builder.AddConsole();
    builder.AddFile("path/to/logfile.txt"); // 添加文件输出作为日志记录提供程序
}).CreateLogger<YourClassName>();

使用作用域信息记录日志

有时需要记录一些上下文信息。Microsoft.Extensions.Logging 支持作用域信息记录:

using (logger.BeginScope("Scope Identifier"))
{
    // 在这个作用域内记录的日志都会带有 "Scope Identifier" 信息
    logger.LogInformation("记录作用域信息");
}

Microsoft.Extensions.Logging 提供了一个灵活和可扩展的日志记录框架,可以根据你的需求进行配置和扩展。

更新于:1个月前
赞一波!

文章评论

评论问答