Ce document vous explique comment :
- Surveiller les journaux d'exécution
- Afficher les journaux Logging pour Dataform
- Configurer des alertes pour les appels de workflows ayant échoué
Avant de commencer
Pour surveiller les journaux d'exécution, procédez comme suit :
Dans la Google Cloud console, 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 les rôles IAM suivants :
-
Éditeur Dataform (
roles/dataform.editor) sur le dépôt Dataform où les exécutions de workflows sont suivies -
Vérification de la configuration d'une exécution :
Utilisateur du compte de service (
roles/iam.serviceAccountUser) sur le compte de service personnalisé
Pour en savoir plus sur l'attribution de rôles, consultez 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 la page
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 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 Google Cloud console, 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 Google Cloud console, 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 explique comment afficher les journaux Cloud Logging pour les appels de workflows Dataform.
Chaque appel de workflow Dataform est consigné à l'aide de Logging. Logging est automatiquement activé pour les appels de workflows Dataform, ce qui peut entraîner des frais de facturation Logging. Pour en savoir plus, consultez Tarifs de Dataform.
Afficher les journaux
Pour afficher les journaux, accédez à la page Explorateur de journaux.
Pour en savoir plus sur le filtrage des journaux Logging dans l'explorateur de journaux, consultez la page 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 vos appels de workflows.
Il s'agit des types d'informations suivants :
receiveTimestamprelease_config_idrepository_idresource_containerworkflow_invocation_idworkflow_config_idseverity: peut êtreINFO,WARNINGouERRORterminalState: peut êtreSUCCEEDED,CANCELEDouFAILEDtimestamp@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 des données à Monitoring à partir de vos journaux, Logging vous propose les options suivantes :
- 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 la page Surveiller vos journaux.
Pour découvrir comment configurer des alertes basées sur les journaux pour les appels de workflows Dataform, consultez la section Configurer des alertes pour les appels de workflows ayant échoué.
Configurer des alertes pour les appels de workflows ayant échoué
Cette section explique comment configurer des alertes basées sur les journaux pour les appels de workflows Dataform ayant échoué à l'aide de l'explorateur de journaux.
Vous pouvez utiliser Monitoring pour observer les tendances dans les journaux Logging pour les appels de workflows Dataform et vous avertir lorsque les conditions que vous décrivez apparaissent.
Chaque appel de workflow Dataform est consigné à l'aide de Logging. Logging est automatiquement activé pour les appels de workflows Dataform, ce qui peut entraîner des frais de facturation Logging. Pour en savoir plus, consultez Tarifs de Dataform.
Pour recevoir des alertes lorsqu'un appel de workflow Dataform échoue, 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 Google Cloud console , ou en utilisant l' API Monitoring. Cette section explique comment créer des alertes basées sur les journaux pour les échecs d'appels de workflows Dataform à l'aide de l'explorateur de journaux.
Pour configurer des alertes basées sur les journaux pour les appels de workflows Dataform ayant échoué, procédez comme suit :
Dans la Google Cloud console, sélectionnez Logging, puis sélectionnez Explorateur de journaux.
Dans le volet Requête , sélectionnez Afficher la requête , puis 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 tous les appels de workflows Dataform ayant échoué.
Facultatif : Pour filtrer les appels de workflows ayant échoué par configuration de version, ajoutez les éléments suivants à la requête :
jsonPayload.releaseConfigId="RELEASE_CONFIGURATION_ID"Remplacez
RELEASE_CONFIGURATION_IDpar l'ID de la configuration de version.Facultatif : Pour filtrer les appels de workflows ayant échoué par configuration de workflow, ajoutez les éléments suivants à la requête :
jsonPayload.workflowConfigId="WORKFLOW_CONFIGURATION_ID"Remplacez
WORKFLOW_CONFIGURATION_IDpar l'ID de la configuration de workflow.
La requête suivante vous alerte lorsqu'un appel de workflow Dataform lié à la fois à la configuration de version
dailyet à 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 la raison 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 la section 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 fermeture automatique de l'incident est de 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 plus d'informations sur la création de canaux de notification, consultez la page 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 la section Tester l'exemple de règle d'alerte basée sur les journaux.
Étape suivante
- Découvrez comment déclencher des exécutions manuellement.
- Découvrez comment planifier des exécutions avec Workflows et Cloud Scheduler.
- Découvrez comment configurer des remplacements de compilation avec l'API Dataform.
- Découvrez Cloud Audit Logs et Monitoring.
- Découvrez les tarifs de Logging.