我正在尝试配置自己的环境,以使用状态监视器将数据发送到 App Insight,并且除了 sql 查询之外工作正常。
我在 Azure VM 上有一个环境,其中包含 Azure 数据库,并且 SQL 查询跟踪良好,但在我自己的 VM 中,针对我自己的数据库无法正常工作。
该环境中记录的 sql 跟踪如下所示:“mssql-IP | 数据库名称”而不是查询内容。
两个环境中测试的应用程序是相同的,SO版本是相同的。
我尝试针对 Azure 数据库配置我的环境,但仍然存在同样的问题。
我安装了.NET 4.6,但仍然存在同样的问题。
新方法(Application Insights Agent,以前称为 Status Monitor v2)
注意:新的 PowerShell 窗口/会话是required当陈述时。
-
安装先决条件在提升的 PowerShell 会话中。
- 打开新的提升的 PowerShell 会话。
-
安装代理模块.
-
仅启用仪器引擎。打开新的提升的 PowerShell 会话并运行以下命令:
Enable-InstrumentationEngine
执行旧方法的步骤 2(如下)。
-
重新启动 IIS:
iisreset
查看更多说明。
老方法(状态监视器 v1)
在查看了我能找到的有关此问题的所有文档片段、GitHub 问题和博客文章后,我相信我对 IIS 环境有了明确的答案:
需要安装状态监视器来收集依赖关系details。这将配置必要的 .NET 分析器。即使您在构建时配置了 Application Insights(即没有让状态监视器在运行时为您配置 Application Insights)并且使用 .NET 4.6+,状态监视器仍然需要存在。 (我认为,微软文档并没有明确说明这一点。)
-
正确的权限:
CMD
icacls %WINDIR%\Temp /t /c /grant IIS_IUSRS:(OI)(CI)M
icacls %WINDIR%\System32\config\systemprofile\AppData\Local /t /c /grant IIS_IUSRS:(OI)(CI)M
or
电源外壳
icacls $env:WINDIR\Temp /t /c /grant IIS_IUSRS:'(OI)(CI)M'
icacls $env:WINDIR\System32\config\systemprofile\AppData\Local /t /c /grant IIS_IUSRS:'(OI)(CI)M'
-
正确的IIS服务环境变量:
Get-Item 'HKLM:\SYSTEM\CurrentControlSet\Services\W3SVC' | Remove-ItemProperty -Name Environment -ErrorAction SilentlyContinue
Get-Item 'HKLM:\SYSTEM\CurrentControlSet\Services\W3SVC' | New-ItemProperty -Name Environment -Value "COR_ENABLE_PROFILING=1","COR_PROFILER={324F817A-7420-4E6D-B3C1-143FBED6D855}","MicrosoftInstrumentationEngine_Host={CA487940-57D2-10BF-11B2-A3AD5A13CBC0}" -PropertyType MultiString
-
重新启动 IIS:
iisreset
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)