---
title: "Integrasi Grafana - Peringatan Infrastruktur"
sidebarTitle: Grafana
description: Kirim peringatan Grafana ke Echobell lewat webhook dan dapatkan notifikasi push atau panggilan telepon instan. Panduan penyiapan langkah demi langkah dengan templat peringatan.
---

import { Step, Steps } from "fumadocs-ui/components/steps";

# Integrasi Grafana

Grafana adalah solusi analitik dan pemantauan open-source populer yang dipakai ribuan organisasi untuk memvisualisasikan metrik, log, dan trace. Dengan mengintegrasikan Grafana ke Echobell, Anda bisa menerima notifikasi instan saat metrik Anda memicu peringatan — entah itu penggunaan CPU tinggi, tekanan memori, layanan yang gagal, atau kondisi terpantau lainnya.

Panduan lengkap ini akan menuntun Anda menyiapkan peringatan Grafana dengan Echobell, mulai dari konfigurasi dasar hingga strategi pengelolaan peringatan tingkat lanjut.

## Prasyarat

Sebelum memulai, pastikan Anda memiliki:

- Akun Echobell dengan setidaknya satu saluran yang sudah dibuat ([Mulai di sini](/docs))
- Akses ke sebuah instance Grafana (disarankan versi 8.0 atau lebih baru, versi 9.0+ untuk kompatibilitas terbaik)
- Akses administratif untuk mengatur notifikasi peringatan di Grafana (biasanya butuh peran Admin atau Editor)
- Pemahaman dasar tentang dasbor dan metrik Grafana
- Keakraban dengan infrastruktur pemantauan dan kebutuhan peringatan Anda

## Sekilas Penyiapan

Proses integrasinya terdiri dari lima langkah utama yang biasanya memakan waktu 10-15 menit:

1. **Buat Saluran Echobell** - Siapkan saluran khusus untuk peringatan Grafana
2. **Konfigurasikan Templat Notifikasi** - Rancang tampilan peringatan di perangkat Anda
3. **Ambil URL Webhook** - Dapatkan endpoint webhook unik untuk saluran Anda
4. **Siapkan Contact Point Grafana** - Atur Grafana agar mengirim peringatan ke Echobell
5. **Buat Alert Rule di Grafana** - Tentukan kondisi apa yang memicu notifikasi

Setelah dikonfigurasi, peringatan mengalir otomatis dari Grafana ke perangkat Anda secara real-time.

## Panduan Langkah demi Langkah

<Steps>
<Step>
### Buat Saluran Echobell

1. Buka aplikasi Echobell
2. Buat saluran baru (misalnya, "Grafana Alerts")
3. Pilih warna yang mencolok agar mudah dikenali
</Step>
<Step>

### Konfigurasikan Templat Notifikasi

Siapkan templat yang akan memformat peringatan Grafana Anda secara efektif:

**Templat Judul:**

```
{{alertName}} - {{status}}
```

**Templat Isi:**

```
🔔 Alert: {{alertName}}
📊 Metric: {{metric}}
📈 Value: {{value}}
⏰ Time: {{time}}
ℹ️ Message: {{message}}
```

Templat ini cocok dengan struktur payload peringatan Grafana.

</Step>
<Step>
### Ambil URL Webhook

1. Di pengaturan saluran Anda, cari bagian **Pemicu** (Triggers)
2. Salin URL webhook yang tersedia
3. Jaga kerahasiaan URL ini karena akan dipakai di konfigurasi Grafana
</Step>
<Step>

### Konfigurasikan Contact Point Grafana

1. Di Grafana, buka **Alerting** → **Contact points**
2. Klik **New contact point**
3. Atur seperti berikut:
   - Name: "Echobell"
   - Type: "Webhook"
   - URL: URL webhook Echobell Anda
   - HTTP Method: POST
   - Content type: application/json
4. Konfigurasikan templat pesannya:

```json
{
  "alertName": "{{ .alertName }}",
  "status": "{{ .status }}",
  "metric": "{{ .metric }}",
  "value": "{{ .value }}",
  "time": "{{ .time }}",
  "message": "{{ .message }}",
  "externalLink": "{{ .dashboardURL }}"
}
```

</Step>
<Step>
### Buat Alert Rule

1. Buka **Alerting** → **Alert rules**
2. Buat alert rule baru atau edit yang sudah ada
3. Di konfigurasi rule-nya:
   - Tetapkan kondisi yang sesuai untuk metrik Anda
   - Pilih contact point "Echobell"
   - Atur kriteria evaluasi peringatannya
</Step>
</Steps>

## Menguji Integrasinya

Untuk memverifikasi penyiapan Anda:

1. Buat alert rule percobaan dengan kondisi yang akan cepat terpicu
2. Tunggu sampai kondisinya terpenuhi
3. Periksa aplikasi Echobell Anda untuk melihat notifikasi peringatannya
4. Pastikan semua variabel peringatan tampil dengan benar
5. Ketuk notifikasinya untuk membuka dasbor Grafana yang tertaut

## Jenis Notifikasi Peringatan

Saat berlangganan saluran peringatan Grafana, atur jenis notifikasi penting ini:

- Pakai **Peka Waktu** untuk peringatan sistem mendesak yang kritis dan notifikasi darurat
- Pakai **Panggilan** untuk gangguan parah, pelanggaran ambang batas yang kritis, atau peringatan darurat
- Pakai **Normal** untuk peringatan informasional standar dan notifikasi rutin

## Praktik Terbaik Pengelolaan Peringatan

### Penataan Templat Peringatan

**Jaga agar templat peringatan tetap jelas dan konsisten di semua saluran:**

```
Title: {{alertName}} - {{status}}
Body: 
Server: {{instance}}
Metric: {{metric}}  
Current: {{value}}
Threshold: {{threshold}}
```

- **Gunakan format terstruktur** - Tata informasinya dengan label yang jelas
- **Sertakan informasi penting** - Nama metrik, nilai, ambang batas, sistem yang terdampak
- **Pakai emoji secukupnya** - 🚨 untuk kritis, ⚠️ untuk peringatan, ✅ untuk yang sudah pulih
- **Jaga judul tetap ringkas** - Targetkan 5-8 kata yang langsung menjelaskan masalahnya
- **Uji templat Anda** - Kirim peringatan percobaan untuk memverifikasi formatnya sebelum diterapkan

### Konfigurasi Peringatan Kritis

**Tetapkan ambang batas peringatan yang tepat agar tidak kelelahan notifikasi:**

- **Hindari peringatan berlebihan** - Setel ambang batas pada level yang perlu ditindaklanjuti, bukan sekadar level yang menarik
- **Gunakan histeresis** - Atur ambang batas yang berbeda untuk memicu peringatan dan untuk pemulihan
- **Kelompokkan peringatan yang berkaitan** - Gabungkan kondisi terkait menjadi satu alert rule
- **Setel interval evaluasi yang pas** - Seimbangkan kecepatan respons dengan pengurangan kebisingan
- **Pertimbangkan rentang waktu** - Lakukan beberapa kali pemeriksaan kondisi sebelum memicu peringatan

**Contoh strategi ambang batas:**
```
# Buruk: Peringatan pada CPU 50% (terlalu sensitif)
cpu_usage > 50

# Lebih baik: Peringatan pada 80% selama 5 menit
avg_over_time(cpu_usage[5m]) > 80

# Terbaik: Peringatan bertingkat
# Warning pada 70% yang bertahan, Critical pada 90%
```

### Gunakan Nama Peringatan yang Bermakna

Beri peringatan nama deskriptif yang langsung menjelaskan:
- **Apa** yang dipantau (CPU, Memori, Disk)
- **Di mana** kejadiannya (produksi, staging, instance tertentu)
- **Mengapa** itu penting (layanan yang dipakai pengguna, basis data kritis)

Contoh yang baik:
- "Production Database - High Connection Pool Usage"
- "API Gateway - Response Time Degradation"  
- "Worker Node 3 - Disk Space Critical"

Hindari:
- "Alert 1", "Test Alert", "High CPU"

### Sertakan Konteks yang Memadai

Pesan peringatan Anda sebaiknya menjawab:
- **Apa yang terjadi?** Kondisi spesifik yang memicunya
- **Di mana?** Sistem, layanan, atau instance mana
- **Seberapa parah?** Nilai saat ini dibandingkan ambang batas
- **Kapan?** Cap waktu peringatannya
- **Lalu apa?** Tautan ke dasbor atau runbook yang relevan

### Atur Tingkat Prioritas

Gunakan [jenis notifikasi](/docs/notification) Echobell secara strategis:

- **Normal**: Peringatan informasi, notifikasi pemulihan, peringatan yang tidak mendesak
- **Peka Waktu**: Peringatan penting yang perlu ditangani dalam hitungan jam
- **Panggilan**: Masalah produksi kritis yang butuh respons segera

Petakan tingkat keparahan Grafana ke jenis notifikasi:
```
Critical + Production → Calling
High + Production → Time Sensitive  
Medium → Time Sensitive
Low → Normal
Info/Resolved → Normal
```

### Keamanan Peringatan

**Lindungi infrastruktur pemantauan Anda:**

- **Rahasiakan URL webhook** - URL itu memberi akses tanpa autentikasi untuk mengirim notifikasi
- **Gunakan variabel lingkungan** - Jangan menuliskan URL secara langsung di berkas provisioning Grafana
- **Rotasi webhook secara berkala** - Terutama saat ada anggota tim yang keluar
- **Pantau pengiriman webhook** - Lacak pengiriman yang gagal dan selidiki keanehannya
- **Audit konfigurasi peringatan** - Tinjau secara rutin siapa saja yang bisa mengubah peringatan
- **Validasi sumber peringatan** - Manfaatkan autentikasi bawaan Grafana untuk contact point

### Pengelolaan Siklus Hidup Peringatan

**Jaga kebersihan konfigurasi peringatan Anda:**

1. **Tinjauan rutin** - Audit peringatan setiap kuartal untuk membuang rule yang usang
2. **Dokumentasikan peringatan** - Tambahkan deskripsi yang menjelaskan alasan tiap peringatan dibuat
3. **Lacak riwayat peringatan** - Pantau peringatan mana yang paling sering muncul
4. **Setel ulang ambang batas** - Sesuaikan berdasarkan data historis dan tingkat positif palsu
5. **Arsipkan peringatan lama** - Nonaktifkan tetapi simpan rule untuk layanan yang dipensiunkan
6. **Kontrol versi** - Gunakan provisioning Grafana untuk melacak perubahan peringatan

### Pertimbangan Performa

- **Hindari badai peringatan** - Atur pengelompokan dan pengaturan waktu dengan benar
- **Gunakan notification policy** - Arahkan tingkat keparahan yang berbeda ke saluran yang sesuai
- **Setel interval wait/repeat** - Cegah notifikasi ganda
- **Kelompokkan peringatan serupa** - Kurangi volume notifikasi lewat agregasi
- **Pertimbangkan waktu dalam sehari** - Gunakan [kondisi](/docs/conditions) untuk menyaring berdasarkan jam kerja

## Contoh Nyata

### Peringatan CPU Tinggi
```
Title: {{instance}} CPU Critical
Body: CPU usage: {{cpu_percent}}%
Duration: {{duration}}
Time: {{time}}
Dashboard: {{dashboard_url}}
```

### Tekanan Memori
```
Title: Memory Warning - {{hostname}}
Body: Available: {{available_mb}}MB ({{percent_free}}%)
Threshold: {{threshold_mb}}MB
Action: Check memory-intensive processes
```

### Layanan Mati
```
Title: 🚨 {{service_name}} Unreachable
Body: Health check failed
Last success: {{last_successful_check}}
Impact: {{affected_users}} users affected
Runbook: {{runbook_url}}
```

## Kasus Penggunaan Umum

### Pemantauan Infrastruktur
- Ambang batas penggunaan CPU, memori, dan disk
- Throughput jaringan dan packet loss
- Ketersediaan layanan dan health check
- Pemantauan status container dan pod

### Performa Aplikasi
- Penurunan waktu respons
- Peningkatan tingkat error
- Kehabisan connection pool basis data
- Kedalaman antrean dan keterlambatan pemrosesan

### Metrik Bisnis
- Anomali volume transaksi
- Penurunan pendapatan per menit
- Perubahan jumlah pengguna aktif
- Mendekati batas rate limit API

### Pemantauan Keamanan
- Percobaan autentikasi yang gagal
- Pola akses yang tidak biasa
- Peringatan kedaluwarsa sertifikat
- Pelanggaran aturan firewall

Pelajari lebih banyak strategi integrasi di [artikel blog kami tentang notifikasi panggilan Grafana](/blog/grafana-call-notification).

## Pemecahan Masalah

Jika Anda tidak menerima peringatan, telusuri langkah diagnosis berikut:

### Webhook Tidak Memicu Notifikasi

1. **Pastikan URL webhook tersalin dengan benar**
   - Buka saluran Echobell Anda → Pemicu (Triggers) → Webhook
   - Salin URL lengkapnya termasuk `https://hook.echobell.one/t/`
   - Pastikan tidak ada spasi atau karakter tambahan saat menempelkannya ke Grafana

2. **Periksa apakah salurannya aktif**
   - Buka aplikasi Echobell
   - Buka saluran peringatan Grafana Anda
   - Pastikan saluran itu tidak terhapus atau terarsipkan tanpa sengaja

3. **Pastikan ada pelanggan yang aktif**
   - Setidaknya satu orang harus berlangganan agar notifikasi bisa diterima
   - Periksa daftar langganan saluran tersebut
   - Pastikan langganan pribadi Anda aktif

4. **Periksa konfigurasi contact point Grafana**
   - Buka Alerting → Contact points di Grafana
   - Buka contact point Echobell Anda
   - Pastikan URL-nya sama dengan webhook saluran Anda
   - Periksa bahwa HTTP Method disetel ke POST
   - Pastikan Content-Type-nya application/json

5. **Periksa konfigurasi alert rule Grafana**
   - Buka Alerting → Alert rules
   - Buka rule tertentu yang seharusnya terpicu
   - Pastikan rule itu tertaut ke contact point Echobell Anda
   - Periksa bahwa notification policy mengarahkannya ke contact point yang benar

6. **Tinjau riwayat peringatan Grafana**
   - Buka Alerting → Alert rules
   - Klik rule Anda → Show history
   - Pastikan peringatannya benar-benar firing (bukan dalam status pending)
   - Periksa apakah ada kesalahan evaluasi

### Peringatan Terpicu tetapi Tidak Terkirim

1. **Uji webhook-nya secara langsung**
   ```bash
   curl -X POST https://hook.echobell.one/t/<channel-token> \
     -H "Content-Type: application/json" \
     -d '{"alertName": "Test", "status": "firing"}'
   ```
   Jika Anda menerima notifikasi dari perintah ini tetapi tidak dari Grafana, berarti masalahnya ada di konfigurasi Grafana.

2. **Periksa notification policy Grafana**
   - Buka Alerting → Notification policies
   - Pastikan label rule Anda cocok dengan aturan perutean policy tersebut
   - Periksa kemungkinan masalah waktu (waktu tunggu pengelompokan, interval pengulangan)

3. **Tinjau log Grafana**
   - Cari kesalahan pengiriman webhook di log Grafana
   - Periksa kode status HTTP-nya (seharusnya 200)
   - Selidiki kesalahan timeout atau koneksi apa pun

### Notifikasi Tampil Tidak Semestinya

1. **Variabel templat tidak cocok dengan payload Grafana**
   - Grafana mengirim nama kolom tertentu seperti `.alertName`, `.status`, dan sebagainya
   - Pastikan variabel templat Anda cocok dengan struktur payload-nya
   - Uji dengan tombol "Test" di Grafana untuk melihat payload sebenarnya

2. **Informasi kurang lengkap di notifikasi**
   - Sebagian variabel Grafana bisa kosong tergantung konfigurasi peringatannya
   - Tambahkan nilai cadangan di templat: `{{alertName || "Unknown Alert"}}`
   - Periksa dokumentasi Grafana untuk variabel templat yang tersedia

3. **Kesalahan parsing JSON**
   - Pastikan templat pesan Grafana berupa JSON yang valid
   - Periksa tanda kutip atau karakter khusus yang belum di-escape
   - Gunakan validator JSON daring untuk memverifikasi struktur payload-nya

### Masalah Waktu Peringatan

1. **Peringatan datang terlambat**
   - Periksa konektivitas jaringan Anda
   - Pastikan Grafana bisa menjangkau server Echobell
   - Tinjau interval evaluasi Grafana (bisa menimbulkan penundaan)
   - Periksa pengaturan waktu pada notification policy

2. **Notifikasi ganda**
   - Tinjau pengaturan interval pengulangan di notification policy
   - Periksa apakah ada beberapa rule yang terpicu untuk kondisi yang sama
   - Pastikan hanya ada satu contact point yang dikonfigurasi untuk saluran itu

3. **Notifikasi saat jam senyap**
   - Mode Fokus iOS bisa memengaruhi pengiriman notifikasi
   - Notifikasi Peka Waktu dan Panggilan bisa menembus sebagian mode Fokus
   - Tinjau pengaturan notifikasi di perangkat Anda

### Masih Bermasalah?

Jika semua langkah di atas sudah dicoba dan masalahnya masih ada:

1. **Aktifkan logging debug Grafana**
   - Tambahkan bagian `[log]` di grafana.ini dengan `level = debug`
   - Periksa log untuk melihat percobaan pengiriman webhook dan responsnya

2. **Gunakan fitur test bawaan Grafana**
   - Di pengaturan contact point, pakai "Test" untuk mengirim peringatan contoh
   - Ini membantu memastikan apakah masalahnya ada pada rule atau pada pengiriman

3. **Coba alert rule yang berbeda**
   - Buat rule percobaan sederhana dengan kondisi yang pasti terpicu
   - Jika percobaan berhasil tetapi rule produksi tidak, berarti masalahnya ada di konfigurasi rule

4. **Hubungi dukungan**
   - Kunjungi [Pusat Dukungan](/docs/support) kami
   - Kirim email ke echobell@weelone.com dengan menyertakan:
     - Versi Grafana
     - Contoh payload peringatan (hapus data sensitifnya)
     - URL webhook (dengan token disamarkan)
     - Langkah-langkah yang sudah Anda coba
     - Perilaku yang diharapkan dan yang sebenarnya terjadi

## Dokumentasi dan Sumber Daya Terkait

### Dokumentasi Echobell
- **[Panduan Integrasi Webhook](/docs/webhook)** - Pembahasan mendalam soal fungsi webhook
- **[Sistem Templat](/docs/template)** - Kuasai sintaks templat notifikasi
- **[Kondisi](/docs/conditions)** - Saring peringatan berdasarkan kriteria
- **[Jenis Notifikasi](/docs/notification)** - Memahami tingkat prioritas peringatan
- **[Panduan Memulai](/docs)** - Dasar-dasar dan penyiapan Echobell

### Sumber Daya Grafana
- **[Dokumentasi Alerting Grafana](https://grafana.com/docs/grafana/latest/alerting/)** - Panduan alerting resmi Grafana
- **[Contact Points](https://grafana.com/docs/grafana/latest/alerting/fundamentals/contact-points/)** - Konfigurasi contact point Grafana
- **[Notification Policies](https://grafana.com/docs/grafana/latest/alerting/fundamentals/notification-policies/)** - Perutean dan pengelompokan peringatan
- **[Alert Rules](https://grafana.com/docs/grafana/latest/alerting/fundamentals/alert-rules/)** - Membuat dan mengelola alert rule

### Integrasi Terkait
- **[Integrasi Prometheus](/docs/developer/prometheus)** - Alerting langsung dari Prometheus
- **[Uptime Kuma](/docs/developer/uptime-kuma)** - Pemantauan uptime situs web
- **[GitHub Actions](/docs/developer/github)** - Peringatan alur CI/CD
- **[Home Assistant](/docs/developer/home-assistant)** - Notifikasi rumah pintar

### Artikel Blog
- **[Aktifkan Notifikasi Panggilan Telepon untuk Peringatan Grafana](/blog/grafana-call-notification)** - Strategi integrasi Grafana tingkat lanjut
- **[Jangan Lewatkan Kegagalan GitHub Actions](/blog/github-actions-notifications)** - Praktik terbaik alerting CI/CD
- **[Notifikasi Rentang Waktu Memakai Kondisi UTC](/blog/time-window-notifications-using-utc-conditions)** - Penyaringan berdasarkan jam kerja

## Langkah Berikutnya

Kini Grafana Anda sudah terintegrasi dengan Echobell:

1. **Setel halus peringatan Anda** - Sesuaikan ambang batas berdasarkan pola pemakaian nyata
2. **Siapkan saluran tambahan** - Buat saluran terpisah untuk tingkat keparahan yang berbeda
3. **Jelajahi integrasi lain** - Hubungkan lebih banyak perkakas ke Echobell ([lihat semua integrasi](/docs/features))
4. **Bagikan ke tim Anda** - Tambahkan anggota tim ke saluran peringatan Anda
5. **Dokumentasikan penyiapan Anda** - Buat runbook untuk menanggapi peringatan tertentu
6. **Pantau efektivitas peringatan** - Lacak tingkat positif palsu dan waktu respons

Siap memantau lebih banyak sistem? Lihat [panduan integrasi lengkap](/docs/features) kami untuk perkakas dan platform pemantauan populer lainnya.
