Приложения логики - Bad Gateway 502 выполняет хранимую процедуру SQL Server - PullRequest
0 голосов
/ 02 октября 2018

Я пытаюсь выполнить хранимую процедуру на месте, которая вставляет 1000 записей одновременно из приложения логики.Я проверил хранимую процедуру отдельно, и для вставки данных требуется меньше секунды, и у меня есть локальное соединение со шлюзом, которое также было протестировано в приложениях логики с другой процедурой.Когда я запускаю приложения логики, которые получают данные из другого веб-сервиса в формате JSON и передают в локальную хранимую процедуру SQL Server, я получаю ошибку неверного шлюза (502).

Я вижу похожий вопрос , но он не ответил на переполнение стека.Поскольку я не вижу много полезной информации об ошибке, кто-нибудь может посоветовать, как решить эту проблему?Все, что я вижу, - команда не поддерживается.Я ценю помощь!

{
  "error": {
    "code": 502,
    "source": "logic-apis-centralus.azure-apim.net",
    "clientRequestId": "xxxxxxx",
    "message": "BadGateway",
    "innerError": {
      "status": 502,
      "message": **"The command '**[   AzureConnection = [gateway=\"true\",server=\"xxx.com\",database=\"xxx\"],\r\n    request = [Connection = AzureConnection],\r\n    dataSet = \"default\",\r\n    procedure = \"[dbo].[UpsertEventData]\",\r\n    parameters = [jsonObject=[\r\n  {\r\n    \"eventId\": \"a835795db0f7a13ab03be8e41bde7f56bc9b772905d82e7c111252d998a002be\",\r\n    \"startTime\": \"2018-09-26T00:23:06+00:00\",\r\n    \"endTime\": \"2018-09-26T00:24:50+00:00\",\r\n    \"userId\": \"6aa080743b27d1a9a67afd2683ede38a\",\r\n    \"channelId\": \"987fb87a4f7b4d867c1f391d38ec98b2\",\r\n    \"shareId\": null,\r\n    \"deviceId\": \"bdf8ada28095551a705737900d7c5bf3\",\r\n    \"divisionId\": null,\r\n,\r\n    \"contactId\": null,\r\n    \"type\": \"asset-in-app-viewed\",\r\n    \"page\": 1\r\n  },  **isn't supported.**\r\n     **inner exception:** The command '[   AzureConnection = [gateway=\"true\",server=\"xxx.com\",database=\"xxx\"],\r\n    request = [Connection = AzureConnection],\r\n    dataSet = \"default\",\r\n    procedure = \"[dbo].[UpsertEventData]\",\r\n    parameters = [jsonObject=[\r\n  {\r\n    \"eventId\": \"a835795db0f7a13ab03be8e41bde7f56bc9b772905d82e7c111252d998a002be\",\r\n    \"startTime\": \"2018-09-26T00:23:06+00:00\",\r\n    \"endTime\": \"2018-09-26T00:24:50+00:00\",\r\n    \"userId\": \"6aa080743b27d1a9a67afd2683ede38a\",\r\n    \"channelId\": \"987fb87a4f7b4d867c1f391d38ec98b2\",\r\n    \"shareId\": null,\r\n    \"deviceId\": \"bdf8ada28095551a705737900d7c5bf3\",\r\n    \"divisionId\": null,\r\n    \"assetId\": \"44ecbff1f7427e1fdc2bc3e1ad47f827\",\r\n    \"contactId\": null,\r\n    \"type\": \"asset-in-app-viewed\",\r\n    \"page\": 1\r\n  },\r\n  {\r\n    \"eventId\": \"a835795db0f7a13ab03be8e41bde7f5666f3195ab9eaf651a159d6ce22b04cc7\",\r\n    \"startTime\": \"2018-09-26T00:25:45+00:00\",\r\n    \"endTime\": \"2018-09-26T00:25:49+00:00\",\r\n    \"userId\": \"6aa080743b27d1a9a67afd2683ede38a\",\r\n    \"channelId\": \"7ae82...**' isn't supported.**\r\nclientRequestId: 7d9cbf4d-b50f-4905-8825-554f7e48d54c",
      "source": "sql-logic-cp-centralus.logic-ase-centralus.p.azurewebsites.net"
    }
  }
}

1 Ответ

0 голосов
/ 05 октября 2018

Наконец, я могу исправить проблему с помощью некоторой отладки в приложениях логики и хранимых процессах.

Исправлено: проблема заключается в передаче вывода «Parse JSON» из приложений логики в качестве входных данных для хранилища.Процедура.Я использовал функцию преобразования строк, чтобы исправить проблему.

Хотелось бы, чтобы будущий выпуск приложений логики давал более подробные сведения об исключении вместо общей ошибки неверного шлюза.

...