Если это основной веб-проект .net, вы можете использовать ITelemetryInitializer для добавления пользовательского измерения.
Сначала добавьте в проект новый класс с именем MyTelemetryInitializer
:
public class MyTelemetryInitializer: ITelemetryInitializer
{
public MyTelemetryInitializer()
{
}
public void Initialize(ITelemetry telemetry)
{
if (telemetry is TraceTelemetry traceTelemetry)
{
if (!traceTelemetry.Properties.ContainsKey("my_custom_1"))
{
//add the custom dimension here
traceTelemetry.Properties["my_custom_1"] = "test 12346";
}
}
}
}
Затем в методе Startup.cs -> ConfigureServices добавьте следующие строки кода:
services.AddApplicationInsightsTelemetry();
services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();
И для целей тестирования в HomeController у меня есть этот метод Index для отправки сообщения трассировки:
public IActionResult Index()
{
TelemetryClient client = new TelemetryClient();
client.TrackTrace("it is a trace message from index page");
return View();
}
Наконец, запустите проект. Затем перейдите на портал Azure -> понимание приложения, и вы увидите, что добавлено пользовательское измерение.