Grafana is an open-source observability dashboard and visualization layer. You point it at data sources — Prometheus, Loki, Tempo, Mimir, Elasticsearch, InfluxDB, Postgres, MySQL, CloudWatch, BigQuery, Datadog, and dozens more — and build dashboards, alerts, and ad-hoc Explore queries on top of them. It’s written in Go (backend) and TypeScript/React (frontend), and it’s the G in the LGTM stack that Grafana Labs sells.
The data source plugin model is the core idea: Grafana doesn’t store metrics itself, it federates queries to whatever backend owns the data, translating between the panel’s query editor and the backend’s native query language (PromQL, LogQL, TraceQL, SQL, Flux, etc.). Dashboards are JSON definitions — version-controllable, importable, and increasingly provisioned as code via grafana.com dashboards, Terraform, or the Grafana Operator for Kubernetes. Unified Alerting (since v8) replaced the old per-dashboard alerting with a Prometheus-compatible rule engine that evaluates against any data source and routes through Alertmanager-compatible notifiers.
Grafana Labs also maintains the backends Grafana is typically paired with: Prometheus-compatible Mimir for metrics, Loki for logs, Tempo for traces, Pyroscope for continuous profiling, and Beyla/Alloy for collection. The core Grafana product is AGPLv3 since 2021 (relicensed from Apache 2.0); Grafana Enterprise and Grafana Cloud are the commercial layers. It’s the default “look at my metrics” UI for basically all of cloud-native.