带有Cosmos DB触发器的Azure函数(v1)如何从Cosmos DB中断中恢复? 这应该自动发生还是需要重启功能应用程序?
在我们的方案中,Cosmos DB不可用,因为达到了订阅支出限制。取消支出限制后,Cosmos DB再次可用,并且通过输出绑定写入Cosmos DB的函数成功。
通过CosmosDB触发器连接到Cosmos DB的函数无法从中断中恢复,并不断抛出以下异常:
<option value="">Please select your Title</option>-->
重新启动Function App之后,Cosmos DB触发器再次工作。
我想,当Cosmos DB由于其他原因遭受中断时,也会发生这种情况。
为了使我们的系统能够抵御Cosmos DB的临时中断,我们如何使CosmosDB触发器恢复到可操作状态?如果出现错误,我们是否必须重启功能应用程序?或者有更好的方法吗?
答案 0 :(得分:1)
这是由于Azure Functions运行时和Cosmos DB触发器中的重试机制存在问题。
运行时不断尝试重新初始化触发器,以指数方式回退,但是在这种特定情况下(超出支出限额)遇到了问题。 Github issue中对此进行了跟踪。
一个fix for this has been merged,应该包含在运行时的下一发行版中。
修复程序到位后,如果该帐户再次可用,则无需重新启动Function App。