Alerts
Memberi tahu orang yang tepat saat angka sebuah Metric melewati ambang, lengkap dengan filter, jendela waktu, saluran notifikasi, dan riwayat pemicu.
Apa itu Alert
Alert memantau satu Metric (lihat Metrics) secara berkala dan mengirim notifikasi saat nilainya memenuhi syarat yang Anda tentukan, misalnya "jumlah pengajuan hari ini lebih dari 10". Saat nilainya kembali normal, Anda diberi tahu lagi.
Pakai Alert untuk sinyal bisnis dan operasional yang datang dari data proses. Untuk kesehatan infrastruktur (CPU, memori, container) pakai Grafana, bukan Alert.
Menu ada di sidebar Studio: KPI › Alerts. Halaman ini hanya bisa dibuka oleh Owner dan Admin SOP (lihat Siapa yang boleh mengelola Alert).
Membuat Alert
Ada tiga jalan masuk. Ketiganya membuka formulir New alert yang sama.
-
KPI › Alerts › New alert: formulir kosong.
-
Ikon lonceng di daftar Metrics: Metric sudah terisi.
-
Jalan pintas dari daftar KPI: Metric, filter, dan ambang terisi dari KPI tersebut. Setelah dibuat, alert berdiri sendiri: menghapus KPI tidak ikut menghapus alert.
Panel Summary di kanan menampilkan nilai Metric saat ini dan apakah alert ini "Would be triggered right now" atau "Would not trigger right now", sebelum Anda menyimpan.
| Bagian | Arti |
|---|---|
| Source: Metric | Metric yang dipantau. Metric bertanda "unavailable" tidak bisa dipilih, lihat Metric yang tidak bisa dipilih. |
| Source: Filter | Mempersempit data Metric. Hanya muncul bila question Metric punya parameter yang bisa difilter. Bila tidak, tertulis "This metric's question has no parameters to filter on". |
| Condition: Operator + Threshold | Syarat pemicu, misalnya > greater than dengan ambang 10. |
| Window | Rentang waktu yang dihitung. Lihat Window. |
| If the metric returns no data | Ignore (record NO_DATA) (bawaan): tidak ada notifikasi, hanya dicatat di riwayat. Treat as triggered: kondisi tanpa data dianggap memicu alert. |
| Check every | Seberapa sering dicek: 15 minutes, 1 hour (bawaan), 6 hours, 1 day. Administrator server dapat menaikkan batas minimumnya, lihat bagian admin. |
| Recipients | Penerima, hanya pengguna di workspace ini. Pengguna yang sudah keluar workspace dilewati otomatis dan tercatat di riwayat. |
| Channels | Email, Telegram, In-app. |
| Remind again while still triggered | Never (bawaan), 1 hour, 6 hours, 24 hours: pengingat berulang selama alert masih TRIGGERED. |
| Name | Terisi otomatis dari Metric dan kondisi, boleh diganti. |
| Active | Matikan untuk menyimpan aturan tanpa memeriksanya. |
Formulir tidak bisa disimpan bila ada isian yang tidak valid; pesan masalah tampil di dasar formulir.
Window
Window menentukan rentang waktu yang dijumlahkan Metric sebelum dibandingkan dengan ambang. Pilihannya sama dengan pemilih rentang tanggal di dashboard.
| Pilihan | Cara menghitung |
|---|---|
| Today, This week, This month, This year | Berjalan: dihitung dari awal periode sampai sekarang. Di awal periode nilainya masih kecil (misalnya hari Senin pagi untuk "This week"), jadi ambang > bisa belum tercapai walau sebulan penuh akan melewatinya. |
| Last 30 days, Last 3 / 6 / 12 months | Bergulir: selalu mundur sejauh itu dari saat pengecekan. |
| Custom last N | Mundur N jam atau N hari, N Anda tentukan. |
| No time window (current value) | Memakai nilai Metric apa adanya, tanpa rentang tanggal. |
Awal This week di pemilih tanggal dan di pengecekan alert belum seragam (Minggu vs Senin) pada build yang diuji, jadi nilai keduanya bisa berbeda di sepanjang minggu. Perbaikan dilacak di task 703efa30. Bila alert perlu cocok persis dengan dashboard, pilih Today, This month, Last 30 days, atau Custom last N.
Window yang nonaktif
Pilihan Window hanya aktif bila question di balik Metric punya parameter tanggal mulai dan akhir. Tanpa itu, hanya No time window yang bisa dipilih dan muncul peringatan kuning. Tambahkan parameter tanggal pada question bila Anda butuh window.
Metric yang tidak bisa dipilih
Metric yang question-nya memakai variabel per pengguna (__user) atau yang sumbernya sudah hilang ditandai "unavailable" di daftar dan tidak bisa dipilih. Pilih Metric lain untuk alert.
Membaca daftar dan detail
Klik sebuah alert di KPI › Alerts. Status alert:
| Status | Arti |
|---|---|
| OK | Kondisi tidak terpenuhi. |
| TRIGGERED | Kondisi terpenuhi. |
| NO_DATA | Metric tidak mengembalikan data, dan pengaturannya Ignore. |
| ERROR | Pengecekan gagal (query lambat melewati batas waktu atau Metric error). Email dikirim setelah gagal tiga kali berturut-turut. |
- Empat kartu di atas: Value now, Condition, Last checked (dengan frekuensi pengecekan), dan Notify (jumlah penerima dan saluran).
- Value vs threshold menggambar nilai tiap pengecekan terhadap garis ambang.
- Trigger history mencatat perubahan status, pengingat, dan tes kirim. Kolom Notified menunjukkan siapa dapat lewat saluran apa. Kolom Skipped / Note menjelaskan yang tidak terkirim, misalnya "Telegram not paired" atau penerima sudah keluar workspace.
Alert yang baru dibuat belum punya nilai: kartu Last checked berisi "Not checked yet" sampai pengecekan pertama selesai.
Notifikasi
Alert mengirim notifikasi saat berubah menjadi TRIGGERED, saat pulih (kembali OK), dan sebagai pengingat bila Anda mengaktifkannya.
- Email: ke alamat pengguna penerima.
- In-app: muncul di ikon lonceng Studio.
- Telegram: hanya untuk pengguna yang sudah menghubungkan (pair) akun Telegram-nya. Yang belum di-pair dilewati untuk saluran itu dan tercatat "Telegram not paired".
- Send test notification: tombol Send test di halaman detail (juga di formulir setelah alert disimpan) mengirim notifikasi contoh ke penerima. Dibatasi satu kali per 60 detik per alert; klik kedua dalam jendela itu ditolak.
Pengiriman lewat Telegram belum terverifikasi end-to-end pada pengujian (token bot uji belum tersedia). Pengiriman email dan in-app sudah terbukti. Jangan menjadikan Telegram satu-satunya saluran untuk alert kritis sebelum Anda mengujinya sendiri dengan Send test.
Saat Metric sumber dihapus
Menghapus Metric yang dipakai alert menampilkan peringatan di dialog hapus yang menyebut alert terdampak akan dijeda (paused). Dialog hanya menyebut alert tersebut dijeda; Anda tetap bisa melihatnya di daftar Alerts.
Angka "N alerts" di dialog ini saat ini ikut menghitung alert yang sudah nonaktif (task 2a41a4b2).
Siapa yang boleh mengelola Alert
Hanya Owner dan Admin SOP yang bisa masuk ke Studio, sehingga hanya keduanya yang bisa melihat dan mengelola Alert: membuat, mengubah (Edit), Send test, Pause, dan menghapus.
Role Member tidak bisa membuka Studio (semua halaman menampilkan Access Denied), jadi tidak ada tampilan Alert read-only untuk Member di antarmuka. Di sisi API, Member boleh membaca daftar dan detail alert tetapi menghapus, mengirim tes, dan mengubah ditolak dengan 403. Alert juga terisolasi per workspace: alert workspace lain tidak bisa dilihat atau diubah.
Untuk admin on-prem
Nilai bawaan di bawah diambil dari .env.example pada master.
report-service (pengecekan alert):
| Variabel | Bawaan | Fungsi |
|---|---|---|
METRIC_ALERT_ENABLED | true | false mematikan worker pengecek. API CRUD alert tetap jalan. |
METRIC_ALERT_TICK_INTERVAL | 1m | Seberapa sering worker mencari alert yang jatuh tempo. |
METRIC_ALERT_MIN_EVAL_INTERVAL | 15m | Interval Check every terkecil yang boleh disimpan. |
METRIC_ALERT_EVAL_TIMEOUT | 30s | Batas waktu satu pengecekan Metric. |
Nilai berformat durasi Go (15m, 1h). Nilai tidak valid membuat service gagal start dengan pesan yang menyebut variabelnya.
integration-service (pengiriman notifikasi):
| Variabel | Bawaan | Fungsi |
|---|---|---|
ENABLE_METRIC_ALERT_NOTIFY_WORKER | true | false menghentikan consumer, dan relay menahan topik tersebut. |
METRIC_ALERT_NOTIFY_CONSUMER | legacy | legacy (polling Postgres) atau asynq. |
METRIC_ALERT_NOTIFY_MAX_RETRY | 3 | Jumlah percobaan kirim ulang. |
- Tabel alert dibuat lewat migration manual, bukan otomatis saat service start. Jalankan migration report-service sebelum mengaktifkan fitur ini.
- Relay antrean harus memakai build terbaru agar topik
metric.alert.notifyikut diteruskan. Relay lama membuat notifikasi tidak terkirim tanpa pesan error.
KPIs
Membuat KPI dari metric (arah target, target per periode, tanggal mulai, target per bulan, visualisasi, dan ambang status), serta cara status On track, At risk, dan Off track dihitung.
SBG Dashboards
Menyusun beberapa KPI menjadi satu dashboard SBG (Smart Business Goals), mengatur siapa yang melihatnya, dan membaca scorecard per tahun, semester, kuartal, bulan, minggu, atau hari.
