使用 Azure 函数作为流分析的输出:连接测试失败

Using Azure Function as output for Stream Analytics: Connection Test Fails

我有一个使用 Azure 函数作为输出的 Azure 流分析作业。我通过 CI/CD 部署了 ASA 作业和函数。当我部署 ASA 作业时(假设 AF 存在),部署成功并且作业成功启动。此外,AF 成功触发(即输出正常,这不是问题,例如与 TSL 设置相关 -> )。

仍然,当我进行连接测试时,它失败了:

为什么连接测试失败?

在测试连接的健康状况时,一个空批次从 ASA 发送到 AF。问题是我在处理空批次时返回了 500 响应,最终导致连接测试失败。

为避免此问题,有必要实施另一种处理空批次的方法:

// Get and deserialize input content
string content = await req.Content.ReadAsStringAsync();
dynamic asaInput = JsonConvert.DeserializeObject(content);

// Handle empty input
if (asaInput is null || asaInput.Count == 0)
{
    log.Info("Received an empty request body...");
    return req.CreateResponse(HttpStatusCode.NoContent);
}