首页 > 解决方案 > Azure Web 应用程序上的 ASP.NET Core,添加 Azure Web 应用程序诊断会在启动时引发 FileNotFoundException

问题描述

我们将 ASP.NET Core 3.0 Web 应用程序部署到 Azure Web Apps。为了获取日志消息,我们想使用Azure Web Apps 诊断。我们在 program.cs 中添加日志记录提供程序:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureLogging(logging => logging.AddAzureWebAppDiagnostics())
        .ConfigureWebHostDefaults(webBuilder =>
        {
            webBuilder.UseStartup<Startup>();
        });

但是,在应用程序启动时,将 FileNotFoundException 记录到标准输出(有关详细信息和堆栈跟踪,请参见下文)并且应用程序无法启动(状态代码 500.30)。

我们采取了以下步骤来查找原因,但到目前为止,我们还没有成功:

有谁知道这种行为的原因或我们可以用来获取更多详细信息的其他步骤?


异常详情

未处理的异常。System.IO.FileNotFoundException:读取 D:\home\site\diagnostics\ 目录时出错。

在 System.IO.FileSystemWatcher.StartRaisingEvents()

在 System.IO.FileSystemWatcher.StartRaisingEventsIfNotDisposed()

在 System.IO.FileSystemWatcher.set_EnableRaisingEvents(布尔值)

在 Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.TryEnableFileSystemWatcher()

在 Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.CreateFileChangeToken(字符串过滤器)

在 Microsoft.Extensions.FileProviders.PhysicalFileProvider.Watch(字符串过滤器)

在 Microsoft.Extensions.Configuration.FileConfigurationProvider.<.ctor>b__1_0()

在 Microsoft.Extensions.Primitives.ChangeToken.ChangeTokenRegistration 1..ctor(Func1 changeTokenProducer,Action`1 changeTokenConsumer,TState 状态)

在 Microsoft.Extensions.Primitives.ChangeToken.OnChange(Func`1 changeTokenProducer, Action changeTokenConsumer)

在 Microsoft.Extensions.Configuration.FileConfigurationProvider..ctor(FileConfigurationSource 源)

在 Microsoft.Extensions.Configuration.Json.JsonConfigurationSource.Build(IConfigurationBuilder 生成器)

在 Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()

在 Microsoft.Extensions.Logging.AzureAppServices.SiteConfigurationProvider.GetAzureLoggingConfiguration(IWebAppContext 上下文)

在 Microsoft.Extensions.Logging.AzureAppServicesLoggerFactoryExtensions.AddAzureWebAppDiagnostics(ILoggingBuilder 生成器,IWebAppContext 上下文)

在 Microsoft.Extensions.Logging.AzureAppServicesLoggerFactoryExtensions.AddAzureWebAppDiagnostics(ILoggingBuilder 生成器)

在 D:\a\1\s\sevacation\Program.cs:line 22 中的 sevacation.Program.<>c.b__1_0(ILoggingBuilder 日志记录)

在 Microsoft.Extensions.Hosting.HostingHostBuilderExtensions.<>c__DisplayClass5_0.b__1(ILoggingBuilder 生成器)

在 Microsoft.Extensions.DependencyInjection.LoggingServiceCollectionExtensions.AddLogging(IServiceCollection 服务,Action`1 配置)

在 Microsoft.Extensions.Hosting.HostingHostBuilderExtensions.<>c__DisplayClass5_0.b__0(HostBuilderContext 上下文,IServiceCollection 集合)

在 Microsoft.Extensions.Hosting.HostBuilder.CreateServiceProvider()

在 Microsoft.Extensions.Hosting.HostBuilder.Build()

在 D:\a\1\s\sevacation\Program.cs:line 17 中的 sevacation.Program.Main(String[] args)

标签: c#azureasp.net-coreazure-webapps

解决方案


.zip 部署似乎存在当前问题(截至 2019 年 12 月)

尝试使用不同的部署方法,例如 WebDeploy、Git 等。


推荐阅读