当前位置: 首页 > news >正文

全面的苏州网站建设百度关键词搜索量查询

全面的苏州网站建设,百度关键词搜索量查询,国家商标局,公司做网站的费用用途写什么net自带日志与Serilog、log4Net的异同 1、比较。 .NET自带的日志功能、Serilog和log4Net都是用于记录日志的库,但它们之间存在一些差异。具体分析如下: 相同点: 目的:它们都提供了在开发过程中记录应用程序运行情况的功能&#x…

net自带日志与Serilog、log4Net的异同

1、比较。

.NET自带的日志功能、Serilog和log4Net都是用于记录日志的库,但它们之间存在一些差异。具体分析如下:

  • 相同点
  1. 目的:它们都提供了在开发过程中记录应用程序运行情况的功能,便于开发者追踪和调试问题。
  2. 配置性:三者均支持通过配置文件或代码进行灵活的日志记录设置。
  3. 扩展性:它们都可以根据需要自定义日志格式和输出目标。
  • 不同点
  1. 灵活性和可扩展性:Serilog是一个高度可扩展的日志框架,它支持多种输出格式,包括控制台、文件、Elasticsearch等。它的特点是可配置性强,支持链式调用,可以自定义日志格式和输出方式。而log4Net也是一个成熟的日志框架,支持多种日志级别和输出目标,但在性能方面可能不如Serilog。
  2. 集成度:Serilog可以轻松与Microsoft的内置日志接口集成在一起,这使得测试应用程序变得更加容易。而log4Net作为老牌的日志库,虽然集成度也很高,但在新兴的.NET Core项目中可能需要更多的配置工作。
  3. 静态类使用:Serilog提供了静态的Log类,这可能会违反依赖反转原则,但在某些情况下(如Program类中)可能是有用的。而.NET自带的日志功能则依赖于Microsoft.Extensions.Logging,这是一个非静态的日志接口,更加符合现代软件设计的依赖注入原则。

综上所述,Serilog在性能、可配置性和灵活性方面表现较好,而log4Net作为一个成熟的日志框架,拥有稳定的用户群和丰富的文档资源。而.NET自带的日志功能则与.NET生态系统紧密集成,为开发者提供了一个开箱即用的日志解决方案。在选择日志库时,应根据项目的具体需求、团队的熟悉程度以及维护的便利性来决定。

2、最简单方式。测试自带:

/// <summary>
/// 测试连接1
/// 异常
/// </summary>
/// <param name="t">字符串</param>
/// <returns></returns>
[HttpGet]
[ApiVersionCustomRoute(SwaggerDocSettings.ApiVersions.v1)]
public string Test(string t)
{int i = 0;try{i = int.Parse(t);}catch (Exception ex){_logger.LogError("Test接口异常:" + ex.Message.ToString());return "报错,不可转int类型";}return "【Test】OK.输入的是:" + i.ToString();
}

         2.1、效果:

3、log4net:

        3.1、安装相应包:log4net、Microsoft.Extensions.Logging.Log4Net.AspNetCore

        3.2、添加配置文件:log4net.config。然后右击属性,改为始终复制到目录。

<?xml version="1.0" encoding="utf-8" ?>
<log4net><appender name="RollingFile" type="log4net.Appender.RollingFileAppender"><!--日志输入路径--><file value="Logs/Log-" /><!--按日期命名文件--><datePattern value="yyyy-MM-dd'.log'" /><!--是否只写到一个文件中--><staticLogFileName value="false" /><appendToFile value="true" /><rollingStyle value="Composite" /><!--最多产生文件数超过的话保留最新--><maxSizeRollBackups value="1000" /><maximumFileSize value="10MB" /><!--防止多线程时不能写Log,官方说线程非安全--><lockingModel type="log4net.Appender.FileAppender+MinimalLock" /><layout type="log4net.Layout.PatternLayout"><!--时间、线程、级别、、信息、换行、堆栈信息、换行、--><conversionPattern value="%date [%thread] %-5level %logger - %message%newline%exception" /><header value="&#xA;----------------------header--------------------------&#xA;" /><footer value="&#xA;----------------------footer--------------------------&#xA;"/></layout></appender><root><level value="DEBUG" /><!--上边已配置的appender节点的名称--><appender-ref ref="RollingFile" /></root>
</log4net>

        3.3、注入服务:

builder.Host.ConfigureLogging(loggingBuilder =>
{loggingBuilder.AddLog4Net();
});

        3.4、测试:

        public ApiResult Test(string t){int i = 0;try{i = int.Parse(t);}catch (Exception ex){string str = "Test接口异常:" + ex.Message.ToString();//_logger.LogError(str); _logger.LogError("1、" + str, ex);_logger.LogError("2、" + str + "【】" + ex.ToString());_logger.LogError("3、" + str);_logger.LogError(ex, "4、" + str);return ApiResultHelper.Error("转化失败", ex.Message.ToString());}i = int.Parse(t);return ApiResultHelper.Success("转化成功!");}

        3.5、输出成功:(建议使用第4条的计入方式)

        3.6、网上还有很多使用帮助类的形式添加日志记录,但是我感觉没有这种简单,相当于替换了原有的。但是帮助类那种可拓展的更丰富吧,看个人使用情况。

http://www.dt0577.cn/news/6293.html

相关文章:

  • 重点建设学科网站百度搜索风云榜官网
  • 东宁网站制作湖人排名最新
  • 苏州品牌网站建设安徽360优化
  • 可以建设彩票网站吗seo网站推广技术
  • 网站信息化建设总结网站优化包括哪些内容
  • 兰州论坛网站建设沧州seo公司
  • 那些网站可以上传自己做的视频关键词优化搜索引擎
  • 网页设计工作室网站cnn头条新闻
  • 昆明网站建设工作室大连做优化网站哪家好
  • go 语言 做网站易推客app拉新平台
  • 服务器如何搭建网站百度认证中心
  • 深圳 手机网站理发培训专业学校
  • 网站首页设计常见的6种布局方式企业管理培训课程视频
  • asp.net不适合做网站免费关键词优化排名软件
  • 定制网站的好处网页开发需要学什么
  • 定西市建设网站费用广告投放是什么工作
  • 鄂州做网站免费人脉推广软件
  • 购物商城网站都有哪些功能抖音搜索关键词排名
  • 云服务器是干什么的广州软件系统开发seo推广
  • 上海城乡建设学校网站网盘app下载
  • 怎么用外国的服务器做网站seo优化与推广招聘
  • 设计素材网站飘郑州网络推广效果
  • 网站手机端做app开发工具百度网登录入口
  • 政府网站开发周期seo收录排名
  • wordpress换站关键词排名怎样
  • html网站开发相关书籍天津百度快速排名优化
  • 有个专门做装修的网站网站信息组织优化
  • 企业网站建设的意义广告营销策划
  • 中山做网站排名网站优化网
  • wordpress出现500错误深圳seo优化公司哪家好