Coding 27 Jun 2025

Prometheus Alert: Jaga Kode Tetap Sehat, Tidur Pun Tenang!

Prometheus Alert: Jaga Kode Tetap Sehat, Tidur Pun Tenang!

Halo, saya Zona Sosmed, seorang penggemar berat DevOps yang selalu berusaha membuat hidup para developer lebih mudah. Salah satu caranya? Dengan Prometheus alerts!

Pendahuluan: Kenapa Kita Butuh Alert?

Bayangkan begini: Anda baru saja merilis fitur keren. Semua terlihat baik-baik saja di lingkungan development. Tapi, di production, server mulai batuk-batuk, database kewalahan, dan pengguna mulai komplain. Horor, kan? Alert hadir untuk mencegah mimpi buruk ini.

Alert, sederhananya, adalah notifikasi otomatis yang memberi tahu kita ketika ada sesuatu yang tidak beres. Tanpa alert, kita seperti pilot yang terbang tanpa radar. Kita mungkin tidak tahu ada badai sampai sudah terlambat.

Prometheus Alert: Satpam Kode Kita

Prometheus, sebagai sistem monitoring open-source yang populer, punya kemampuan alert yang powerful. Kita bisa mendefinisikan aturan (rules) yang akan memicu alert berdasarkan metrik yang dikumpulkan. Misalnya:

  • CPU Usage Tinggi: Jika CPU server mencapai 90% selama 5 menit, kirim alert.
  • Latency Meningkat: Jika rata-rata response time API melebihi 500ms, kirim alert.
  • Error Rate Melonjak: Jika jumlah error HTTP 500 meningkat tajam, kirim alert.

Bagaimana Cara Kerjanya?

Prometheus secara berkala mengevaluasi rules yang kita definisikan. Jika suatu rule terpenuhi (misalnya, CPU usage memang 90%), Prometheus akan memicu alert. Alert ini kemudian bisa dikirim ke berbagai platform, seperti:

  • Email: Klasik, tapi tetap efektif.
  • Slack: Cocok untuk kolaborasi tim.
  • PagerDuty: Untuk alert yang kritikal dan butuh respons cepat.

Contoh Sederhana Alert Rule


groups:
- name: ExampleAlerts
  rules:
  - alert: HighCPUUsage
    expr: 100 * (1 - avg by(instance)(idle_cpu_seconds_total) / avg by(instance)(cpu_seconds_total)) > 90
    for: 5m
    labels:
      severity: critical
    annotations:
      summary: "High CPU usage detected on {{ $labels.instance }}"
      description: "CPU usage is above 90% on {{ $labels.instance }} for more than 5 minutes."

Kode di atas adalah contoh alert rule dalam format YAML. Mari kita bedah:

  • alert: HighCPUUsage: Nama alert.
  • expr: ...: Ekspresi Prometheus Query Language (PromQL) yang mengevaluasi penggunaan CPU.
  • for: 5m: Alert hanya dipicu jika kondisi terpenuhi selama 5 menit.
  • labels:: Menambahkan label ke alert, seperti severity (tingkat keparahan).
  • annotations:: Menambahkan informasi tambahan ke alert, seperti summary dan description.

Tips dan Trik Alerting

  • Definisikan Threshold yang Realistis: Jangan terlalu sensitif, nanti kebanjiran alert palsu.
  • Prioritaskan Alert: Gunakan severity labels untuk membedakan alert kritikal dari alert yang kurang penting.
  • Tambahkan Runbook: Sertakan link ke dokumentasi yang menjelaskan cara mengatasi masalah yang memicu alert.

Menurut survei dari Cloud Native Computing Foundation (CNCF), 78% organisasi menggunakan Prometheus untuk monitoring. Ini menunjukkan betapa pentingnya Prometheus dalam ekosistem cloud-native.

Kesimpulan: Alerting adalah Investasi

Mengimplementasikan Prometheus alerts memang butuh sedikit usaha di awal. Tapi, ini adalah investasi yang sangat berharga. Dengan alert yang tepat, kita bisa mendeteksi masalah lebih awal, mencegah downtime, dan menjaga aplikasi tetap berjalan lancar. Jadi, jangan tunda lagi, mulai alerting sekarang!

prometheus alerts
Bagikan: