Memantau Geth dengan InfluxDB dan Grafana
Tutorial ini akan membantu Anda menyiapkan pemantauan untuk node Geth Anda sehingga Anda dapat lebih memahami kinerjanya dan mengidentifikasi potensi masalah.
Prasyarat
- Anda harus sudah menjalankan instans Geth.
- Sebagian besar langkah dan contoh adalah untuk lingkungan linux, pengetahuan dasar tentang terminal akan sangat membantu.
- Lihat ikhtisar video tentang rangkaian metrik Geth ini: Memantau infrastruktur Ethereum oleh Péter Szilágyi (opens in a new tab).
Tumpukan pemantauan
Klien Ethereum mengumpulkan banyak data yang dapat dibaca dalam bentuk basis data kronologis. Untuk mempermudah pemantauan, Anda dapat memasukkannya ke dalam perangkat lunak visualisasi data. Ada beberapa opsi yang tersedia:
- Prometheus (opens in a new tab) (model tarik)
- InfluxDB (opens in a new tab) (model dorong)
- Telegraf (opens in a new tab)
- Grafana (opens in a new tab)
- Datadog (opens in a new tab)
- Chronograf (opens in a new tab)
Ada juga Geth Prometheus Exporter (opens in a new tab), opsi yang telah dikonfigurasi sebelumnya dengan InfluxDB dan Grafana.
Dalam tutorial ini, kita akan menyiapkan klien Geth Anda untuk mendorong data ke InfluxDB guna membuat basis data dan Grafana untuk membuat visualisasi grafik dari data tersebut. Melakukannya secara manual akan membantu Anda memahami prosesnya dengan lebih baik, mengubahnya, dan menerapkannya di lingkungan yang berbeda.
Menyiapkan InfluxDB
Pertama, mari unduh dan instal InfluxDB. Berbagai opsi unduhan dapat ditemukan di halaman rilis Influxdata (opens in a new tab). Pilih salah satu yang sesuai dengan lingkungan Anda. Anda juga dapat menginstalnya dari repositori (opens in a new tab). Misalnya dalam distribusi berbasis Debian:
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-clientSetelah berhasil menginstal InfluxDB, pastikan itu berjalan di latar belakang. Secara default, ini dapat dijangkau di localhost:8086.
Sebelum menggunakan klien influx, Anda harus membuat pengguna baru dengan hak istimewa admin. Pengguna ini akan berfungsi untuk manajemen tingkat tinggi, membuat basis data dan pengguna.
1curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER username WITH PASSWORD 'password' WITH ALL PRIVILEGES"Sekarang Anda dapat menggunakan klien influx untuk masuk ke shell InfluxDB (opens in a new tab) dengan pengguna ini.
1influx -username 'username' -password 'password'Berkomunikasi langsung dengan InfluxDB di shell-nya, Anda dapat membuat basis data dan pengguna untuk metrik geth.
1create database geth2create user geth with password choosepasswordVerifikasi entri yang dibuat dengan:
1show databases2show usersTinggalkan shell InfluxDB.
1exitInfluxDB sedang berjalan dan dikonfigurasi untuk menyimpan metrik dari Geth.
Menyiapkan Geth
Setelah menyiapkan basis data, kita perlu mengaktifkan pengumpulan metrik di Geth. Perhatikan METRICS AND STATS OPTIONS di geth --help. Beberapa opsi dapat ditemukan di sana, dalam hal ini kita ingin Geth mendorong data ke InfluxDB.
Penyiapan dasar menentukan titik akhir di mana InfluxDB dapat dijangkau dan autentikasi untuk basis data.
1geth --metrics --metrics.influxdb --metrics.influxdb.endpoint "http://0.0.0.0:8086" --metrics.influxdb.username "geth" --metrics.influxdb.password "chosenpassword"Bendera ini dapat ditambahkan ke perintah yang memulai klien atau disimpan ke file konfigurasi.
Anda dapat memverifikasi bahwa Geth berhasil mendorong data, misalnya dengan mencantumkan metrik dalam basis data. Di shell InfluxDB:
1use geth2show measurementsMenyiapkan Grafana
Langkah selanjutnya adalah menginstal Grafana yang akan menafsirkan data secara grafis. Ikuti proses instalasi untuk lingkungan Anda di dokumentasi Grafana. Pastikan untuk menginstal versi OSS jika Anda tidak menginginkan yang lain. Contoh langkah instalasi untuk distribusi Debian menggunakan repositori:
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-serverSaat Anda menjalankan Grafana, itu harus dapat dijangkau di localhost:3000.
Gunakan peramban pilihan Anda untuk mengakses jalur ini, lalu masuk dengan kredensial default (pengguna: admin dan kata sandi: admin). Saat diminta, ubah kata sandi default dan simpan.
Anda akan diarahkan ke halaman beranda Grafana. Pertama, siapkan data sumber Anda. Klik ikon konfigurasi di bilah kiri dan pilih "Data sources".
Belum ada sumber data yang dibuat, klik "Add data source" untuk menentukannya.
Untuk penyiapan ini, pilih "InfluxDB" dan lanjutkan.
Konfigurasi sumber data cukup mudah jika Anda menjalankan alat pada mesin yang sama. Anda perlu mengatur alamat InfluxDB dan detail untuk mengakses basis data. Lihat gambar di bawah ini.
Jika semuanya sudah selesai dan InfluxDB dapat dijangkau, klik "Save and test" dan tunggu konfirmasi muncul.
Grafana sekarang disiapkan untuk membaca data dari InfluxDB. Sekarang Anda perlu membuat dasbor yang akan menafsirkan dan menampilkannya. Properti dasbor dikodekan dalam file JSON yang dapat dibuat oleh siapa saja dan diimpor dengan mudah. Di bilah kiri, klik "Create and Import".
Untuk dasbor pemantauan Geth, salin ID dari dasbor ini (opens in a new tab) dan tempelkan di "Import page" di Grafana. Setelah menyimpan dasbor, tampilannya akan seperti ini:
Anda dapat memodifikasi dasbor Anda. Setiap panel dapat diedit, dipindahkan, dihapus, atau ditambahkan. Anda dapat mengubah konfigurasi Anda. Terserah Anda! Untuk mempelajari lebih lanjut tentang cara kerja dasbor, lihat dokumentasi Grafana (opens in a new tab). Anda mungkin juga tertarik dengan Peringatan (opens in a new tab). Ini memungkinkan Anda menyiapkan pemberitahuan peringatan saat metrik mencapai nilai tertentu. Berbagai saluran komunikasi didukung.
Pembaruan terakhir halaman: 26 Februari 2026







