Cette page fournit des informations pour vous aider à surveiller et à déboguer les tâches Dataproc, et à comprendre les messages d'erreur des tâches Dataproc.
Surveillance et débogage des tâches
Utilisez la Google Cloud CLI, l'API REST Dataproc et la console Google Cloud pour analyser et déboguer les tâches Dataproc.
CLI gcloud
Pour examiner le statut d'une tâche en cours d'exécution, procédez comme suit :
gcloud dataproc jobs describe job-id \ --region=region
Pour afficher les résultats du pilote de jobs, consultez Affichez les résultats du job.
API REST
Appelez jobs.get pour examiner les champs JobStatus.State, JobStatus.Substate, JobStatus.details et YarnApplication d'une tâche.
Console
Pour afficher les résultats du pilote de jobs, consultez Affichez les résultats du job.
Pour afficher le journal de l'agent Dataproc dans Logging, procédez comme suit : Sélectionnez Cluster Dataproc → Nom du cluster → UUID du cluster. à partir du sélecteur de cluster de l'explorateur de journaux.
Utilisez ensuite le sélecteur de journaux pour sélectionner les journaux google.dataproc.agent
.
Afficher les journaux de jobs dans Logging
Si une tâche échoue, vous pouvez accéder aux journaux des tâches dans Logging.
Déterminer l'émetteur d'une tâche
La recherche des détails d'une tâche affichera l'émetteur de la tâche dans le champ submittedBy
. Par exemple, le résultat de la tâche suivant montre que user@domain
a envoyé l'exemple de tâche à un cluster.
... placement: clusterName: cluster-name clusterUuid: cluster-uuid reference: jobId: job-uuid projectId: project status: state: DONE stateStartTime: '2018-11-01T00:53:37.599Z' statusHistory: - state: PENDING stateStartTime: '2018-11-01T00:33:41.387Z' - state: SETUP_DONE stateStartTime: '2018-11-01T00:33:41.765Z' - details: Agent reported job success state: RUNNING stateStartTime: '2018-11-01T00:33:42.146Z' submittedBy: user@domain
Messages d'erreur
La tâche n'a pas été acquise:indique que Dataproc sur le nœud maître n'a pas pu acquérir la tâche à partir du plan de contrôle. Cela se produit souvent en raison de problèmes de mémoire saturée ou de réseau. Si la tâche a bien été exécutée précédemment et que vous n'avez pas modifié les paramètres de configuration du réseau, les problèmes de mémoire saturée sont la cause la plus probable, souvent le résultat de l'envoi de nombreuses tâches en cours d'exécution simultanées ou de tâches dont les pilotes consomment une mémoire importante (par exemple, les tâches qui chargent de grands ensembles de données en mémoire).
Aucun agent actif sur le ou les nœuds maîtres n'a été trouvé:indique que le L'agent Dataproc sur le nœud maître n'est pas actif et ne peut pas accepter de nouvelles missions. Cela se produit souvent en raison de problèmes de mémoire saturée ou de réseau, ou si la VM du nœud maître n'est pas opérationnelle. Si la tâche s'est exécutée correctement précédemment et que vous n'avez pas modifié les paramètres de configuration réseau, la mémoire saturée (OOM) est la cause la plus probable, qui résulte souvent de l'envoi de nombreuses tâches exécutées simultanément ou de tâches dont les pilotes consomment une quantité importante de mémoire (tâches qui chargent de grands ensembles de données dans la mémoire). Pour résoudre ce problème, redémarrez (arrêtez, puis démarrez) le cluster Dataproc ou réessayez d'envoyer la tâche plus tard. Remarque : L'arrêt d'un cluster entraîne l'échec de toutes les tâches en cours d'exécution.
Tâche introuvable:indique que le cluster a été supprimé alors qu'une tâche en cours d'exécution. Pour éviter cette erreur, vérifiez le cluster avant d'envoyer une tâche l'état est
RUNNING
en affichant l'état du cluster sur le la page Clusters de la console Google Cloud, exécution de lagcloud dataproc clusters describe
ou en vérifiantClusterStatus.State
avec unclusters.get
Requête API.