zabbix-templates

Zabbix scripts and templates used for blockchain nodes monitoring.

RPC nodes (GETH, BSC, BOR, etc)

Link templates with host: Docker-template.yaml and RPC-nodes-template.yaml. Set macros {$RPC_NODES} - list of all nodes on the host in JSON format: [{"name": "GETH"},{"name": "XDAI"}] or [{"name": "BSC"}]. Set for each blockchain node in the RPC_NODES list _URL and _PUB macros.

Example for host with XDAI and BSC nodes must have the following macros with your values:

  • {$RPC_NODES} = [{"name": "XDAI"},{"name": "BSC"}] - names in the list must consist of letters without numbers and other symbols;
  • {$XDAI_URL} = https://your-xdai-node.url/ - your XDAI RPC url;
  • {$XDAI_PUB} = https://rpc.xdaichain.com/ - public XDAI RPC for height comparison;
  • {$BSC_URL} = http://your-bsc-host:8545/ - your BSC RPC url;
  • {$BSC_PUB} = https://bsc-dataseed4.binance.org/ - public BSC RPC for height comparison.

Items:

  • Node RPC height
  • Public RPC height
  • Height diff (pub.height - local.height)
  • synchronization status
  • number of currently connected peers

tornado-relayer

Link templates with host: Docker-template.yaml and Tornado-relayer-template.yaml. Set {$URL} macros to relayer host, example http://localhost/v1/status, https://domain/v1/status.

Items:

  • Docker containers monitoring
  • web check status page
  • parse status from status page
  • parse error from status page
  • relayer container errors

eth2 lighthouse:

Link templates with host: Docker-template.yaml and Lighthouse-template.yaml. Set macros for each lighthouse host:

  • {$BEACON.EXPLORER} - URL, example https://beacon.gnosischain.com or https://beaconcha.in;
  • {$VC.API} - IP:PORT for access to lighthouse validator API from the monitoring server, example 10.0.0.4:5062.

Items:

  • beacon node synced
  • eth1 node connected
  • eth1 node synced
  • validator enabled
  • validator balance
  • validator status
  • validator slashed
  • validator attestation effectiveness
  • discovery rule for enabled validators

cosmos-sdk

Link template Cosmos-sdk-template.yaml and set macros for each host:

  • {$NODE} - node RPC URL, example http://127.0.0.1:26657/;
  • {$PORT} - node RPC port, example 26657;
  • {$NODE_PS} - running process name, example gaiad, osmosisd, cosmovisor etc;
  • {$RPC} - public rpc to compare height, example https://rpc.cosmos.network/status.

Items:

  • Node height
  • pub-rpc height
  • peers count
  • port listen
  • proc running
  • missed blocks