Nesta página, você encontra informações para monitorar e depurar jobs do Dataproc e entender as mensagens de erro deles.
Monitoramento e depuração de jobs
Use o Google Cloud CLI, a API REST do Dataproc e o console do Google Cloud para analisar e depurar jobs do Dataproc.
CLI da gcloud
Para examinar o status de um job em execução:
gcloud dataproc jobs describe job-id \ --region=region
Para ver a saída do driver do job, consulte Ver a saída do job.
API REST
Chame jobs.get para examinar os campos JobStatus.State, JobStatus.Substate, JobStatus.details, e YarnApplication.
Console
Para ver a saída do driver do job, consulte Ver a saída do job.
Para visualizar o registro do agente dataproc no Logging, selecione Cluster do Dataproc→Nome do cluster→UUID do cluster no seletor de cluster do Explorador de registros.
Em seguida, use o seletor para escolher registros google.dataproc.agent
.
Ver registros do job no Logging
Se um job falhar, você poderá acessar os registros do job no Logging.
Determinar quem enviou um job
A pesquisa dos detalhes de um job mostrará quem enviou esse job no campo submittedBy
. Por exemplo, a saída desse job mostra que user@domain
enviou o job de exemplo para um 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
Mensagens de erro
A tarefa não foi adquirida: indica que o agente do Dataproc no nó mestre não conseguiu adquirir a tarefa do plano de controle. Isso geralmente acontece devido a problemas de falta de memória (OOM, na sigla em inglês) ou rede. Se o job foi executado anteriormente e você não mudou as configurações da rede, o OOM é a causa mais provável, geralmente o resultado do envio de muitos jobs em execução ou de jobs em que os drivers consomem memória significativa. por exemplo, jobs que carregam grandes conjuntos de dados na memória.
Nenhum agente em nós mestres encontrados como ativos: indica que o agente do Dataproc no nó mestre não está ativo e não pode aceitar novos jobs. Isso geralmente acontece devido a problemas de falta de memória (OOM, na sigla em inglês) de rede ou se a VM do nó mestre não está íntegra. Se o job foi executado com sucesso anteriormente e você não alterou as configurações de rede, o OOM é a causa mais provável, que geralmente resulta do envio de muitos jobs em execução simultânea ou jobs com drivers que consomem memória significativa (jobs que carregam grandes conjuntos de dados na memória). Esse problema pode ser resolvido reiniciando (parando e iniciando) o cluster do Dataproc ou repetindo o envio do job mais tarde. Observação:interromper um cluster faz com que todos os jobs em execução falhem.
Task not found: indica que o cluster foi excluído enquanto um job estava em execução. Para evitar esse erro, antes de enviar um job, confirme se o status é
RUNNING
na página Clusters do console do Google Cloud, executando o comandogcloud dataproc clusters describe
ou verificandoClusterStatus.State
com uma solicitação de APIclusters.get
.