Hello,
I stopped using Umbrel for a variety of reasons, and I am using k3s now with Grafana and Prometheus. I miss the map of peers displayed on Umbrel when launching the JavaScript application for Bitcoind.
I am trying to find an alternative way to get good metrics for Grafana. In particular I am interested in peer metrics to show a map and also other network metrics which could be nice to have.
Currently I am using dashboard id 21351 "Bitcoind Exporter" (see https://grafana.com/grafana/dashboards/21351-bitcoind-exporter/). It is nice. We have the fee rate, the mempool overview, etc but it is just a few metrics.
I have seen statoshi.info which is quite good but it uses statsD to aggregate statistics. I would prefer to use Prometheus just to save memory and because I am more familiar with it.
Lastly I have seen this article but it is focused on LND, not Bitcoind.
I am aware of Satoshi Dashboard but unfortunately it does not pull data from Bitcoind but from external APIs.
So my question would be besides the resources aforementioned, does anyone know about a good resource to get statistics from Bitcoind? Preferably with Prometheus but I am open to other ways if everything is already implemented.
Peer observer is probably a good place to start, used by folks doing monitoring: https://github.com/peer-observer/peer-observer
@0xB10C’s write up is worthy of a read too: https://b10c.me/projects/024-peer-observer/
Thank you, I just saw that yesterday thanks to optimism.
I found also this one which is archived:
https://github.com/0xB10C/bitcoind-observer
And this:
https://github.com/AltaModaTech/btcnode-metrics/tree/main
And although it is not pluggable to Prometheus I found this one using Phoenix (Erlang) which can be good to take a look at what others do without Grafana:
https://github.com/151henry151/node-probe/tree/main
I had an exporter on peer data for a while, iirc it was something I hacked into
bitcoind-monitor, but it means increased load on your rpc (like the exporter you use already does, but more of it). I have a low-ranked todo item to build an adapter that can capture stats through a hook similar tocontrib/tracing/log_p2p_connections.btbut I'm not sure if that covers your requirements either.I'm swamped and slow, but this can probably be patched into
bitcoind-exporterif you don't care about the RPC load.Thanks you! Exactly, tracing with ebpf would match my requirements. I am ok with the RPC load if it allows me not to reinvent the wheel.
Actually thanks to you I have discovered other projects on GitHub which may be helpful. I will share it here if the results are better and I am able to make it work with Prometheus.
I don't want to be intrusive, but is it you Primexz on GitHub? If yes, thank you again haha
Glad to be of service.
No. But if that were so I would still say no, haha.