Back to Blog
team@tinypod.app

Monitoring Dashboards: Build Observability for Self-Hosted Apps

Grafana dashboards give you complete visibility into your self-hosted infrastructure. CPU, memory, disk, network, and application metrics.

monitoringgrafanaobservability

Why Monitor?


Without monitoring, you discover problems when users complain. With monitoring, you discover problems before users notice.


The Monitoring Stack


Prometheus (Metrics Collection)

Scrapes numeric metrics from your apps and infrastructure every 15 seconds. Stores time-series data.


Grafana (Visualization)

Dashboards that visualize Prometheus metrics. Beautiful graphs, customizable panels, alerting.


Node Exporter (System Metrics)

Exposes CPU, memory, disk, and network metrics from your server.


cAdvisor (Container Metrics)

Exposes CPU, memory, and network metrics per container.


Essential Dashboards


Server Overview

  • CPU usage (current, 24h trend)
  • Memory usage and available
  • Disk usage and I/O
  • Network traffic in/out
  • System load average

  • Container Dashboard

  • CPU per container
  • Memory per container
  • Network per container
  • Container restart count
  • Container uptime

  • Application Dashboard

  • Request rate (requests/second)
  • Error rate (5xx responses)
  • Response time (p50, p95, p99)
  • Active connections

  • Database Dashboard

  • Query rate
  • Slow queries count
  • Connection pool usage
  • Buffer cache hit ratio
  • Replication lag (if applicable)

  • Alerting


    Critical Alerts (page someone)

  • Server unreachable
  • Disk >90% full
  • Container repeatedly crashing
  • Error rate >5%

  • Warning Alerts (check soon)

  • CPU sustained >80%
  • Memory sustained >85%
  • Response time p95 >2s
  • Certificate expiring in <7 days

  • Notification Channels

  • Email
  • Slack/Mattermost webhook
  • PagerDuty
  • Discord webhook

  • Getting Started


    1. Deploy Prometheus + Grafana on TinyPod

    2. Install node_exporter on your server

    3. Import community dashboards (Grafana dashboard ID: 1860 for Node Exporter)

    4. Add cAdvisor for container metrics

    5. Configure alerts for critical thresholds

    6. Iterate: add application-specific metrics over time


    Don't Over-Monitor


    Start with system basics (CPU, memory, disk) and error rates. Add more metrics only when investigating specific problems. A dashboard with 50 panels that nobody looks at is worse than 5 panels that catch every issue.

    Monitoring Dashboards for Self-Hosted Apps | TinyPod | TinyPod