系统诊断跟踪不适用于通过 autofac.config 添加的模块



我需要有关Autofac.Configuration扩展的帮助!

我们使用Autofac和Autofac.Configuration将所有依赖项添加到我们的程序中。此外,我们使用system.diagnositcs跟踪来记录方法e调用等(通常(。

现在,我们最近才开始使用Autofac.Configuration扩展。在此之前,所有消息都按预期写入输出文件。但是,仅通过配置文件添加的每个类都不会被记录。(它们通常工作正常,只是日志记录不起作用!

这是我们的配置文件的样子:

"components": [
{
"type": "MyClass, MyAssembly",
"services": [
{
"type": "MyInterface, MyInterfaceAssembly"
}
],
"instanceScope": "singleinstance"
},...

这就是我们的跟踪器调用的样子:

private static readonly TraceSource Tracer = new TraceSource("MyCustomName", SourceLevels.Error);
...
Tracer.TraceInformation($"SomeMessage {someInput}");

有人知道我做错了什么吗?或者这是Autofac.Configuration扩展中的错误?

Autofac.Configuration 根本不会对跟踪执行任何操作。如果您搜索源,则甚至没有对跟踪的引用。

我的猜测是发生了其他事情。我会在你的鞋子里看到的东西:

  • 转换为配置时出错:我是否忘记注册以前注册的类?我是否注册了所有相同的参数和以前是代码的所有内容?有什么不同或我可能错过的吗?
  • 不相关的更改:在转换为使用配置时,我是否执行了其他操作?是否还有其他重构正在进行?我是否从主分支拉取到我的任务分支,并从可能影响我的其他人那里获得了更改?

不幸的是,您没有包含最小的可重现示例,因此任何人都无法真正帮助在此处进行故障排除。但是,我可以 100% 保证跟踪不会由于 Autofac.Configuration 模块中的任何错误而失败。这将是其他东西 - 要么是你创建的 JSON 配置中的错误,要么是发生了其他一些不相关的更改。

最新更新