Azure WebJob未记录到blob存储

aka*_*ioi 0 azure azure-webjobs .net-core

我有一个dotnet核心1.1 web-api,它使用ILogger登录到控制台.如果我在azure控制台中打开监控/诊断日志下的应用程序日志记录(Blob)选项,则会拾取这些日志并将其发送到基于(appname)/ month/day/hour的Blob.这很好用.

但是,我的webjob使用相同的ILogger和相同的配置没有输出到这些mm/dd/hh目录.

如果我打开应用程序日志(文件系统),我会看到我的日志,但我真的希望它们转到相同的blob存储位置,所以我可以在Splunk中选择它们.

我哪里错了?

Bru*_*hen 5

根据您的描述,我通过VS2017使用目标框架.NET Core 1.1创建了我的控制台应用程序,如下所示:

Nuget包:

在此输入图像描述

Program.cs中

class Program
{
    static void Main(string[] args)
    {
        ILoggerFactory loggerFactory = new LoggerFactory()
            .AddConsole()
            .AddDebug()
            .AddAzureWebAppDiagnostics();

        ILogger<Program> logger = loggerFactory.CreateLogger<Program>();

        logger.LogInformation("Hello World!");
        logger.LogInformation("Sleeping for 5s before exit...");
        Thread.Sleep(5 * 1000);
    }
}
Run Code Online (Sandbox Code Playgroud)

部署到azure之后,我可以在KUDU控制台和blob日志文件下看到日志,如下所示:

在此输入图像描述

在此输入图像描述