Grafana dashboards

Updated

NetBird ships ready-to-use Grafana dashboards for the Management, Signal, and Relay services and for the client, plus an extended Management dashboard for Enterprise Commercial License deployments. 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
Management (Enterprise)management-enterprise.json
Signalsignal.json
Relayrelay.json
Clientclient.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.

Management (Enterprise)

An extended Management dashboard for Enterprise Commercial License deployments, adding NATS, per-account latency debugging, network map, and browser client panels. It has its own prerequisites and variables — see the Enterprise Grafana Dashboard page.

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.

Client

Covers management and signal connectivity, known and connected peers split by connection type, per-peer latency, peer connection establishment stages, and sync and login durations. Unlike the service dashboards it reads from the NetBird client itself, which exposes these metrics through an opt-in local endpoint — see Local Metrics Endpoint for enabling it and for the metric reference.

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 Management, Signal, and Relay 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. The Enterprise dashboard uses a different variable set — see its variables table.

The Client dashboard uses datasource, job, and instance, where instance selects the client to look at.

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.

The Client dashboard scrapes the clients themselves rather than a server component. Its endpoint is off by default and binds to localhost when enabled, so it needs a scraper on each client host — see Local Metrics Endpoint.