Panduan Editor & Admin
Grafana Dashboard

Dokumentasi lengkap untuk mengelola dashboard, panel, query, alert rule, notifikasi, anotasi, dan akses user. Gunakan dengan hati-hati karena perubahan memengaruhi semua viewer.

Edit Dashboard
Kelola Query
Atur Alert
Kelola User
Editor / Admin

Batas Tanggung Jawab

Editor dan Admin memiliki akses lebih tinggi dari Viewer. Perubahan yang dilakukan akan memengaruhi semua pengguna yang melihat dashboard. Gunakan akun admin hanya untuk tugas administratif, bukan monitoring harian.

Editor — Hak Akses:
  • Edit dashboard yang diizinkan
  • Tambah, ubah, dan hapus panel
  • Mengubah query dan visualisasi
  • Membuat dan mengelola variabel
  • Menambah anotasi
  • Membuat alert rule (jika izin diberikan)
  • Menggunakan Explore untuk investigasi
Admin — Hak Akses Tambahan:
  • Kelola semua user dan role
  • Tambah dan konfigurasi data source
  • Kelola contact point dan notification policy
  • Konfigurasi organisasi dan team
  • Akses Server Admin (jika Grafana Admin)
  • Backup dan restore dashboard
  • Mengelola API key dan service account
Prinsip penting: Berikan role paling rendah yang masih cukup untuk pekerjaan user. Jangan gunakan akun Admin untuk monitoring harian — gunakan akun Viewer terpisah.
01

Edit Dashboard

Cara aman mengubah dashboard tanpa merusak tampilan operasional

1

Masuk Edit Mode

Buka dashboard yang ingin diubah, lalu klik tombol Edit (ikon pensil) di toolbar atas. Dashboard akan masuk ke mode edit — panel bisa dipindah, di-resize, dan dikonfigurasi.

Perubahan belum tersimpan sampai Anda klik Save. Jika ingin membatalkan, klik Discard atau refresh halaman.
2

Save As — Buat Salinan Dulu

Sebelum perubahan besar, buat salinan dashboard:

  1. Klik menu dashboard (ikon gear atau tiga titik)
  2. Pilih Save As
  3. Beri nama baru, misalnya "AIMS Pipeline - Draft Edit"
  4. Lakukan perubahan di salinan, bukan di dashboard utama
  5. Setelah yakin benar, terapkan perubahan ke dashboard utama
Dashboard utama digunakan oleh operator 24/7. Perubahan langsung bisa mengganggu monitoring. Selalu test di salinan terlebih dahulu.
3

Simpan dengan Catatan Perubahan

Saat menyimpan, Grafana menampilkan dialog "Save dashboard". Isi field deskripsi perubahan agar mudah di-audit:

  • Contoh: "Ubah threshold pressure Line A dari 3000 ke 3500 PSI"
  • Contoh: "Tambah panel ampere untuk Sumur B-12"
  • Contoh: "Perbaiki query temperature — filter tag location"
Catatan perubahan tersimpan di version history. Jika terjadi masalah, dashboard bisa di-restore ke versi sebelumnya melalui Dashboard Settings → Versions.
02

Panel dan Query

Mengatur tampilan data sensor — dari query hingga visualisasi

Struktur Panel

Setiap panel terdiri dari beberapa komponen yang bisa dikonfigurasi:

  • Query: menentukan data apa yang diambil dari InfluxDB
  • Visualization: jenis tampilan (time series, gauge, stat, table, dll)
  • Title: judul panel yang terlihat oleh viewer
  • Unit: satuan data (°C, PSI, A, %, dll)
  • Thresholds: batas warna hijau/kuning/merah
  • Legend: label garis data di grafik
  • Overrides: pengaturan khusus per-field/series

Edit Panel

  1. Dalam edit mode, klik judul panel lalu pilih Edit
  2. Panel editor terbuka dengan preview di atas dan konfigurasi di bawah
  3. Tab Query: ubah measurement, field, tag filter, dan aggregation
  4. Tab Transform: manipulasi data (rename, calculate, filter)
  5. Panel kanan: ubah visualization type, title, unit, thresholds, legend
  6. Klik Apply untuk menyimpan perubahan panel

Query InfluxDB (Flux)

Query menentukan data yang ditampilkan. Contoh query Flux untuk AIMS:

FLUX QUERY
from(bucket: "aims")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "sensor")
|> filter(fn: (r) => r["location"] == "${location}")
|> filter(fn: (r) => r["_field"] == "temperature")
|> aggregateWindow(every: v.windowPeriod, fn: mean)
  • bucket: nama database InfluxDB
  • range: mengikuti time picker dashboard
  • filter: memilih measurement, tag, dan field
  • ${location}: variabel dashboard (dropdown filter)
  • aggregateWindow: rata-rata per interval waktu

Threshold Configuration

Threshold menentukan kapan warna berubah di gauge, stat, atau grafik. Sesuaikan dengan SOP client:

Contoh Threshold Temperature
Base (Hijau): 0°C — kondisi normal
Warning (Kuning): 80°C — perlu perhatian
Critical (Merah): 100°C — tindakan segera
Selalu konfirmasi nilai threshold dengan tim operasi lapangan. Threshold yang salah bisa menyebabkan false alarm atau missed alert.

Inspect Sebelum Simpan

Sebelum menyimpan perubahan panel, verifikasi data:

  • Inspect → Data: lihat data mentah yang ditampilkan panel
  • Inspect → Query: lihat request dan response dari data source
  • Inspect → Stats: lihat waktu query dan jumlah data point
  • Pastikan data sesuai ekspektasi sebelum Apply
03

Variabel dan Filter

Membuat dashboard dinamis yang bisa dipakai untuk banyak lokasi dan sensor

Apa itu Variabel?

Variabel membuat dropdown filter di bagian atas dashboard. Viewer bisa memilih lokasi, sumur, atau sensor tanpa admin perlu membuat dashboard terpisah untuk setiap kombinasi.

  • Query variable: nilai diambil otomatis dari data source (misalnya daftar lokasi dari InfluxDB)
  • Custom variable: nilai ditentukan manual oleh admin
  • Interval variable: untuk mengatur aggregation window

Membuat Variabel Baru

  1. Buka Dashboard Settings (ikon gear)
  2. Klik tab Variables
  3. Klik New variable
  4. Isi nama (misalnya location), label (misalnya "Lokasi"), dan tipe
  5. Untuk Query type: masukkan query yang mengambil daftar nilai unik
  6. Aktifkan Multi-value jika viewer perlu memilih lebih dari satu
  7. Aktifkan Include All option untuk opsi "Semua"
  8. Klik Update lalu Save dashboard
CONTOH QUERY VARIABEL
import "influxdata/influxdb/schema"
schema.tagValues(bucket: "aims", tag: "location")

Best Practice Variabel

  • Gunakan nama pendek dan jelas: location, sensor, well
  • Gunakan label dalam Bahasa Indonesia untuk viewer: "Lokasi", "Sensor", "Sumur"
  • Urutkan variabel dari umum ke spesifik (Lokasi → Sumur → Sensor)
  • Gunakan chained variables: pilihan sumur bergantung pada lokasi yang dipilih
  • Test semua kombinasi filter setelah variabel dibuat
  • Pastikan semua panel menggunakan variabel di query-nya
04

Alert Rule

Membuat alarm otomatis saat parameter sensor melewati batas aman

Konsep Alert di Grafana

Alert rule adalah kondisi yang dievaluasi secara berkala. Jika kondisi terpenuhi selama durasi tertentu, alert akan firing dan notifikasi dikirim.

Query
Data
Reduce
(Avg/Last)
Threshold
Check
Fire &
Notify

Membuat Alert Rule Baru

  1. Buka Alerting → Alert rules di sidebar
  2. Klik New alert rule
  3. Define query: tulis query yang mengambil data sensor target
  4. Reduce: pilih fungsi agregasi (Last, Average, Max, Min)
  5. Threshold: tentukan kondisi, misalnya "Is above 100"
  6. Folder & Group: organisasi alert rule
  7. Evaluation: tentukan interval dan durasi
  8. Labels: tambahkan label untuk routing notifikasi
  9. Klik Save rule

Evaluation Interval & For Duration

Dua parameter penting yang menentukan sensitivitas alert:

  • Evaluation interval: seberapa sering rule dicek. Contoh: setiap 1m (1 menit)
  • For duration: berapa lama kondisi harus bertahan sebelum firing. Contoh: 5m
  • Interval pendek + for pendek = sensitif tapi bisa false alarm
  • Interval panjang + for panjang = stabil tapi lambat mendeteksi
Rekomendasi AIMS: evaluation 1m, for duration 5m. Ini memberikan keseimbangan antara kecepatan deteksi dan pencegahan false alarm.

No Data dan Error Handling

Tentukan apa yang terjadi saat data tidak tersedia atau query error:

  • No Data → Alerting: untuk sensor kritis yang harus selalu mengirim data
  • No Data → OK: untuk sensor yang boleh offline sementara
  • Error → Alerting: agar masalah query terdeteksi
  • Error → Keep Last State: jika error sementara sering terjadi
Untuk sensor kritis (pressure, temperature), No Data sebaiknya tetap menghasilkan alert. Sensor yang tidak mengirim data bisa berarti masalah serius di lapangan.
05

Notifikasi

Mengatur alert dikirim ke orang yang tepat melalui channel yang benar

Contact Point

Contact point adalah tujuan pengiriman notifikasi. Setiap contact point terhubung ke satu channel komunikasi.

📧 Email
📱 Telegram Bot
🔗 Webhook
💬 Slack
  1. Buka Alerting → Contact points
  2. Klik New contact point
  3. Pilih tipe (Email, Telegram, Webhook, dll)
  4. Isi konfigurasi (alamat email, bot token, URL webhook)
  5. Klik Test untuk memastikan notifikasi terkirim
  6. Klik Save contact point

Konfigurasi Telegram Bot

Telegram adalah channel notifikasi yang paling responsif untuk tim lapangan:

  1. Buat bot via @BotFather di Telegram, simpan token
  2. Buat group Telegram untuk tim, tambahkan bot ke group
  3. Dapatkan Chat ID group (gunakan @userinfobot atau API getUpdates)
  4. Di Grafana: buat contact point tipe Telegram
  5. Isi Bot Token dan Chat ID
  6. Test notifikasi — pastikan pesan muncul di group
Buat group terpisah per site/area agar notifikasi tidak tercampur. Contoh: "AIMS Alert - Site A", "AIMS Alert - Site B".

Notification Policy

Policy menentukan alert mana dikirim ke contact point mana berdasarkan label:

  1. Buka Alerting → Notification policies
  2. Default policy: semua alert yang tidak cocok dengan policy lain
  3. Klik New nested policy untuk routing spesifik
  4. Tentukan matcher, misalnya: site = "Site-A"
  5. Pilih contact point tujuan untuk matcher tersebut
  6. Atur Group by dan Timing sesuai kebutuhan
  • Group wait: tunggu berapa lama sebelum kirim group pertama (default: 30s)
  • Group interval: interval antar pengiriman group (default: 5m)
  • Repeat interval: kirim ulang jika alert masih firing (default: 4h)

Silence (Mute Sementara)

Gunakan silence saat maintenance terjadwal agar notifikasi tidak membanjiri tim:

  1. Buka Alerting → Silences
  2. Klik New silence
  3. Tentukan durasi (misalnya 2 jam untuk maintenance)
  4. Tambahkan matcher untuk memilih alert mana yang di-silence
  5. Isi komentar: "Maintenance pompa Site A - PIC: [nama]"
  6. Klik Submit
Alert tetap dievaluasi saat silence aktif — hanya notifikasi yang ditahan. Setelah silence berakhir, jika alert masih firing, notifikasi akan langsung terkirim.
06

Anotasi

Menandai event penting di grafik untuk dokumentasi dan korelasi

Jenis Anotasi

  • Point annotation: menandai satu titik waktu (misalnya "Pompa trip 14:30")
  • Region annotation: menandai periode waktu (misalnya "Maintenance 10:00–12:00")
  • Alert annotation: otomatis dibuat saat alert firing/resolved

Menambah Anotasi Manual

  1. Point: Tahan Ctrl/Cmd + klik pada titik waktu di panel
  2. Region: Tahan Ctrl/Cmd + drag horizontal untuk memilih periode
  3. Dialog anotasi muncul — isi deskripsi dan tag
  4. Contoh deskripsi: "Maintenance valve Line B - PIC: Ahmad"
  5. Contoh tag: maintenance, site-a, pompa
  6. Klik Save

Mengelola Anotasi

  • Lihat: anotasi muncul sebagai garis vertikal atau area berwarna di grafik
  • Detail: hover marker anotasi untuk melihat deskripsi dan tag
  • Edit: klik marker → ikon pensil untuk mengubah
  • Hapus: klik marker → ikon tempat sampah untuk menghapus
  • Filter: di Dashboard Settings → Annotations, atur query untuk menampilkan/menyembunyikan anotasi berdasarkan tag
Anotasi sangat berguna untuk korelasi: saat melihat anomali data, cek apakah ada maintenance atau event lain yang terjadi bersamaan.
07

Explore dan Inspector

Investigasi data tanpa mengubah dashboard — untuk troubleshooting dan analisis ad-hoc

Explore Mode

Explore adalah workspace terpisah untuk mencoba query dan menganalisis data tanpa risiko mengubah dashboard:

  1. Klik ikon Explore (kompas) di sidebar kiri
  2. Pilih data source (InfluxDB AIMS)
  3. Tulis query atau gunakan query builder
  4. Hasil langsung ditampilkan — bisa grafik atau tabel
  5. Ubah time range sesuai kebutuhan investigasi
  • Cocok untuk mencari penyebab data aneh tanpa mengedit dashboard utama
  • Query di Explore tidak tersimpan ke dashboard
  • Bisa digunakan untuk memvalidasi query sebelum diterapkan ke panel

Split View

Bandingkan dua query atau dua data source berdampingan:

  1. Di Explore, klik tombol Split di toolbar
  2. Layar terbagi dua — masing-masing bisa punya query berbeda
  3. Gunakan untuk membandingkan: sensor A vs sensor B, lokasi X vs lokasi Y, atau periode berbeda
  4. Time range bisa di-sync atau independen antar panel

Query Inspector (di Panel)

Inspector menampilkan detail teknis tentang panel — berguna saat panel lambat atau data tidak sesuai:

  • Inspect → Query: lihat request yang dikirim ke data source dan response yang diterima
  • Inspect → Data: lihat data mentah dalam format tabel
  • Inspect → Stats: waktu query, jumlah data point, ukuran response
  • Inspect → JSON: konfigurasi panel dalam format JSON (untuk backup/copy)
Jika panel lambat (query >5 detik), cek Stats untuk melihat berapa data point yang diambil. Kurangi time range atau tambahkan aggregation untuk mempercepat.
08

Akses User

Mengelola user, role, dan permission sesuai kebutuhan organisasi

Tiga Level Role

Viewer — Client/operator yang hanya melihat dashboard. Tidak bisa mengubah apapun.
Editor — Teknisi yang boleh mengubah dashboard dan panel. Tidak bisa kelola user.
Admin — Pengelola penuh: user, data source, alerting, dan konfigurasi organisasi.
Prinsip least privilege: berikan role paling rendah yang masih cukup. Operator cukup Viewer. Teknisi maintenance cukup Editor. Hanya system admin yang perlu Admin.

Menambah User Baru

  1. Buka Administration → Users (atau Server Admin → Users)
  2. Klik New user atau Invite
  3. Isi nama, email, username, dan password awal
  4. Pilih role: Viewer, Editor, atau Admin
  5. Klik Create user
  6. Informasikan kredensial ke user baru secara aman
  7. Minta user mengganti password saat login pertama

Dashboard Permission

Selain role organisasi, permission bisa diatur per-dashboard:

  1. Buka dashboard → Dashboard Settings (ikon gear)
  2. Klik tab Permissions
  3. Tambahkan user atau team dengan level akses spesifik
  4. Level: View, Edit, atau Admin (per dashboard)
  • Gunakan folder untuk mengelompokkan dashboard dengan permission yang sama
  • Permission folder diwariskan ke semua dashboard di dalamnya
  • Contoh: folder "Site A" hanya bisa diakses tim Site A
09

Backup dan Versioning

Menjaga dashboard tetap aman dan bisa di-restore jika terjadi kesalahan

Version History

Grafana menyimpan setiap versi dashboard yang pernah disimpan:

  1. Buka Dashboard Settings → Versions
  2. Lihat daftar semua versi dengan tanggal dan catatan perubahan
  3. Klik versi untuk melihat detail perubahan (diff)
  4. Klik Restore untuk mengembalikan ke versi tersebut
Inilah mengapa penting mengisi catatan perubahan saat save — memudahkan identifikasi versi mana yang perlu di-restore.

Export / Import Dashboard

Untuk backup manual atau migrasi antar server:

  • Export: Dashboard Settings → JSON Model → Copy atau Save to file
  • Import: Menu Dashboards → Import → Upload JSON file
  • Simpan file JSON di repository atau cloud storage sebagai backup
  • Lakukan export sebelum perubahan besar sebagai safety net

Checklist Sebelum Save

Verifikasi setiap perubahan sebelum disimpan untuk mengurangi risiko dashboard rusak

Data & Query Benar

  • Query mengambil sensor yang tepat
  • Measurement dan field sesuai
  • Tag filter (location, well) benar
  • Unit sesuai: °C, PSI, A
  • Time range sudah diuji (15m, 1h, 24h, 7d)
  • Inspect → Data menunjukkan nilai wajar

Tampilan Jelas

  • Judul panel mudah dipahami viewer
  • Warna threshold sesuai status (hijau/kuning/merah)
  • Legend tidak membingungkan
  • Satuan (unit) ditampilkan di axis/tooltip
  • Layout rapi dan responsif di layar berbeda
  • Panel tidak terlalu kecil untuk dibaca

Alert Aman

  • Threshold sesuai SOP client/site
  • Evaluation interval dan for duration wajar
  • Contact point benar dan sudah di-test
  • Notification policy routing sudah sesuai
  • No Data handling sudah ditentukan
  • Test notification berhasil terkirim

Keamanan & Dokumentasi

  • Catatan perubahan diisi saat save
  • Permission dashboard sudah sesuai
  • Variabel berfungsi untuk semua kombinasi
  • Backup JSON sudah dibuat (untuk perubahan besar)
  • Tidak ada kredensial/secret di query atau title
  • Informasikan tim jika ada perubahan signifikan
Ingat: Dashboard operasional digunakan 24/7 oleh operator. Jika ragu, test di salinan dashboard terlebih dahulu. Jika terjadi kesalahan, gunakan Version History untuk restore ke versi sebelumnya.