0

Cara scraping metrics nginx exporter pada prometheus di ubuntu 22.04

scraping metrics nginx prometheus


Sebelumnya kita sudah belajar:

Pertanyaannya sekarang, bagaimana cara scraping / mengumpulkan metrics nginx exporter tersebut pada aplikasi prometheus?

scraping metrics nginx prometheus

Caranya cukup mudah, kita tinggal melakukan konfigurasi pada file prometheus.yaml pada aplikasi prometheus, lalu restart prometheus.

Prerequisites

  • Nginx exporter menggunakan IP 10.0.20.200:9113
  • Prometheus berada diserver terpisah dari nginx exporter (10.0.20.122)
  • Pastikan server prometheus sudah bisa connect ke port 9113 milik server nginx exporter

Konfigurasi prometheus.yaml

Pada tutorial sebelumnya, Cara install prometheus di instance EC2 AWS kita sudah menginstall prometheus pada folder /home/ubuntu/prometheus/prometheus-2.36.1.linux-amd64. Didalam folder tersebut terdapat file prometheus.yaml.

scraping metrics nginx prometheus

Tambahkan konfigurasi berikut pada file prometheus.yaml

scrape_configs:
  - job_name: "nginx_exporter"
    scrape_interval: "10s"
    scrape_timeout: "10s"
    metrics_path: "/metrics"
    static_configs:
      - targets: ["10.0.20.200:9113"]

Penjelasan:

  • job_name: nginx_exporter, kita beri nama job scrapenya dengan nama nginx_exporter. Job ini nantinya akan muncul di dashboard prometheus
  • scrape_interval: "10s", tiap 10 detik prometheus akan menghit IP target (http://10.0.20.200:9113) untuk meng-scrape / mengumpulkan metrics.
  • scrape_timeout: "10s", timeout 10 detik jika IP target 10.0.20.200:9113 tidak meresponse
  • metrics_path: "/metrics", Prometheus akan mengakses path /metrics. Lengkapnya http://10.0.20.200:9113/metrics
  • static_configs:, konfigurasi statis untuk mengeset target IP metrics yang akan discrape
  • targets: ["10.0.20.200:9113"], target IP metricsnya. Dalam bentuk array, artinya target bisa lebih dari 1 IP. Namun disini kita hanya set 1 IP saja.

Restart Prometheus

Setelah mengkonfigurasi file prometheus.yaml. Restart prometheus agar konfigurasi tersebut bisa berjalan:

systemctl restart prometheus.service

Cek job nginx_exporter di dahsboard prometheus

Sekarang kita bisa cek job nginx_exporter di dashboard prometheus.

Caranya buka link prometheus di browser:

http://10.0.20.122:9090/targets
scraping metrics nginx prometheus
  • Jika sudah berhasil connect, maka Statenya akan UP berwarna hijau.
  • Last Scrape artinya kapan terkahir prometheus melakukan hit ke IP 10.0.20.200:9113 untuk mengambil data metrics.
  • Scrape Duration artinya total waktu yang dibutuhkan oleh prometheus untuk menscrape data metrics dari IP 10.0.2.200:9113.

Menampilkan data metrics dalam bentuk grafik di prometheus

Data metrics yang sudah discrape / dikumpulkan oleh prometheus bisa kita tampilkan dalam bentuk grafik.

Caranya buka dashboard prometheus

http://10.0.20.122:9090/graph

Klik Open metrics explorer pada sebelah kanan

Cari metric berikut, lalu klik tombol Execute

nginx_connections_active

Klik tab Graph, maka akan menampilkan grafik koneksi nginx yang sedang aktif

Mengatasi Kendala

Jika job nginx_exporter statenya DOWN, pastikan prometheus bisa mengakses IP nginx exporter 10.0.20.200:9113. Pastikan port 9113 sudah diallow di firewall / inbound rule (saya menggunakan EC2 instance – AWS disini)

Contoh diatas port 9113 diallow untuk range IP 10.0.0.0/16 dalam 1 VPC / network.


Demikian tutorial Cara scraping metrics nginx exporter pada prometheus di ubuntu 22.04.

Semoga bermanfaat!

Ambar Hasbiyatmoko

Hello, I'm web developer. Passionate about programming, web server, and networking.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.