Skip to main content
O monitoramento de slots e blocos oferece uma visão sobre o consenso da rede Solana, tempo de produção de blocos e saúde geral. Com o LaserStream, você pode acompanhar a progressão dos slots, finalização dos blocos e métricas de desempenho da rede em tempo real usando o helius-laserstream SDK.
Pré-requisitos: Este guia pressupõe que você completou o Guia Rápido de LaserStream gRPC e possui uma chave de API.

Tipos de Monitoramento

Acompanhe a progressão do consenso da redeMonitore o avanço dos slots através dos níveis de compromisso:
Os dados de slot incluem: número do slot, slot pai, status de compromisso (processed / confirmed / finalized) e informações sobre o líder.
Melhor para: Monitoramento da saúde da rede, análise de tempo de slot, acompanhamento de consenso.

Exemplos Práticos

Exemplo 1: Monitor de Saúde da Rede

Acompanhe a progressão dos slots e identifique problemas na rede:

Exemplo 2: Monitor de Produção de Blocos

Acompanhe a produção de blocos e volume de transações:

Exemplo 3: Monitor de Blocos Filtrados

Monitore blocos contendo atividades de programas específicos:

Estruturas de Dados

Cada slot representa aproximadamente 400ms do tempo da rede. Os três níveis de compromisso refletem garantias progressivamente mais fortes: processed (inicial), confirmed (supermaioria votada), finalized (irreversível).
Campos u64 (slot, parent) são enviados como strings para preservar a precisão além de Number.MAX_SAFE_INTEGER. Converta com Number(slot.slot) quando precisar de cálculos aritméticos. status é um enum numérico — use CommitmentLevel[slot.status] para o nome legível.
Campos numéricos (slot, parentSlot, executedTransactionCount, entriesCount, os valores dentro de blockHeight e blockTime) são emitidos como strings porque são u64 no proto subjacente. Envolva-os em Number(...) para cálculos aritméticos ou comparações.
Blocos completos podem ter vários MB com todas as transações e contas. A mesma convenção de u64-como-string se aplica — envolva campos numéricos com Number(...) para aritmética. Dentro de cada transação, meta.fee, meta.preBalances, meta.postBalances, etc. também são strings.

Considerações de Desempenho

Monitoramento de Slots

Leve: muito baixa largura de banda, sobrecarga mínima de processamento. Bom para painéis de monitoramento.

Metadados de Blocos

Balanceado: largura de banda moderada, insights em nível de bloco sem dados completos. Adequado para análises.

Blocos Completos

Alto volume: dados completos de transações, requer processamento robusto. Sempre emparelhe com filtros.

Blocos Filtrados

Otimizado: use accountInclude, desative includeAccounts/includeEntries que você não precisa.

Casos de Uso

Acompanhe a saúde e o desempenho da rede — tempo de slot, congestionamento, consenso.

Tratamento de Erros

Sintoma: Lacunas na progressão dos slots.Causas: Problemas de conectividade de rede, tempo de inatividade do validador, atrasos no processamento do cliente.Soluções: Acompanhe lacunas de slots e alerte; implemente lógica de recuperação via reprodução histórica; monitore a saúde da conexão.
Sintoma: Dados de blocos em excesso.Soluções: Use metadados de blocos em vez de blocos completos; aplique filtros de contas; desative inclusões desnecessárias (entradas, contas); processe de forma assíncrona.
Sintoma: Tempo de slot inconsistente.Análise: Calcule médias móveis; acompanhe desvios; monitore métricas de saúde da rede; correlacione com desempenho do validador.

Melhores Práticas

Diretrizes de Produção:
  • Comece com metadados — use metadados de blocos antes de se inscrever em blocos completos
  • Aplique filtros — use accountInclude para descartar dados irrelevantes
  • Monitore o tempo — acompanhe a progressão dos slots como um indicador de saúde da rede
  • Lide com lacunas — combine com reprodução histórica para que slots perdidos sejam automaticamente preenchidos na reconexão
  • Processe de forma assíncrona — não bloqueie o processamento de fluxo com cálculos pesados
  • Correspondência de compromisso à necessidadeprocessed para UIs de baixa latência, confirmed/finalized para gravações de estado

Próximos Passos

Monitoramento de Transações

Filtre transações por programa, conta, voto ou status de falha.

Transmitir Dados AMM Pump

Exemplo do mundo real: monitore transações do Pump AMM.

Decodificação de Dados de Transação

Analise as cargas transactionUpdate binárias em transações Solana legíveis.

Referência do protocolo Yellowstone

O mesmo fluxo de trabalho contra o protocolo Yellowstone gRPC bruto.