Поскольку вы знаете, что код ответа 500, вы можете использовать процессор телеметрии для фильтрации запросов такого типа с кодом 500.
Предположим, вы используете . NET core , вы можете выполнить следующие шаги:
Создать класс, который реализует ITelemetryProcessor
, затем отфильтровать запрос с кодом ответа 500 (или более условий в соответствии с вашими потребностями.). Пример кода выглядит следующим образом:
public class IgnoreCancelFilter : ITelemetryProcessor
{
private ITelemetryProcessor Next { get; set; }
// next will point to the next TelemetryProcessor in the chain.
public IgnoreCancelFilter(ITelemetryProcessor next)
{
this.Next = next;
}
public void Process(ITelemetry item)
{
var request = item as RequestTelemetry;
if (request != null &&
request.ResponseCode.Equals("500", StringComparison.OrdinalIgnoreCase))
{
// To filter out an item, return without calling the next processor.
return;
}
// Send everything else
this.Next.Process(item);
}
}
Затем зарегистрируйте его в ConfigureServices
методе вашего Startup.cs
класса.
public void ConfigureServices(IServiceCollection services)
{
// ...
services.AddApplicationInsightsTelemetry();
services.AddApplicationInsightsTelemetryProcessor<IgnoreCancelFilter>();
}
Если язык программирования не . NET core , вы можете найти подходящий метод для. NET framework / js et c. в этой статье .