Nlog 实现了 Microsoft.Extensions.Logging.ILogger。

首先Nuget下载添加引用:NLog.Extensions.Logging

在添加NLog的配置文件“NLog.Config” 到项目,内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <targets>
<target name="logfile" xsi:type="File" fileName="Log/log.txt" />
<target name="console" xsi:type="Console" />
</targets> <rules>
<logger name="*" minlevel="Info" writeTo="logfile" />
<logger name="*" minlevel="Info" writeTo="console" />
</rules>
</nlog>

在:Program 类(我这个是Console程序)修改:

 public static IHostBuilder CreateHostBuilder(string[] args) =>

          Host.CreateDefaultBuilder(args).ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.AddNLog();
logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
})
.ConfigureServices((hostContext, services) =>
{
services.AddHostedService<DataService>();
});

  

在用的地方注入Microsoft.Extensions.Logging.ILogger:

       private Microsoft.Extensions.Logging.ILogger<DataService> _logger;
public DataService(ILogger<DataService> logger) {
_logger = logger;
} protected void Test()
{ _logger.LogError("test.........");

  

最后会在 Log/log.txt 记录日志输出信息。

另外可以定义为 NLog.ILogger _logger;

可惜的是NLog没有NLog.ILogger<T>这种形式!!!!

也不能直接注入NLog.ILogger,会报 'Unable to resolve service for type 'NLog.ILogger' while attempting to activate 。

可以这样:

 private readonly Logger _logger;
public DataService()
{ _logger = LogManager.GetCurrentClassLogger();
}

  

.NET Core use NLog的更多相关文章

  1. ASP.NET Core使用NLog记录日志到Microsoft Sql Server

    在之前的文章中介绍了如何在ASP.NET Core使用NLog,本文为您介绍在ASP.NET Core使用NLog记录到Microsoft Sql Server 1.我们需要添加依赖: NLog.We ...

  2. asp.net core结合NLog搭建ELK实时日志分析平台

    0.整体架构 整体架构目录:ASP.NET Core分布式项目实战-目录 一.介绍ELK 1.说明(此篇ELK采用rpm的方式安装在服务器上)-牛刀小试 承接上一篇文章的内容准备部署ELK来展示asp ...

  3. .NET Core使用NLog通过Kafka实现日志收集

    微服务日志之.NET Core使用NLog通过Kafka实现日志收集 https://www.cnblogs.com/maxzhang1985/p/9522017.html 一.前言 NET Core ...

  4. .NET Core 使用NLog日志记录

    前言 每个项目都会需要使用到日志功能,这对于项目上线后 出现的bug异常,能及时定位和便于后期错误分析.那我们今天来看看在.NET Core中如何使用NLog日志. NLog 什么是NLog呢? NL ...

  5. asp.net core 使用NLog记录日志到txt文件

    一.使用VisualStudioCode创建一个webapi项目(也可以是mvc等).一个类库(用于封装记录日志方法,当然如果使用依赖注入到控制台项目,就不需要此类库了). 二.在类库中添加NLog. ...

  6. ASP.NET Core 添加NLog日志支持(VS2015update3&VS2017)

    1.创建一个新的ASP.NET Core项目 2.添加项目依赖 NLog.Web.AspNetCore 3.在项目目录下添加nlog.config文件: <?xml version=" ...

  7. ASP.NET Core之NLog使用

    1.新建ASP.NET Core项目 1.1选择项目 1.2选择.Net版本 2. 添加NLog插件 2.1 通过Nuget安装 2.2下载相关的插件 3.修改NLog配置文件 3.1添加NLog配置 ...

  8. 微服务日志之.NET Core使用NLog通过Kafka实现日志收集

    一.前言 NET Core越来越受欢迎,因为它具有在多个平台上运行的原始.NET Framework的强大功能.Kafka正迅速成为软件行业的标准消息传递技术.这篇文章简单介绍了如何使用.NET(Co ...

  9. .Net Core使用NLog记录日志

    参见:https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2 大致步骤: Nuget中引用NLog及NLog ...

  10. ASP.NET Core使用NLog记录日志

    1.根目录新建nlog.config配置文件 <?xml version="1.0"?> <nlog xmlns="http://www.nlog-pr ...

随机推荐

  1. spring boot下跨域安全配置

    1 @Bean 2 public FilterRegistrationBean corsFilter() { 3 final UrlBasedCorsConfigurationSource sourc ...

  2. 【原创】PREEMPT-RT 系统cpu使用率周期CPU飙高问题

    PREEMPT-RT 系统cpu使用率周期CPU飙高问题 目录 PREEMPT-RT 系统cpu使用率周期CPU飙高问题 背景 现象 复现条件 原因 解决措施 背景 在22年进行PREEMPT-RT系 ...

  3. 超实用的SpringAOP实战之日志记录

    本文主要以日志记录作为切入点,来讲解Spring AOP在实际项目开发中怎样更好的使项目业务代码更加简洁.开发更加高效. 日志处理只是AOP其中一种应用场景,当你掌握了这一种场景,对于其它应用场景也可 ...

  4. javascript数组合并效率对比

    1.数组元素量级大而合并次数少时,性能对比: concat() > push() > [-array1,-array2] 2.数组元素少但合并次数多时,性能对比: push() > ...

  5. npm安装包出现Invalid Version,npm list报错UNMET DEPENDENCY报错

    执行 npm install 出现报错 2097 verbose stack TypeError: Invalid Version: 2097 verbose stack at new SemVer ...

  6. 基于python的文件监控watchdog

    实时监控第三方库watchdog,其原理通过操作系统的时间触发的,不需要循环和等待 使用场景: 1.监控文件系统中文件或目录的增删改情况 2.当特定的文件被创建,删除,修改,移动时执行相应的任务 1. ...

  7. 再用RNN神经网络架构设计生成式语言模型

    上一篇:<用谷歌经典ML方法方法来设计生成式人工智能语言模型> 序言:市场上所谓的开源大语言模型并不完全开源,通常只提供权重和少量工具,而架构.训练数据集.训练方法及代码等关键内容并未公开 ...

  8. ClickHouse 物化视图学习总结

    物化视图 物化视图源表--基础数据源 创建源表,因为我们的目标涉及报告聚合数据而不是单条记录,所以我们可以解析它,将信息传递给物化视图,并丢弃实际传入的数据.这符合我们的目标并节省了存储空间,因此我们 ...

  9. 虚拟机 ubuntu18 树莓派4 QT5.14.2 交叉编译

    编译过程主要参考了 <为树莓派4交叉编译QT5.14.2(带EGLFS支持)>,可以按照教程一步一步进行,在整个过程中,有2个地方需要注意. 1. sudo rpi-update 因为网络 ...

  10. Redis应用—4.在库存里的应用

    大纲 1.库存模块设计 2.库存缓存分片和渐进式同步方案 3.基于缓存分片的下单库存扣减方案 4.商品库存设置流程与异步落库的实现 6.库存入库时"缓存分片写入 + 渐进式写入 + 写入失败 ...