等同于Azure App Service的AddAzureWebAppDiagnostics()来获取应用程序日志?

时间:2019-01-16 10:54:16

标签: azure azure-web-sites azure-storage-blobs azure-web-app-service azure-sdk-.net

Azure SDK库中(或任何地方)是否存在与ILoggerFactory.AddAzureWebAppDiagnostics扩展名等效的非应用程序服务,如下应用程序启动中所示:

    public void Configure(
        IApplicationBuilder app,
        IHostingEnvironment environment,
        ILoggerFactory loggerFactory)
    {
        loggerFactory
            .AddAzureWebAppDiagnostics()
            .AddConsole()
            .AddDebug();

        ...
    }

我们只需要为应用程序日志添加Blob日志记录

我们正在将应用程序层从Azure App Service迁移到Azure Kubernetes Service,但希望保留到目前为止一直使用的相同的Blob日志记录功能。

1 个答案:

答案 0 :(得分:1)

  

Azure SDK库(或任何地方)中是否有等效于ILoggerFactory.AddAzureWebAppDiagnostics扩展的非应用程序服务

我怕说不。 .NET核心确实支持许多第三方日志记录提供程序,但是AddAzureWebAppDiagnostics可以将日志存储到Azure存储或文件系统,取决于将应用程序日志记录(文件系统或Blob)设置为打开。您可以找到它here

因此,如果您想使用其他方法将日志存储到存储中,我认为您需要借助其他工具来实现它。就像您使用 Serilog 来管理日志一样,您可以使用Serilog.Sinks.AzureBlobStorage这个package来实现它。

在使用Kubernetes日志之前,您可以阅读有关使用Kubernetes监视日志文件的blog

希望这对您有帮助,如果您还有其他问题,请告诉我。