在开发过程中,日志是非常重要的,它可以记录系统的运行状态、异常信息等。在 .Net Core 中,除了可以使用日志库如 Serilog、NLog 等来实现日志的记录,也可以使用 .Net Core 自带的 ILogger 接口来实现日志的记录。本篇博客将介绍如何使用 .Net Core Logger 实现将日志写入本地文件系统。
1. 添加必要的依赖
为了实现将日志写入文件系统,我们需要添加 Microsoft.Extensions.Logging
、Microsoft.Extensions.Logging.Console
和 Microsoft.Extension.Logging.File
包。
dotnet add package Microsoft.Extensions.Logging
dotnet add package Microsoft.Extensions.Logging.Console
dotnet add package Microsoft.Extensions.Logging.File
2. 在项目中添加 Logger 配置
在项目的 Program.cs
文件中的 CreateHostBuilder
方法中,我们可以添加如下的配置来配置 Logger:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureLogging(logging =>
{
logging.ClearProviders(); // 清除已有的日志提供程序
logging.AddConsole(); // 添加将日志输出到控制台的提供程序
logging.AddFile("logs/mylog-{Date}.txt"); // 添加将日志输出到文件的提供程序
})
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
通过 logging.ClearProviders
方法可以清除已有的日志提供程序,然后使用 logging.AddConsole
方法将日志输出到控制台,并使用 logging.AddFile
方法将日志输出到文件。
3. 使用 Logger 记录日志
Logger 的使用非常简单,只需要在需要记录日志的类中注入 ILogger
接口,并通过 ILogger
接口的相应方法来记录日志。例如:
public class HomeController : Controller
{
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
public IActionResult Index()
{
_logger.LogInformation("访问了首页");
return View();
}
}
在上面的例子中,我们通过构造函数注入了 ILogger<HomeController>
实例,并使用 _logger.LogInformation
方法记录了一条信息。
4. 运行应用程序并查看日志
当我们运行应用程序时,会在项目根目录中的 logs
文件夹下生成一个名为 mylog-{Date}.txt
的日志文件,其中 {Date}
会被替换为实际的日期。我们可以打开这个文件来查看日志信息。
总结
通过使用 .Net Core Logger,我们可以轻松地将日志记录到本地文件系统中。这样我们就能够方便地查看应用程序的运行状态和异常信息。希望本篇博客能够对你有所帮助,谢谢阅读!
参考链接:
本文来自极简博客,作者:时尚捕手,转载请注明原文链接:.Net Core Logger 实现log写入本地文件系统