首页 > 解决方案 > 如何登录到 Azure Function 2.0 中的其他日志提供程序

问题描述

除了 Application Insights,我们还希望在函数中登录到日志提供程序 (Seq)。

我们很难理解如何在我们的 FunctionsStartup 扩展中进行设置,我们在其中设置了其他依赖项。

在我们看来,这可以(至少)两种方式解决。

1)除了我们的自定义记录器(一个设置有 Seq 接收器的 Serilog 记录器)之外,还使用默认记录器(记录到 App Insights)引导我们的函数应用

2) 对 ILogger 执行运行时依赖注入解析,并在此日志上执行对 App Insights 的日志记录,以及Seq 的日志记录。然后我们可以有一个单例 ICompanyLogger 记录到两者。

有谁知道如何在函数中执行运行时 DI 解析和/或如何在 Microsoft.Extensions.Logging.ILogger 中设置多个接收器?

标签: .net-coreazure-functionsserverless

解决方案


要在 Azure 函数中实际启用日志记录,必须将以下内容添加到 host.json :

{
    "logging": {
        "logLevel": {
            "default": "Warning"
        }
    }
}

未设置此默认级别时,日志调用会导致不记录(IMO 这应该默认为至少错误,当配置中未设置“默认”时)


推荐阅读