我有一个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相关)。
仍然,当我进行连接测试时,它失败了:
为什么连接测试失败?
答案 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);
}