DEV Community

Alex Spinov
Alex Spinov

Posted on

Grafana Has a Free Observability Platform That Visualizes Everything

CloudWatch charges per metric. Datadog charges per host. Grafana is free, open source, and connects to 100+ data sources — Prometheus, PostgreSQL, Elasticsearch, ClickHouse, Loki, and more. Build dashboards for anything.

What Grafana Gives You for Free

  • 100+ data sources — Prometheus, PostgreSQL, MySQL, InfluxDB, Elasticsearch
  • Beautiful dashboards — drag-and-drop panel editor
  • Alerting — Slack, PagerDuty, email, webhook notifications
  • Explore mode — ad-hoc querying and debugging
  • Annotations — mark deployments, incidents on graphs
  • Plugins — 1000+ community plugins
  • Grafana Cloud — free tier: 10K metrics, 50GB logs, 50GB traces

Quick Start

docker run -d -p 3000:3000 grafana/grafana-oss
Enter fullscreen mode Exit fullscreen mode

Open http://localhost:3000 (admin/admin).

Connect to Prometheus

  1. Go to Configuration → Data Sources → Add Prometheus
  2. URL: http://prometheus:9090
  3. Click "Save & Test"

Build a Dashboard

# CPU usage per container
rate(container_cpu_usage_seconds_total[5m]) * 100

# Memory usage
container_memory_usage_bytes / 1024 / 1024

# HTTP request rate
rate(http_requests_total[1m])

# Error rate
rate(http_requests_total{status=~"5.."}[5m]) / rate(http_requests_total[5m]) * 100

# P99 latency
histogram_quantile(0.99, rate(http_request_duration_seconds_bucket[5m]))
Enter fullscreen mode Exit fullscreen mode

Alerting

# Alert when error rate > 5%
alert: HighErrorRate
expr: rate(http_requests_total{status=~"5.."}[5m]) / rate(http_requests_total[5m]) > 0.05
for: 5m
labels:
  severity: critical
annotations:
  summary: "High error rate detected ({{ $value | humanizePercentage }})"
Enter fullscreen mode Exit fullscreen mode

Full Observability Stack (Docker Compose)

services:
  grafana:
    image: grafana/grafana-oss
    ports: ["3000:3000"]
    volumes: [grafana_data:/var/lib/grafana]

  prometheus:
    image: prom/prometheus
    ports: ["9090:9090"]
    volumes: [./prometheus.yml:/etc/prometheus/prometheus.yml]

  loki:  # Logs
    image: grafana/loki
    ports: ["3100:3100"]

  tempo:  # Traces
    image: grafana/tempo
    ports: ["3200:3200"]
Enter fullscreen mode Exit fullscreen mode

Metrics (Prometheus) + Logs (Loki) + Traces (Tempo) + Dashboards (Grafana) = complete observability.

Grafana vs Datadog vs CloudWatch vs New Relic

Feature Grafana (OSS) Datadog CloudWatch New Relic
Price Free $15/host/mo Pay per metric Free tier
Self-hosted Yes No No No
Data sources 100+ Limited AWS only Limited
Custom dashboards Unlimited Yes Limited Yes
Alerting Built-in Built-in Built-in Built-in
Community Huge Corporate AWS docs Corporate

The Verdict

Grafana is the universal dashboard for your infrastructure. Free, open source, connects to everything, and builds dashboards that make CloudWatch look primitive. If you monitor anything, Grafana should be your visualization layer.


Need help building production web scrapers or data pipelines? I build custom solutions. Reach out: spinov001@gmail.com

Check out my awesome-web-scraping collection — 400+ tools for extracting web data.

Top comments (0)