mirror of
https://github.com/Primexz/bitcoind-exporter.git
synced 2026-08-14 22:18:15 +00:00
A Prometheus Exporter for a Bitcoin Fullnode running with bitcoind
- Go 99.5%
- Dockerfile 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .github | ||
| config | ||
| fetcher | ||
| prometheus | ||
| util | ||
| zmq | ||
| .goreleaser.yml | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| main.go | ||
| README.md | ||
| version.go | ||
Bitcoind Prometheus Exporter ₿
Prometheus metrics for a bitcoin node made simple
🔍 About the project
A Prometheus Exporter, which provides a deep insight into a Bitcoin full node.
⚙️ Configuration
This tool is configured via environment variables. Some environment variables are required and some activate additional functionalities.
| Variable | Description | Required | Default |
|---|---|---|---|
RPC_ADDRESS |
The RPC address for the Bitcoin full node, e.g. http://127.0.0.1:8332 |
✅ | |
RPC_USER |
The user name that was defined in the Bitcoin Node configuration | ✅ | |
RPC_PASS |
The password that was set in the Bitcoin Node configuration | ✅ | |
RPC_COOKIE_FILE |
The path to the cookie file | ✅ | |
ZMQ_ADDRESS |
The address to the ZeroMQ interface of the Bitcoin Fullnode. This variable is required to determine the transcation rates. e.g. 127.0.0.1:28333 |
❌ | |
FETCH_INTERVAL |
The interval at which the metrics are to be recalculated. | ❌ | 10 |
METRIC_PORT |
The port via which the metrics are provided. | ❌ | 3000 |
LOG_LEVEL |
The log level for the service | ❌ | info |
Please note that either RPC_USER and RPC_PASS or RPC_COOKIE_FILE must be set.
💻 Grafana Dashboard
The official Grafana dashboard can be found here: https://grafana.com/grafana/dashboards/21351
🐳 Run with Docker
Docker-CLI
docker run -d --name bitcoind_exporter \
-e RPC_ADDRESS=http://127.0.0.1:8332 \
-e RPC_USER=mempool \
-e RPC_PASS=mempool \
-e ZMQ_ADDRESS=127.0.0.1:28333 \
-v /path/to/cookie/.cookie:/.cookie:ro \
ghcr.io/primexz/bitcoind-exporter:latest
🚀 Docker-Compose
vim docker-compose.yml
version: "3.8"
services:
bitcoind_exporter:
image: ghcr.io/primexz/bitcoind-exporter:latest
environment:
- RPC_ADDRESS=http://127.0.0.1:8332
- RPC_USER=mempool
- RPC_PASS=mempool
- ZMQ_ADDRESS=127.0.0.1:28333
# Optional, only necessary if Cookie-Auth is to be used
volumes:
- /path/to/cookie/.cookie:/.cookie:ro
restart: always
docker-compose up -d