在本文中,我们将探讨如何在 .NET Core 应用程序中将日志消息输出到控制台,从而更好地了解应用程序的运行状况。
.NET Core 实现日志打印输出在控制台应用程序中
在 .NET Core 中,日志输出打印是使用 Microsoft.Extensions.Logging
命名空间中的类和方法实现的。首先,我们需要确保在项目中添加了以下必要的依赖包:
Microsoft.Extensions.Configuration
: 用于读取配置文件。Microsoft.Extensions.Configuration.Json
: 用于从 JSON 文件加载配置。Microsoft.Extensions.DependencyInjection
: 用于依赖注入。Microsoft.Extensions.Logging
: 用于日志记录。Microsoft.Extensions.Logging.Console
: 用于在控制台中输出日志。
现在,让我们来看一下如何在 .NET Core 控制台应用程序中实现日志输出打印
步骤 1:读取配置文件
首先,我们需要读取配置文件,以便配置日志。在示例中,我们将使用 appsettings.json
文件来配置日志级别。如下代码:
csharp
var config = new ConfigurationBuilder()
.SetBasePath(AppContext.BaseDirectory)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.Build();
步骤 2:配置日志
接下来,我们需要配置日志以指定日志级别和输出目标。在示例中,我们将配置日志以将日志消息输出到控制台。如下代码:
csharp
var serviceProvider = new ServiceCollection()
.AddLogging(builder =>
{
builder.AddConfiguration(config.GetSection("Logging"));
builder.AddConsole();
})
.BuildServiceProvider();
步骤 3:获取日志记录器
一旦配置了日志,我们可以通过依赖注入来获取日志记录器,然后使用该记录器来记录不同级别的日志消息。如下代码:
csharp
var logger = serviceProvider.GetRequiredService<ILogger<Program>>();
步骤 4:记录日志消息
现在,我们可以使用获得的日志记录器来记录不同级别的日志消息。如下代码:
csharp
logger.LogInformation($"hello .net core");
logger.LogError($"error message!!!");
完整示例
下面是将上述步骤整合在一起的完整示例代码:
csharp
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using System;
class Program
{
static void Main(string[] args)
{
var config = new ConfigurationBuilder()
.SetBasePath(AppContext.BaseDirectory)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.Build();
var serviceProvider = new ServiceCollection()
.AddLogging(builder =>
{
builder.AddConfiguration(config.GetSection("Logging"));
builder.AddConsole();
})
.BuildServiceProvider();
var logger = serviceProvider.GetRequiredService<ILogger<Program>>();
logger.LogInformation($"hello .net core");
logger.LogError($"error message!!!");
// 其他代码...
}
}
配置 appsettings.json
在示例中,我们在 appsettings.json
文件中配置了日志级别。确保您的 appsettings.json
文件类似于以下内容:
json
{
"Logging": {
"LogLevel": {
"Default": "Information"
}
},
"MyAppSettings": {
"Setting1": "Value1",
"Setting2": "Value2"
}
}
如图所示:
在上述代码中,我们首先读取配置文件,然后配置了日志记录,使其输出到控制台。我们使用 AddLogging
方法和 AddConsole
提供程序将日志配置到控制台输出。
运行应用程序
运行应用程序后,您将在控制台窗口中看到类似以下内容的日志消息:
info: Program[0]
Hello .NET Core
fail: Program[0]
Error message!
如此一来,您的应用程序就能够在控制台中输出日志消息了。
总结
在 .NET Core 中,实现日志记录并将日志消息输出到控制台是一项关键的任务,有助于监控应用程序的状态和运行状况。通过配置日志提供程序和使用 ILogger
接口,您可以在应用程序中捕获各种级别的日志消息,包括信息性消息和错误消息。这使得您可以更好地理解和追踪应用程序的运行,更快地发现和解决问题。始终牢记,良好的日志记录实践是构建健壮应用程序的关键一步。