Откуда читается APPINSIGHTS_INSTRUMENTATIONKEY? - PullRequest
0 голосов
/ 10 июля 2019

Откуда читается InstrumentationKey?

context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];

Я поместил этот ключ в applicationInsights.config в разделе

  <InstrumentationKey>94efb022-e651-46a0-b103-5735daa213f1</InstrumentationKey>

но оттуда его не взяли ...

var builder = new HostBuilder()
                .UseEnvironment("Development")
                .ConfigureWebJobs(b =>
                {
                    // Add extensions and other WebJobs services
                })
                .ConfigureAppConfiguration(b =>
                {
                    // Add configuration sources          
                })
                .ConfigureLogging((context, b) =>
                {
                    // Add Logging Providers
                    b.AddConsole();

                    // If this key exists in any config, use it to enable App Insights
                    string appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
                    if (!string.IsNullOrEmpty(appInsightsKey))
                    {
                        // This uses the options callback to explicitly set the instrumentation key.
                        b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
                    }
                })
                .UseConsoleLifetime();

Ответы [ 2 ]

0 голосов
/ 12 июля 2019

Если вы хотите прочитать его в Azure, просто установите его в Application Settings на портале.

И если вы запускаете его локально, в поле appsettings.json добавьте туда APPINSIGHTS_INSTRUMENTATIONKEY файл.

{
    "AzureWebJobsStorage": "{storage connection string}",
    "APPINSIGHTS_INSTRUMENTATIONKEY": "{instrumentation key}"
}

Дополнительная информация приведена в этом документе: Добавить приложениеСтатистика ведения журнала .Надеюсь, это поможет вам.

0 голосов
/ 10 июля 2019

Вам необходимо установить следующие пакеты:

  • Microsoft.Azure.WebJobs.Logging.ApplicationInsights (в настоящее время в бета-версии)
  • Microsoft.Extensions.Logging
  • Microsoft.Extensions.Logging.Console

и настройка JobHostConfiguration, как показано ниже:

string instrumentationKey = Environment.GetEnvironmentVariable("APPINSIGHTS_INSTRUMENTATIONKEY");
if (!string.IsNullOrEmpty(instrumentationKey))
{
      // build up a LoggerFactory with ApplicationInsights and a Console Logger
       config.LoggerFactory = new LoggerFactory().AddApplicationInsights(instrumentationKey, null).AddConsole();
       config.Tracing.ConsoleLevel = TraceLevel.Off;
}

Информацию о настройке приложения можно прочитать в веб-задании Azure здесь . Надеюсь, это поможет.

...