Entendiendo los Registros de Ejecución

Los registros de ejecución contienen información esencial para rastrear, depurar y auditar la ejecución de un flujo de integración.

Puede ver los siguientes registros de ejecución en el Sensedia Analytics.

  • Solicitud del gatillo (trigger) del tipo REST.

  • Solicitud y respuesta de:

    • Conectores

    • Choice

    • For Each

    • JSON Transformation

Campos comunes

A continuación, se presentan los componentes presentes en todos los registros de ejecución, independientemente del tipo de step en ejecución:

  • runtimeExecutionId: un identificador único relacionado con el tiempo de ejecución del flujo de integración. Ayuda a rastrear y monitorear la instancia de ejecución.

  • executionId: identificador de ejecución. Puede ser utilizado para rastrear ejecuciones individuales dentro de una sesión de ejecución.

  • integrationFlowId: identificador único del flujo de integración.

  • integrationFlowName: nombre del flujo de integración.

  • integrationFlowVersion: versión del flujo de integración en ejecución.

Campos variables

Ahora, vea los componentes que varían según el tipo de step en ejecución:

  • name: nombre del step del flujo de integración que se está ejecutando.

  • tag: etiqueta asociada con el step, que indica su naturaleza (solicitud, respuesta, entrada o salida).

  • message: contiene una cadena JSON con información detallada sobre el step. Este componente es especialmente útil para comprender el contenido y el contexto del step.

Ejemplos

Gatillo del tipo REST (trigger)

Aquí tenemos una solicitud POST. El campo de mensaje proporciona una cadena JSON con el cuerpo de la solicitud, la ruta, el método y los encabezados.

"{
  "runtimeExecutionId": "BD4E80522608F3F-0000000000000000",
  "executionId": null,
  "integrationFlowId": "1120e125-4faf-4c27-8418-ea82d5b857ad",
  "integrationFlowName": "Teste e2e Choice v2",
  "integrationFlowVersion": "1.0.0",
  "name": "REST_Trigger",
  "tag": "Request",
  "message":"{
   "body": "{"teste": "apenas um teste"}",
   "path": "1b277a28726f",
   "method": "POST",
   "headers": {
     "Accept": "*/*",
     "X-Request-Id": "e7dd7de8-16cc-410e-afb7-7ef1550dbba4",
     "User-Agent": "PostmanRuntime/7.29.4",
     "X-Forwarded-Proto": "http",
     "X-Request-Start": "t=1717180375.285",
     "Host": "deploy-b233cf36-0b6b-4eac-9911-1b277a28726f.a1b2c3d4e5.integrations-tst.sensedia-eng.com",
     "Accept-Encoding": "gzip, deflate, br",
     "K-Proxy-Request": "activator",
     "Forwarded": "for=186.209.2.69;proto=http, for=10.251.183.82",
     "X-Forwarded-For": "186.209.2.69, 10.251.183.82, 10.251.171.244",
     "Postman-Token": "a44f3ed7-8c57-4f4a-9443-b07e774a6864",
     "Content-Length": "28",
     "Content-Type": "application/json",
     "X-Envoy-External-Address": "186.209.2.69"
  }
 }"
}"

Conectores

Solicitud

En el ejemplo a continuación, tenemos la ejecución del step "Get_Product_List" del "Fluxo 1" (versión 1.0). Durante esta ejecución, se realizó una solicitud utilizando el método GET a uno endpoint.

"{
  "runtimeExecutionId":"EA66FA90FBEA138-0000000000000004",
  "executionId":null,
  "integrationFlowId":"3333440d-0897-4346-aeb3-ad1d7f6a74fc",
  "integrationFlowName":"Fluxo 1",
  "integrationFlowVersion":"1.0",
  "name":"Get_Product_List",
  "tag":"Request",
  "message":"{
    "url":"https://api-url.com",
    "path":"/Product",
    "method":"GET"
    }"
}"

Respuesta

El ejemplo a continuación proporciona información sobre la ejecución del step "Get_Description", incluyendo detalles sobre la respuesta recibida y su estado.

"{
  "runtimeExecutionId": "EA66FA90FBEA138-0000000000000004",
  "executionId": null,
  "integrationFlowId": "3333440d-0897-4346-aeb3-ad1d7f6a74fc",
  "integrationFlowName": "Fluxo 1",
  "integrationFlowVersion": "1.0",
  "name": "Get_Description",
  "tag": "Response",
  "message": {
    "payload": {
      "@odata.context": "../$metadata#ProductDescription",
      "@odata.metadataEtag": "W/\"20240421022725\"",
      "value": {
        "@odata.etag": "W/\"SADL-201610170000000000000C~20161017000000.0000000\"",
        "Product": "21",
        "Language": "EN",
        "ProductDescription": "Junior Consultant",
        "SAP__Messages": []
      }
    },
    "status": 200
  }
"}"

Choice

El ejemplo muestra información sobre la ejecución del step Choice, incluyendo identificadores relevantes y metadatos. El mensaje indica que el restaurante está actualmente fuera de línea y que hay un error relacionado con un token inválido o vencido.

"{
"runtimeExecutionId":"BD8894B984F316D-0000000000000000",
"executionId":null,
"integrationFlowId":"92324ecb-89ff-4ada-bb7c-80afbcd8ae13\",
"integrationFlowName":"Consulta Mesas Choice EVH\","integrationFlowVersion":"1.0",
"name":"Choice",
"tag":"Input",
"message":"{
    "payload":"{StatusEstabelecimentoResult={Erros=["Token inválido ou vencido."],
    Online=false}}"
    }
"}"

For Each

El step For Each está procesando una lista de productos, y este registro captura la entrada de uno de estos productos. Cada producto en la lista está representado por un objeto JSON, que contiene los detalles de un producto específico: ID del producto, tipo de producto, fecha de creación, etc.

"{
  "runtimeExecutionId": "EA66FA90FBEA138-0000000000000004",
  "executionId": null,
  "integrationFlowId": "3333440d-0897-4346-aeb3-ad1d7f6a74fc",
  "integrationFlowName": "Fluxo 1",
  "integrationFlowVersion": "1.0",
  "name": "For_Each_Product",
  "tag": "Input",
  "message": {
    "input": "[{
      "@odata.etag": "W/"SADL-201610170000000000000C~20161017000000.0000000",
      "Product": "21",
      "ProductType": "SERV",
      "CreationDate": "2016-10-17",
      "CreationTime": "00:00:00",
      "CreationDateTime": "2016-10-17T00:00:00Z",
      "CreatedByUser": "CB9980000160",
      "LastChangeDate": null,
      "LastChangedByUser": "CB9980000160",
      "IsMarkedForDeletion": false,
      "CrossPlantStatus": "\",
      "CrossPlantStatusValidityDate": null,
      "ProductOldID": "\",
      "GrossWeight": 0.0,
      "WeightUnit": "KG",
      "WeightISOUnit": "KGM",
      "ManufacturerNumber": "\",
      "ManufacturerPartProfile": "\",
      "OwnInventoryManagedProduct": "\",
      "SAP_Messages": []
    }]"
  }
"}"
El mensaje ha sido acortado con fines de ejemplo.

JSON Transformation

El step JSON Transformation está procesando información de un logro, y este registro captura la entrada de los datos.

El mensaje traz información de código postal (CEP), barrio, provincia (UF) etc.

{"runtimeExecutionId":"635812E1B03F2FA-0000000000000000",
"executionId":null,
"integrationFlowId":"4fda2927-54dd-4c82-a9bd-de161f59dd13",
"integrationFlowName":"CEP Choice Json Transf",
"integrationFlowVersion":"1.0",
"name":"Json_Transf_2",
"tag":"Input",
"message":"{
  "payload":"{
   cep=13086-510,
   logradouro=Rua Doutor Ricardo Benetton Martins,
   complemento=,
   bairro=Polo II de Alta Tecnologia (Campinas),
   localidade=Campinas,
   uf=SP,
   ibge=3509502,
   gia=2446,
   ddd=19,
   siafi=6291
}"}"}"

En la salida de los datos, vemos el mensaje del JSON transformado:

{"runtimeExecutionId":
"635812E1B03F2FA-0000000000000000\,
"executionId":null,
"integrationFlowId":"4fda2927-54dd-4c82-a9bd-de161f59dd13\",
"integrationFlowName":"CEP Choice Json Transf",
"integrationFlowVersion":"1.0",
"name":"Json_Transf_2",
"tag":"Output",
"message\":"A base da Sensedia fica na Rua Doutor Ricardo Benetton Martins, bairro Polo II de Alta Tecnologia (Campinas), da melhor cidade: Campinas"
"}"
Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]