我有一个带有http触发器的Azure函数(名为“ SigHttpPayloadsUplink”) 该功能被代理。
如果函数引发异常,则会记录该异常(请参见下图),该函数调用在门户/ AppInsight中标记为“失败”,但是代理调用被标记为“成功”。
看起来,代理清除了故障...
知道为什么吗? 感谢您的帮助。
Thibault。
proxies.json中的代理配置文件:
"POST_PayloadsUplink": {
"matchCondition": {
"route": "/api/sig/rest/callback/payloads/ul",
"methods": [
"POST"
]
},
"backendUri": "https://localhost/api/SigHttpPayloadsUplink"
},
功能代码:
[FunctionName("SigHttpPayloadsUplink")]
public static IActionResult Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequest req,
ILogger log)
{
try
{
SigHttpPayloadsUplink function = new SigHttpPayloadsUplink(req, log);
return function.execute();
} catch(Exception e)
{
log.LogError(e, "Cannot process message");
throw new Exception("Pas glop");
}
}
答案 0 :(得分:0)
这是设计使然。代理呼叫的成功取决于是否能够路由请求。
即使基础函数失败,代理调用仍然可以成功完成工作。