限制或模糊发送到 Application Insights 的数据

Restrict or Obscure data sent to Application Insights

我们刚刚将 Application Insights 添加到我们的 WebAPI 2.2 应用程序中,它看起来很成功。 但是,我们有一些控制器接收敏感信息,由于合规性规定,我们无法存储这些信息,即使在 Application Insights 中也是如此。我们希望在我们的一些控制器上捕获信息级别的跟踪事件,但我们不需要在通过其他控制器发送时捕获或隐藏信息。谁能建议我们实现这一目标的方法?

由于您使用的是 Microsoft.ApplicationInsights.TraceListener 包,我认为没有任何方法可以直接过滤数据。如果您可以向 Trace.WriteXxx() 调用添加一些特殊内容,那么一种选择可能是实施 TraceFilter 并通过您的配置为 ApplicationInsights Trace Writer 注册它。

然后在您的 TraceFilter.ShouldTrace() 中,您可以检查该特殊值(可能是事件 ID,可能是跟踪消息中的某些前缀,或类似的东西)并简单地 return false导致它被跳过。

我在 Azure MS 网站上问了同样的问题,得到了很好的答复。

任何想在这里寻找答案的人都应该去那里。

https://azure.microsoft.com/en-us/documentation/articles/app-insights-get-started/#comment-2309233065