Вы можете сделать это, используя ITelemetryInitializer в вашем основном проекте. NET.
Чтобы называться ошибкой, когда код ответа равен нулю, вы можете установить свойство Success
данных телеметрии запроса как false
. Пример кода приведен ниже (для этого теста используется NET core 2.2). И, пожалуйста, убедитесь, что вы используете последнюю версию Microsoft.ApplicationInsights.AspNetCore 2.13.1.
Вот пользовательский ITelemetryInitializer:
public class MyTelemetryInitializer : ITelemetryInitializer
{
public void Initialize(ITelemetry telemetry)
{
if (telemetry is RequestTelemetry)
{
var requestTelemetry = telemetry as RequestTelemetry;
//you can change the ResponseCode to "0" in your project
if (requestTelemetry.ResponseCode == "200")
{
// set Success property to false
requestTelemetry.Success = false;
}
}
}
}
, затем зарегистрируйтесь в методе Startup.cs
-> ConfigureServices
:
public void ConfigureServices(IServiceCollection services)
{
//your other code
//here, register the custom ITelemetryInitializer
services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();
}
После выполнения кода на портале azure -> идеи вашего приложения -> Журналы вы увидите, что свойство Success запроса имеет вид сделано как ложное: