Как установить cloud_roleName для Applicatoin Insights для .NET Core? - PullRequest
0 голосов
/ 26 июня 2018

Я пытаюсь установить свойство cloud_RoleName для устранения неоднозначности различных компонентов в системе, отслеживаемой с помощью Azure Application Insights.

Как настроить свойство для служб, работающих с ASP.NET Core?

1 Ответ

0 голосов
/ 26 июня 2018

RoleNames заполняются по умолчанию.Разве это не тот случай, который вы наблюдаете, или вы хотите изменить поведение?Чтобы переопределить имя пользователя, должно помочь следующее:

Напишите TelemetryInitializer, как показано ниже, чтобы заполнить RoleName желаемым значением.

public class MyRoleNameInitializer : ITelemetryInitializer  
 {
      public void Initialize(ITelemetry telemetry)
        {
           telemetry.Context.Cloud.RoleName = "MyCustomRoleName";
        }
 }

Затем добавьте следующую строку, чтобы добавить TelemetryInitializer вКонфигурация в методе ConfigureServices вашего класса запуска приложения.

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        services.AddSingleton<ITelemetryInitializer, MyRoleNameInitializer>();
    }

Примечание. Если вы использовали AddApplicationInsightsTelemetry() в ConfigureServices вашего класса запуска для добавления Application Insights, то приведенная выше строкадолжно быть сделано до AddApplicationInsightsTelemetry(), как показано ниже.

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        services.AddSingleton<ITelemetryInitializer, MyRoleNameInitializer>();
        services.AddApplicationInsightsTelemetry("ikey");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...