Visual Studio 2015中Azure函数启动超时问题求助
排查VS2015预编译Azure函数启动超时的具体步骤
遇到这个启动超时提示时,咱们可以通过下面这些方法来深挖到底卡在了哪个环节:
开启详细日志追踪启动流程
在你的Azure函数项目里,找到host.json文件(没有的话直接新建一个),修改日志配置为最详细级别:{ "logging": { "fileLoggingMode": "always", "logLevel": { "default": "Trace", "Host": "Trace", "Host.Aggregator": "Trace", "Function": "Trace" } } }重启函数后,切换到Visual Studio的“输出”面板,选择对应的Azure Functions宿主进程,就能看到每一步启动的详细日志,从里面就能发现哪一步耗时过长。
查看本地生成的宿主日志文件
本地调试时,Azure Functions宿主会在你电脑的%USERPROFILE%\AppData\Local\Temp\LogFiles\Application\Functions路径下生成日志文件。找到最新的日志文件打开,里面会完整记录启动过程中的依赖加载、初始化、触发源连接等所有环节,很容易定位到卡壳的地方。排查依赖与配置的潜在问题
- 检查项目引用的NuGet包,有没有版本不兼容或者需要远程初始化的SDK,这类包经常会拖慢启动速度;
- 确认本地Azure Functions工具的版本和VS2015兼容,你可以通过NuGet管理器查看
Microsoft.Azure.WebJobs.Script相关包的版本,尝试更新到适配的稳定版; - 如果用了Blob、队列这类触发源,检查本地存储模拟器是否正常运行,很多时候启动慢是因为触发源连接超时导致的等待。
用调试器跟踪启动执行流程
你可以通过VS的“附加到进程”功能,找到func.exe或者对应的Azure Functions宿主进程,在关键的启动步骤设置断点,一步步跟踪执行,就能精准定位到耗时的操作。
内容的提问来源于stack exchange,提问作者Karthikeyan VK
相关产品推荐
相关产品推荐

