All tools
ChainToolsMonitoring Observe

Orbit Metrics

Prometheus exporter for Cosmos SDK chain height, wallet balances, validator stake and chain parameters

View on GitHub
Best forPrometheus-based observability

Overview

Orbit Metrics is a monitoring tool for Cosmos SDK-based blockchains. It collects chain height, wallet balances, validator stake and a set of on-chain parameters from the REST API of each configured chain and exposes them as Prometheus metrics.

With the metrics in Prometheus, chain data can be visualised in Grafana and used for alerting alongside node and infrastructure monitoring.

Key Features

  • Chain height and ID — Fetches the current height and chain ID from multiple nodes.
  • Wallet balances — Monitors balances of specific addresses, labelled by wallet type.
  • Validator stake — Collects the stake amount of configured validators.
  • Chain parameters — Exposes distribution, mint, slashing and staking parameters, plus staking pool totals.
  • Prometheus compatible — Everything is exported as Prometheus gauges.

Installation

git clone https://github.com/ChainTools-Tech/orbit_metrics.git
cd orbit_metrics
python -m venv venv
source venv/bin/activate
pip install .

Configuration

Create config.yml with the chains, wallets and validators to monitor:

nodes:
  - name: BitSong
    api_url: http://api.bitsong.example.com
    main_denom: ubtsg
    wallets:
      - address: bitsong1...
        type: validator
    validators:
      - validator_id: bitsongvaloper1...
FieldDescription
nameFriendly name of the chain
api_urlBase URL of the REST API endpoint
main_denomMain denomination of the chain
walletsAddresses to monitor, each with a type (e.g. validator, savings)
validatorsValidator IDs to monitor

Usage

python -m orbit_metrics --config config.yml --log-file orbit_metrics.log --log-level DEBUG
OptionDescription
--configPath to the configuration file
--log-filePath to the log file
--log-levelDEBUG, INFO, WARNING, ERROR or CRITICAL

Exported Metrics

All metrics are gauges.

MetricLabelsDescription
orbit_chain_heightchain, chain_id, monikerCurrent height of the blockchain
orbit_wallet_balancechain, chain_id, wallet, typeBalance of the specified wallet address
orbit_validator_stakechain, chain_id, validator, monikerStake amount of the specified validator
orbit_community_taxchain, monikerCommunity tax rate
orbit_base_proposer_rewardchain, monikerBase proposer reward rate
orbit_bonus_proposer_rewardchain, monikerBonus proposer reward rate
orbit_withdraw_addr_enabledchain, monikerWhether withdrawal addresses are enabled
orbit_mint_inflation_rate_changechain, mint_denom, monikerInflation rate change for minting
orbit_slashing_signed_blocks_windowchain, monikerSigned blocks window for slashing
orbit_staking_unbonding_timechain, bond_denom, monikerUnbonding time in seconds
orbit_staking_pool_bonded_tokenschain, monikerBonded tokens in the staking pool
orbit_staking_pool_not_bonded_tokenschain, monikerNot-bonded tokens in the staking pool

Related Resources

Need something custom?

We build tooling and automation for node operators and chain teams, and can help you deploy or adapt this tool to your setup.