Prometheus Exporter for Solana

This is a Prometheus exporter for Solana originally based on the Golang original by CertusOne but now providing additional functionality. It is the basis for Grafana dashboards and status alerts.

Build

Run

Run this as a systemd service by a non-root user with a script like this one: ``` [Unit] Description=Solana Exporter After=solana.service Requires=solana.service

[Service] User=solana Restart=always RestartSec=20 ExecStart=/home/solana/.cargo/bin/solana-exporter

[Install] WantedBy=multi-user.target ```

Examples

Dashboard

A starting point can be our default dashboard. To display pie charts we use a Grafana pie chart plugin. It needs to be installed in order for the pie charts to be displayed.

Sample output to the Prometheus target endpoint

Some repetitive lines are ellipsed for brevity in the example below. ```

HELP solanaactivevalidators Total number of active validators

TYPE solanaactivevalidators gauge

solanaactivevalidators{status="current"} 561 solanaactivevalidators{status="delinquent"} 51

HELP solanaactivevalidatorsdcstake Datacenter of active validators grouped by stake

TYPE solanaactivevalidatorsdcstake gauge

solanaactivevalidatorsdcstake{dcidentifier="11427-US-Austin"} 9672542164238 solanaactivevalidatorsdcstake{dcidentifier="11524-US-Portland"} 35172007429 solanaactivevalidatorsdcstake{dc_identifier="12212-CA-Toronto"} 407342367161475 ...

HELP solanaactivevalidatorsispcount ISP of active validators

TYPE solanaactivevalidatorsispcount gauge

solanaactivevalidatorsispcount{ispname="Advanced Solutions LLC"} 1 solanaactivevalidatorsispcount{ispname="Amazon.com"} 48 solanaactivevalidatorsispcount{isp_name="CAIW Internet"} 1 ...

HELP solanaactivevalidatorsispstake ISP of active validators grouped by stake

TYPE solanaactivevalidatorsispstake gauge

solanaactivevalidatorsispstake{ispname="Advanced Solutions LLC"} 230372233054571 solanaactivevalidatorsispstake{ispname="Amazon.com"} 97432578281165840 solanaactivevalidatorsispstake{isp_name="CAIW Internet"} 352505951070073 ...

HELP solanacurrentepoch Current epoch

TYPE solanacurrentepoch gauge

solanacurrentepoch 186

HELP solanacurrentepochfirstslot Current epoch's first slot

TYPE solanacurrentepochfirstslot gauge

solanacurrentepochfirstslot 80665865

HELP solanacurrentepochlastslot Current epoch's last slot

TYPE solanacurrentepochlastslot gauge

solanacurrentepochlastslot 81097865

HELP solanaleaderslots Validated and skipped leader slots per validator

TYPE solanaleaderslots counter

solanaleaderslots{pubkey="12CUDzb3oe8RBQ4tYGqsuPsCbsVE4KWfktXRihXf8Ggq",status="skipped"} 54 solanaleaderslots{pubkey="12CUDzb3oe8RBQ4tYGqsuPsCbsVE4KWfktXRihXf8Ggq",status="validated"} 146 solanaleaderslots{pubkey="12oRmi8YDbqpkn326MdjwFeZ1bh3t7zVw8Nra2QK2SnR",status="skipped"} 35 solanaleaderslots{pubkey="12oRmi8YDbqpkn326MdjwFeZ1bh3t7zVw8Nra2QK2SnR",status="validated"} 217 ... ```