/geyser-grpc-plugin

Solana Geyser plugin for account and slot updates over GRPC

Primary LanguageRustOtherNOASSERTION

geyser-grpc-plugin

A lightweight gRPC service for streaming account and slot updates to subscribers.

Building

When building for your validator, ensure the solana version library matches the imported packages here. Also, ensure that the cargo version (installed in rust-toolchain.toml) matches the rust-toolchain.toml in the solana repository.

There are two options for building:

For building using cargo:

$ cargo b --release

For building in docker:

$ ./f

Releasing

When releasing, ensure the version being released matches the solana version. This keeps things simple :)

$ ./release

Releases

Releases built by CI can be found here. The release version should match the version of validator client you're running

Running

  1. Copy and edit the config json file to suit your validator
  2. Add startup arg to solana validator
    • Example: --geyser-plugin-config geyser.json
  3. Restart validator
  4. Check logs for Starting GeyserPluginService from config files or geyser_grpc_plugin_server::server

Helper Scripts

For your convenience:

  • Run ./s script to rsync to a server.
  • Run ./f to build the binary within a container and spit out to a container-output folder.