Skip to content

Gno.land / Tendermint2 PostgreSQL indexer + grafana dashboard

Notifications You must be signed in to change notification settings

gnoverse/tm2-indexer

Repository files navigation

TM2 Indexer

The TM2 Indexer is a robust and efficient indexing solution designed for Tendermint 2 based blockchain. It provides developers and operators with fast, reliable access to blockchain data for analytics, monitoring, and integration with external systems.

Features

Grafana dashboards

example grafana dashboard

Installation

Prerequisites

  • Go 1.22+
  • A Tendermint 2.0 node endpoint
  • PostgreSQL (or compatible database)

Clone the Repository

$ git clone https://github.com/gnoverse/tm2-indexer.git
$ cd tm2-indexer

Build the Project

$ go build ./cmd/tm2-indexer
# or
$ make build

Run Tests

$ go test -v ./...

Configuration

TM2 Indexer uses a configuration file to specify database connections, Tendermint node settings, and indexing options. Example configuration:

[rpc]
endpoint = "http://localhost:26657"

[database]
endpoint = "postgresql://postgres:[email protected]:5432/tm2-indexer?sslmode=disable"

[chain]
[chain.validators]
core-val-01   = "g1xxxxxx"
core-val-02   = "g1yyyyyy"
core-val-03   = "g1zzzzzz"

[scrapper]
batch_write = 300
goro_block_parser = 32

buffer_chan_blocks = 1000
buffer_chan_heights = 10000

Usage

Running Locally

Start the indexer with your configuration file:

$ ./tm2-indexer -config config.yaml

About

Gno.land / Tendermint2 PostgreSQL indexer + grafana dashboard

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages