Skip to content

Backup Analytics

Per cluster

Track and analyze backup job performance across Proxmox VE clusters. It shows success rates, duration patterns, storage consumption and, most important, what is not being backed up.

Job Status

Monitor backup job execution and completion status across cluster nodes.

Performance Metrics

Track backup duration, throughput, and resource usage patterns.

RPO Blind Spots

Dedicated pages for guests and disks not covered by any backup job: find the gaps before they cause a problem.

Historical Data

View backup trends and patterns over time for capacity planning.

Failure Logs

Access detailed logs and error information for failed backup jobs.

Storage Metrics

Monitor backup storage consumption and growth trends.

Why analytics when PVE already shows backup jobs?

What you're NOT backing up

The Unprotected Guests and Unprotected Disks pages list the guests and disks that no job covers: the real reason silent data loss happens.

One view per cluster

Backups, schedule, timeline and trends of all nodes and storages are shown together. You do not search the UI node by node.

Trends, not snapshots

Charts over time show whether duration is growing, storage is filling, or a job started failing weeks ago without anybody noticing.

Failure context, not just rows

Failed runs link to their logs and error messages. You find out why one VM keeps failing without an SSH session on the node.

  • Overview: introduction to the module and its dashboard widgets
  • Backups: backup history collected by the scans, one row per guest and backup run. The columns are start, end, duration, size, transfer speed, status, node, storage and error. Failed rows are highlighted. On each row, Show VM log opens the log of that guest and Show Job log opens the log of the whole backup task. See Collecting data for the scans and the toolbar actions
  • Scheduled: configured backup jobs with schedule, target storage and selection
  • Unprotected Guests: guests (templates excluded) that no enabled backup job covers
  • Unprotected Disks: disks excluded from backup (e.g. backup=0)
  • Backup in line: backup files currently on the storages, grouped by storage and VM, with size, date, format, verified/encrypted flags
  • Trends: line charts of backup Size, Speed and Duration over time, one line per guest. Choose the Period, then the Storages, then the VM / CT to plot. Period is a single date range field, limited to the dates for which data exists

A guest is covered when an enabled backup job of the cluster takes it: a job set to back up all guests, except the ones it excludes; a job that selects a pool the guest belongs to; a job that lists the guest by ID. A job bound to a node covers only the guests on that node. With no enabled job, every guest is listed. The page looks at the jobs, not at the backups: a guest covered by a job that always fails is not listed here, look at Backups for that.

Backups, Trends and the dashboard widgets work on data that a scan copies from Proxmox VE into the module database. Scheduled, Unprotected Guests, Unprotected Disks and Backup in line read the cluster live and need no scan.

A scan reads, on every online node, the vzdump tasks started within the last Max days logs days, at most 10000 tasks per node, together with their logs (the first 10000 lines of each). When a node reaches 10000 tasks, the older ones are not imported and the scan log shows a warning. It stores the tasks that are not in the database yet. It then deletes the records older than Max days logs.

Toolbar of the Backups page:

Action What it does
Scan Starts a scan immediately in the background. Progress and log are in the global Task Tracker
Delete all data After confirmation, deletes every collected record of the cluster from the module database. Backups on the Proxmox VE storages are not touched
Refresh Reloads the grid
Export Downloads the grid as an Excel file

The toolbar also shows the state of the schedule configured in the settings.

Widget Content
Status Backup status
Size Backup size
Check Failed backups per guest in the last days
Info Backup statistics
Daily Status EE Successful and failed backups per day (last 14 days)

The Check widget has one widget setting, Days to analyze (default 30, like Max days logs: older records are already deleted, so a longer period shows nothing more). It covers the clusters where Enable scheduling is on, and those where a scan was started by hand. It shows “Module not configured!” only when no cluster has the schedule on and no scan was ever made.

Setting Default Purpose
Enable scheduling off Turns the scheduled scan on or off. With it off nothing runs by itself on the cluster; Scan, started by hand, stays available
Cron Schedule 0 */1 * * * When the scheduled scan runs (default: hourly)
Max days logs 30 How many days of collected backup data to keep (minimum 1). Older records are deleted at the end of each scan

Assign these to a role under Security.

Permission Allows
Backup Analytics Open the module and its Overview page
Backups, Scheduled, Unprotected Guests, Unprotected Disks, Backup in line, Trends Open the page with that name (one permission per page)
Status, Size, Check, Info, Daily Status EE Use the dashboard widget with that name (one permission per widget)
Backup: Export Export the list of the Backups page
Backup: Scan Use the Scan button
Backup: Delete all data Use the Delete all data button
Edit Settings Change the module settings

The built-in role of the module includes all of them. A custom role has to be given them explicitly: without the permission the button is hidden.

The module also follows the cluster permissions (VM: Read and Storage: Read, see Security):

  • Backups, Backup in line, Unprotected Guests, Unprotected Disks and Trends list only the VMs the user can read; the storage of a backup stays visible next to its VM. The storages offered by Trends are only the readable ones.
  • Scheduled lists a backup job only when the user can read all of its guests; a job on all the guests or on a pool needs Read on every VM, node and storage of the cluster.
  • Scan, Delete all data and the log of the whole task, which has the lines of every VM of the task, need Read on every VM, node and storage of the cluster.
  • The widgets and the Overview count all the VMs of a cluster: they are shown only on the clusters where the user can read every VM, node and storage.

Proxmox VE privileges: the base (PVEAuditor) plus the following.

PrivilegeUsed forWithout it
VM.Backup, Datastore.AllocateSpaceList the backup filesThe list of backups is empty, with no error

Proxmox VE lists a backup file only to an account that has both privileges: VM.Backup on the guest and Datastore.AllocateSpace on the storage.

The base and the rules common to all modules are in Proxmox VE Permissions.