我在消费计划上运行了多个Azure功能。我还设置了API管理。在Api Management中,我们有2个网络测试,每3-5分钟会测试一次这些功能,并确保它们仍然可用并且可以访问。 Web测试命中的端点只有以下代码。
[FunctionName("HealthCheck")]
public static Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "healthcheck")]HttpRequestMessage req, TraceWriter log)
{
log.Info("Health Check Triggered");
return Task.FromResult(req.CreateResponse(HttpStatusCode.OK));
}
运行一段时间后,该功能以Host Threshold Exceeded [Threads]错误启动到503。我不知道是什么原因造成的。由于功能在消费计划而不是应用程序服务计划上,Azure是否有任何限制使其无法正常工作?预先感谢您提供任何信息。
答案 0 :(得分:0)
主机运行状况监视器功能当前仅在存在这些沙箱限制的“消费计划”上处于活动状态。该功能默认情况下处于启用状态,但可以通过healthMonitor
的{{1}}部分来禁用/配置,例如
host.json
如果您的Function App达到阈值,则会看到类似{
"healthMonitor": {
"enabled": true,
"healthCheckInterval": "00:00:10",
"healthCheckWindow": "00:02:00",
"healthCheckThreshold": 6,
"counterThreshold": 0.80
}
}
的错误记录。 线程:线程数(限制为512)。
有关更多详细信息,您可以参考此article。