如何使应用程序洞察仅存储异常和自定义事件

How to make application insights only store exceptions and custom events

我已将我们的应用程序设置为使用 application insights。不幸的是,我们每个月都会继续超出我们的限制。我最初检查并删除了它发送的过多遥测信息。经过一些研究,我发现您还可以告诉 App Insights 要保留哪些遥测信息。有没有人发现如何告诉 App Insights 只保存异常和自定义事件?

我不需要 App Insights 想要存储的过多请求、页面浏览量、依赖项和跟踪。

查看我之前发布的这个答案——这个答案假定一个 .NET 应用程序。您可以使用 TelemetryProcessor 的相同概念来过滤掉特定类型的所有遥测数据。

此外,作为一种核心方法,您可以从 ApplicationInsights.config 中删除所有初始化程序、模块和处理器(或者只是删除它并在代码中设置 iKey)并从 web.config。

然后由您明确调用 TrackEvent() 和 TrackException() 来捕获您的遥测数据。

您是如何在您的项目中配置应用程序洞察力的?如果您通过右键单击项目 > 添加 > 应用程序洞察完成,VS 会安装一堆您可能不需要的 nuget 包。

按照以下步骤进行手动安装:

您可以安装 'ApplicationInsights.Web' nuget 包(带有忽略依赖项选项),它将为您 ApplicationInsights.config 文件。复制 Instrumentation Key 并将其添加到您的 ApplicationInsights.config 文件中。按照 documentation 并使用 lowest/Ignore 依赖项选项安装您选择的包。

或者简单地卸载 'Microsoft.ApplicationInsights.DependencyCollector' 包,您将不会看到任何与依赖项相关的见解。