Skip to main content
El monitoreo de transacciones te permite seguir en tiempo real la ejecución de transacciones, su estado de éxito o fallo, las interacciones con programas y los cambios en los saldos de tokens en Solana. Esta guía abarca estrategias de filtrado e implementaciones prácticas mediante el SDK helius-laserstream.
Requisitos previos: Esta guía supone que completaste el inicio rápido de gRPC de LaserStream y que tienes una clave de API.

Opciones de filtrado de transacciones

LaserStream usa la misma estructura de filtros que Yellowstone gRPC, incluido el filtro tokenAccounts (expansión de ATA). Estos son los campos que debes configurar dentro de transactions.<label>:
  • accountInclude — encuentra coincidencias si aparece cualquiera de estas cuentas (OR lógico)
  • accountRequired — encuentra coincidencias solo si aparecen todas estas cuentas (AND lógico)
  • accountExclude — descarta la transacción si aparece cualquiera de estas cuentas
  • vote / failed — indicadores booleanos para transacciones de voto y fallidas
  • tokenAccounts — expansión opcional de cuentas de token asociadas (ATA) ("balanceChanged", "all" o "none"), para que una billetera en accountInclude también coincida con transacciones en las que sea propietaria de un saldo de tokens SPL. Consulta Filtrado de cuentas de token (ATA) y la pestaña Watching a Wallet a continuación.
  • matchMints — indicador opcional que también compara las listas de cuentas con las acuñaciones de los saldos de tokens previos y posteriores de una transacción, para que una acuñación en accountInclude detecte cada transferencia, intercambio, acuñación y quema de ese token. Consulta Filtrado por acuñación de tokens y la pestaña Watching a Token a continuación.
Monitorea transacciones que involucren programas específicosSigue todas las transacciones que interactúen con los programas que te interesan:
Ideal para: Monitoreo específico de programas, seguimiento de protocolos DeFi e interacciones con contratos inteligentes.

Ejemplos prácticos

Ejemplo 1: Monitorea transacciones de DEX

Sigue las transacciones que interactúen con programas DEX populares:

Ejemplo 2: Monitorea transacciones fallidas

Sigue las transacciones fallidas para detectar problemas de la aplicación:

Ejemplo 3: Monitorea transacciones de alto valor

Sigue las transacciones con transferencias significativas de SOL:

Ejemplo 4: Observa una billetera (incluidas las transferencias de tokens)

Monitorea todo lo que mueva dinero en una billetera, incluidas las transferencias entrantes de tokens SPL que interactúen con sus ATA, agregando tokenAccounts a un filtro accountInclude simple:

Estructura de datos de las transacciones


Referencia de la lógica de filtros

Include Logic (OR)

accountInclude: La transacción debe involucrar CUALQUIERA de estas cuentas.["A", "B"] coincide con transacciones que involucren la cuenta A O la cuenta B.

Required Logic (AND)

accountRequired: La transacción debe involucrar TODAS estas cuentas.["A", "B"] coincide con transacciones que involucren la cuenta A Y la cuenta B.

Exclude Logic (NOT)

accountExclude: La transacción NO debe involucrar ninguna de estas cuentas.

Combined Logic

Filtro final: (accountInclude OR empty) AND (accountRequired AND all) AND NOT (accountExclude OR any).

Consideraciones de rendimiento

Los flujos de transacciones pueden tener un gran volumen. Para mantener el ritmo:
  • Comienza con filtros de programas específicos (no te suscribas a «todas las transacciones»)
  • Usa confirmed en lugar de processed cuando puedas tolerar ~1.5 s de latencia adicional
  • Monitorea tu capacidad de procesamiento con un contador
  • Considera ejecutar consumidores en paralelo detrás de una cola

Manejo de errores

Síntoma: Volumen abrumador de transacciones.Soluciones: Agrega filtros más estrictos (accountRequired, accountExclude); usa un nivel de compromiso mayor; implementa muestreo o limitación de solicitudes; procesa de forma asíncrona.
Síntoma: No aparecen las transacciones esperadas.Soluciones: Verifica que las direcciones de los programas sean correctas; comprueba que las transacciones realmente existan; prueba processed para obtener actualizaciones más rápidas; flexibiliza los filtros restrictivos accountRequired/accountExclude.
Síntoma: No se pueden analizar los datos de la transacción.Soluciones: Maneja adecuadamente los campos faltantes; valida la estructura antes de procesarla; encapsula el análisis en try/catch; consulta Decodificación de datos de transacciones.

Próximos pasos

Slot & Block Monitoring

Sigue el consenso de la red y la producción de bloques.

Stream Pump AMM Data

Ejemplo del mundo real: monitorea transacciones de Pump.fun AMM.

Decoding Transaction Data

Analiza las cargas útiles binarias de las transacciones para convertirlas en transacciones de Solana legibles.

Yellowstone protocol reference

El mismo flujo de trabajo con el protocolo Yellowstone gRPC sin procesar.