我尝试过两种方法来限制“失败”函数的重试,但这两种方法都没有起作用(如下所述)。我有发育障碍,所以任何帮助都会很感激。
上下文:在将电子邮件附件保存到blob后,该函数被放置在一个逻辑应用程序中,该应用程序由电子邮件触发。保存文件后,函数成功执行,但逻辑应用程序返回"BadRequest. Http请求失败:服务器在运行时间为2-3分钟后没有在超时限制内响应“。然后,逻辑应用程序重试该函数4次。
方法1:我将重试放入host.json中:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"excludedTypes": "Request"
}
}
},
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[1.*, 2.0.0)"
},
"retry": {
"strategy": "fixedDelay",
"maxRetryCount": 0,
"delayInterval": "00:00:05"
}
}
方法2:我将相同的片段放入function.json中:
{
"scriptFile": "__init__.py",
"bindings": [
{
"authLevel": "anonymous",
"type": "httpTrigger",
"direction": "in",
"name": "req",
"methods": [
"get",
"post"
]
},
{
"type": "http",
"direction": "out",
"name": "$return"
}
],
"retry": {
"strategy": "fixedDelay",
"maxRetryCount": 0,
"delayInterval": "00:00:10"
}
}
发布于 2020-12-02 07:28:12
重试策略是由azure logic app
定义的,您不应该在函数中配置重试策略,而应该在蔚蓝逻辑应用程序操作中配置重试策略。您可以参考重试政策
对于最基本的异常和错误处理,可以在任何受支持的操作或触发器中使用重试策略,例如,请参见HTTP操作。重试策略指定当原始请求超时或失败时,动作或触发器是否以及如何重试请求,这是导致408、429或5xx响应的任何请求。如果没有使用其他重试策略,则使用默认策略。
如果要将重试次数配置为0,请按照以下步骤操作。
您可以在···
操作的右上角单击Http
,然后单击Settings
,然后在Retry Policy
下选择None
:
https://stackoverflow.com/questions/65096350
复制相似问题