当前位置: 首页 > 知识库问答 >
问题:

应用程序洞察力抽样是否会消除异常?

戚弘和
2023-03-14

application insights抽样文档(https://docs.microsoft.com/en-us/azure/application-insights/app-insights-sampling)说明如下:

“例如,如果对于一个失败的请求,您的应用程序发送了其他遥测项目(如异常和从该请求记录的跟踪),采样将不会分割该请求和其他遥测。它将它们保留或删除在一起。”

这很难想象,但这是否意味着,如果采样算法需要减少日志记录的数量,那么某些异常或导致异常的更好的请求可能会被忽略而不被记录呢?我发现很难将其置于正确的上下文中,只是从应用程序的洞察开始,并试图弄清楚所有的可能性。我明白这对于过滤掉性能指标等遥测的百分比是非常有价值的,但是对于实际的webapi请求例如…?

我读过这个问题,但我仍然怀疑:Azure App Insights Sampling(ItemCount)

共有1个答案

乜元魁
2023-03-14

使用默认配置,Application Insights将决定在请求开始时是否采样,然后相应地收集所有内容或删除所有内容。这种方法提供了一些保证,例如,如果您正在查看某个事务,那么您将看到它的全部内容,包括一些下游组件。

您说得对,使用这种方法可能会漏掉一些错误。我们的经验告诉我们,即使对于大规模应用程序(5000 RPS/实例),如果错误持续发生,这种方法仍然能够捕获错误。

您可以通过两种方法来减轻这种情况:

<Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
    <MaxTelemetryItemsPerSecond>5</MaxTelemetryItemsPerSecond>
    <ExcludedTypes>Event</ExcludedTypes>
</Add>
<Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
    <MaxTelemetryItemsPerSecond>5</MaxTelemetryItemsPerSecond>
    <IncludedTypes>Event</IncludedTypes>
</Add>
    <Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
        <MaxTelemetryItemsPerSecond>5</MaxTelemetryItemsPerSecond>
        <ExcludedTypes>Event,Exception</ExcludedTypes>
    </Add>
  <Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
    <MaxTelemetryItemsPerSecond>100</MaxTelemetryItemsPerSecond>
    <IncludedTypes>Exception</IncludedTypes>
  </Add>
  <Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
        <MaxTelemetryItemsPerSecond>5</MaxTelemetryItemsPerSecond>
        <IncludedTypes>Event</IncludedTypes>
    </Add>

注意,应用程序洞察不一定会收集失败的请求

 类似资料:
  • 我想我找遍了所有地方,但我找不到任何图表或报告与参考交通数据。我使用的是在预览Azure门户中存储数据的最新版本。在旧的应用程序中,insights(在VS Online中)就有这个数据。 有没有人知道在新门户中是否可以找到它,以及在哪里可以找到它? 提前道谢!

  • 有没有什么简单的方法可以找到哪些应用程序正在使用azure Portal的特定应用程序洞察? 我已经检查了门户中的各种选项,但没有找到任何易于理解的界面,我可以在其中找到正在向特定应用程序Insights发送数据的应用程序列表。

  • 我有一个使用应用程序洞察的.NET5Web应用程序。我尝试使用登录AI trace。然而:当分析Azure上AI中的“痕迹”内容时,日志并不显示。 启动部分: 应该进行日志记录的类的构造函数通过依赖注入来注入ILogger和AppInsights: 在该方法中,我有以下两个日志记录尝试: instrumentationkey存储在appsettings中(显然正确,因为telemetryClien

  • 我们为Azure Portal中托管的Web应用程序安装了应用程序Insights。

  • 我正在尝试配置我的azure ASP.NET网站,以便将log4net跟踪发送到azure Application Insights。我可以看到在我的azure控制台页面视图等,因此我知道这是工作良好的。当配置了文件处理程序时,我还可以看到log4net跟踪,但是当配置log4net以使用application insights处理程序时,我没有看到任何log4net条目出现在applicatio