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

时间:2019-03-05 10:12:21

标签: azure azure-functions azure-stream-analytics

我有一个Azure流分析作业,该作业使用Azure函数作为输出。我通过CI / CD部署ASA作业以及功能。当我部署ASA作业(假定存在AF)时,部署成功并且作业成功启动。此外,AF已成功触发(即,输出正常工作,并且这不是问题,例如与TSL设置-> Connection Test Failed when trying to add an Azure function as an output sink to Stream Analytics Job相关)。

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

error

为什么连接测试失败?

1 个答案:

答案 0 :(得分:0)

在测试连接的运行状况时,会将空批次从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);
}