如何在通过Host.CreateDefaultBuilder挂载的Web主机中配置日志记录

追踪器1

我正在将以下适用的WebHost.CreateDefaultBuilder方法改编为基于的方法,Host.CreateDefaultBuilder以便可以使用UseWindowsService 扩展方法

// WORKING
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
  WebHost.CreateDefaultBuilder(args)
    .ConfigureLogging((hostingContext, logging) =>
    {
      ...
    })
    .UseStartup<Startup>();
}

当我尝试适应这个问题时...

public static IHostBuilder CreateHostBuilder(string[] args) =>
  Host.CreateDefaultBuilder(args)
    .UseWindowsService()
    .ConfigureLogging((hostingContext, logging) =>
    { // tried here
      ...
    })
    .ConfigureWebHostDefaults(webBuilder =>
    {
      webBuilder.ConfigureLogging((hostingContext, logging) =>
        { // tried here too
          ...
        });
        .UseStartup<Startup>();
    });

我收到以下错误...

尝试激活“ MyProject.Startup”时,无法解析类型为“ Microsoft.Extensions.Logging.ILoggerFactory”的服务。

在此处设置日志记录的合适方法是什么?

恩科西

在ASP.NET Core中参考应用程序启动

Startup使用通用主机(IHostBuilder时,只能将以下服务类型注入构造函数

  • IWebHost环境
  • 主机环境
  • 配置

虽然您的链接Startup似乎在允许的服务范围之外注入。

public Startup(ILoggerFactory loggerFactory)
{
  this._Factory = loggerFactory;
  this._Logger = loggerFactory.CreateLogger<Startup>();
}

根据链接的Startup代码,似乎没有使用该记录器,并且注释掉了对该记录器的一个引用,因为基于使用该记录器的上下文,它是不需要的。

我建议删除ILoggerFactoryStartup构造函数的注入,作为对框架的较新版本进行重构的一部分。

原始示例代码提供的所有其他内容似乎都遵循文档中建议的格式,并且应能按预期工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在流明中配置日志记录级别

来自分类Dev

如何在流明中配置日志记录级别

来自分类Dev

如何在wso2as中配置openjpa日志记录

来自分类Dev

如何在 nginx 中禁用非法主机头请求的日志记录

来自分类Dev

如何配置Hazelcast日志记录

来自分类Dev

如何在日志记录配置文件中引用标准库?

来自分类Dev

如何在日志记录配置文件中引用标准库?

来自分类Dev

如何在同一配置文件中混合使用日志记录处理程序(文件和定时)和压缩日志?

来自分类Dev

如何在Docker容器中获取主机的挂载信息

来自分类Dev

如何在Geb中添加日志记录

来自分类Dev

如何在Geb中添加日志记录

来自分类Dev

如何在Java Web App中记录消息并在树中按会话,请求查看日志?

来自分类Dev

如何在Gradle中配置日志级别?

来自分类Dev

如何在Gradle中配置日志级别?

来自分类Dev

如何在系统日志中禁用Logstash错误日志记录

来自分类Dev

如何在express js中通过id更新特定记录

来自分类Dev

配置Apache以在访问和错误日志中记录主机

来自分类Dev

如何在paramiko连接中临时添加host_key

来自分类Dev

如何在Matlab中通过引用传递?

来自分类Dev

如何在引用 add_host 中的主机变量的同时遍历 Ansible 库存

来自分类Dev

如何在Django中通过网址通过模板发送文本?

来自分类Dev

如何使用日志记录配置单位日志存储策略?

来自分类Dev

如何配置logback以将单独的程序包记录到单独的日志文件中?

来自分类Dev

如何在Ubuntu 14.04中通过语音执行Web搜索

来自分类Dev

如何拦截CXF Web服务日志记录?

来自分类Dev

如何在Hive JDBC中禁用详细日志记录

来自分类Dev

如何在Ubuntu 12.04中启用Google Chrome的日志记录?

来自分类Dev

如何在单元测试中禁止Spark日志记录?

来自分类Dev

如何在python日志记录中过滤stdout

Related 相关文章

  1. 1

    如何在流明中配置日志记录级别

  2. 2

    如何在流明中配置日志记录级别

  3. 3

    如何在wso2as中配置openjpa日志记录

  4. 4

    如何在 nginx 中禁用非法主机头请求的日志记录

  5. 5

    如何配置Hazelcast日志记录

  6. 6

    如何在日志记录配置文件中引用标准库?

  7. 7

    如何在日志记录配置文件中引用标准库?

  8. 8

    如何在同一配置文件中混合使用日志记录处理程序(文件和定时)和压缩日志?

  9. 9

    如何在Docker容器中获取主机的挂载信息

  10. 10

    如何在Geb中添加日志记录

  11. 11

    如何在Geb中添加日志记录

  12. 12

    如何在Java Web App中记录消息并在树中按会话,请求查看日志?

  13. 13

    如何在Gradle中配置日志级别?

  14. 14

    如何在Gradle中配置日志级别?

  15. 15

    如何在系统日志中禁用Logstash错误日志记录

  16. 16

    如何在express js中通过id更新特定记录

  17. 17

    配置Apache以在访问和错误日志中记录主机

  18. 18

    如何在paramiko连接中临时添加host_key

  19. 19

    如何在Matlab中通过引用传递?

  20. 20

    如何在引用 add_host 中的主机变量的同时遍历 Ansible 库存

  21. 21

    如何在Django中通过网址通过模板发送文本?

  22. 22

    如何使用日志记录配置单位日志存储策略?

  23. 23

    如何配置logback以将单独的程序包记录到单独的日志文件中?

  24. 24

    如何在Ubuntu 14.04中通过语音执行Web搜索

  25. 25

    如何拦截CXF Web服务日志记录?

  26. 26

    如何在Hive JDBC中禁用详细日志记录

  27. 27

    如何在Ubuntu 12.04中启用Google Chrome的日志记录?

  28. 28

    如何在单元测试中禁止Spark日志记录?

  29. 29

    如何在python日志记录中过滤stdout

热门标签

归档