Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 应用见解';应用程序映射没有';不显示依赖项调用_Asp.net_Azure_Dependencies_Azure Application Insights - Fatal编程技术网

Asp.net 应用见解';应用程序映射没有';不显示依赖项调用

Asp.net 应用见解';应用程序映射没有';不显示依赖项调用,asp.net,azure,dependencies,azure-application-insights,Asp.net,Azure,Dependencies,Azure Application Insights,我们已将应用程序洞察添加到部署到Azure Web App服务的Asp.Net 4.5.1应用程序中。它使用实体框架和SQLFramework命令调用数据库 Application Insights是通过javascript和后端添加的。javascript跟踪正在工作,从Fiddler跟踪的调用和Azure门户中显示的报告数据都可以看出这一点 对web服务器的请求也会显示在报告中,但应用程序映射图不会显示从web服务器到数据库的任何依赖项调用,也不会显示任何其他依赖项 ApplicationI

我们已将应用程序洞察添加到部署到Azure Web App服务的Asp.Net 4.5.1应用程序中。它使用实体框架和SQLFramework命令调用数据库

Application Insights是通过javascript和后端添加的。javascript跟踪正在工作,从Fiddler跟踪的调用和Azure门户中显示的报告数据都可以看出这一点

对web服务器的请求也会显示在报告中,但应用程序映射图不会显示从web服务器到数据库的任何依赖项调用,也不会显示任何其他依赖项

ApplicationInsights.config是从“创建新项目”中获得的标准配置,但已删除InstrumentationKey元素。检测键在global.asax中设置为

Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Active.InstrumentationKey = applicationInsightsKey;
此外,web配置还包含

<system.web>
    <httpHandlers>
      <add path="CombineScriptsHandler.axd" verb="*" type="AjaxControlToolkit.CombineScriptsHandler, AjaxControlToolkit" />
    </httpHandlers>
    <httpModules>
      <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
    </httpModules>


如何从AI中跟踪的web服务器获取数据库查询数据

更新

我将Web项目升级到.NET4.6.1,并开始看到一些依赖项,但没有看到实际的sql查询文本。为了弥补这一缺陷,我通过Azure门户在应用程序服务中安装了AI状态监视器扩展。在此之后,我完全没有看到依赖项调用和ApplicationInsightsExtension.log包含:

2016年9月29日下午12:15:45:[详细信息]从D:\home\SiteExtensions\Microsoft.ApplicationInsights.AzureWebSites\Microsoft.ApplicationInsights.WebItemManager.dll加载程序集
2016年9月29日下午12:15:45:[详细说明]正在启动Application Insights安装和配置…
2016年9月29日下午12:15:46:[详细信息]从D:\home\SiteExtensions\Microsoft.ApplicationInsights.AzureWebSites\Microsoft.ApplicationInsights.WebItemManager.dll加载程序集
2016年9月29日下午12:15:46:[详细信息]正在启动Application Insights Profiler配置…
2016年9月29日下午12:15:46:[详细信息]当前处理器体系结构:x86
2016年9月29日下午12:15:46:[详细]开始从D:\home\SiteExtensions\Microsoft.ApplicationInsights.AzureWebSites\appinsights下载/安装“Microsoft.ApplicationInsights.Agent_x86”nuget软件包…
2016年9月29日下午12:15:46,[详细]正在安装“Microsoft.ApplicationInsights.Agent_x86”,版本为“2.0.0”…
2016年9月29日下午12:15:47,[详细信息]安装了“Microsoft.ApplicationInsights.Agent_x86”,版本为“2.0.0”。
2016年9月29日下午12:15:47:[详细信息]结束“Microsoft.ApplicationInsights.Agent_x86”nuget软件包下载/安装。
2016年9月29日下午12:15:47:[详细信息]准备将文件从D:\home\SiteExtensions\Microsoft.ApplicationInsights.AzureWebSites\Packages\Microsoft.ApplicationInsights.Agent\U x86.2.0.0\content\RTIA\x86复制到D:\home\SiteExtensions\Microsoft.ApplicationInsights.AzureWebSites\Agent
2016年9月29日下午12:15:47:[详细信息]已复制Microsoft.ApplicationInsights.Extensions.Base_x86.dll.Name。
2016年9月29日下午12:15:47:[详细信息]已复制Microsoft.ApplicationInsights.ExtensionsHost_x86.dll.Name。
2016年9月29日下午12:15:47:[详细信息]已复制Microsoft.Diagnostics.Instrumentation.Extensions.Base.dll.Name。
2016年9月29日下午12:15:47:[详细信息]已复制Microsoft.InstrumentationEngine.Extensions.config.Name。
2016年9月29日下午12:15:47:[详细信息]已复制MicrosoftInstrumentationEngine_x86.dll.Name。
2016年9月29日下午12:15:47:[详细信息]应用程序洞察探查器配置结束。
2016年9月29日下午12:15:47:[详细信息]从D:\home\site\wwwroot\ApplicationInsights.config加载配置
9/29/2016 12:15:47 PM:[Verbose]应用程序已经安装了Application Insights版本:2.1.0.0
2016年9月29日下午12:15:47:[详细信息]应用程序洞察安装和配置结束

那么,如何使用sql查询文本日志记录来获取依赖项日志记录呢

我有一种预感,如果我在applicationinsights.config文件中有遥测键,这将起作用,但我想从应用程序设置中以编程方式进行设置。

根据以下内容:


要获取依赖项,您需要安装状态监视器或将应用程序升级到.NET framework 4.6或更高版本。

还要检查applicationinsights.config文件是否复制到部署文件夹中,即在“复制到输出目录”属性中将其标记为“如果更新,则复制”。我认为msbuild不会为您这样做。

我升级了,Net版本,现在收到依赖项调用。我从其他问题中了解到,如果应用程序以文本(而不是存储过程)形式执行sql查询,则必须安装状态监视器。这应该安装在数据库服务器还是web服务器上?如果答案是web服务器,那么在使用Azure web App服务的情况下,我该如何操作?需要在web服务器上安装状态监视器。对于Azure Web App服务,请转到Web App Overview blade=>Extensions=>AppInsights=>install。我可以用这种方式安装AppInsights,但现在我的报告显示绝对没有依赖调用。这可能是因为我以编程方式设置了检测密钥,而安装的扩展插件要求遥测密钥位于applicationinsights.config文件中?请使用Kudu检查事件日志和AI异常日志:1)在事件日志(调试控制台->日志文件->事件日志.xml)中,应该有来自.NET运行时ID=1022的事件"... 已成功加载探查器。探查器CLSID:“{324F817A-7420-4E6D-B3C1-143FBED6D855}”…“GUI应该就是这样。2)检查同一文件夹中是否有类似探查器的文件名-它们将包含依赖项集合的异常。3)检查同一文件夹中的ApplicationInsightsExtension.log。之后是否有任何故障”正在启动Application Insights Profiler配置“”@YuliaSafarova我用ApplicationInsightsExtension.log文件的内容更新了这个问题。你能帮我回答一下吗
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="ApplicationInsightsWebTracking" />
      <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" />
    </modules>