如何处理 Application Insights 中的跟踪信息

How to process tracked information in Application Insights

我正在使用 Application Insights 跟踪我网页中的事件:

appInsights.trackEvent("my-event", { test: true });

但是我可以看到日志中的每个条目都收集了一些关于其他几件事的信息,例如:

最后一个很敏感,因为我可以得到计算机的名称或其他一些东西。为了遵守 GDPR,我想从我的日志中删除这些信息。

如何让 Application Insights 在记录数据之前处理数据?就我而言,我想访问将由 trackEvent 发送的对象并在发送之前对其进行修改。

您可以使用 TelemetryInitializers。它们允许您在 将项目发送到 Application Insights

之前 对其进行修改

在你的情况下,它可以像

一样简单
appInsights.queue.push(function () {
    appInsights.context.addTelemetryInitializer(function (envelope) {
        envelope.tags['ai.operation.name'] = 'xxx';
});