Схемы отслеживания для мониторинга сообщений 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": "",
"correlationMessageId": "",
"incomingHeaders": {},
"outgoingHeaders": {},
"isNrrEnabled": "",
"isMdnExpected": "",
"mdnType": ""
}
}
В следующей таблице описаны атрибуты в схеме отслеживания для сообщения AS2:
Свойство | Обязательно | Тип | Описание |
---|---|---|---|
senderPartnerName | нет | Строка | Имя партнера отправителя сообщения AS2 |
receiverPartnerName | нет | Строка | Имя партнера получателя сообщения AS2 |
as2To | Да | Строка | Имя получателя сообщения AS2 из заголовков сообщения AS2 |
as2From | Да | Строка | Имя отправителя сообщения AS2 из заголовков сообщения AS2 |
agreementName | нет | Строка | Имя соглашения AS2, в соответствии с которым разрешаются сообщения. |
direction | Да | Строка | Направление потока обработки сообщений, может быть receive или send |
messageId | нет | Строка | Идентификатор сообщения AS2, полученный из заголовков сообщения AS2 |
dispositionType | нет | Строка | Значение типа метода обработки уведомлений о состоянии сообщения (MDN) |
fileName | нет | Строка | Имя файла из заголовка сообщения AS2 |
isMessageFailed | Да | Логическое | Указывает, произошел ли сбой сообщения AS2 |
isMessageSigned | Да | Логическое | Указывает, подписано ли сообщение AS2 |
isMessageEncrypted | Да | Логическое | Указывает, зашифровано ли сообщение AS2 |
isMessageCompressed | Да | Логическое | Указывает, сжато ли сообщение AS2 |
correlationMessageId | нет | Строка | Идентификатор сообщения AS2, используемый для корреляции сообщений с уведомлениями о состоянии сообщений |
incomingHeaders | Нет | Словарь JToken | Сведения о заголовке входящего сообщения AS2 |
outgoingHeaders | Нет | Словарь JToken | Сведения о заголовке исходящего сообщения AS2 |
isNrrEnabled | Да | Логическое | Следует ли использовать значение по умолчанию, если значение неизвестно |
isMdnExpected | Да | Логическое | Следует ли использовать значение по умолчанию, если значение неизвестно |
mdnType | Да | Перечисление | Допустимые значения: NotConfigured , Sync и Async |
Схема отслеживания уведомлений о состоянии сообщений AS2
Следующий синтаксис описывает схему отслеживания для сообщения 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 |
as2From | Да | Строка | Имя партнера-отправителя сообщения AS2 |
agreementName | нет | Строка | Имя соглашения AS2, в соответствии с которым разрешаются сообщения. |
direction | Да | Строка | Направление потока обработки сообщений, может быть receive или send |
messageId | нет | Строка | Идентификатор сообщения AS2 |
originalMessageId | нет | Строка | Исходный идентификатор сообщения AS2 |
dispositionType | нет | Строка | Значение типа метода обработки уведомлений о состоянии сообщения |
isMessageFailed | Да | Логическое | Указывает, произошел ли сбой сообщения AS2 |
isMessageSigned | Да | Логическое | Указывает, подписано ли сообщение AS2 |
isNrrEnabled | Да | Логическое | Следует ли использовать значение по умолчанию, если значение неизвестно |
statusCode | Да | Перечисление | Допустимые значения: Accepted , Rejected и AcceptedWithErrors |
micVerificationStatus | Да | Перечисление | Допустимые значения: NotApplicable , Succeeded и Failed |
correlationMessageId | нет | Строка | Идентификатор корреляции, являющийся идентификатором исходного сообщения, для которого настроено MDN |
incomingHeaders | Нет | Словарь JToken | Сведения о заголовке входящего сообщения |
outgoingHeaders | Нет | Словарь JToken | Сведения о заголовке исходящего сообщения |
X12
- схема отслеживания набора транзакций X12;
- схема отслеживания подтверждений набора транзакций X12
- Схема отслеживания обмена X12
- Схема отслеживания подтверждения обмена X12
- схема отслеживания функциональной группы X12;
- схема отслеживания подтверждения функциональной группы 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 | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Имя соглашения X12, в соответствии с которым разрешаются сообщения. |
direction | Да | Перечисление | Направление потока обработки сообщений, может быть receive или send |
interchangeControlNumber | нет | Строка | Контрольный номер обмена |
functionalGroupControlNumber | нет | Строка | Функциональный контрольный номер |
transactionSetControlNumber | нет | Строка | Номер управления набором транзакций |
CorrelationMessageId | нет | Строка | Идентификатор корреляции сообщения представляет собой сочетание {AgreementName}{GroupControlNumber}{TransactionSetControlNumber} |
messageType | нет | Строка | Набор транзакций или тип документа |
isMessageFailed | Да | Логическое | Наличие ошибки с сообщением X12 |
isTechnicalAcknowledgmentExpected | Да | Логическое | Настроены ли параметры технического подтверждения в соглашении X12 |
isFunctionalAcknowledgmentExpected | Да | Логическое | Настроены ли параметры функционального подтверждения в соглашении X12 |
needAk2LoopForValidMessages | Да | Логическое | Необходим ли 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 | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Имя соглашения X12, в соответствии с которым разрешаются сообщения. |
direction | Да | Перечисление | Направление потока обработки сообщений, может быть receive или send |
interchangeControlNumber | нет | Строка | Обмен контрольного номера функционального подтверждения. Значение заполняется только для стороны отправителя, которая получает функциональное подтверждение для сообщений, отправленных партнеру. |
functionalGroupControlNumber | нет | Строка | Контрольный номер функциональной группы для функционального подтверждения. Значение заполняется только для стороны отправителя, которая получает функциональное подтверждение для сообщений, отправленных партнеру. |
isaSegment | нет | Строка | Сегмент ISA сообщения. Значение заполняется только для стороны отправителя, которая получает функциональное подтверждение для сообщений, отправленных партнеру. |
gsSegment | нет | Строка | Сегмент GS сообщения. Значение заполняется только для стороны отправителя, которая получает функциональное подтверждение для сообщений, отправленных партнеру. |
respondingfunctionalGroupControlNumber | нет | Строка | Контрольный номер обмена ответом |
respondingFunctionalGroupId | нет | Строка | Идентификатор отвечающей функциональной группы, который в подтверждении преобразуется в AK101 |
respondingtransactionSetControlNumber | нет | Строка | Контрольный номер ответной транзакции |
respondingTransactionSetId | нет | Строка | Идентификатор набора ответных транзакций, который в подтверждении преобразуется в AK201 |
statusCode | Да | Логическое | Код состояния подтверждения набора транзакции |
segmentsCount | Да | Перечисление | Код состояния подтверждения с этими разрешенными значениями: Accepted , Rejected и AcceptedWithErrors |
processingStatus | Да | Перечисление | Состояние обработки подтверждения с этими разрешенными значениями: Received , Generated и Sent |
CorrelationMessageId | нет | Строка | Идентификатор корреляции сообщения представляет собой сочетание {AgreementName}{GroupControlNumber}{TransactionSetControlNumber} |
isMessageFailed | Да | Логическое | Наличие ошибки с сообщением 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 | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Имя соглашения X12, в соответствии с которым разрешаются сообщения. |
direction | Да | Перечисление | Направление потока обработки сообщений, может быть receive или send |
interchangeControlNumber | нет | Строка | Контрольный номер обмена |
isaSegment | нет | Строка | ISA сегмент сообщения |
isTechnicalAcknowledgmentExpected | Логическое | Настроены ли параметры технического подтверждения в соглашении X12 | |
isMessageFailed | Да | Логическое | Наличие ошибки с сообщением 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:
Свойство | Обязательно | Тип | Описание |
---|---|---|---|
senderPartnerName | нет | Строка | Имя партнера отправителя сообщения X12 |
receiverPartnerName | нет | Строка | Имя партнера получателя сообщения X12 |
senderQualifier | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Имя соглашения X12, в соответствии с которым разрешаются сообщения. |
direction | Да | Перечисление | Направление потока обработки сообщений, может быть receive или send |
interchangeControlNumber | нет | Строка | Контрольный номер обмена из технического подтверждения, полученного от партнеров |
isaSegment | нет | Строка | ISA сегмент для технического подтверждения, полученного от партнеров |
respondingInterchangeControlNumber | нет | Строка | Контрольный номер обмена для технического подтверждения, полученного от партнеров |
isMessageFailed | Да | Логическое | Наличие ошибки с сообщением X12 |
statusCode | Да | Перечисление | Код состояния подтверждения обмена с этими разрешенными значениями: Accepted , Rejected и AcceptedWithErrors |
processingStatus | Да | Перечисление | Состояние подтверждения с этими разрешенными значениями: 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 | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Название соглашения X12, в соответствии с которым разрешаются сообщения |
direction | Да | Перечисление | Направление потока сообщений, отправка или получение |
interchangeControlNumber | нет | Строка | Контрольный номер обмена |
functionalGroupControlNumber | нет | Строка | Функциональный контрольный номер |
gsSegment | нет | Строка | Сегмент GS сообщения |
isTechnicalAcknowledgmentExpected | Да | Логическое | Настроены ли параметры технического подтверждения в соглашении X12 |
isFunctionalAcknowledgmentExpected | Да | Логическое | Настроены ли параметры функционального подтверждения в соглашении X12 |
isMessageFailed | Да | Логическое | Наличие ошибки с сообщением 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:
Свойство | Обязательно | Тип | Описание |
---|---|---|---|
senderPartnerName | нет | Строка | Имя партнера отправителя сообщения X12 |
receiverPartnerName | нет | Строка | Имя партнера получателя сообщения X12 |
senderQualifier | Да | Строка | Квалификатор партнера отправителя |
senderIdentifier | Да | Строка | Идентификатор партнера отправителя |
receiverQualifier | Да | Строка | Квалификатор партнера получателя |
receiverIdentifier | Да | Строка | Идентификатор партнера получателя |
agreementName | нет | Строка | Имя соглашения X12, в соответствии с которым разрешаются сообщения. |
direction | Да | Перечисление | Направление потока обработки сообщений, может быть receive или send |
interchangeControlNumber | нет | Строка | Контрольный номер обмена, который заполняется для стороны отправителя после получения подтверждения от партнеров |
functionalGroupControlNumber | нет | Строка | Контрольный номер функциональной группы технического подтверждения который заполняется для стороны отправителя после получения подтверждения от партнеров |
isaSegment | нет | Строка | Совпадает с контрольным номером обмена, но заполняется только в определенных случаях |
gsSegment | нет | Строка | Совпадает с контрольным номером функциональной группы, но заполняется только в определенных случаях |
respondingfunctionalGroupControlNumber | нет | Строка | Контрольный номер исходной функциональной группы |
respondingFunctionalGroupId | нет | Строка | Преобразуется в AK101 в идентификаторе функциональной группы подтверждения |
isMessageFailed | Логическое | Наличие ошибки с сообщением X12 | |
statusCode | Да | Перечисление | Код состояния подтверждения с этими разрешенными значениями: Accepted , Rejected и AcceptedWithErrors |
processingStatus | Да | Перечисление | Состояние обработки подтверждения с этими разрешенными значениями: 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/workflows и custom . |
source | Да | Строка или JToken | Если источник имеет тип Microsoft.Logic/workflows , сведения об источнике должны соответствовать этой схеме. Если источник имеет тип custom , то используется схема JToken. |
systemId | Да | Строка | Системный идентификатор приложения логики |
runId | Да | Строка | Идентификатор выполнения приложения логики |
operationName | Да | Строка | Имя операции (например, действие или триггер) |
repeatItemScopeName | Да | Строка | Имя повторяющегося элемента, если действие находится внутри цикла foreach или until |
repeatItemIndex | Да | Целое число | Указывает, что действие находится внутри цикла foreach или until и одновременно является номером индекса для повторяющегося элемента. |
trackingId | нет | Строка | Идентификатор отслеживания для корреляции сообщений |
correlationId | нет | Строка | Идентификатор корреляции для корреляции сообщений |
clientRequestId | нет | Строка | Клиент может указать здесь произвольное значение для корреляции сообщений |
eventLevel | Да | Строка | Уровень события |
eventTime | Да | Дата и время | Время события в формате UTC: ГГГГ-ММ-ДДTЧЧ:ММ:СС.00000Z. |
recordType | Да | Строка | Тип записи отслеживания, который может иметь только одно значение: custom |
запись | Да | JToken | Пользовательский тип записи в формате JToken (единственный вариант) |