Я хочу добавить пользовательское свойство ко всем трассировкам в Application Insights.
В Asp.Net Core я добавил этот код
internal class TelemetryProperties : ITelemetryInitializer
{
private IConfiguration configuration;
public TelemetryProperties(IConfiguration configuration)
{
this.configuration = configuration;
}
// TODO: Not being added to all traces.
// http://apmtips.com/blog/2014/12/01/telemetry-initializers/
public void Initialize(ITelemetry telemetry)
{
var applicationName = configuration["Application:Name"];
telemetry.Context.Properties.Add("Application", applicationName);
}
}
и в методе настройки Startup.cs я добавил:
TelemetryConfiguration.Active.TelemetryInitializers.Add(new TelemetryProperties(Configuration));
Цель состояла в том, чтобы добавить «Приложение» ко всем трассировкам, даже те, которые были сделаны автоматически с помощью Application Insights, но в результате он добавляется ТОЛЬКО к моим настраиваемым трассировкам, которые я вызываю через мой код.
Как добавить свойство ко ВСЕМ трассам, даже к тем, которые я не создаю.
Редактировать: Цель этого состоит в том, чтобы я хотел, чтобы в одном журнале аналитики приложений было несколько API, но я хочу иметь возможность секционирования при необходимости, добавляя определяющее свойство, такое как имя приложения.