Crawlers imobiliários

Visão geral

Painel

Duas filas: listagem (runs) e ficha (URLs de anúncio). Configure Portais, enfileire em Blocos e acompanhe Execuções e Anúncios. Workers poll / poll-detail leem o MySQL. Abaixo: visão do fluxo, KPIs da ficha e tendências de 30 dias (UTC).

Fluxo operacional

Da listagem à ficha completa

O worker de listagem preenche anúncios e enfileira execuções; o worker de detalhe consome a fila MySQL (poll-detail) e grava detail_raw por URL.

Cobertura de ficha

32.3%

completas ÷ total de anúncios

7 dias: 2.543 novos · 821 fichas OK · 32% fichas/novosRuns agora: 261119 na fila · 0 em execuçãoWorkers: 2 vivos / 18 registros
1 · Listagem

261119

runs na fila ou em execução agora

Ver execuções →
2 · Base de anúncios

2.543

dedupe portal + id externo

Explorar anúncios →
3 · Fila de fichas

1722

1720 pendentes · 2 processando

Filtrar pendentes →
4 · Ficha pronta

821

0 ignoradas

Ver completas →

Operação

Infra, filas e SLA da ficha

Resumo para saber se há workers vivos, carga nas duas filas (runs e URLs) e se a segunda etapa acompanha a entrada de anúncios. Tempos médios usam os últimos 30 dias de fichas concluídas.

Workers →

Portais

4 / 4

ativos · total cadastrado

Blocos ligados

266385

ver blocos

Workers vivos

2 / 18

listagem 1/13 · ficha 1/5

Fila de runs

261119 q · 0 run

queued · running

Pendente mais antigo

há 3 h

2026-04-28T15:56:59.819Z

Tempo médio até ficha OK

1 h 13 min

first_seen → detail_fetched (30d)

Fila “velha”

0

pendentes há > 24h

Processamento travado?

0

processing > 30 min

Novos (7d) vs fichas OK (7d)

2.543 · 821

Razão fichas/novos: 32.3% (atenção ao backlog)

Média de tentativas (falha)

detail_attempts em status failed

Backlog de ficha por portal (pendente + processando)
PortalPendenteProcessando
zap17202

Blocos cadastrados

274192

Definições de crawl

Anúncios no banco

2543

Dedupe por portal + id

Fila + em execução

261119

queued ou running

Em execução agora

0

Status running

Concluídas (24h)

319

Runs completed

Falhas (24h)

753

Runs failed

Canceladas (24h)

0

Runs cancelled

Anúncios salvos (24h)

2978

Soma records_saved (completed)

Encerradas (30d)

13073

Concluídas + falhas + canceladas no período

Enfileiradas (30d)

274192

Novas runs por queued_at (volume de entrada)

Novos anúncios (30d)

2543

Por first_seen_at (dedupe por portal)

Req. listagem (30d)

6715

Soma requests_total em runs completed

Fila de fichas (backlog)

1722

Pendentes + em processamento

Fichas concluídas (24h)

821

Gravadas com detail_fetched_at

Ritmo médio (24h)

34,2/h

Média: concluídas nas últimas 24h ÷ 24

Fichas última hora

177

Concluídas com detail_fetched_at na última hora

Fichas OK (30d)

821

Soma diária: detail_status completed

Fichas falha (30d)

0

Por dia (last_seen_at em falhas)

Falhas de ficha (24h)

0

detail_status failed · last_seen_at

Taxa sucesso (ficha)

100%

Completas ÷ (completas + falhas) no banco

Fichas OK (7 dias)

821

Concluídas com detail_fetched_at

Novos anúncios (7 dias)

2543

Por first_seen_at

Razão fichas/novos (7d)

32%

≥100%: ritmo de ficha acompanha ou supera entrada

SLA médio (listagem→ficha)

73 min

Média 30d entre first_seen e detail_fetched

Tendências

Os gráficos misturam execuções de crawl (runs) e, à parte, a etapa de ficha. Use-os para ver se a fila de listagem e a de detalhe acompanham a entrada de novos anúncios.

Período: últimos 30 dias (UTC). Encerradas usam finished_at; enfileiradas usam queued_at; novos anúncios usam first_seen_at.

Fichas: concluídas por detail_fetched_at; falhas por last_seen_at (aproximação diária).

Saldo diário = novos anúncios − fichas OK no mesmo dia (positivo = mais entrada que saída na ficha; negativo = está a drenar backlog).

Execuções encerradas por dia

Empilhado: concluídas, falhas e canceladas (data de término).

Fichas processadas por dia

Empilhado: crawl de detalhe concluído vs falha (segunda etapa do pipeline).

Demanda vs encerramentos

Barras agrupadas: runs enfileiradas no dia vs runs encerradas no mesmo dia.

Novos anúncios e crescimento no período

Barras = novos por dia; linha = acumulado desde o primeiro dia do gráfico (não é o total do banco).

Duração média (runs concluídas)

Média do tempo entre início e fim só para status completed, em minutos.

Taxa de falha

Falhas ÷ (concluídas + falhas + canceladas) no dia. Útil para ver estabilidade.

Volume (runs concluídas)

Soma de requisições de listagem e anúncios salvos por dia — só runs completed.

Novos anúncios vs fichas OK (dia)

Comparado no mesmo dia: entrada na base vs conclusões na segunda etapa.

Saldo diário (novos − fichas OK)

Amarelo: mais entrada que saída; verde: mais fichas que novos no dia.

Acumulado de fichas OK (período)

Soma de conclusões de detalhe desde o primeiro dia do gráfico (não é o total do banco).

Histórico

Últimas execuções

Só runs já encerradas (concluída, falha ou cancelada), por data de término. Fila e em andamento ficam no card acima.