solana/metrics/scripts
anatoly yakovenko 29611fb61d
tower consensus naming (#4598)
s/locktower/tower/g
2019-06-24 13:41:23 -07:00
..
grafana-provisioning/dashboards tower consensus naming (#4598) 2019-06-24 13:41:23 -07:00
.gitignore
README.md
adjust-dashboard-for-channel.py Fix HostId field in the testnet dashboard 2019-06-13 16:09:09 -07:00
enable.sh Generate random passwords and keep them out of the environment/program args 2019-06-13 12:37:39 -07:00
grafana.ini
influxdb.conf
start.sh Ensure volume mountpoints exist 2019-06-13 15:05:07 -07:00
status.sh Add curl retries 2019-06-13 15:05:07 -07:00
stop.sh Generate random passwords and keep them out of the environment/program args 2019-06-13 12:37:39 -07:00
test.sh

README.md

This directory contains scripts to manage a local instance of InfluxDB OSS and Grafana

Setup

Start the local metric services:

$ ./start.sh

Metrics are enabled on a per-shell basis which means you must source the following scripts in each shell in which you start an application you wish to collect metrics from. For example, if running a Solana validator you must run source ./enable.sh before starting the node:

$ source ./enable.sh

Once metrics have been started and you have an application running you can view the metrics at:

http://localhost:3000/dashboards

To test that things are working correctly you can send a test airdrop data point and then check the metrics dashboard:

$ ./test.sh

Stop metric services:

$ ./stop.sh

InfluxDB CLI

You may find it useful to install the InfluxDB client for adhoc metrics collection/viewing

  • Linux - sudo apt-get install influxdb-client
  • macOS - brew install influxdb

Simple example of pulling all airdrop measurements out of the testnet database:

$ influx -database testnet -username read -password read -execute 'SELECT * FROM "drone-airdrop"'

Reference: https://docs.influxdata.com/influxdb/v1.5/query_language/

Monitoring

To monitor activity, run one of:

$ docker logs -f influxdb
$ docker logs -f grafana

Reference