Pular para o conteúdo principal

Pipeline de Dados

Entender como os dados fluem pelo Zenovay — da primeira visualização de página de um visitante aos insights no dashboard — ajuda você a construir e depurar de forma eficaz.

Fluxo de Rastreamento de Eventos

Quando um visitante chega a um site rastreado, aqui está o que acontece:

  • Script carrega: Nosso rastreador leve (<5KB) inicializa e gera um ID de visitante (armazenado por 365 dias) e ID de sessão (timeout de 30 minutos).
  • Visualização de página dispara: Dados básicos são coletados — URL, referrer, tamanho do viewport, user agent — e enviados para nossa API.
  • Geolocalização: A Cloudflare fornece país e região a partir do header CF-Connecting-IP. Sem geolocalização no lado do cliente.
  • Processamento: Os eventos são validados, enriquecidos com detecção de dispositivo e armazenados no Supabase.
  • Atualização em tempo real: Os assinantes do dashboard recebem os novos dados via canais em tempo real do Supabase.

Tempo Real vs Agregado

Equilibramos responsividade em tempo real com desempenho de consulta:

  • Tempo real: Contagens de visitantes ao vivo, sessões ativas e eventos recentes são servidos diretamente de tabelas brutas.
  • Agregado: Gráficos históricos e relatórios consultam agregações diárias pré-computadas para velocidade.
  • Cron jobs: A agregação diária roda às 00:00 UTC, consolidando os eventos do dia anterior.

Gravação de Replay de Sessão

O replay de sessão usa a biblioteca rrweb para capturar mudanças no DOM:

  • Gravação: O rrweb observa mutações de DOM, movimentos de mouse, rolagens e entradas (com dados sensíveis mascarados).
  • Chunking: Os eventos são agrupados em chunks (máx. 10MB comprimidos) e enviados para a API.
  • Armazenamento: Os chunks são armazenados no Supabase Storage com metadados de sessão no PostgreSQL.
  • Reprodução: O dashboard busca chunks sob demanda e usa o rrweb-player para reconstruir a sessão.

Coleta de Heatmap

Os heatmaps agregam dados de interação em muitas sessões:

  • Rastreamento de cliques: As coordenadas de elementos e contagens de cliques são registradas em relação ao viewport.
  • Profundidade de rolagem: As posições máximas de rolagem são rastreadas para mostrar engajamento com o conteúdo.
  • Capturas de tela: Capturas de tela de páginas (máx. 2MB) são capturadas para renderização de sobreposição.
  • Agregação: Os dados de clique e rolagem são agregados entre sessões para significância estatística.

Pontuação de Visitantes com ML

Cada visitante recebe uma pontuação de valor (0-100) com base em múltiplos fatores:

  • Multiplicadores de país: Poder de compra geográfico (ex.: Suíça 95, EUA 88, Índia 28)
  • Sinais de dispositivo: SO e navegador correlacionam com taxas de conversão (macOS 95, iOS 90, Android 45)
  • Padrões comportamentais: Duração da sessão, profundidade de página e métricas de engajamento
  • Refinamento com ML: Um modelo treinado ajusta pontuações com base em dados históricos de conversão

Tarefas Agendadas

Jobs em segundo plano mantêm os dados atualizados e os sistemas saudáveis:

  • Diário 00:00 UTC: Agregação de análises, geração de insights de IA
  • A cada 6 horas: Limpeza de cache, verificações de saúde
  • Segundas 8h: Relatórios semanais de clientes para agências
  • A cada 5 minutos: Verificações de monitoramento de uptime
  • De hora em hora: Avisos de expiração de assinatura
  • Diário 2h: Fechamento automático de tickets de suporte inativos