Skip to content

Metrics catalog

Every metric carries system="<name>". This catalog mirrors internal/nsr/catalog.go; a test (TestCatalogCoversAllEmittedMetrics) fails if a collector emits a metric absent here. Diff against a live appliance with:

nsr_exporter --config real.yaml --once --debug --trace 2>trace.log | sort > samples.txt

Health

Metric Type Labels Meaning
nsr_up Gauge system 1 if the system was reachable this cycle, else 0

Alerts (/alerts)

Metric Type Labels Meaning
nsr_alert_info Gauge (1) priority, category, message, timestamp An active alert; priority replaces former severity; acknowledged label removed; timestamp now populated
nsr_alerts_active Gauge priority Count of active alerts by priority (renamed from nsr_alerts_total; severity label → priority)

Clients (/clients)

Metric Type Labels Meaning
nsr_client_info Gauge (1) client_name, ndmp, scheduled_backup, backup_command, operating_system Configured client metadata
nsr_client_parallelism Gauge client_name Configured backup stream limit (absent if unset — never 0)

Server & jobs (/serverstatistics, /jobs)

Metric Type Labels Meaning
nsr_server_up_since_timestamp_seconds Gauge Server start time (Unix seconds)
nsr_server_saves_total Counter Cumulative backup attempts
nsr_server_save_size_bytes Counter Cumulative bytes written by backups
nsr_server_recovers_total Counter Cumulative recovery attempts
nsr_server_recover_size_bytes Counter Cumulative bytes restored
nsr_server_bad_saves_total Counter Cumulative failed backups
nsr_server_bad_recovers_total Counter Cumulative failed recoveries
nsr_server_current_saves Gauge Current concurrent save operations
nsr_server_current_recovers Gauge Current concurrent recover operations
nsr_server_max_saves Gauge Configured maximum concurrent saves
nsr_server_max_recovers Gauge Configured maximum concurrent recovers
nsr_job_status Gauge (1) job_id, job_name, job_type, state, completion_status, client, level An individual job; group label removed
nsr_job_start_timestamp_seconds Gauge job_id, job_name Unix timestamp when the job started (absent if unparseable)
nsr_job_end_timestamp_seconds Gauge job_id, job_name Unix timestamp when the job ended (absent if unparseable)

Live sessions (/sessions)

Metric Type Labels Meaning
nsr_session_active Gauge (1) session_type, client An active session; state label removed; session_type values: Saving/Recovering/Browsing
nsr_session_bytes Gauge session_type, client Bytes moved so far (absent if unknown); state label removed
nsr_active_sessions Gauge session_type Count of active sessions by type (renamed from nsr_sessions_total; session_type values: Saving/Recovering/Browsing)
nsr_session_transfer_bytes_per_second Gauge session_type, client Live transfer throughput — aggregate with sum/avg, never rate()

Storage & capacity (/volumes, /datadomainsystems)

Metric Type Labels Meaning
nsr_volume_capacity_bytes Gauge volume_name, pool, type Volume capacity; type = media type (was mediaType)
nsr_volume_written_bytes Gauge volume_name, pool, type Bytes written; type = media type (was mediaType)
nsr_volume_recycled_total Counter volume_name Times recycled
nsr_volume_status Gauge (1) volume_name, pool, status Volume status; status now holds values like Recyclable/WORM (was appendable/full)
nsr_datadomain_capacity_total_bytes Gauge dd_name, model, os_version DD total size
nsr_datadomain_capacity_used_bytes Gauge dd_name, model, os_version DD physical used
nsr_datadomain_capacity_available_bytes Gauge dd_name, model, os_version DD free
nsr_datadomain_logical_capacity_used_bytes Gauge dd_name, model, os_version Pre-dedup logical used

Devices (/devices)

Metric Type Labels Meaning
nsr_device_info Gauge (1) device_name, media_type, media_family, status, serial A backup device; type label renamed to media_type; NEW media_family label

Storage nodes (/storagenodes)

Metric Type Labels Meaning
nsr_storagenode_info Gauge (1) node, enabled, type, version A NetWorker storage node; status label renamed to enabled; NEW type and version labels
nsr_storagenode_device_count Gauge node Number of devices attached (absent if unknown)

Pools (/pools)

Metric Type Labels Meaning
nsr_pool_info Gauge (1) pool, pool_type, enabled A media pool (replaces removed capacity metrics); pool_type and enabled labels

VMware vCenters (/vmwares)

Metric Type Labels Meaning
nsr_vmware_info Gauge (1) vcenter, cloud_deployment A registered VMware vCenter; version and status labels removed; NEW cloud_deployment label

Protection policies and groups (/protectionpolicies, /protectiongroups)

Metric Type Labels Meaning
nsr_policy_enabled Gauge policy 1 if the protection policy is enabled, else 0
nsr_group_info Gauge (1) group, work_item_type A protection group (replaces removed nsr_group_client_count)

Sizing & capacity forecasting (bounded /backups)

The /backups query is bounded by collection.backupWindow (default 24h) — the full catalog is never fetched (ADR-0010). The q= savetime syntax and level vocabulary are INFERRED (see sizing.go) pending live validation.

Metric Type Labels Meaning
nsr_backup_source_size_bytes Gauge client, saveset_name, level="Full" FETB — largest Full per saveset
nsr_backup_change_size_bytes Gauge client, saveset_name, level="Incr" Largest incremental change
nsr_backup_retention_seconds Gauge client, saveset_name, pool Retention period (retentionTime−saveTime)
nsr_job_duration_seconds Gauge client, job_name Elapsed backup time (when present)
nsr_job_bytes_per_second Gauge client, job_name Ingest throughput — aggregate with sum/avg, never rate()