Logi c Приложение не может десериализовать Azure сообщение об ошибке конвейера фабрики данных - PullRequest
0 голосов
/ 03 августа 2020

Я столкнулся со следующей проблемой: Azure Фабрика данных с использованием приложения Logi c.

Я использую конвейер Azure Фабрики данных для миграции и приложение Logi c для отправки сообщения «Успех» & Ошибка "уведомление технической группы. Теперь успех работает нормально, поскольку сообщение жестко запрограммировано, но сбой не происходит, поскольку веб-активность приложения Logi c не может проанализировать ошибку конвейера фабрики данных.

Вот входные данные, которые отправляются в Logi c Веб-активность приложения Ввод

{
"url": "https://xxxxxxxxxxxxxxxxx",
"method": "POST",
"headers": {},
"body": "{\n \"title\": \"PIPELINE RUN FAILED\",\n \"message\":\"Operation on target Migration Validation failed: Execution fail against sql server. Sql error number: 50000. Error Message: The DELETE statement conflicted with the REFERENCE constraint \"FK_cmclientapprovedproducts_cmlinkclientchannel\". The conflict occurred in database \"Core7\", table \"dbo.cmClientApprovedProducts\", column 'linkclientchannelid'.\",\n \"color\": \"Red\",\n \"dataFactoryName\": \"LFC-TO-MCP-ADF\",\n \"pipelineName\": \"LFC TO MCP MIGRATION\",\n \"pipelineRunId\": \"f4f84365-58f0-4da1-aa00-64c3a4daa9e1\",\n \"time\": \"2020-07-31T22:44:01.6477435Z\"\n}"
}

Вот журнал ошибок c приложение выдает

failures
    {
    "errorCode": "2108",
    "message": "{\"error\":{\"code\":\"InvalidRequestContent\",\"message\":\"The request content is not valid and could not be deserialized: 'After parsing a value an unexpected character was encountered: F. Path 'message', line 3, position 202.'.\"}}",
    "failureType": "UserError",
    "target": "Send Failed Notification",
    "details": []
    }

Я пробовал различные варианты, такие как установить переменную и преобразовать с использованием различных существующих методы (строка, json, заменить et c), но не повезло, например, @string(activity('LOS migration').Error.Message) Борьба почти весь день ... пожалуйста, предложите, если кто-нибудь столкнулся с подобной проблемой ...

Ниже активность потока данных введите описание изображения здесь

введите описание изображения здесь

Ответы [ 2 ]

0 голосов
/ 05 августа 2020

теперь он работает ... Вставка основного содержимого в текстовое поле основного текста БЕЗ нажатия на «Добавить Dynami c Content» в веб-активности, вызывающей Logi c App.

0 голосов
/ 04 августа 2020

В случае сбоя передайте вывод ошибки, используйте @{activity('LOS migration').error.message.

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

{
   "DataFactoryName": "@{pipeline().DataFactory}",
   "PipelineName": "@{pipeline().Pipeline}",
   "Subject": "@{pipeline().parameters.Subject}",
   "ErrorMessage": "@{pipeline().parameters.ErrorMessage}",
   "EmailTo": "@pipeline().parameters.EmailTo"
}

Мы можем ссылаться на эти переменные в теле, используя следующий формат: @pipeline().parameters.parametername. Для получения дополнительной информации вы можете обратиться к этой статье .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...