Azure Function无法加载ApplicationInsights程序集故障排查求助
解决方案步骤
第一步:移除冲突的依赖包
你当前项目中引用的Microsoft.Azure.WebJobs.Extensions.ApplicationInsights 1.0.0-preview4属于已经过时的预览版扩展,和3.0.27版本的日志包存在API不兼容问题,先直接卸载这个预览版扩展包即可。目前新版本的Azure Function运行时已经内置了Application Insights集成能力,无需单独安装该扩展。
第二步:调整依赖包引用
仅保留和你函数运行时版本匹配的稳定版日志包即可:
- 进程内模式函数使用如下引用:
<PackageReference Include="Microsoft.Azure.WebJobs.Logging.ApplicationInsights" Version="3.0.35" />
- Isolated独立进程模式函数改用如下引用:
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="1.2.0" />
第三步:恢复应用配置
把之前删除的APPLICATIONINSIGHTS_CONNECTION_STRING配置项加回Function App的应用设置中,值填写你对应Application Insights资源的连接字符串即可,无需额外保留APPINSIGHTS_INSTRUMENTATIONKEY配置。
如果你不需要Application Insights监控功能,也可以直接卸载所有Application Insights相关的Nuget包、删除所有相关应用配置,函数也可以正常启动运行。
第四步:清理重建项目
- 删除项目本地的bin、obj文件夹
- 执行
dotnet restore重新还原所有依赖 - 重新发布项目到Azure即可
如果还有启动异常,确认本地开发使用的函数运行时大版本和Azure上部署的函数运行时版本完全一致,避免运行时差异导致的依赖加载错误。
内容的提问来源于stack exchange,提问作者Andrew Shepherd
相关产品推荐
相关产品推荐

