当前位置:首页 > 科技  > 软件

.NET Core下优秀的日志框架使用解析,附源代码

来源: 责编: 时间:2023-12-25 09:34:30 297观看
导读在 .NET Core 中,日志是一个非常重要的组件,它可以帮助我们记录应用程序的运行情况,以便在出现问题时进行排查。在本文中,我们将介绍五个优秀的 .NET Core 日志框架,它们分别是 Serilog、NLog、Log4Net、
Microsoft.Extens

Aha28资讯网——每日最新资讯28at.com

在 .NET Core 中,日志是一个非常重要的组件,它可以帮助我们记录应用程序的运行情况,以便在出现问题时进行排查。在本文中,我们将介绍五个优秀的 .NET Core 日志框架,它们分别是 Serilog、NLog、Log4Net、
Microsoft.Extensions.Logging 和 Loupe。我们将为每个框架提供使用方法及步骤,并提供源代码示例。
Aha28资讯网——每日最新资讯28at.com

1、Serilog

Serilog 是一个高度可扩展的 .NET Core 日志框架,它支持多种输出格式,包括控制台、文件、Elasticsearch 等。Serilog 的特点是可配置性强,支持链式调用,可以自定义日志格式和输出方式。Aha28资讯网——每日最新资讯28at.com

使用方法

安装 Serilog NuGet 包:Aha28资讯网——每日最新资讯28at.com

Install-Package SerilogInstall-Package Serilog.Sinks.Console

在程序入口处配置 Serilog:Aha28资讯网——每日最新资讯28at.com

using Serilog;public static void Main(string[] args){    Log.Logger = new LoggerConfiguration()        .MinimumLevel.Debug()        .WriteTo.Console()        .CreateLogger();    // ...}

记录日志:Aha28资讯网——每日最新资讯28at.com

Log.Information("This is an information message.");Log.Warning("This is a warning message.");Log.Error("This is an error message.");

示例代码

using Serilog;public class Program{    public static void Main(string[] args)    {        Log.Logger = new LoggerConfiguration()            .MinimumLevel.Debug()            .WriteTo.Console()            .CreateLogger();        Log.Information("Hello, Serilog!");        Log.CloseAndFlush();    }}

2、NLog

NLog 是一个流行的 .NET Core 日志框架,它支持多种输出方式,包括控制台、文件、数据库等。NLog 的特点是配置简单,易于使用,可以自定义日志格式和输出方式。Aha28资讯网——每日最新资讯28at.com

使用方法

安装 NLog NuGet 包:Aha28资讯网——每日最新资讯28at.com

Install-Package NLog

在程序入口处配置 NLog:Aha28资讯网——每日最新资讯28at.com

using NLog.Web;public static void Main(string[] args){    var logger = NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();    // ...}

记录日志:Aha28资讯网——每日最新资讯28at.com

logger.Info("This is an information message.");logger.Warn("This is a warning message.");logger.Error("This is an error message.");

示例代码

using NLog.Web;public class Program{    public static void Main(string[] args)    {        var logger = NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();        logger.Info("Hello, NLog!");        LogManager.Shutdown();    }}

3、Log4Net

Log4Net 是一个成熟的 .NET Core 日志框架,它支持多种输出方式,包括控制台、文件、数据库等。Log4Net 的特点是稳定性高,配置灵活,可以自定义日志格式和输出方式。Aha28资讯网——每日最新资讯28at.com

使用方法

安装 Log4Net NuGet 包:Aha28资讯网——每日最新资讯28at.com

Install-Package log4net

在程序入口处配置 Log4Net:Aha28资讯网——每日最新资讯28at.com

using log4net;using log4net.Config;public static void Main(string[] args){    XmlConfigurator.Configure(new FileInfo("log4net.config"));    var logger = LogManager.GetLogger(typeof(Program));    // ...}

记录日志:Aha28资讯网——每日最新资讯28at.com

logger.Info("This is an information message.");logger.Warn("This is a warning message.");logger.Error("This is an error message.");

示例代码

using log4net;using log4net.Config;public class Program{    private static readonly ILog logger = LogManager.GetLogger(typeof(Program));    public static void Main(string[] args)    {        XmlConfigurator.Configure(new FileInfo("log4net.config"));        logger.Info("Hello, Log4Net!");    }}

4、Microsoft.Extensions.Logging

Microsoft.Extensions.Logging 是 .NET Core 自带的日志框架,它支持多种输出方式,包括控制台、文件、EventSource 等。Microsoft.Extensions.Logging 的特点是易于集成,可以与 .NET Core 的依赖注入框架一起使用。Aha28资讯网——每日最新资讯28at.com

使用方法

安装 Microsoft.Extensions.Logging NuGet 包:Aha28资讯网——每日最新资讯28at.com

Install-Package Microsoft.Extensions.Logging

在程序入口处配置 Microsoft.Extensions.Logging:Aha28资讯网——每日最新资讯28at.com

using Microsoft.Extensions.Logging;public static void Main(string[] args){    var loggerFactory = LoggerFactory.Create(builder =>    {        builder.AddConsole();    });    var logger = loggerFactory.CreateLogger<Program>();    // ...}

记录日志:Aha28资讯网——每日最新资讯28at.com

logger.LogInformation("This is an information message.");logger.LogWarning("This is a warning message.");logger.LogError("This is an error message.");

示例代码

using Microsoft.Extensions.Logging;public class Program{    private static readonly ILogger logger;    static Program()    {        var loggerFactory = LoggerFactory.Create(builder =>        {            builder.AddConsole();        });        logger = loggerFactory.CreateLogger<Program>();    }    public static void Main(string[] args)    {        logger.LogInformation("Hello, Microsoft.Extensions.Logging!");    }}

5、Loupe

Loupe 是一个全功能的 .NET Core 日志框架,它支持多种输出方式,包括控制台、文件、数据库、Web 界面等。Loupe 的特点是功能强大,支持分析、监控、报警等多种高级功能。Aha28资讯网——每日最新资讯28at.com

使用方法

安装 Loupe NuGet 包:Aha28资讯网——每日最新资讯28at.com

Install-Package Gibraltar.Agent

在程序入口处配置 Loupe:Aha28资讯网——每日最新资讯28at.com

using Gibraltar.Agent;public static void Main(string[] args){    Log.StartSession();    // ...}

记录日志:Aha28资讯网——每日最新资讯28at.com

Log.Information("This is an information message.");Log.Warning("This is a warning message.");Log.Error("This is an error message.");

示例代码

using Gibraltar.Agent;public class Program{    public static void Main(string[] args)    {        Log.StartSession();        Log.Information("Hello, Loupe!");        Log.EndSession();    }}

以上是五个优秀的 .NET Core 日志框架的介绍和使用方法。这些框架各有特点,可以根据实际需求选择合适的框架。无论选择哪个框架,记得在程序入口处配置日志,并在适当的地方记录日志,以便在出现问题时进行排查。Aha28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-53338-0.html.NET Core下优秀的日志框架使用解析,附源代码

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 被面试官PUA了:创建索引时一定会锁表

下一篇: Android开发中常见的Hook技术有哪些?

标签:
  • 热门焦点
  • 7月安卓手机性能榜:红魔8S Pro再夺榜首

    7月份的手机市场风平浪静,除了红魔和努比亚带来了两款搭载骁龙8Gen2领先版处理器的新机之外,别的也想不到有什么新品了,这也正常,通常6月7月都是手机厂商修整的时间,进入8月份之
  • 5月安卓手机好评榜:魅族20 Pro夺冠

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年5月1日至5月31日,仅限国内市场。第一名:魅族20 Pro好评率:97.50%不得不感慨魅族老品牌还
  • JavaScript 混淆及反混淆代码工具

    介绍在我们开始学习反混淆之前,我们首先要了解一下代码混淆。如果不了解代码是如何混淆的,我们可能无法成功对代码进行反混淆,尤其是使用自定义混淆器对其进行混淆时。什么是混
  • JVM优化:实战OutOfMemoryError异常

    一、Java堆溢出堆内存中主要存放对象、数组等,只要不断地创建这些对象,并且保证 GC Roots 到对象之间有可达路径来避免垃 圾收集回收机制清除这些对象,当这些对象所占空间超过
  • 本地生活这块肥肉,拼多多也想吃一口

    出品/壹览商业 作者/李彦编辑/木鱼拼多多也看上本地生活这块蛋糕了。近期,拼多多在App首页&ldquo;充值中心&rdquo;入口上线了本机生活界面。壹览商业发现,该界面目前主要
  • 消息称小米汽车开始筛选交付中心:需至少120个车位

    IT之家 7 月 7 日消息,日前,有微博简介为“汽车行业从业者、长三角一体化拥护者”的微博用户 @长三角行健者 发文表示,据经销商集团反馈,小米汽车目前
  • 华为HarmonyOS 4升级计划公布:首批34款机型今日开启公测

    8月4日消息,今天下午华为正式发布了HarmonyOS 4系统,在更流畅的前提下,还带来了不少新功能,UI设计也有变化,会让手机焕然一新。华为宣布,首批机型将会在
  • 支持aptX Lossless无损传输 iQOO TWS 1赛道版发布限时优惠价369元

    2023年7月4日,“无损音质,声动人心”iQOO TWS 1正式发布,支持aptX Lossless无损传输,限时优惠价369元。iQOO TWS 1耳机率先支持端到端aptX Lossless无
  • 荣耀Magic4 至臻版 首创智慧隐私通话 强劲影音系统

    2022年第一季度临近尾声,在该季度内,许多品牌陆续发布自己的最新产品,让大家从全新的角度来了解当今的手机技术。手机是电子设备中,更新迭代十分迅速的一款产品,基
Top