solana/metrics/scripts
Dan Albert b4aebbd991 Increment InfluxDB to 1.7 (#4931) 2019-07-03 17:44:49 -07:00
..
grafana-provisioning/dashboards tower consensus naming (#4598) 2019-06-24 13:41:23 -07:00
.gitignore Inline metrics/scripts dependencies 2019-06-13 10:00:24 -07:00
README.md Update README 2019-06-13 10:00:24 -07:00
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 Streamline grafana.ini 2019-06-13 10:00:24 -07:00
influxdb.conf Add support for local metric collection/viewing (#4170) 2019-05-06 16:44:06 -07:00
start.sh Increment InfluxDB to 1.7 (#4931) 2019-07-03 17:44:49 -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 Cargo watch ignores local metrics (#4384) 2019-05-22 00:08:18 -07:00

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