logging.AddAzureWebAppDiagnostics () не работает в .net core 2.2 - PullRequest
0 голосов
/ 28 февраля 2019

Я обновил свой проект с .net core 2.1 до 2.2, а затем logging.AddAzureWebAppDiagnostics() в Program.cs больше не работает.

    public static IWebHost BuildWebHost(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .ConfigureLogging((hostingContext, logging) =>
            {
                logging.AddAzureWebAppDiagnostics();
            })

            .UseStartup<Startup>()
            .Build();
}

«ILoggingBuilder» не содержит определения для«AddAzureWebAppDiagnostics» и недоступный метод расширения «AddAzureWebAppDiagnostics», принимающий первый аргумент типа «ILoggingBuilder», могут быть найдены (отсутствует директива using или ссылка на сборку?

Ссылка на этоdocument ,

При нацеливании на .NET Framework или на метапакет Microsoft.AspNetCore.App добавьте пакет провайдера в проект. Вызовите AddAzureWebAppDiagnostics для экземпляра ILoggerFactory:

Так что путь может немного отличаться от предыдущего. Как мне решить эту проблему?

1 Ответ

0 голосов
/ 18 апреля 2019

Документация немного сложнее, но если внимательно прочитать, становится ясно, что необходимо предпринять следующие шаги (для NET Core ):

  1. Microsoft.Extensions.Logging.AzureAppServices должен быть установлен
  2. Нет необходимости звонить logging.AddAzureWebAppDiagnostics();
  3. Ведение журнала можно настроить, используя следующий код

    // file startup.cs
    using Microsoft.Extensions.Logging.AzureAppServices;
    
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            //...
            services.Configure<AzureFileLoggerOptions>(Configuration.GetSection("AzureLogging"));
        } 
    }
    

    Файл appsettings.jsonсодержать

    "AzureLogging": {
         "FileName" : "azure-diagnostics-",
         "FileSizeLimit": 50024,
         "RetainedFileCountLimit": 5
    }
    
  4. Ведение портала должно быть включено на портале Azure.После включения Azure Portal может запросить установку дополнения.На странице конфигурации входа появится сообщение, требующее установки дополнения.

enter image description here

Звоните logger.LogWarning ("message"); в своем коде, чтобы записать в файл журнала.Если вы используете LogWarning, обязательно установите для уровня «Предупреждение» или более подробное значение («Информация» или «Отладка»)
...