Überwachung von Geth mit InfluxDB und Grafana
Dieses Tutorial hilft Ihnen bei der Einrichtung der Überwachung für Ihren Geth-Blockchain-Knoten, damit Sie dessen Leistung besser verstehen und potenzielle Probleme identifizieren können.
Voraussetzungen
- Sie sollten bereits eine Instanz von Geth ausführen.
- Die meisten Schritte und Beispiele beziehen sich auf eine Linux-Umgebung, grundlegende Terminal-Kenntnisse sind hilfreich.
- Sehen Sie sich diesen Video-Überblick über die Metrik-Suite von Geth an: Monitoring an Ethereum infrastructure by Péter Szilágyi (opens in a new tab).
Überwachungs-Stack
Eine Ethereum-Anwendung sammelt viele Daten, die in Form einer chronologischen Datenbank gelesen werden können. Um die Überwachung zu erleichtern, können Sie diese in eine Datenvisualisierungssoftware einspeisen. Es stehen mehrere Optionen zur Verfügung:
- Prometheus (opens in a new tab) (Pull-Modell)
- InfluxDB (opens in a new tab) (Push-Modell)
- Telegraf (opens in a new tab)
- Grafana (opens in a new tab)
- Datadog (opens in a new tab)
- Chronograf (opens in a new tab)
Es gibt auch den Geth Prometheus Exporter (opens in a new tab), eine Option, die mit InfluxDB und Grafana vorkonfiguriert ist.
In diesem Tutorial richten wir Ihre Geth-Anwendung so ein, dass sie Daten an InfluxDB sendet, um eine Datenbank zu erstellen, und an Grafana, um eine grafische Visualisierung der Daten zu erstellen. Wenn Sie dies manuell tun, können Sie den Prozess besser verstehen, ihn ändern und in verschiedenen Umgebungen bereitstellen.
InfluxDB einrichten
Laden wir zunächst InfluxDB herunter und installieren es. Verschiedene Download-Optionen finden Sie auf der Influxdata-Release-Seite (opens in a new tab). Wählen Sie diejenige aus, die zu Ihrer Umgebung passt. Sie können es auch aus einem Repository (opens in a new tab) installieren. Zum Beispiel in einer Debian-basierten Distribution:
1curl -tlsv1.3 --proto =https -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add2source /etc/lsb-release3echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list4sudo apt update5sudo apt install influxdb -y6sudo systemctl enable influxdb7sudo systemctl start influxdb8sudo apt install influxdb-clientStellen Sie nach der erfolgreichen Installation von InfluxDB sicher, dass es im Hintergrund ausgeführt wird. Standardmäßig ist es unter localhost:8086 erreichbar.
Bevor Sie die influx-Anwendung verwenden, müssen Sie einen neuen Benutzer mit Administratorrechten erstellen. Dieser Benutzer dient der übergeordneten Verwaltung, der Erstellung von Datenbanken und Benutzern.
1curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER username WITH PASSWORD 'password' WITH ALL PRIVILEGES"Jetzt können Sie die Influx-Anwendung verwenden, um mit diesem Benutzer in die InfluxDB-Shell (opens in a new tab) zu gelangen.
1influx -username 'username' -password 'password'Durch die direkte Kommunikation mit InfluxDB in seiner Shell können Sie eine Datenbank und einen Benutzer für Geth-Metriken erstellen.
1create database geth2create user geth with password choosepasswordÜberprüfen Sie die erstellten Einträge mit:
1show databases2show usersVerlassen Sie die InfluxDB-Shell.
1exitInfluxDB läuft und ist so konfiguriert, dass Metriken von Geth gespeichert werden.
Geth vorbereiten
Nach der Einrichtung der Datenbank müssen wir die Metrikerfassung in Geth aktivieren. Achten Sie auf METRICS AND STATS OPTIONS in geth --help. Dort finden Sie mehrere Optionen. In diesem Fall möchten wir, dass Geth Daten in InfluxDB pusht.
Die grundlegende Einrichtung gibt den Endpunkt an, an dem InfluxDB erreichbar ist, sowie die Authentifizierung für die Datenbank.
1geth --metrics --metrics.influxdb --metrics.influxdb.endpoint "http://0.0.0.0:8086" --metrics.influxdb.username "geth" --metrics.influxdb.password "chosenpassword"Diese Flags können an einen Befehl angehängt werden, der die Anwendung startet, oder in der Konfigurationsdatei gespeichert werden.
Sie können überprüfen, ob Geth erfolgreich Daten pusht, indem Sie beispielsweise Metriken in der Datenbank auflisten. In der InfluxDB-Shell:
1use geth2show measurementsGrafana einrichten
Der nächste Schritt ist die Installation von Grafana, das die Daten grafisch interpretiert. Befolgen Sie den Installationsprozess für Ihre Umgebung in der Grafana-Dokumentation. Stellen Sie sicher, dass Sie die OSS-Version installieren, sofern Sie nichts anderes wünschen. Beispielhafte Installationsschritte für Debian-Distributionen unter Verwendung des Repositorys:
1curl -tlsv1.3 --proto =https -sL https://packages.grafana.com/gpg.key | sudo apt-key add -2echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list3sudo apt update4sudo apt install grafana5sudo systemctl enable grafana-server6sudo systemctl start grafana-serverWenn Grafana läuft, sollte es unter localhost:3000 erreichbar sein.
Verwenden Sie Ihren bevorzugten Browser, um auf diesen Pfad zuzugreifen, und melden Sie sich dann mit den Standardanmeldeinformationen an (Benutzer: admin und Passwort: admin). Wenn Sie dazu aufgefordert werden, ändern Sie das Standardpasswort und speichern Sie es.
Sie werden zur Grafana-Startseite weitergeleitet. Richten Sie zunächst Ihre Quelldaten ein. Klicken Sie auf das Konfigurationssymbol in der linken Leiste und wählen Sie „Data sources“ (Datenquellen).
Es wurden noch keine Datenquellen erstellt. Klicken Sie auf „Add data source“ (Datenquelle hinzufügen), um eine zu definieren.
Wählen Sie für diese Einrichtung „InfluxDB“ und fahren Sie fort.
Die Konfiguration der Datenquelle ist ziemlich einfach, wenn Sie Tools auf derselben Maschine ausführen. Sie müssen die InfluxDB-Adresse und die Details für den Zugriff auf die Datenbank festlegen. Beziehen Sie sich auf das Bild unten.
Wenn alles abgeschlossen ist und InfluxDB erreichbar ist, klicken Sie auf „Save and test“ (Speichern und testen) und warten Sie, bis die Bestätigung angezeigt wird.
Grafana ist nun so eingerichtet, dass es Daten aus InfluxDB liest. Jetzt müssen Sie ein Dashboard erstellen, das diese interpretiert und anzeigt. Dashboard-Eigenschaften sind in JSON-Dateien codiert, die von jedem erstellt und einfach importiert werden können. Klicken Sie in der linken Leiste auf „Create and Import“ (Erstellen und Importieren).
Für ein Geth-Überwachungs-Dashboard kopieren Sie die ID von diesem Dashboard (opens in a new tab) und fügen Sie sie auf der „Import page“ (Importseite) in Grafana ein. Nach dem Speichern des Dashboards sollte es so aussehen:
Sie können Ihre Dashboards ändern. Jedes Panel kann bearbeitet, verschoben, entfernt oder hinzugefügt werden. Sie können Ihre Konfigurationen ändern. Es liegt ganz bei Ihnen! Um mehr darüber zu erfahren, wie Dashboards funktionieren, lesen Sie die Grafana-Dokumentation (opens in a new tab). Vielleicht interessieren Sie sich auch für Alerting (opens in a new tab) (Benachrichtigungen). Damit können Sie Benachrichtigungen einrichten, wenn Metriken bestimmte Werte erreichen. Es werden verschiedene Kommunikationskanäle unterstützt.
Letzte Aktualisierung der Seite: 3. März 2026







