Envía registros a Cloud Logging

Los flujos de trabajo generan automáticamente registros de ejecución para las ejecuciones de flujo de trabajo en Cloud Logging.

También puedes habilitar el registro de llamadas. También puedes crear registros personalizados que usen la función sys.log en tu fuente. El registro de llamadas y los registros personalizados te permiten controlar cuándo se envían los registros a Logging durante la ejecución de un flujo de trabajo y pueden ser muy útiles para depurar tu flujo de trabajo.

Para obtener más información, incluido el protocolo de registro engine_call y executions_system consulta este repositorio de GitHub.

Registros de ejecución

Cada ejecución de flujo de trabajo activa automáticamente al menos dos registros de ejecución: una al inicio de una ejecución y otra al final.

Para obtener más información sobre los registros de la plataforma Workflows que están disponibles en Logging, consulta los registros de la plataforma de Google Cloud.

Registro de llamadas

Puedes establecer una marca para que se registre cada paso de llamada durante la ejecución de tu flujo de trabajo y se muestren los nombres de los pasos, los nombres de las funciones, los argumentos de las funciones y las respuestas de las llamadas. También puedes registrar excepciones que se detectan o que detienen una llamada.

Solo se registran los pasos explícitos de la llamada. por ejemplo, llamadas a subflujos de trabajo o las funciones de biblioteca. Llamadas desde las expresiones o desde la interfaz funciones de biblioteca (por ejemplo, http.post en sys.log) y conectores internos no se registran.

Los encabezados de la solicitud HTTP Authorization se ocultan en los registros de las llamadas HTTP.

Al aplicar el registro de llamadas a un definición del flujo de trabajo o a la la ejecución de un flujo de trabajo puedes especificar el nivel de registro requerido. El nivel de registro de ejecución toma prioridad sobre cualquier nivel de registro de flujo de trabajo, a menos que el nivel de registro de ejecución no sea especificado (predeterminado); en ese caso, se aplicará el nivel de registro de flujo de trabajo.

Ten en cuenta que el límite de tamaño de las entradas de registro establecido por Cloud Logging también se aplica al registro de llamadas.

Registros personalizados

Para crear una entrada de registro en el registro durante una ejecución de flujo de trabajo, define un paso en el flujo de trabajo que realice una llamada a la función sys.log de la biblioteca estándar:

YAML

  - step1:
      assign:
          - varA: "Hello"
          - varB: "World"
  - logStep:
      call: sys.log
      args:
          text: TEXT
          severity: SEVERITY 
  - step2:
      return: ${varA + " " + varB}
    

JSON

    [
      {
        "step1": {
          "assign": [
            {
              "varA": "Hello"
            },
            {
              "varB": "World"
            }
          ]
        }
      },
      {
        "logStep": {
          "call": "sys.log",
          "args": {
            "text": "TEXT",
            "severity": "SEVERITY"
          }
        }
      },
      {
        "step2": {
          "return": "${varA + " " + varB}"
        }
      }
    ]
      

Cuando crees una entrada de registro, define lo siguiente:

  • TEXT: obligatorio. El texto que se registrará. Si necesitas Para registrar los valores de un mapa, usa ${json.encode_to_string(myMap)}.
  • SEVERITY: es opcional. El nivel de gravedad del registro entrada. Por ejemplo, INFO, WARNING o CRITICAL.

Para obtener más información, consulta la referencia de la función sys.log.

Permisos necesarios

Para aplicar el registro de llamadas o enviar registros personalizados a Logging, un flujo de trabajo debe estar asociado con una cuenta de servicio que incluya la permiso logging.logEntries.create (por ejemplo, roles/logging.logWriter de seguridad en la nube). Si necesitas cambiar la cuenta de servicio actualizada con tu flujo de trabajo, consulta Actualiza un flujo de trabajo. Para obtener más información sobre cómo crear cuentas de servicio y asignar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Ver registros de flujo de trabajo

Puedes ver los registros en Workflows o Logging. Para ver los registros de un solo flujo de trabajo, usa la pestaña Registros en Workflows Para obtener una vista agregada de los registros de todos de tus flujos de trabajo, usa la página Explorador de registros en Logging.

Cómo ver registros en Flujos de trabajo

Para ver los registros de un flujo de trabajo en Workflows, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Workflows.

    Ir a Workflows

  2. Si quieres acceder a los registros de un flujo de trabajo, haz clic en el nombre del flujo de trabajo para ir a la página de detalles.

  3. Para ver los registros, haz clic en Registros.

  4. Para filtrar los registros por gravedad, en la lista Predeterminada, selecciona el tipo de registro que se mostrará. De forma predeterminada, se muestran los registros de todos los niveles de gravedad.

La pestaña Registros en la página Detalles de un flujo de trabajo muestra los siguientes tipos de registros:

  • Registros enviados a Logging

  • Registros de auditoría de cualquier operación realizada en el flujo de trabajo, como las actualizaciones de la definición del flujo de trabajo

Visualiza registros en Logging

Para ver los registros en Logging, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Explorador de registros:

    Ir al Explorador de registros

  2. En el Compilador de consultas, haz clic en Recurso y, luego, ingresa workflow. Selecciona Cloud Workflow en la lista y haz clic en Agregar.

    Registro del flujo de trabajo

  3. Haz clic en Ejecutar consulta.

Para obtener más información sobre la visualización de registros en Logging, consulta Usa el Explorador de registros.

¿Qué sigue?