0

我在我的 Angular 2 应用程序中实现了应用程序洞察。我正在跟踪登录的用户、页面浏览量、自定义事件、异常和依赖调用。

当我在 azure 中观察遥测数据时,它会显示页面视图、事件、异常、用户和依赖项 Ajax 调用。但是依赖 Ajax 调用将监视节点模块依赖关系以及我在应用程序中编写的代码的 Rest API 调用。

有关节点模块类中的 Ajax 调用的更多信息,请参见下图。

在此处输入图像描述

而且我还能够在天蓝色应用程序洞察资源中看到browserLinkSignalR依赖 Ajax 调用。

有关 browserLinkSignalR Ajax 调用的更多信息,请参见下图。

在此处输入图像描述

这是我在app.component.ts中编写的用于初始化的代码

 this._appInsightsService.Init({
       instrumentationKey: 'XXXXXXXXXXXXXXXXXXXXXXXX', // Required field
       // enableDebug: false,
       maxAjaxCallsPerView: 50,
       //disableAjaxTracking: true
       //samplingPercentage:10,
       //disableTelemetry: true
    });

如何仅监视与代码相关的依赖项 Ajax 调用而不是节点模块依赖项和 browserLinkSignalR Ajax 调用?

4

1 回答 1

1

在普通的 javascript sdk 中,您将编写一个遥测处理器/初始化程序并使用它来过滤掉您不想发送的项目:

来自:https ://docs.microsoft.com/en-us/azure/application-insights/app-insights-api-filtering-sampling (还有https://github.com/Microsoft/ApplicationInsights-JS/blob/主/API-reference.md

假设角度应该具有类似的能力?

appInsights.context.addTelemetryInitializer(function (envelope) {
        var telemetryItem = envelope.data.baseData;

        // check item properties, and return false to prevent this item from being sent
    });
于 2017-02-28T01:50:14.820 回答