在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
日志是 C# 中的一项基本技术,可在应用程序运行时捕获信息、警告、错误和其他相关数据。 它可以帮助开发人员关注他们的程序如何运行、排除故障并理解应用程序在各种情况下的功能。 C# 提供了一些日志记录框架和软件包,使日志记录工作更加轻松。 Microsoft.Extensions.Logging日志框架是 .NET Core 应用程序中使用最广泛的日志框架之一。 .NET Core 的 "Microsoft.Extensions.Logging" NuGet 包让我们可以访问多个扩展方法,帮助我们编写不同级别的日志。 在本文中,我们将进一步了解 MS logging。
创建一个新的Visual Studio项目。
从以下位置安装 "Microsoft.Extensions.Logging "库NuGet 上的 Microsoft.Extensions.Logging 软件包页面.
将 Logger
接口注入控制台。
配置日志输出。
编写不同级别的日志。
要开始工作,请在 Visual Studio 中创建一个新项目。
使用以下命令安装 "Microsoft.Extensions.Logging "库NuGet 上的 Microsoft.Extensions.Logging 软件包页面. 该库为 .NET Core 应用程序中的日志记录提供了必要的类和方法。
要使用日志记录功能,您需要在控制台应用程序中注入一个 Logger
接口实例。 可以使用依赖注入框架或手动创建一个 Logger
类的实例来完成。
using Microsoft.Extensions.Logging;
// Inject the logger into the console
ILogger logger = LoggerFactory.Create(builder =>
{
builder.AddConsole();
}).CreateLogger<Program>();
using Microsoft.Extensions.Logging;
// Inject the logger into the console
ILogger logger = LoggerFactory.Create(builder =>
{
builder.AddConsole();
}).CreateLogger<Program>();
Imports Microsoft.Extensions.Logging
' Inject the logger into the console
Private logger As ILogger = LoggerFactory.Create(Sub(builder)
builder.AddConsole()
End Sub).CreateLogger<Program>()
配置日志输出方式。 这可以通过在日志生成器中添加一个或多个日志提供程序来实现。 最常见的提供者是控制台日志记录器,它将日志输出到控制台。
builder.AddConsole(options =>
{
options.TimestampFormat = "[HH:mm:ss] ";
});
builder.AddConsole(options =>
{
options.TimestampFormat = "[HH:mm:ss] ";
});
builder.AddConsole(Sub(options)
options.TimestampFormat = "[HH:mm:ss] "
End Sub)
现在,您可以使用日志记录器对象编写不同级别的日志。 可用的日志记录方法有 LogDebug()
,日志信息()
,日志警告()
,日志错误()",以及 "关键日志()
.
logger.LogDebug("This is a debug message");
logger.LogInformation("This is an information message");
logger.LogWarning("This is a warning message");
logger.LogError("This is an error message");
logger.LogCritical("This is a critical message");
logger.LogDebug("This is a debug message");
logger.LogInformation("This is an information message");
logger.LogWarning("This is a warning message");
logger.LogError("This is an error message");
logger.LogCritical("This is a critical message");
logger.LogDebug("This is a debug message")
logger.LogInformation("This is an information message")
logger.LogWarning("This is a warning message")
logger.LogError("This is an error message")
logger.LogCritical("This is a critical message")
最后,运行您的代码并观察根据配置的设置输出的日志。
就是这样! 您已在 C# 应用程序中成功设置并使用了 MS 日志。
要安装 MS Logging,请按照以下步骤操作:
启动 Visual Studio。
导航至 工具 > NuGet 包管理器 > 包管理器控制台。
Install-Package Microsoft.Extensions.Logging
Microsoft.Extensions.Logging
软件包到您的项目中。C# 中的 "Microsoft.Extensions.Logging "框架提供了多个日志级别,使开发人员能够根据其重要性和严重性对日志消息进行分类和排序。 这些级别经常用于区分各种消息类型,并协助调节日志的冗长程度。
Microsoft.Extensions.Logging "提供的默认日志级别如下:
关键:最严重的状态,用于记录需要立即解决的关键问题,因为它们可能导致严重问题或程序崩溃。
每个日志级别都有特定的用途,并为开发人员提供了管理日志框架输出数据量的能力。 开发人员可以根据记录数据的严重性和重要性选择适当的消息记录级别。
下面是一个如何使用 Microsoft.Extensions.Logging
配置日志的基本示例:
using Microsoft.Extensions.Logging;
using System;
class Program
{
// Create a LoggerFactory instance
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
// Add console logger
builder.AddConsole();
// You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
});
// Create a logger
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
// Example log messages
Logger.LogInformation("Information log");
Logger.LogWarning("Warning log");
Logger.LogError("Error log");
try
{
// Simulate an exception
throw new Exception("Exception occurred");
}
catch (Exception ex)
{
// Log exception details
Logger.LogError(ex, "Exception log");
}
Console.ReadKey();
}
}
using Microsoft.Extensions.Logging;
using System;
class Program
{
// Create a LoggerFactory instance
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
// Add console logger
builder.AddConsole();
// You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
});
// Create a logger
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
// Example log messages
Logger.LogInformation("Information log");
Logger.LogWarning("Warning log");
Logger.LogError("Error log");
try
{
// Simulate an exception
throw new Exception("Exception occurred");
}
catch (Exception ex)
{
// Log exception details
Logger.LogError(ex, "Exception log");
}
Console.ReadKey();
}
}
Imports Microsoft.Extensions.Logging
Imports System
Friend Class Program
' Create a LoggerFactory instance
Private Shared ReadOnly LoggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
' Add console logger
builder.AddConsole()
' You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
End Sub)
' Create a logger
Private Shared ReadOnly Logger As ILogger = LoggerFactory.CreateLogger(Of Program)()
Shared Sub Main(ByVal args() As String)
' Example log messages
Logger.LogInformation("Information log")
Logger.LogWarning("Warning log")
Logger.LogError("Error log")
Try
' Simulate an exception
Throw New Exception("Exception occurred")
Catch ex As Exception
' Log exception details
Logger.LogError(ex, "Exception log")
End Try
Console.ReadKey()
End Sub
End Class
在本示例中,日志配置中添加了一个控制台日志记录器,可将日志写入控制台。 然而,"Microsoft.Extensions.Logging "提供了各种日志提供程序,包括记录到文件、数据库或连接到其他日志框架。 此外,还可以创建自定义日志提供程序,根据特定要求格式化日志。
您可以通过在 "创建"、"创建"、"创建"、"创建"、"创建 "和 "创建()功能。 例如
builder.AddDebug()
.builder.AddFile("log.txt")
.要在 IronPDF 中启用日志功能,您可以使用 Microsoft.Extensions.Logging
框架以及 IronPDF 的内置日志功能。 下面是如何在 IronPDF 中设置日志的示例:
using Microsoft.Extensions.Logging;
using IronPdf;
class Program
{
static void Main(string [] args)
{
ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
{
builder
.AddConsole()
.AddDebug();
});
ILogger<Program> logger = loggerFactory.CreateLogger<Program>();
// Enable logging in IronPDF
Logger.Log = new LoggerImplementation(logger);
// Use IronPDF and perform operations
// ...
// Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF");
// Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message");
// Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message");
// ...
// Close and dispose resources
// ...
// Flush the log messages
loggerFactory.Dispose();
}
}
using Microsoft.Extensions.Logging;
using IronPdf;
class Program
{
static void Main(string [] args)
{
ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
{
builder
.AddConsole()
.AddDebug();
});
ILogger<Program> logger = loggerFactory.CreateLogger<Program>();
// Enable logging in IronPDF
Logger.Log = new LoggerImplementation(logger);
// Use IronPDF and perform operations
// ...
// Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF");
// Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message");
// Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message");
// ...
// Close and dispose resources
// ...
// Flush the log messages
loggerFactory.Dispose();
}
}
Imports Microsoft.Extensions.Logging
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim loggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
builder.AddConsole().AddDebug()
End Sub)
Dim logger As ILogger(Of Program) = loggerFactory.CreateLogger(Of Program)()
' Enable logging in IronPDF
Logger.Log = New LoggerImplementation(logger)
' Use IronPDF and perform operations
' ...
' Example of logging an error in IronPDF
Logger.Log.Error("An error occurred while processing the PDF")
' Example of logging a warning in IronPDF
Logger.Log.Warning("This is a warning message")
' Example of logging an information message in IronPDF
Logger.Log.Information("This is an information message")
' ...
' Close and dispose resources
' ...
' Flush the log messages
loggerFactory.Dispose()
End Sub
End Class
在本例中,我们从 Microsoft.Extensions.Logging
框架中创建了一个 LoggerFactory
实例。 然后,我们从 "程序 "类的工厂中创建一个日志记录器。
为了在 IronPDF 中启用日志记录功能,我们将静态 Logger.Log
属性设置为 LoggerImplementation
实例,该实例从 loggerFactory
获取日志记录器。 通过此配置,您可以使用 Logger.Log
方法记录 IronPdf 中的信息。
使用 IronPDF 执行必要的操作后,可以关闭并处置资源,然后通过处置 loggerFactory
来清除日志信息。
注意:确保您已为 Microsoft.Extensions.Logging
和 IronPdf 安装了必要的依赖项和软件包。
要安装 IronPDF 库,请按照以下步骤操作:
在Visual Studio中打开包管理器控制台。
Install-Package IronPdf
或者,您也可以使用 .NET CLI,在终端运行以下命令:
dotnet add package IronPdf
按回车执行命令。 这将下载 IronPDF 软件包并安装到您的项目中。
也可以使用 NuGet 软件包管理器图形用户界面安装 IronPdf 库。 只需在 "浏览 "选项卡中搜索软件包 "IronPDF",从列表中选择所需的软件包,然后安装最新版本的 IronPDF 即可。
安装完成后,您就可以开始在项目中使用 IronPDF 库了。
截至 2022 年 1 月,IronPdf 无法与 Microsoft.Extensions.Logging
直接交互,也不支持本机功能。 IronPdf 主要用作在 C# 程序中创建和修改 PDF 的工具。
不过,您仍然可以使用 Microsoft.Extensions.Logging 来记录日志。 通过将日志记录与 IronPDF 一起集成到 C# 程序中,您可以管理和记录与 PDF 生产、应用程序工作流或使用 IronPDF 时发生的问题相关的事件。
以下是如何使用 Microsoft.Extensions 将日志与 IronPDF 集成的示例:
using Microsoft.Extensions.Logging;
using IronPdf;
using System;
class Program
{
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
builder.AddConsole(); // Add other logging providers as needed
});
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
try
{
// Your IronPDF code for PDF generation or manipulation
var Renderer = new IronPdf.HtmlToPdf();
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
PDF.SaveAs("Output.pdf");
Logger.LogInformation("PDF created successfully.");
}
catch (Exception ex)
{
Logger.LogError(ex, "An error occurred while generating the PDF.");
}
Console.ReadKey();
}
}
using Microsoft.Extensions.Logging;
using IronPdf;
using System;
class Program
{
private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
{
builder.AddConsole(); // Add other logging providers as needed
});
private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();
static void Main(string [] args)
{
try
{
// Your IronPDF code for PDF generation or manipulation
var Renderer = new IronPdf.HtmlToPdf();
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
PDF.SaveAs("Output.pdf");
Logger.LogInformation("PDF created successfully.");
}
catch (Exception ex)
{
Logger.LogError(ex, "An error occurred while generating the PDF.");
}
Console.ReadKey();
}
}
Imports Microsoft.Extensions.Logging
Imports IronPdf
Imports System
Friend Class Program
Private Shared ReadOnly LoggerFactory As ILoggerFactory = LoggerFactory.Create(Sub(builder)
builder.AddConsole() ' Add other logging providers as needed
End Sub)
Private Shared ReadOnly Logger As ILogger = LoggerFactory.CreateLogger(Of Program)()
Shared Sub Main(ByVal args() As String)
Try
' Your IronPDF code for PDF generation or manipulation
Dim Renderer = New IronPdf.HtmlToPdf()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
PDF.SaveAs("Output.pdf")
Logger.LogInformation("PDF created successfully.")
Catch ex As Exception
Logger.LogError(ex, "An error occurred while generating the PDF.")
End Try
Console.ReadKey()
End Sub
End Class
本示例演示了在使用 IronPDF 的 C# 应用程序中设置 Microsoft.Extensions.Logging 的简单方法。 生成的日志信息将记录成功创建 PDF 的过程,并记录可能出现的任何异常情况。
请务必根据您应用程序的具体需求以及 IronPDF 用于创建或修改 PDF 的场景,自定义日志级别、错误处理和消息。 使用日志级别正确区分不同类型的日志信息有助于有效调试和监控。
要了解有关 IronPDF 的更多信息,请访问IronPDF 主页、.
总之,集成 Microsoft.Extensions.Logging 可以让 C# 开发人员有效处理日志记录任务。 IronPdf 提供全面的日志功能,可对应用程序事件、故障和重要数据进行全面记录、分析和报告。 这将增强应用程序的可靠性、维护性和调试性。
IronPdf 提供不同的软件产品,包括售价为 $749 的 Lite 捆绑软件。 该捆绑包包括永久许可证、升级选项、一年软件维护和 30 天退款保证。 在带水印的试用期内,您可以探索 IronPDF 的功能。 要了解有关 Iron Software 提供的软件产品的更多信息,请访问Iron Software 的官方网站.