首页 > 编程语言 >.netcore log schema and serilog-asp.netcore schema

.netcore log schema and serilog-asp.netcore schema

时间:2022-11-07 17:14:18浏览次数:60  
标签:asp netcore serilog ILogger Logger 构造函数 schema

1.   asp.netcore  的 Ilogger 起源这里

            services.TryAdd(ServiceDescriptor.Singleton<ILoggerFactory, LoggerFactory>());
            services.TryAdd(ServiceDescriptor.Singleton(typeof(ILogger<>), typeof(Logger<>)));

我们用 ILogger<> , 实际使用的 是 Logger<>, 其构造函数里注入了 ILoggerFactory

我们用到几个Logger<>,他的构造函数就要执行几次。ILogger<HomeController> 和 ILogger<IndexController> 不是一个对象

LoggerFactory 是单例的,构造方法引入了 IEnumerable<ILoggerProvider> providers。
LoggerFactory 最重要的是 CreateLogger, 返回的类型实际上是 非泛型的Logger, 每一个返回值实际上包含了 一个 LoggerInformation 数组, 
这数组和 provider 是对应的。 这样最后这个 Logger 写的时候,会遍历这个
LoggerInformation 数组,可以根据每个 provider 的 级别决定是否输出。


 

标签:asp,netcore,serilog,ILogger,Logger,构造函数,schema
From: https://www.cnblogs.com/qgbo/p/16866610.html

相关文章