У меня есть MXChip Azure IoT Dev Kit, и я отправляю данные датчика в концентратор IoT.Я также настроил задание Stream Analytics с вводом в качестве концентратора IoT и выводом в качестве SQL Server и функции Azure.Вывод записывается в базу данных SQL, поэтому я подтверждаю, что запрос правильный.
Когда я проверяю свой журнал заданий потоковой аналитики, я вижу некоторую ошибку, как показано ниже.
{
"channels": "Operation",
"correlationId": "4a9c9b61-631a-4f4f-a403-c2869b2af66c",
"description": "",
"eventDataId": "97250faf-fa47-4e78-9981-8429f293bab9",
"eventName": {
"value": "streamingNode0",
"localizedValue": "streamingNode0"
},
"category": {
"value": "Administrative",
"localizedValue": "Administrative"
},
"eventTimestamp": "2018-12-18T15:54:22.9777487Z",
"id": "",
"level": "Error",
"operationId": "a613bc6a-5f61-4064-bea5-83c3af232e68",
"operationName": {
"value": "Send Events: Azure Function Output Adapter failed to write events",
"localizedValue": "Send Events: Azure Function Output Adapter failed to write events"
},
"resourceGroupName": "mlIoTPlatformDev",
"resourceProviderName": {
"value": "Microsoft.StreamAnalytics",
"localizedValue": "Microsoft.StreamAnalytics"
},
"resourceType": {
"value": "Microsoft.StreamAnalytics/streamingjobs",
"localizedValue": "Microsoft.StreamAnalytics/streamingjobs"
},
"resourceId": "",
"status": {
"value": "Failed",
"localizedValue": "Failed"
},
"subStatus": {
"value": "",
"localizedValue": ""
},
"submissionTimestamp": "2018-12-18T15:55:04.0799116Z",
"subscriptionId": "",
"properties": {
"Message Time": "2018-12-18 15:54:22Z",
"Error": "- An error occurred while sending the request.\r\n- The underlying connection was closed: An unexpected error occurred on a send.\r\n- Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.\r\n- An existing connection was forcibly closed by the remote host\r\n",
"Message": "Failed to write events. Error encountered after writing [0] batches., - An error occurred while sending the request.\r\n- The underlying connection was closed: An unexpected error occurred on a send.\r\n- Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.\r\n- An existing connection was forcibly closed by the remote host\r\n, : OutputSourceAlias:AzureFunctionOutput;AdapterType:AzureFunction;ShardId:0;",
"Type": "AzureFunctionOutputAdapterFailure",
"Correlation ID": "4a9c9b61-631a-4f4f-a403-c2869b2af66c"
},
"relatedEvents": []
}
Ниже приведен мой код функции Azure.
[FunctionName("GetData")]
public static async Task < HttpResponseMessage > Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestMessage req,
// [SignalR(HubName = "ml-iot-platform")] IAsyncCollector<SignalRMessage> signalRMessages,
ILogger log) {
log.LogInformation($ "GetData function triggered with Uri {req.RequestUri}");
dynamic data = await req.Content.ReadAsAsync < object > ();
log.LogInformation($ "Data count is {data.Count}");
if (data.ToString().Length > 262144) {
return new HttpResponseMessage(HttpStatusCode.RequestEntityTooLarge);
}
//await signalRMessages.AddAsync(new SignalRMessage()
//{
// Target = "checkData",
// Arguments = new object[] { data }
//});
return req.CreateResponse(HttpStatusCode.OK, "Success");
}
Вы когда-нибудь сталкивались с этой проблемой?