Исключить сторонние библиотеки из анализа - PullRequest
0 голосов
/ 05 июля 2018

У нас есть Application Insights для профилирования и измерения нашего приложения, но оно регистрирует исключения в сторонних библиотеках, вносит шум в анализ, поэтому я хотел бы сообщить Application Insights, какие сборки исключить из анализ.

Я проверил документацию ApplicationInsights.config , но не увидел ничего, связанного с этим.

Итак, возможно ли исключить DLL из анализа?

1 Ответ

0 голосов
/ 06 июля 2018

Для таких фильтров вы можете использовать TelemetryProcessor. См. документы :

Для фильтрации телеметрии вы пишете процессор телеметрии и регистрируете его в SDK. Вся телеметрия проходит через ваш процессор, и вы можете удалить ее из потока или добавить свойства. Это включает в себя телеметрию из стандартных модулей, таких как сборщик HTTP-запросов и сборщик зависимостей, а также телеметрию, которую вы написали сами.

Вы можете написать так:

public class ExceptionFilter : ITelemetryProcessor
{
    private ITelemetryProcessor next { get; set; }

    public ExceptionFilter(ITelemetryProcessor next)
    {
        this.next = next;
    }

    public void Process(ITelemetry item)
    {
        var exceptionTelemetry = item as ExceptionTelemetry;
        if(exceptionTelemetry == null || 
          !exceptionTelemetry.Exception.StackTrace.Contains("NameOfThirdPartyApp"))
            next.Process(item);
    }
}

Я оставляю на ваше усмотрение, как лучше всего определить эти исключения сторонних приложений.

...