问题标签 [iloggerfactory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
308 浏览

elasticsearch - 使用 serilog 和 ILogger 记录到弹性搜索

我编写了一个函数来返回一个 ILogger 实例。这样我就可以在我的所有代码中获得一致的日志记录。

我的问题是,当从不同类型的运行时/程序调用时,日志记录有时会在某些运行时失败!即,如果我使用 WebAPI 进行日志记录,一切都很好,但如果我在 Azure 函数 V1 中使用它,它就永远不会工作。

记录器不会抛出或以其他方式指示任何错误。我唯一失败的迹象是 Kibana/ElasticSearch 中没有任何显示。

如何调试/故障排除使用 ElasticSearch 的 serilog 接收器制作的 Ilogger 实例?

0 投票
1 回答
409 浏览

c# - 在 .NetCore 控制台应用程序中使用 Nlog 和 ILoggerFactory 时未打印调试和跟踪日志

尽管 appsettings.json 上的 minlevel 设置为 Trace,但未打印调试和跟踪日志。实际输出:

我创建了一个示例项目 repo,可以在这里找到 https://github.com/yaniv120892/ApplicationLogging

使用 .NetCore 3.1 和包:

  • Microsoft.Extensions.Configuration.Json 3.1.5
  • NLog 4.7.2
  • NLog.Extensions.Logging 版本=1.6.4

appsettings.json:

ApplicationLogging.cs:

程序.cs:

0 投票
2 回答
360 浏览

c# - 在 C# ILoggerFactory 中使用 ILogger 对静态方法进行单元测试为 Null

每个人,

我正在尝试对我的代码进行单元测试,但是我无法让 ILoggerFactory 工作

这是我的单元测试代码(可能不正确):

这是我要测试的类的代码(我只留下了失败的代码行)

这是错误所在的帮助类的代码:

就在它运行的那一行:

LoggerFactory 为空。

我在互联网上做了很多研究,但是这一切都导致了非静态的类信息。

如果它很重要,它是一个 Botframework 项目。

任何帮助,将不胜感激。

提前致谢。

0 投票
1 回答
44 浏览

asp.net-core - ASP Core 在实用程序类中添加日志记录

我们自动将记录器注入到通用控制器类中。但是我们如何为泛型实用程序类派生一个记录器,该类的泛型类型与封闭的 Controller 不同?

有没有办法获取创建注入记录器实例的 LoggerFactory 并使用它来生成具有所有相同提供程序的新记录器?

0 投票
1 回答
169 浏览

c# - 我可以在没有 LoggerFactory 的情况下直接注入 ILogger

从 IoC 的角度来看,我们应该能够轻松设置和选择接口的实现。

如果我创建自定义实现ILogger,我可以直接将它注入到没有ILoggerFactory-ILoggerProvider-ILogger结构的控制器中吗?

通过这种方式,我可以减少设置开销,并对 Logger 进行更多控制。例如,我可以投射和访问CustomProperty. 相反,ILoggerFactory-ILoggerProvider-ILoggerchain创建的记录器会维护一个ILoggers的集合,我不能再访问我的CustomLogger了。

代码如下所示。这是一个可行的解决方案吗?

定义 CustomLogger

设置依赖注入

访问ILoggerwithCustomLogger实现

0 投票
0 回答
4 浏览

asp.net - DEV-IIS 和 UAT-IIS 中缺少 loggerFactory 日志

我正在使用 ILoggerFactory 在我的 ASP.NET 项目中生成日志。启动.cs -

借款人控制器.cs

日志正在本地生成。但是日志文件夹不会在 DEV-IIS 和 UAT-IIS 服务器上生成。

0 投票
1 回答
58 浏览

azure-web-app-service - 在 Azure 应用服务上捕获 asp.net 核心应用程序的 ILogger 日志

我正在开发一个 asp.net 核心 Web 应用程序。

此应用程序托管在 azure app 服务上。

此应用程序在标准输出(dotnet run 命令)上生成日志。此日志来自 ILogger。

我如何在 azure 门户中看到此日志?

谢谢

0 投票
1 回答
1248 浏览

c# - 如何在 .net 6 中获取 ILoggerFactory

在 .Net5 ILoggerFactory 用作 Startup.cs 中的配置函数,如下所示:

在 .Net6 中如何使用 aap 或 builder 获取它

或者

0 投票
1 回答
54 浏览

c# - Dotnet 核心中的 LoggerFactory 如何被调用

我在 Dotnet core 3.1 中创建了一个示例 ConsoleApp,并在其中添加了 Microsoft.Logging.Extension.Abstractions(5.0.0) 包。我还使用了 Microsoft.Extensions.DependencyInjection(6.0.0) 并将 ServiceCollection 设置为:

然后我将记录器解析为sp.GetService<ILogger<TestClass>>();一旦我解决了记录器,它就会调用LoggerFactory 的 CreateLogger方法,其中 CategoryName 作为 className 并带有命名空间前缀......我的问题是它是如何在引擎盖下发生的。似乎 GetService 正在调用 LoggerFactory 的方法。关于 DI 基础设施如何实例化和使用 LoggerFactory 的任何想法?