Ce document vous explique comment :
- Surveillez les journaux d'exécution.
- Affichez les journaux Logging pour Dataform.
- Configurez des alertes pour les échecs d'appel de workflow.
Avant de commencer
Pour surveiller les journaux d'exécution, assurez-vous de procéder comme suit :
Dans la console Google Cloud , accédez à la page Dataform.
Sélectionnez ou créez un dépôt.
Sélectionnez ou créez un espace de travail de développement.
Déclenchez une exécution au moins une fois.
Rôles requis
Pour obtenir les autorisations nécessaires pour afficher les journaux d'exécution, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Dataform (roles/dataform.editor
) sur le dépôt workflowInvocations.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Le rôle IAM Lecteur de journaux (roles/logging.viewer
) vous donne un accès en lecture seule à toutes les fonctionnalités de Cloud Logging. Pour en savoir plus sur les autorisations et les rôles Identity and Access Management qui s'appliquent aux données Logging, consultez Contrôle des accès avec IAM.
Pour créer et gérer des alertes basées sur les journaux, assurez-vous que votre rôle IAM inclut les autorisations décrites dans Rôles requis pour créer et utiliser des règles d'alerte basées sur les journaux.
Surveiller les journaux d'exécution
Cette section vous explique comment afficher les journaux d'exécution dans Dataform.
Vous pouvez afficher les journaux de toutes les exécutions déclenchées dans un dépôt, ainsi que les journaux des exécutions déclenchées dans un espace de travail au cours des dernières 24 heures.
Inspecter les journaux d'exécution du dépôt
Pour afficher les journaux de toutes les exécutions déclenchées dans un dépôt, procédez comme suit :
Dans la console Google Cloud , accédez à la page Dataform.
Accédez à votre dépôt.
Cliquez sur Journaux d'exécution de workflow.
Pour afficher les détails d'une exécution, cliquez dessus.
Pour afficher les détails d'une action dans l'exécution, cliquez sur Afficher les détails.
Inspecter les journaux d'exécution de l'espace de travail
Pour afficher les journaux des 1 000 exécutions les plus récentes déclenchées dans un espace de travail au cours des dernières 24 heures, procédez comme suit :
Dans la console Google Cloud , accédez à la page Dataform.
Accédez à votre dépôt et sélectionnez votre espace de travail.
Dans votre espace de travail, cliquez sur Exécutions.
Pour afficher les détails d'une exécution, cliquez dessus.
Pour afficher les détails d'une action dans l'exécution, cliquez sur Afficher les détails.
Afficher les journaux Logging pour Dataform
Cette section vous explique comment afficher les journaux Cloud Logging pour les appels de workflow Dataform.
Chaque appel de workflow Dataform est journalisé à l'aide de Logging. La journalisation est automatiquement activée pour les appels de workflow Dataform, ce qui peut entraîner des frais de facturation Logging. Pour en savoir plus, consultez la page Tarifs de Dataform.
Afficher les journaux
Pour afficher les journaux, accédez à la page Explorateur de journaux.
Pour savoir comment filtrer les journaux Logging dans l'explorateur de journaux, consultez Afficher les journaux à l'aide de l'explorateur de journaux.
Les journaux Dataform sont indexés par dépôt Dataform.
Format du journal
Dataform envoie des messages de journal d'appel de workflow au format suivant :
{
"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"
}
Contenu consigné
Les entrées de journal Dataform contiennent des informations utiles pour surveiller et déboguer les appels de workflow.
Il s'agit des types d'informations suivants :
receiveTimestamp
release_config_id
repository_id
resource_container
workflow_invocation_id
workflow_config_id
severity
: peut êtreINFO
,WARNING
ouERROR
terminalState
: peut êtreSUCCEEDED
,CANCELED
ouFAILED
timestamp
@type
Configurer des métriques et des alertes avec Cloud Monitoring
Vous pouvez utiliser Monitoring pour observer les tendances dans vos journaux et vous avertir lorsque les conditions que vous décrivez apparaissent.
Pour fournir à Monitoring des données provenant de vos journaux, Logging vous offre les avantages suivants :
- Les métriques basées sur les journaux, que vous pouvez utiliser comme suit :
- Créer des règles d'alerte qui vous informent des modifications au fil du temps.
- Créer des graphiques qui affichent les modifications au fil du temps.
- Des alertes basées sur les journaux, qui vous avertissent chaque fois qu'un événement spécifique apparaît dans un journal.
Pour en savoir plus sur les métriques et les alertes basées sur les journaux, consultez Surveiller vos journaux.
Pour savoir comment configurer des alertes basées sur les journaux pour les appels de workflow Dataform, consultez Configurer des alertes pour les appels de workflow ayant échoué.
Configurer des alertes pour les invocations de workflow ayant échoué
Cette section explique comment configurer des alertes basées sur les journaux pour les échecs d'invocations de workflows Dataform à l'aide de l'explorateur de journaux.
Vous pouvez utiliser Monitoring pour observer les tendances dans les journaux Logging des appels de workflow Dataform et vous avertir lorsque les conditions que vous décrivez se produisent.
Chaque appel de workflow Dataform est journalisé à l'aide de Logging. La journalisation est automatiquement activée pour les appels de workflow Dataform, ce qui peut entraîner des frais de facturation Logging. Pour en savoir plus, consultez la page Tarifs de Dataform.
Pour recevoir des alertes en cas d'échec d'une invocation de workflow Dataform, vous pouvez créer des alertes basées sur les journaux.
Vous pouvez créer des alertes basées sur les journaux à partir de la page Explorateur de journaux de la console Google Cloud ou en utilisant l'API Monitoring. Cette section explique comment créer des alertes basées sur les journaux en cas d'échec de l'appel de workflow Dataform à l'aide de l'explorateur de journaux.
Pour configurer des alertes basées sur les journaux pour les échecs d'invocations de workflow Dataform, procédez comme suit :
Dans la console Google Cloud , sélectionnez Logging, puis Explorateur de journaux.
Dans le volet Requête, sélectionnez Afficher la requête et saisissez la requête suivante :
resource.type="dataform.googleapis.com/Repository" jsonPayload.@type="type.googleapis.com/google.cloud.dataform.logging.v1.WorkflowInvocationCompletionLogEntry" jsonPayload.terminalState="FAILED"
Cette requête vous alerte de toutes les invocations de workflow Dataform ayant échoué.
Facultatif : Pour filtrer les appels de workflow ayant échoué par configuration de version, ajoutez ce qui suit à la requête :
jsonPayload.releaseConfigId="RELEASE_CONFIGURATION_ID"
Remplacez
RELEASE_CONFIGURATION_ID
par l'ID de la configuration de version.Facultatif : Pour filtrer les appels de workflow ayant échoué par configuration de workflow, ajoutez ce qui suit à la requête :
jsonPayload.workflowConfigId="WORKFLOW_CONFIGURATION_ID"
Remplacez
WORKFLOW_CONFIGURATION_ID
par l'ID de la configuration du workflow.
La requête suivante vous alerte lorsqu'un appel de workflow Dataform lié à la fois à la configuration de version
daily
et à la configuration de workflowproduction
échoue :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"
Facultatif : Pour valider la requête, utilisez Exécuter la requête dans le volet Résultats de la requête.
Dans l'en-tête du volet Résultats de la requête, cliquez sur Créer une alerte. Lorsque votre fenêtre est étroite, l'option Créer une alerte peut s'afficher dans le menu Actions.
Dans le volet Détails de l'alerte, attribuez un nom et une description à l'alerte :
Saisissez un nom pour l'alerte dans le champ Nom de l'alerte. Exemple :
Dataform: workflow failure
.Saisissez une description pour cette alerte. Vous pouvez également inclure des informations susceptibles d'aider le destinataire d'une notification à diagnostiquer le problème. La chaîne suivante résume le motif de l'alerte :
Log-based alert in project ${project} detected a failed Dataform workflow.
Pour obtenir des informations sur la mise en forme et la personnalisation du contenu de ce champ, consultez Annoter les notifications avec une documentation définie par l'utilisateur.
Pour passer à l'étape suivante, cliquez sur Suivant.
Dans le volet Sélectionner les journaux à inclure dans l'alerte, vérifiez la requête et les résultats en cliquant sur Prévisualiser les journaux.
Nous vous recommandons de créer la requête dans le volet Requête de l'explorateur de journaux. La requête que vous avez créée dans le volet Requête s'affiche également dans ce volet.
Si nécessaire, vous pouvez modifier la requête dans ce volet. Si vous modifiez la requête, vérifiez les résultats en cliquant sur Prévisualiser les journaux.
Cliquez sur Suivant.
Sélectionnez le délai minimal entre les notifications. Cette valeur vous permet de contrôler le nombre de notifications que vous recevez de cette alerte si elle est déclenchée plusieurs fois. Pour cet exemple, sélectionnez l'option 5 min.
(Facultatif) Sélectionnez la durée de fermeture automatique de l'incident. Par défaut, la durée de clôture automatique des incidents est définie sur sept jours.
Cliquez sur Suivant.
Sélectionnez un ou plusieurs canaux de notification pour votre alerte. Pour cet exemple, sélectionnez un canal de notification par e-mail.
Si vous avez déjà configuré un canal de notification par e-mail, vous pouvez le sélectionner dans la liste. Si ce n'est pas le cas, cliquez sur Gérer les canaux de notification et ajoutez un canal de notification par e-mail. Pour en savoir plus sur la création de canaux de notification, consultez Créer et gérer des canaux de notification.
Cliquez sur Enregistrer.
Votre alerte basée sur les journaux est maintenant prête à être testée. Pour savoir comment tester l'alerte, consultez Tester l'exemple de règle d'alerte basée sur les journaux.
Étapes suivantes
- Découvrez comment déclencher manuellement des exécutions.
- Découvrez comment planifier des exécutions avec Workflows et Cloud Scheduler.
- Découvrez comment configurer des remplacements de compilation avec l'API Dataform.
- En savoir plus sur Cloud Audit Logging et Monitoring
- En savoir plus sur les tarifs de Logging