Kembali ke Blog
DevOps·1 menit baca·

Monitoring Aplikasi dengan Grafana dan Prometheus

Panduan setup monitoring stack untuk aplikasi production menggunakan Grafana dashboard dan Prometheus metrics.

TH
Tomi Hartanto·Senior Software Engineer

Mengapa Perlu Monitoring?

Di production, kamu perlu tahu apa yang terjadi dengan aplikasi. Tanpa monitoring, debugging issue production seperti mencari jarum di tumpukan jerami.

Stack yang Digunakan

  • Prometheus — Collect dan store metrics
  • Grafana — Visualisasi dashboard
  • Alertmanager — Kirim alert ke Slack/Email

Setup Prometheus

# prometheus.yml
global:
  scrape_interval: 15s

scrape_configs:
  - job_name: 'my-app'
    static_configs:
      - targets: ['localhost:3000']

##Expose Metrics dari Aplikasi

import { Registry, Counter, Histogram } from 'prom-client';

const register = new Registry();

const httpRequestsTotal = new Counter({
  name: 'http_requests_total',
  help: 'Total HTTP requests',
  labelNames: ['method', 'route', 'status'],
  registers: [register],
});

app.get('/metrics', async (req, res) => {
  res.set('Content-Type', register.contentType);
  res.end(await register.metrics());
});

Dashboard Grafana

Buat dashboard untuk memantau:

  • Request per detik
  • Response time (p50, p95, p99)
  • Error rate
  • CPU dan memory usage

Kesimpulan

Monitoring bukan luxury, tapi kebutuhan. Setup Grafana + Prometheus memberikan visibility penuh ke health aplikasi.

TH

Tomi Hartanto

Senior Software Engineer

Backend developer dengan 8+ tahun pengalaman membangun sistem scalable. Menulis tentang arsitektur backend, database, dan DevOps.