helius-laserstream.
Prérequis : Ce guide suppose que vous avez complété le Démarrage rapide LaserStream gRPC et que vous avez une clé API.
Options de filtrage des transactions
LaserStream utilise la même structure de filtre que Yellowstone gRPC, y compris le filtretokenAccounts (expansion ATA). Les champs à définir dans transactions.<label> :
accountInclude— correspond si l’un de ces comptes apparaît (OU logique)accountRequired— correspond uniquement si tous ces comptes apparaissent (ET logique)accountExclude— omettre si l’un de ces comptes apparaîtvote/failed— indicateurs booléens pour les transactions de vote et échouéestokenAccounts— expansion opt-in du compte de tokens associé (ATA) ("balanceChanged","all", ou"none"), ainsi un portefeuilleaccountIncludecorrespond également aux transactions où il possède un solde de jetons SPL. Voir Filtrage des comptes de tokens (ATA) et l’onglet Surveillance d’un portefeuille ci-dessous.
- Filtrage par programme
- Spécifique au compte
- Filtrage avancé
- Surveillance d'un portefeuille
Surveiller les transactions impliquant des programmes spécifiquesSuivre toutes les transactions qui touchent les programmes qui vous intéressent :Idéal pour : Surveillance spécifique aux programmes, suivi de protocoles DeFi, interactions avec des contrats intelligents.
Exemples pratiques
Exemple 1 : Surveiller les transactions DEX
Suivez les transactions touchant des programmes DEX populaires :Exemple 2 : Surveiller les transactions échouées
Suivez les transactions échouées pour mettre en évidence les problèmes d’application :Exemple 3 : Surveiller les transactions de haute valeur
Suivez les transactions avec transferts significatifs de SOL :Exemple 4 : Surveiller un portefeuille (y compris les transferts de tokens)
Surveillez tout ce qui déplace de l’argent pour un portefeuille — y compris les transferts entrants de tokens SPL qui touchent ses ATAs — en ajoutanttokenAccounts à un filtre accountInclude simple :
Structure des données de transaction
Structure du message de transaction
Structure du message de transaction
Changements de solde de tokens
Changements de solde de tokens
Détails de l'instruction
Détails de l'instruction
Référence de la logique de filtrage
Logique d'inclusion (OU)
accountInclude : La transaction doit impliquer n’importe lequel de ces comptes.["A", "B"] correspond aux transactions impliquant le compte A OU le compte B.Logique requise (ET)
accountRequired : La transaction doit impliquer TOUS ces comptes.["A", "B"] correspond aux transactions impliquant le compte A ET le compte B.Logique d'exclusion (PAS)
accountExclude : La transaction ne doit pas impliquer n’importe lequel de ces comptes.Logique combinée
Filtre final :
(accountInclude OR empty) AND (accountRequired AND all) AND NOT (accountExclude OR any).Considérations de performance
- Gestion du volume
- Traitement des données
Les flux de transactions peuvent être de haut volume. Pour maintenir le rythme :
- Commencez par des filtres de programme spécifiques (ne vous abonnez pas à “toutes les transactions”)
- Utilisez
confirmedplutôt queprocessedlorsque vous pouvez tolérer ~1,5s de latence supplémentaire - Surveillez votre capacité de traitement avec un compteur
- Envisagez de faire tourner des consommateurs parallèles derrière une file d’attente
Gestion des erreurs
Trop de transactions
Trop de transactions
Symptôme : Volume de transactions écrasant.Solutions : Ajoutez des filtres plus stricts (
accountRequired, accountExclude) ; utilisez un engagement plus élevé ; implémentez un échantillonnage ou une limitation de débit ; traitez de manière asynchrone.Transactions manquantes
Transactions manquantes
Symptôme : Transactions attendues non apparues.Solutions : Vérifiez que les adresses des programmes sont correctes ; vérifiez que les transactions existent réellement ; essayez
processed pour des mises à jour plus rapides ; assouplissez les filtres restrictifs accountRequired/accountExclude.Erreurs d'analyse
Erreurs d'analyse
Symptôme : Impossible d’analyser les données de la transaction.Solutions : Gérez les champs manquants avec grâce ; validez la structure avant le traitement ; enveloppez l’analyse dans un try/catch ; voir Décodage des données de transaction.
Prochaines étapes
Surveillance des slots et des blocs
Suivre le consensus du réseau et la production de blocs.
Diffuser les données AMM Pump
Exemple du monde réel : surveiller les transactions AMM de Pump.fun.
Décodage des données de transaction
Analyser les charges utiles des transactions binaires en transactions Solana lisibles.
Référence du protocole Yellowstone
Le même flux de travail contre le protocole brut de Yellowstone gRPC.