Отслеживание схем сообщений B2B в рабочих процессах потребления для Azure Logic Apps

Область применения: Azure Logic Apps (потребление)

Примечание.

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

Azure Logic Apps включает встроенное отслеживание, которое можно включить для частей рабочего процесса. Чтобы отслеживать успешную доставку или получение, ошибки и свойства для B2B-сообщений, вы можете создавать и использовать схемы отслеживания AS2, X12 и пользовательские схемы отслеживания в учетной записи интеграции. В этом справочном руководстве описаны синтаксис и атрибуты для этих схем отслеживания.

AS2

Сообщение AS2 — схема отслеживания

Следующий синтаксис описывает схему отслеживания сообщения AS2:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "as2To": "",
      "as2From": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "messageId": "",
      "dispositionType": "",
      "fileName": "",
      "isMessageFailed": "",
      "isMessageSigned": "",
      "isMessageEncrypted": "",
      "isMessageCompressed": "",
      "incomingHeaders": {},
      "outgoingHeaders": {},
      "correlationMessageId": "",
      "isNrrEnabled": "",
      "isMdnExpected": "",
      "mdnType": ""
    }
}

Сообщение AS2 — свойства соглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя партнера для отправителя сообщения AS2
receiverPartnerName нет Струна Имя партнера для получателя сообщений AS2
as2To Да Струна Имя получателя сообщений AS2 в заголовках AS2
as2From Да Струна Имя отправителя сообщения AS2 в заголовках сообщений AS2
agreementName нет Струна Имя соглашения AS2, обрабатывающего сообщения

Сообщение AS2 — свойства сообщения

Недвижимость Обязательно Тип Описание
direction Да Струна Направление потока сообщений (send или receive)
messageId нет Струна Идентификатор сообщения AS2 в заголовках сообщений AS2
dispositionType нет Струна Тип ликвидации для уведомления о ликвидации сообщений (MDN)
fileName нет Струна Имя файла из заголовка сообщения AS2
isMessageFailed Да Boolean Указывает, произошел ли сбой сообщения AS2
isMessageSigned Да Boolean Подписывается ли сообщение AS2
isMessageEncrypted Да Boolean Шифруется ли сообщение AS2
isMessageCompressed Да Boolean Сжатие сообщения AS2
incomingHeaders нет Словарь JToken Сведения о входящем заголовке сообщения AS2
outgoingHeaders нет Словарь JToken Сведения о заголовке исходящих сообщений AS2
correlationMessageId нет Струна Идентификатор сообщения для сопоставления сообщений AS2 с уведомлениями о ликвидации сообщений (MDN)
isNrrEnabled Да Boolean Включено ли подтверждение получения (NRR)
isMdnExpected Да Boolean Указывает, следует ли использовать значение по умолчанию, если неизвестно
mdnType Да Enum Допустимые значения: NotConfigured, Sync и Async

AS2 MDN — схема отслеживания

Следующий синтаксис описывает схему отслеживания MDN AS2:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "as2To": "",
      "as2From": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "messageId": "",
      "originalMessageId": "",
      "dispositionType": "",
      "isMessageFailed": "",
      "isMessageSigned": "",
      "isNrrEnabled": "",
      "statusCode": "",
      "micVerificationStatus": "",
      "correlationMessageId": "",
      "incomingHeaders": {},
      "outgoingHeaders": {}
   }
}

AS2 MDN - свойства соглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя партнера для отправителя сообщения AS2
receiverPartnerName нет Струна Имя партнера для получателя сообщений AS2
as2To Да Струна Имя получателя сообщений AS2 в заголовках AS2
as2From Да Струна Имя отправителя сообщения AS2 в заголовках сообщений AS2
agreementName нет Струна Имя соглашения AS2, обрабатывающего сообщения

AS2 MDN — messageProperties

Недвижимость Обязательно Тип Описание
direction Да Струна Направление потока сообщений (send или receive)
messageId нет Струна Идентификатор сообщения AS2 в заголовках сообщений AS2
originalMessageId нет Струна Исходный идентификатор сообщения AS2
dispositionType нет Струна Тип ликвидации для уведомления о ликвидации сообщений (MDN)
isMessageFailed Да Boolean Указывает, произошел ли сбой сообщения AS2
isMessageSigned Да Boolean Подписывается ли сообщение AS2
isNrrEnabled Да Boolean Включено ли подтверждение получения (NRR)
statusCode Да Enum Допустимые значения: Accepted, Rejected и AcceptedWithErrors
micVerificationStatus Да Enum Допустимые значения: NotApplicable, Succeeded и Failed
correlationMessageId нет Струна Идентификатор корреляции, являющийся идентификатором исходного сообщения, для которого настроено MDN
incomingHeaders нет Словарь JToken Сведения о входящем заголовке сообщения AS2
outgoingHeaders нет Словарь JToken Сведения о заголовке исходящих сообщений AS2

X12

Набор транзакций X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания набора транзакций X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "functionalGroupControlNumber": "",
      "transactionSetControlNumber": "",
      "correlationMessageId": "",
      "messageType": "",
      "isMessageFailed": "",
      "isTechnicalAcknowledgmentExpected": "",
      "isFunctionalAcknowledgmentExpected": "",
      "needAk2LoopForValidMessages": "",
      "segmentsCount": ""
   }
}

Набор транзакций X12 — свойства соглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Набор транзакций X12 — свойства сообщения

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
interchangeControlNumber нет Струна Контрольный номер обмена данными для функционального подтверждения
functionalGroupControlNumber нет Струна Контрольный номер функциональной группы для функционального подтверждения
transactionSetControlNumber нет Струна Контрольный номер набора транзакций
correlationMessageId нет Струна Идентификатор корреляции сообщений, который объединяет эти значения: {agreementName}{interchange-or-functionalGroup-ControlNumber}{transactionSetControlNumber}
messageType нет Струна Набор транзакций или тип документа
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
isTechnicalAcknowledgmentExpected Да Boolean Настроены ли параметры технического подтверждения в соглашении X12
isFunctionalAcknowledgmentExpected Да Boolean Настроены ли параметры функционального подтверждения в соглашении X12
needAk2LoopForValidMessages Да Boolean Необходима ли петля AK2 для действительного сообщения
segmentsCount нет Целое число Количество сегментов в наборе транзакций X12

Подтверждение набора транзакций X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания подтверждения набора транзакций X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "functionalGroupControlNumber": "",
      "isaSegment": "",
      "gsSegment": "",
      "respondingFunctionalGroupControlNumber": "",
      "respondingFunctionalGroupId": "",
      "respondingTransactionSetControlNumber": "",
      "respondingTransactionSetId": "",
      "statusCode": "",
      "processingStatus": "",
      "correlationMessageId": "",
      "isMessageFailed": "",
      "ak2Segment": "",
      "ak3Segment": "",
      "ak5Segment": ""
   }
}

Подтверждение набора транзакций X12 — свойства соглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Подтверждение набора транзакций X12 — messageProperties

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
interchangeControlNumber нет Струна Контрольный номер обмена данными для функционального подтверждения. Это значение заполняется только отправителем, когда получено функциональное подтверждение для сообщений, отправленных партнеру.
functionalGroupControlNumber нет Струна Контрольный номер функциональной группы для подтверждения функциональности. Это значение заполняется только отправителем, когда получено функциональное подтверждение для сообщений, отправленных партнеру.
isaSegment нет Струна Сегмент заголовка элемента управления обмена (ISA) для сообщения X12. Это значение заполняется только отправителем, когда получено функциональное подтверждение для сообщений, отправленных партнеру.
gsSegment нет Струна Сегмент GS в сообщении X12. Это значение заполняется только отправителем, когда получено функциональное подтверждение для сообщений, отправленных партнеру.
respondingFunctionalGroupControlNumber нет Струна Контрольный номер для функциональной группы реагирования
respondingFunctionalGroupId нет Струна Идентификатор функциональной группы реагирования, которая сопоставляется с AK101 в подтверждении
respondingTransactionSetControlNumber нет Струна Контрольный номер для ответного набора транзакций
respondingTransactionSetId нет Струна Идентификатор для ответных транзакций, которая соответствует AK201 в подтверждении.
statusCode Да Boolean Код состояния подтверждения для набора транзакций
processingStatus Да Enum Состояние обработки для подтверждения с этими допустимыми значениями: Received, Generatedи Sent
correlationMessageId нет Струна Идентификатор корреляции сообщений, который объединяет эти значения: {agreementName}{interchange-or-functionalGroup-ControlNumber}{transactionSetControlNumber}
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
ak2Segment нет Струна Подтверждение набора транзакций в полученной функциональной группе
ak3Segment нет Струна Указывает на наличие ошибок в сегменте данных
ak5Segment нет Струна Указывает, принят ли или отклонен набор транзакций идентифицированный в сегменте AK2, а также причины для этого

Обмен X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания обмена X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "isaSegment": "",
      "isTechnicalAcknowledgmentExpected": "",
      "isMessageFailed": "",
      "isa09": "",
      "isa10": "",
      "isa11": "",
      "isa12": "",
      "isa14": "",
      "isa15": "",
      "isa16": ""
   }
}

Обмен X12 — свойства соглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Обмен X12 — свойства сообщения

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
interchangeControlNumber нет Струна Контрольный номер обмена данными
isaSegment нет Струна Сегмент ISA для сообщения X12
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
isTechnicalAcknowledgmentExpected Да Boolean Настроены ли параметры технического подтверждения в соглашении X12
isa09 нет Струна Дата обмена документа X12
isa10 нет Струна Время обмена документами X12
isa11 нет Струна Идентификатор стандарта контроля обмена X12
isa12 нет Струна Контрольный номер версии обмена X12
isa14 нет Струна Запрашивается подтверждение X12
isa15 нет Струна Индикатор для тестирования или промышленной эксплуатации
isa16 нет Струна Разделитель элементов

Подтверждение обмена X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания подтверждения обмена X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "isaSegment": "",
      "respondingInterchangeControlNumber": "",
      "isMessageFailed": "",
      "statusCode": "",
      "processingStatus": "",
      "ta102": "",
      "ta103": "",
      "ta105": ""
   }
}

Подтверждение обмена X12 — соглашениеProperties

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Подтверждение обмена X12 — messageProperties

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
interchangeControlNumber нет Струна Контрольный номер обмена для технического подтверждения, полученного от партнеров
isaSegment нет Струна Сегмент ISA для технического подтверждения, полученного от партнеров
respondingInterchangeControlNumber нет Струна Контрольный номер обмена для технического подтверждения, полученного от партнеров
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
statusCode Да Enum Код состояния подтверждения обмена с этими разрешенными значениями: Accepted, Rejected и AcceptedWithErrors
processingStatus Да Enum Состояние обработки для подтверждения с этими допустимыми значениями: Received, Generatedи Sent
ta102 нет Струна Дата обмена
ta103 нет Струна Время обмена
ta105 нет Струна Код обменного документа

Функциональная группа X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания функциональной группы X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "functionalGroupControlNumber": "",
      "gsSegment": "",
      "isTechnicalAcknowledgmentExpected": "",
      "isFunctionalAcknowledgmentExpected": "",
      "isMessageFailed": "",
      "gs01": "",
      "gs02": "",
      "gs03": "",
      "gs04": "",
      "gs05": "",
      "gs07": "",
      "gs08": ""
   }
}

Функциональная группа X12 — свойстваСоглашения

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Функциональная группа X12 — messageProperties

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
interchangeControlNumber нет Струна Контрольный номер обмена данными
functionalGroupControlNumber нет Струна Контрольный номер функциональной группы
gsSegment нет Струна Сегмент GS в сообщении X12
isTechnicalAcknowledgmentExpected Да Boolean Настроены ли параметры технического подтверждения в соглашении X12
isFunctionalAcknowledgmentExpected Да Boolean Настроены ли параметры функционального подтверждения в соглашении X12
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
gs01 нет Струна Код идентификатора функциональной группы
gs02 нет Струна Код отправителя приложения
gs03 нет Струна Код приемника приложений
gs04 нет Струна Дата функциональной группы
gs05 нет Струна Время функциональной группы
gs07 нет Струна Код ответственного агентства
gs08 нет Струна Код идентификатора для версии, выпуска или отрасли

Подтверждение функциональной группы X12 — схема отслеживания

Следующий синтаксис описывает схему для отслеживания подтверждения функциональной группы X12:

{
   "agreementProperties": {
      "senderPartnerName": "",
      "receiverPartnerName": "",
      "senderQualifier": "",
      "senderIdentifier": "",
      "receiverQualifier": "",
      "receiverIdentifier": "",
      "agreementName": ""
   },
   "messageProperties": {
      "direction": "",
      "interchangeControlNumber": "",
      "functionalGroupControlNumber": "",
      "isaSegment": "",
      "gsSegment": "",
      "respondingFunctionalGroupControlNumber": "",
      "respondingFunctionalGroupId": "",
      "isMessageFailed": "",
      "statusCode": "",
      "processingStatus": "",
      "ak903": "",
      "ak904": "",
      "ak9Segment": ""
   }
}

Подтверждение функциональной группы X12 — agreementProperties

Недвижимость Обязательно Тип Описание
senderPartnerName нет Струна Имя отправителя сообщения партнера X12
receiverPartnerName нет Струна Имя получателя сообщений партнера X12
senderQualifier Да Струна Квалификатор для отправителя сообщений партнера X12
senderIdentifier Да Струна Идентификатор отправителя сообщения партнера X12
receiverQualifier Да Струна Квалификатор для получателя X12-сообщений партнера
receiverIdentifier Да Струна Идентификатор получателя сообщений X12 партнера
agreementName нет Струна Имя соглашения X12, распределяющего сообщения

Подтверждение функциональной группы X12: messageProperties

Недвижимость Обязательно Тип Описание
direction Да Enum Направление потока сообщений (send или receive)
functionalGroupControlNumber нет Струна Контрольный номер функциональной группы для технического подтверждения. Это значение заполняется для отправителя при получении технического подтверждения от партнеров.
interchangeControlNumber нет Струна Номер контроля обмена. Это значение заполняется для отправителя при получении технического подтверждения от партнеров.
isaSegment нет Струна Совпадает с параметром interchangeControlNumber, но заполняется только в определенных случаях
gsSegment нет Струна То же, что functionalGrouControlNumberи в определенных случаях, но заполняется только в определенных случаях
respondingFunctionalGroupControlNumber нет Струна Контрольный номер исходной функциональной группы
respondingFunctionalGroupId нет Струна Преобразуется в AK101 в идентификаторе функциональной группы подтверждения
isMessageFailed Да Boolean Определение, произошло ли сбой сообщения X12
statusCode Да Enum Код состояния подтверждения с этими разрешенными значениями: Accepted, Rejected и AcceptedWithErrors
processingStatus Да Enum Состояние обработки для подтверждения с этими допустимыми значениями: Received, Generatedи Sent
ak903 нет Струна Количество полученных наборов транзакций
ak904 нет Струна Число принятых наборов транзакций в определенной функциональной группе
ak9Segment нет Струна Идентифицируется ли функциональная группа в сегменте AK1, как принятая или отклоненная, а также причины для этого

Обычай

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

Следующий синтаксис описывает схему для пользовательского отслеживания:

{
   "sourceType": "",
   "source": {
      "workflow": {
         "systemId": ""
      },
      "runInstance": {
         "runId": ""
      },
      "operation": {
         "operationName": "",
         "repeatItemScopeName": "",
         "repeatItemIndex": ,
         "trackingId": "",
         "correlationId": "",
         "clientRequestId": ""
      }
   },
   "events": [
      {
         "eventLevel": "",
         "eventTime": "",
         "recordType": "",
         "record": {}
      }
   ]
}
Недвижимость Обязательно Тип Описание
sourceType Да Струна Введите источник запуска с этими допустимыми значениями: Microsoft.Logic/workflowscustom**
source Да Строка или JToken Если исходный тип имеет тип Microsoft.Logic/workflows, исходная информация должна соответствовать описанной схеме. Если исходный тип имеет customтип, схема имеет тип JToken.
systemId Да Струна Системный идентификатор приложения логики
runId Да Струна Идентификатор выполнения для логического приложения
operationName Да Струна Имя операции, например действие или триггер
repeatItemScopeName Да Струна Повторите имя элемента, если действие находится в цикле foreach или until
repeatItemIndex Да Целое число Повторяющийся индекс элемента для указания, что действие находится в цикле foreach или until
trackingId нет Струна Идентификатор отслеживания для сопоставления сообщений
correlationId нет Струна Идентификатор корреляции для корреляции сообщений
clientRequestId нет Струна Клиент может указать здесь произвольное значение для корреляции сообщений
eventLevel Да Струна Уровень событий
eventTime Да дата и время Время события в формате UTC: ГГГГ-ММ-ДДЧЧ:ММ:СС.00000Z
recordType Да Струна Используйте тип записи только с допустимым значением: custom
record Да JToken Настраиваемый тип записи только в формате JToken