PT EN
Voltar ao site

Scheduler — aba Job Monitor

Uma carga terminou, outra está no meio, uma terceira roda de madrugada sem ninguém olhando. A aba Job Monitor é a parte do Scheduler que responde às três perguntas de quem opera: o que está rodando agora, o que vai rodar e o que já rodou — e, para cada execução encerrada, o que exatamente aconteceu dentro dela.

Fica em DATTA Extract › Scheduler, aba Job Monitor.

Uma tela, três abas

AbaResponde
*Calendário*o que já rodou e o que vai rodar, no mês; e onde se monta a repetição
Job Monitor (esta página)o que está rodando agora, o histórico e o detalhe de cada execução
*Motor*quem dispara as cargas, o que ficou para trás e a pausa por pacote — operada por quem administra a plataforma

Endereços antigos continuam valendo. view=pipeline-monitor abre o Scheduler já nesta aba; view=pipeline-agenda e view=datta-scheduler abrem nas outras duas.

Esta aba não tem visualizador de logs. Ela mostra o que a execução registrou — status, duração, alertas, erro com a etapa e o detalhamento por nó. Se você procura a linha a linha do que o motor fez, ela não está aqui: veja "Onde procurar quando o detalhe não basta", no fim da página.


Os cartões de resumo

O topo da aba traz quatro cartões, e eles acompanham você nas três visões internas (Monitor, Agendados e Histórico):

CartãoO que conta
Em Execuçãopacotes rodando neste momento
Agendadospacotes com agendamento ativo
Executados Hojeexecuções iniciadas hoje
Com Falhaexecuções que terminaram com falha

Abaixo do número, cada cartão traz uma frase curta dizendo o que ele conta. Leia essa frase antes de tirar conclusão: ela é o recorte da contagem, e é o que separa "duas falhas" de "duas falhas hoje".

Quando você chega aqui a partir de um pacote específico (veja "Vir de um pacote", abaixo), os cartões contam daquele pacote, não da plataforma inteira.


Visão Monitor — o que está rodando agora

Cada execução ativa aparece como um cartão com:

  • o nome do pacote e a hora em que a execução começou;
  • um cronômetro que corre enquanto ela roda;
  • quem disparou a carga;
  • o percurso do fluxo, com a etapa atual destacada;
  • a barra de progresso da execução.

Dois botões acompanham o cartão:

BotãoO que faz
Detalhesabre, ali mesmo, o detalhamento por nó da execução em curso
Cancelarpede confirmação e, confirmada, solicita o encerramento da carga

Detalhes vale também para a carga dividida entre vários trabalhadores: cada linha soma o que os pedaços já reportaram naquele momento, e o número é contagem de linhas — nunca porcentagem, porque o motor só sabe quantas linhas existem depois de ler a origem inteira. Uma caixa só aparece concluída quando todos os pedaços que passaram por ela terminaram; se um deles falhou, ela aparece com falha, e não concluída. Aqui os números avançam em passos de alguns segundos — para o acompanhamento mais fino, o lugar é o passo a passo do editor (ver "Onde procurar quando o detalhe não basta").

Cancelar pede confirmação antes — não é um clique de ida sem volta. O cancelamento é uma solicitação: a execução encerra no ponto seguro seguinte, e não no instante do clique. O resultado aparece no histórico como execução cancelada — cancelada, nunca "com falha".

O pedido alcança a carga onde ela estiver. Não importa se a execução está sendo tocada por outra instância da plataforma, nem se ela foi dividida entre vários trabalhadores: o pedido vale para todos eles. Os pedaços que ainda não começaram são abandonados, e os que estão no meio param no ponto seguro seguinte.

Por que não para no instante do clique. As gravações no destino são feitas em lote. Cortar no meio de um lote deixaria o destino gravado pela metade, sem ninguém saber onde parou — e essa é a única coisa pior que esperar alguns segundos. Por isso a carga fecha o lote em andamento e só então encerra. Em carga grande, esse intervalo pode ser de alguns segundos a alguns minutos: o cronômetro do cartão continua correndo até o encerramento de fato, e é ele que diz quando acabou.

O que fica gravado quando a carga para no meio. O que já foi escrito não é desfeito — cancelar não é desfazer. Em carga para o grafo, isso costuma significar nós gravados sem as ligações entre eles, porque as ligações são criadas depois dos nós, e sem o passo de pós-carga, que roda no fim. O detalhe da execução registra até onde ela chegou. Na prática: trate a carga cancelada como incompleta, e não como parcial-mas-consistente. Repetir a carga é seguro nos destinos que gravam por chave (grafo e busca), porque reprocessar a mesma linha não duplica; num destino que apenas acrescenta linhas, confira o que ficou antes de disparar de novo.

Quando não há nada rodando, a seção diz isso — "Nenhum pipeline em execução no momento" — em vez de mostrar uma lista vazia sem explicação.

Logo abaixo, a mesma visão já traz o histórico, para você não precisar trocar de visão só para conferir a última execução.

Execução cujo processo caiu

Uma carga pode acabar sem ninguém para dar a notícia: o processo que a executava deixa de existir — o serviço foi reiniciado, o disco encheu, a máquina caiu. Antes, essa execução ficava em execução para sempre, e o cartão Em Execução contava uma carga que não existia mais.

Agora a plataforma reconcilia essas execuções: quem não tem mais processo vivo recebe status de encerramento com o motivo, sai da lista de ativas e aparece no histórico como qualquer outra execução encerrada. O espaço em disco que ela estava usando para os arquivos temporários também é liberado.

A liberação do disco espera o arquivo ficar sem uso — e isso é de propósito. Apagar um arquivo que ainda está aberto por alguém não devolve espaço nenhum: o sistema só recupera o espaço quando o último uso termina. Apagar antes daria a impressão de que a limpeza funcionou enquanto o disco continuaria cheio, que é o pior dos dois mundos para quem está diagnosticando.


Visão Agendados — o que vai rodar

Lista os pacotes que têm agendamento ativo, com:

ColunaConteúdo
Pipelinenome do pacote
Agendamentoa repetição em português ("Todo dia às 04:30")
Próxima Execuçãodata e hora da próxima carga
Último Statuscomo terminou a execução anterior
AçãoExecutar Agora, que dispara a carga fora do horário

A descrição e o horário vêm do agendador, não de uma segunda conta. O que a tela mostra é calculado pelo mesmo código que dispara a carga — se aqui diz 04:30, é 04:30 que vai rodar.

Repetição que não tem equivalente entre as formas do editor aparece como "Agendamento personalizado", e continua disparando normalmente. Para montar ou alterar a repetição, o lugar é a aba Calendário — esta visão é de leitura, mais o disparo avulso. Para pausar o pacote sem apagar o agendamento, o lugar é a aba Motor.

Sem nenhum pacote agendado, a visão explica isso e aponta o caminho, em vez de ficar em branco.


Visão Histórico — o que já rodou

A tabela lista as execuções encerradas, da mais recente para a mais antiga:

ColunaConteúdo
Pipelinepacote a que a execução pertence
Statusconcluída, com falha, cancelada, na fila, em execução
Disparado porquem ou o que iniciou a carga
Duraçãotempo total
Início / Fimdata e hora
AçõesVer, que abre o detalhe

Acima da tabela ficam a busca por nome do pacote, o filtro de status e a contagem de registros que sobraram do filtro. Todo cabeçalho é clicável e ordena por aquela coluna; a tabela é paginada de dez em dez.

Clicar em qualquer linha abre o detalhe — não é preciso mirar no botão.

No celular, as colunas secundárias saem da tabela e ficam no detalhe; Pipeline, Status, Duração e Ações continuam visíveis, e a tabela rola na horizontal quando precisa. As abas do Scheduler, no celular, ficam roláveis na horizontal, com área de toque cheia — nenhuma delas some do alcance.


O detalhe da execução

O detalhe abre num painel lateral, com o nome do pacote e o status no topo. Ele tem, em ordem:

Metadados da execução — identificador, versão do pacote, quem disparou, duração total, início e término.

Erro — só aparece quando a execução falhou. Traz a causa e a etapa em que ela aconteceu (conexão, extração, transformação ou gravação), que é o que diz onde olhar primeiro.

Fontes acessadas — as origens que a execução realmente leu.

Alertas — os avisos não fatais da execução, cada um com a etapa e o código. Uma execução pode terminar Concluída e ainda assim não ter feito o que você esperava; é aqui que isso aparece. O significado de cada aviso está em DATTA Extract.

Registros descartados — quantas linhas ficaram pelo caminho em filtros, deduplicação ou regras de qualidade. É um número diferente de "linhas com falha".

Execução por Nó — quanto cada caixa do fluxo processou: nó, status, linhas de entrada, linhas de saída e duração. A carga dividida entre vários trabalhadores também aparece aqui: cada linha traz o total daquela caixa no fluxo inteiro — a soma do que cada pedaço processou —, e não o número de um trabalhador isolado. A duração é a do pedaço mais demorado daquela caixa, não a soma dos pedaços: somar o tempo de vários trabalhadores faria uma carga de doze minutos aparecer como duas horas.

Quando não há detalhamento por nó

Nem toda execução registra o passo a passo por nó. É o caso das cargas divididas entre vários trabalhadores que rodaram antes desta versão: naquele momento o coordenador não guardava a quebra por caixa, e o dado não existe para ser mostrado depois — não há como reconstruí-lo. Execuções divididas a partir daqui registram o detalhamento normalmente. Quando ele falta, a tela diz exatamente isso:

Esta execução não registrou detalhamento por nó.

Este é o ponto mais importante da tela e vale ser explícito: quando o dado não existe, a tela mostra o vazio — nunca um número plausível no lugar dele. Esta é a tela em que se decide se uma carga deu certo, e um valor inventado aqui vira decisão errada lá na frente. Se você viu números por nó nesta tabela antes de agosto de 2026, desconfie deles: naquele período a tabela exibia uma cadeia de nós de demonstração para toda execução, com nomes e contagens fixos. Nada do que ela mostrava era medição.


Vir de um pacote

Na galeria de Pacotes, a ação Ver histórico de um pacote abre esta aba já filtrada por ele: aparece uma etiqueta com o nome do pacote ao lado do título do histórico, e cartões e tabela passam a contar só aquele pacote. Clicar no × da etiqueta devolve a visão de todos.

O foco no pacote acompanha a troca de aba: sair para o Calendário e voltar mantém o mesmo pacote em foco, e o endereço da tela carrega tanto a aba quanto o pacote — dá para copiar o link e mandar para outra pessoa.


Atualização, conexão e erro

A aba se atualiza sozinha, em ciclo, e o indicador AO VIVO no cabeçalho mostra que o ciclo está de pé. O botão Atualizar força a releitura na hora.

Quando a tela está oculta — outra aba do navegador, outra área da plataforma — o ciclo para. Ele volta assim que a tela reaparece. Não faz sentido consultar o servidor de dez em dez segundos para uma tela que ninguém está olhando. Pelo mesmo motivo, o ciclo de uma aba do Scheduler não roda enquanto você está em outra: só a aba visível consulta o servidor.

Se a leitura falhar:

  • com a tela ainda vazia, aparece a mensagem "Não foi possível carregar o monitor", o motivo e um botão Tentar novamente;
  • com dados já em tela, a lista continua visível e uma faixa âmbar avisa que os dados podem estar desatualizados, com um botão para atualizar. A tela não finge estar viva enquanto não está.

Onde procurar quando o detalhe não basta

Como esta aba não tem visualizador de logs, o caminho é:

  1. O erro do detalhe — causa e etapa. Resolve a maioria dos casos.
  2. Os alertas da execução — carga que "deu certo" mas gravou zero costuma estar explicada aqui.
  3. A aba Motor*** — quando a suspeita é de que a carga nem chegou a disparar*: ela mostra o estado do agendador, o último disparo e as janelas perdidas de cada pacote.
  4. O passo a passo do editor — abrir o pacote no DATTA Extract durante (ou logo após) a execução mostra o acompanhamento nó a nó, com muito mais detalhe do que a tabela de resumo. Ele é guardado por algumas horas depois do fim.
  5. *Execuções em segundo plano* — a visão transversal, junto com triagens e uploads.

Permissões

AçãoPermissão
Abrir a tela e ler execuçõesPIPELINE_VIEW
Executar Agora e CancelarDATTAX_EXECUTE (ou PIPELINE_EXECUTE)
Operar a aba Motor (pausar, retomar)permissão de administração de plataforma — ver Motor

Quem consegue disparar consegue parar: as duas ações exigem o mesmo par de permissões. Não existe o caso de alguém iniciar uma carga que depois não consiga interromper.

Sem a permissão de leitura, a plataforma responde com uma negação explicada em português — não com uma lista vazia que se confunde com "não houve execução". Ver RBAC.

A tela também pode ser liberada ou bloqueada por workspace, junto com as demais telas do Extract. Como as três telas antigas viraram uma, a liberação por workspace passou a ser uma só, do Scheduler inteiro: quem já tinha o monitor ou a agenda liberados continua com acesso, sem ninguém precisar refazer a configuração do workspace. Ver Workspaces.


Perguntas frequentes

Onde foi parar a tela "Job Monitor"? Ela virou a aba Job Monitor do Scheduler. As três visões internas (Monitor, Agendados e Histórico) e o detalhe da execução são os mesmos, e o endereço antigo abre o Scheduler já nela.

Cliquei em Cancelar e a execução continuou por mais alguns segundos. É o esperado. O cancelamento é uma solicitação: a carga encerra no próximo ponto seguro — o fim do lote em andamento —, para não deixar o destino pela metade. Em carga grande esse intervalo pode passar de alguns segundos. Se ela não encerrar, o detalhe da execução continua mostrando o status real — a tela não muda o status por conta própria.

Cancelei e o destino ficou com dado gravado. Isso é normal? É. Cancelar interrompe, não desfaz. O que já foi escrito continua lá; o que não foi, não será. Em carga para o grafo, o desfecho típico é nós sem as ligações entre eles, porque as ligações e o passo de pós-carga vêm depois da gravação dos nós. Trate a carga cancelada como incompleta e repita quando quiser o resultado inteiro.

Cancelei uma carga dividida entre vários trabalhadores. Ela para também? Para. O pedido vale para a divisão inteira: os pedaços que ainda não começaram são abandonados e os que estão no meio param no próximo ponto seguro. A execução termina como cancelada, não como "com falha" — cancelar não é um incidente a investigar.

Uma execução aparece "em execução" há horas e eu sei que o serviço reiniciou. Essa é a execução órfã: o processo que a tocava deixou de existir e não teve como escrever o desfecho. A plataforma reconcilia esses casos — a execução recebe o status de encerramento com o motivo, sai da lista de ativas e vai para o histórico. Se ela ainda aparece como ativa, use Atualizar: a reconciliação não é instantânea.

A tabela "Execução por Nó" está vazia. Aquela execução não registrou detalhamento por nó. Hoje isso acontece com cargas divididas entre vários trabalhadores que rodaram antes desta versão: o dado não foi gravado na época e não há como recuperá-lo. Cargas divididas a partir daqui trazem a quebra por caixa normalmente. Os números de resumo da execução (duração, alertas, descartados) continuam válidos em qualquer caso.

Onde vejo os logs da carga? Não há visualizador de logs nesta tela. Use a sequência de "Onde procurar quando o detalhe não basta", logo acima.

O cartão "Com Falha" mostra um número e a tabela mostra outro. Os dois contam recortes diferentes: o cartão conta o que a frase abaixo dele anuncia; a tabela conta o que sobrou do seu filtro e da sua busca. Limpe o filtro antes de comparar.

Quero mudar o horário de uma carga. Esta aba não edita agendamento. O editor está na aba Calendário e também na barra do editor de fluxos.

A carga nem apareceu como "em execução" no horário marcado. Aí a pergunta é do agendador, não do monitor: a aba Motor mostra se o pacote está pausado, se o agendamento rende próxima execução e se a janela foi perdida com a plataforma fora do ar.

Uma execução antiga aparece com dados estranhos. Execuções gravadas por versões anteriores do motor podem não trazer todos os campos — o que falta aparece como vazio, nunca preenchido por estimativa.