Grafana dashboards

NetBird ships ready-to-use Grafana dashboards for the Management, Signal, and Relay services. They are maintained in the netbirdio/netbird repository under infrastructure_files/observability/grafana/dashboards and import directly into Grafana.

Available dashboards

ServiceDashboard JSON
Managementmanagement.json
Signalsignal.json
Relayrelay.json

Management

Covers peer-update fan-out, store latency, gRPC Sync / Login / GetServerKey rates and latencies, HTTP API request rates and latencies by endpoint and method, IdP request rates, network-map object counts, and update-channel queue length and operation durations.

Signal

Covers active peers, peer connection durations, message forwarding throughput and latency, message-forward failures, registration / deregistration rates and failure rates, and gRPC RPC rates and latencies for the Signal service.

Relay

Covers connected peers (total / active / idle), peer authentication latency, peer store latency, and inbound/outbound relay traffic bandwidth.

Importing a dashboard

  1. In Grafana, go to Dashboards → New → Import.
  2. Upload the JSON file (or paste its contents) and click Load.
  3. Select your Prometheus datasource and complete the import.

Dashboard variables

The dashboards expose these template variables:

VariablePurpose
datasourceSelects the Prometheus datasource.
clusterFilters NetBird instances by cluster.
environmentFilters by environment (dev, staging, uat, prod).
jobSelects a specific NetBird instance when multiple are running.
hostFilters metrics by host.

Your deployment may use only a subset of these variables; unused ones can be left at the default All.

Scraping for the dashboards

The dashboards assume a Prometheus scrape configuration that reaches the /metrics endpoint of each NetBird service. See Service endpoints for defaults and per-service overrides.