https://github.com/belane/erigon-netdata-plugin
Erigon monitoring with Netdata
https://github.com/belane/erigon-netdata-plugin
erigon ethereum netdata
Last synced: 6 months ago
JSON representation
Erigon monitoring with Netdata
- Host: GitHub
- URL: https://github.com/belane/erigon-netdata-plugin
- Owner: belane
- License: gpl-3.0
- Created: 2022-03-26T19:50:02.000Z (almost 4 years ago)
- Default Branch: dev
- Last Pushed: 2025-02-11T13:03:05.000Z (12 months ago)
- Last Synced: 2025-04-10T20:25:02.613Z (10 months ago)
- Topics: erigon, ethereum, netdata
- Language: Go
- Homepage:
- Size: 1.77 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: .github/README.md
- License: LICENSE
Awesome Lists containing this project
README
# Erigon monitoring with Netdata
[Erigon](https://github.com/ledgerwatch/erigon), formerly known as Turbo‐Geth, is a fork of Go Ethereum oriented toward speed and disk‐space efficiency. Erigon is a completely re-architected implementation of Ethereum with the goal of providing a faster, more modular, and more optimized implementation of Ethereum.
*This is a work-in-progress repository of the erigon module for the [netdata go.d.plugin](https://github.com/netdata/go.d.plugin).*

## Requirements
Run `erigon` with the flag `--metrics`. That will enable the metric server, with default port `6060` and
path `/debug/metrics/prometheus`.
## Charts
- Database
- Syncs/Write per second
- Chain
- Tables size (log/scs/state)
- Chain Sync (headers/finish/execution)
- Peer-to-Peer
- Bandwidth per second (ingress/egress)
- Number of peers
- Dials/Serves calls per second
- Reorgs
- Total number of reorgs
- Number of active goroutines
- Transaction Pool
- Pending
- Queued
- Current
## Configuration
Edit the `go.d/erigon.conf` configuration file using `edit-config` from the
Netdata [config directory](https://learn.netdata.cloud/docs/configure/nodes), which is typically at `/etc/netdata`.
```bash
cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/erigon.conf
```
Needs only `url` to `erigon` metrics endpoint. Here is an example for 2 instances:
```yaml
jobs:
- name: erigon_node_1
url: http://203.0.113.10:6060/debug/metrics/prometheus
- name: erigon_node_2
url: http://203.0.113.11:6060/debug/metrics/prometheus
```
For all available options please see
module [configuration file](https://github.com/belane/erigon-netdata-plugin/blob/dev/config/go.d/erigon.conf).
## Troubleshooting
To troubleshoot issues with the `erigon` collector, run the `go.d.plugin` with the debug option enabled. The output should
give you clues as to why the collector isn't working.
First, navigate to your plugins directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on your
system, open `netdata.conf` and look for the setting `plugins directory`. Once you're in the plugin's directory, switch
to the `netdata` user.
```bash
cd /usr/libexec/netdata/plugins.d/
sudo -u netdata -s
```
You can now run the `go.d.plugin` to debug the collector:
```bash
./go.d.plugin -d -m erigon
```
You can run `erigon` with the `--metrics.addr` flag to access the metrics remotely during debug:
```bash
erigon --metrics.port 6060 --metrics.addr 0.0.0.0
```