gpt4 book ai didi

Azure AppInsight 不适用于静态文件应用程序

转载 作者:行者123 更新时间:2023-12-03 02:57:18 24 4
gpt4 key购买 nike

背景

我有一个 Azure“应用服务”资源和一个链接的“Application Insights”资源。它们通过应用程序服务的 Settings -> Applications settings -> Application settings (key-value table) 链接我有以下设置:

  • APPINSIGHTS_INSTRUMENTATIONKEY = <my application insights instrumentation key>
  • APPINSIGHTS_JAVASCRIPT_ENABLED = true

我的应用程序是根目录下的静态文件应用程序 / (site\wwwroot)而且在 2 个不同的虚拟目录中还有 2 个 Asp.NET 应用程序:

  • /app1 (site\app1)
  • /app2 (site\app2)

问题

概述页面显示了名为“指标”的数据,其中包含请求、数据等(第一张图),但是当我尝试访问 Application Insights 时,没有显示任何数据(第二张图)。

enter image description here

enter image description here

尝试

我尝试遵循以下两个指南来激活静态页面应用程序的应用程序洞察:

但是,由于根 Bin 文件夹中缺少 DLL,我收到错误。我尝试了以下变体:

<system.webServer>
<modules runAllManagedModulesForAllRequests="true"> <!-- With and without 'runAllManagedModulesForAllRequests'. -->

<add name="ApplicationInsightsWebTracking"
type="Microsoft.ApplicationInsights.Extensibility.Web.RequestTracking.WebRequestTrackingModule, Microsoft.ApplicationInsights.Extensibility.Web"
preCondition="managedHandler" /> <!-- With and without 'preCondition="managedHandler"'. -->

<!-- And -->

<add name="ApplicationInsightsWebTracking"
type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web"
preCondition="managedHandler"/> <!-- With and without 'preCondition="managedHandler"'. -->

</modules>
</system.webServer>

根据第二篇文章,一旦 Azure 知道它已连接到 AppInsight,这些缺失的 DLL 应该会自动加载。

If you are using Azure Web Apps. Add the Applications Insights Extension to the Web App. This will add the proper DLLs to the Bin directory of your site.

我尝试按照“监视实时 Azure Web 应用程序”下的说明进行操作,但文档似乎不完整。

问题

  1. 为什么数据显示在应用服务概览中,而不显示在 AppInsight 中?
  2. 是否可以在 AppInsight 中查看我的根静态文件应用程序的网站遥测 /

最佳答案

1.Why is data showing in the overview of the App Service but not AppInsight?

应该是配置问题。您可以按如下方式进行配置:

第 1 步:在 Visual Studio 中,右键单击您的项目名称,然后在上下文菜单中选择“配置 Application Insights”。

enter image description here

第 2 步:在接下来的屏幕中,单击“开始”。 enter image description here

第 3 步:在以下屏幕中,配置您自己的设置(对于资源,您可以创建新的或使用现有的设置)。然后点击“注册”,等待完成。 enter image description here

第 4 步:如果出现错误,只需根据屏幕上的提示进行修复即可。像下面这样: enter image description here

完成上述步骤后,您应该在 App Insight 中看到数据(数据可能需要几分钟才能显示)。

2.Is it possible to view website telemetry in AppInsight for my static file application at root /?

是的,您可以在 AppInsight 中查看 root/下静态文件应用程序的网站遥测。

第 1 步:在 Web.config 中,找到 <system.webServer>节点,然后在 <modules>节点,添加runAllManagedModulesForAllRequests="true" ,如下所示:

<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="TelemetryCorrelationHttpModule" />
<add name="TelemetryCorrelationHttpModule" type="Microsoft.AspNet.TelemetryCorrelation.TelemetryCorrelationHttpModule, Microsoft.AspNet.TelemetryCorrelation" preCondition="integratedMode,managedHandler" />
<remove name="ApplicationInsightsWebTracking" />
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>

第 2 步:将网站发布到 azure。

第 3 步:启动网站到静态文件,这里我以test4.html为例。 enter image description here

第 4 步:转到azure门户 -> 您的应用程序 View -> 概述部分,选择“服务器请求”之类的图表(如果没有数据,请稍等片刻)。 enter image description here

第 5 步:你可以看到这样的请求“GET/test4.html”。 enter image description here

关于Azure AppInsight 不适用于静态文件应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51903962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com