En este documento se explica cómo hacer lo siguiente:
- Monitoriza los registros de ejecución.
- Consulta los registros de Logging de Dataform.
- Configurar alertas de invocaciones de flujo de trabajo fallidas
Antes de empezar
Para monitorizar los registros de ejecución, asegúrate de hacer lo siguiente:
En la Google Cloud consola, ve a la página Dataform.
Seleccione o cree un repositorio.
Seleccione o cree un espacio de trabajo de desarrollo.
Activa una ejecución al menos una vez.
Roles obligatorios
Para obtener los permisos que necesitas para ver los registros de ejecución,
pide a tu administrador que te conceda el rol de gestión de identidades y accesos
Editor de Dataform (roles/dataform.editor
)
en el repositorio workflowInvocations.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
El rol de gestión de identidades y accesos Visualizador de registros (roles/logging.viewer
) te da acceso de solo lectura a todas las funciones de Cloud Logging. Para obtener más información sobre los permisos y roles de Gestión de Identidades y Accesos que se aplican a los datos de Logging, consulta el artículo sobre el control de acceso con Gestión de Identidades y Accesos.
Para crear y gestionar alertas basadas en registros, asegúrate de que tu rol de IAM incluya los permisos que se describen en Roles necesarios para crear y usar políticas de alertas basadas en registros.
Monitorizar registros de ejecución
En esta sección se explica cómo ver los registros de ejecución en Dataform.
Puedes ver los registros de todas las ejecuciones que se activan en un repositorio y los registros de las ejecuciones que se han activado en un espacio de trabajo en las últimas 24 horas.
Inspeccionar los registros de ejecución del repositorio
Para ver los registros de todas las ejecuciones activadas en un repositorio, sigue estos pasos:
En la Google Cloud consola, ve a la página Dataform.
Ve a tu repositorio.
Haz clic en Registros de ejecución de flujo de trabajo.
Para ver los detalles de una ejecución, haz clic en ella.
Para ver los detalles de una acción dentro de la ejecución, haz clic en Ver detalles.
Inspeccionar los registros de ejecución del espacio de trabajo
Para ver los registros de las 1000 ejecuciones más recientes que se han activado en un espacio de trabajo en las últimas 24 horas, sigue estos pasos:
En la Google Cloud consola, ve a la página Dataform.
Ve a tu repositorio y selecciona tu espacio de trabajo.
En su espacio de trabajo, haga clic en Ejecuciones.
Para ver los detalles de una ejecución, haz clic en ella.
Para ver los detalles de una acción dentro de la ejecución, haz clic en Ver detalles.
Ver registros de Logging de Dataform
En esta sección se explica cómo ver los registros de Cloud Logging de las invocaciones de flujos de trabajo de Dataform.
Cada invocación de flujo de trabajo de Dataform se registra mediante Logging. El registro se habilita automáticamente para las invocaciones de flujos de trabajo de Dataform, lo que puede generar cargos de facturación de Logging. Para obtener más información, consulta los precios de Dataform.
Ver registros
Para ver los registros, ve a la página Explorador de registros.
Para obtener información sobre cómo filtrar registros de Logging en el Explorador de registros, consulta el artículo Ver registros con el Explorador de registros.
Los registros de Dataform se indexan por repositorio de Dataform.
Formato de registro
Dataform envía mensajes de registro de invocación de flujo de trabajo con el siguiente formato:
{
"insertId": "14ip1tza5",
"jsonPayload": {
"terminalState": "SUCCEEDED",
"workflowInvocationId": "1678383230-ac4ed48c-eb70-4555-b2b0-cda54d13edfa",
"@type": "type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry"
},
"resource": {
"type": "dataform.googleapis.com/Repository",
"labels": {
"repository_id": "repository-name-example",
"resource_container": "PROJECT_ID",
"location": "us-central1"
}
},
"timestamp": "2023-03-09T17:34:06.965981805Z",
"severity": "INFO",
"logName": "projects/project-name-example/logs/dataform.googleapis.com%2Fworkflow_invocation_completion",
"receiveTimestamp": "2023-03-09T17:34:07.362371980Z"
}
Qué se registra
Las entradas de registro de Dataform contienen información útil para monitorizar y depurar las invocaciones de tu flujo de trabajo.
Las entradas de registro contienen los siguientes tipos de información:
receiveTimestamp
release_config_id
repository_id
resource_container
workflow_invocation_id
workflow_config_id
severity
: puede serINFO
,WARNING
oERROR
terminalState
: puede serSUCCEEDED
,CANCELED
oFAILED
timestamp
@type
Configurar métricas y alertas con Cloud Monitoring
Puedes usar Monitoring para observar las tendencias de tus registros y recibir notificaciones cuando se produzcan las condiciones que describas.
Para proporcionar datos de tus registros a Monitoring, Logging te ofrece lo siguiente:
- Métricas basadas en registros, que puede usar de la siguiente manera:
- Para crear políticas de alertas que te notifiquen los cambios a lo largo del tiempo.
- Para crear gráficos que muestren los cambios a lo largo del tiempo.
- Alertas basadas en registros, que te avisan cada vez que aparece un evento específico en un registro.
Para obtener más información sobre las métricas y las alertas basadas en registros, consulta el artículo Monitorizar los registros.
Para saber cómo configurar alertas basadas en registros para invocaciones de flujos de trabajo de Dataform, consulta Configurar alertas para invocaciones de flujos de trabajo fallidas.
Configurar alertas para invocaciones de flujo de trabajo fallidas
En esta sección se explica cómo configurar alertas basadas en registros para invocaciones de flujo de trabajo de Dataform fallidas mediante el Explorador de registros.
Puedes usar Monitoring para observar las tendencias de los registros de Logging de las invocaciones de flujos de trabajo de Dataform y para recibir notificaciones cuando se produzcan las condiciones que describas.
Cada invocación de flujo de trabajo de Dataform se registra mediante Logging. El registro se habilita automáticamente para las invocaciones de flujos de trabajo de Dataform, lo que puede generar cargos de facturación de Logging. Para obtener más información, consulta los precios de Dataform.
Para recibir alertas cuando falle una invocación de flujo de trabajo de Dataform, puedes crear alertas basadas en registros.
Puedes crear alertas basadas en registros desde la página Explorador de registros de la consola de Google Cloud o mediante la API Monitoring. En esta sección se describe cómo crear alertas basadas en registros para los errores de invocación de flujos de trabajo de Dataform mediante el Explorador de registros.
Para configurar alertas basadas en registros para invocaciones de flujo de trabajo de Dataform fallidas, sigue estos pasos:
En la Google Cloud consola, selecciona Logging y, a continuación, Explorador de registros.
En el panel Consulta, selecciona Mostrar consulta e introduce la siguiente consulta:
resource.type="dataform.googleapis.com/Repository" jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry" jsonPayload.terminalState="FAILED"
Esta consulta te avisa de todas las invocaciones de flujo de trabajo de Dataform fallidas.
Opcional: Para filtrar las invocaciones de flujo de trabajo fallidas por una configuración de lanzamiento, añade lo siguiente a la consulta:
jsonPayload.releaseConfigId="RELEASE_CONFIGURATION_ID"
Sustituye
RELEASE_CONFIGURATION_ID
por el ID de la configuración de lanzamiento.Opcional: Para filtrar las invocaciones de flujo de trabajo fallidas por configuración de flujo de trabajo, añade lo siguiente a la consulta:
jsonPayload.workflowConfigId="WORKFLOW_CONFIGURATION_ID"
Sustituye
WORKFLOW_CONFIGURATION_ID
por el ID de la configuración del flujo de trabajo.
La siguiente consulta te avisa cuando falla una invocación de flujo de trabajo de Dataform relacionada tanto con la configuración de lanzamiento
daily
como con la configuración de flujo de trabajoproduction
:resource.type="dataform.googleapis.com/Repository" jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry" jsonPayload.terminalState="FAILED" jsonPayload.releaseConfigId="daily" jsonPayload.workflowConfigId="production"
Opcional: Para validar la consulta, usa Ejecutar consulta en el panel Resultados de la consulta.
En el encabezado del panel Resultados de la consulta, haz clic en Crear alerta. Si la ventana es estrecha, es posible que la opción Crear alerta aparezca en el menú Acciones.
En el panel Detalles de la alerta, asigna un nombre y una descripción a la alerta:
Escribe un nombre para la alerta en el campo Nombre de la alerta. Por ejemplo:
Dataform: workflow failure
.Introduce una descripción de esta alerta. También puedes incluir información que pueda ayudar al destinatario de una notificación a diagnosticar el problema. La siguiente cadena resume el motivo de la alerta:
Log-based alert in project ${project} detected a failed Dataform workflow.
Para obtener información sobre cómo dar formato y adaptar el contenido de este campo, consulta Anotar notificaciones con documentación definida por el usuario.
Para ir al siguiente paso, haz clic en Siguiente.
En el panel Elige los registros que se incluirán en la alerta, comprueba la consulta y los resultados haciendo clic en Vista previa de los registros.
Te recomendamos que crees la consulta en el panel Consulta del Explorador de registros. La consulta que has creado en el panel Consulta también se muestra en este panel.
Si es necesario, puede editar la consulta en este panel. Si edita la consulta, compruebe los resultados haciendo clic en Vista previa de los registros.
Haz clic en Siguiente.
Selecciona el tiempo mínimo entre notificaciones. Este valor te permite controlar el número de notificaciones que recibes de esta alerta si se activa varias veces. En este ejemplo, selecciona 5 min (5 minutos) de las opciones.
Opcional: Selecciona la duración del cierre automático del incidente. De forma predeterminada, la duración del cierre automático de incidencias es de 7 días.
Haz clic en Siguiente.
Selecciona uno o varios canales de notificación para la alerta. En este ejemplo, selecciona un canal de notificación por correo electrónico.
Si ya has configurado un canal de notificaciones por correo electrónico, puedes seleccionarlo en la lista. Si no es así, haz clic en Gestionar canales de notificación y añade un canal de correo electrónico. Para obtener información sobre cómo crear canales de notificación, consulta el artículo Crear y gestionar canales de notificación.
Haz clic en Guardar.
Tu alerta basada en registros ya está lista para probarse. Para obtener instrucciones sobre cómo probar la alerta, consulta Probar la política de alertas basada en registros de ejemplo.
Siguientes pasos
- Consulta información sobre cómo activar ejecuciones manualmente.
- Consulta cómo programar ejecuciones con Workflows y Cloud Scheduler.
- Consulta cómo configurar anulaciones de compilación con la API Dataform.
- Consulta información sobre los registros de auditoría de Cloud y la monitorización.
- Consulta información sobre los precios de Logging.