Skip to content

Check veeam-status

Overview

Monitors a Veeam Backup & Replication environment via the Veeam Enterprise Manager REST API. Checks for failed VMs and jobs, jobs running longer than expected, and backup repository usage. Also reports backup infrastructure component status and recent job results in a summary table.

Important Notes:

  • This check uses the Veeam Enterprise Manager API, not that of an individual Backup & Replication server.
  • An Enterprise License may be required to take full advantage of the RESTful API functionality.
  • Make sure that the account you use to access REST has sufficient privileges.
  • The check always accepts self-signed Veeam certificates (--insecure defaults to True).

Data Collection:

  • Queries the Veeam Enterprise Manager REST API endpoints: /reports/summary/overview, /reports/summary/job_statistics, /reports/summary/vms_overview, /reports/summary/repository
  • Authenticates via the Veeam session token mechanism using --username and --password

Fact Sheet

Fact Value
Check Plugin Download https://github.com/Linuxfabrik/monitoring-plugins/tree/main/check-plugins/veeam-status
Nagios/Icinga Check Name check_veeam_status
Check Interval Recommendation Every 8 hours
Can be called without parameters No (--username and --password are required)
Runs on Cross-platform
Compiled for Windows No
Requirements Veeam Enterprise License

Help

usage: veeam-status [-h] [-V] [--always-ok] [-c CRIT]
                    [--failed-job-runs FAILED_JOB_RUNS]
                    [--failed-vm-lastest-states FAILED_VM_LASTEST_STATES]
                    [--insecure]
                    [--max-backup-job-duration MAX_BACKUP_JOB_DURATION]
                    [--max-replica-job-duration MAX_REPLICA_JOB_DURATION]
                    [--no-proxy] -p PASSWORD [--test TEST] [--timeout TIMEOUT]
                    [--url URL] --username USERNAME [-w WARN]
                    [--warnings-job-runs WARNINGS_JOB_RUNS]
                    [--warning-vm-lastest-states WARNING_VM_LASTEST_STATES]

Monitors Veeam Backup & Replication via PowerShell, checking for failed VMs
and jobs, jobs running longer than expected, and backup repository usage. Also
reports backup infrastructure component status and recent job results.

options:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  --always-ok           Always returns OK.
  -c, --critical CRIT   CRIT threshold for backup repository usage as a
                        percentage. Default: >= 90
  --failed-job-runs FAILED_JOB_RUNS
                        Veeam threshold for `FailedJobRuns`. Default: > 0.
  --failed-vm-lastest-states FAILED_VM_LASTEST_STATES
                        Veeam threshold for `FailedVmLastestStates`. Default:
                        > 0.
  --insecure            This option explicitly allows insecure SSL
                        connections.
  --max-backup-job-duration MAX_BACKUP_JOB_DURATION
                        Maximum allowed backup job duration in seconds.
                        Default: > 86400.
  --max-replica-job-duration MAX_REPLICA_JOB_DURATION
                        Maximum allowed replica job duration in seconds.
                        Default: > 86400.
  --no-proxy            Do not use a proxy.
  -p, --password PASSWORD
                        Veeam REST API password.
  --test TEST           For unit tests. Needs "path-to-stdout-file,path-to-
                        stderr-file,expected-retc".
  --timeout TIMEOUT     Network timeout in seconds. Default: 3 (seconds)
  --url URL             Veeam REST API URL. Default: https://localhost:9398
  --username USERNAME   Veeam REST API username. Default: Administrator
  -w, --warning WARN    WARN threshold for backup repository usage as a
                        percentage. Default: >= 80
  --warnings-job-runs WARNINGS_JOB_RUNS
                        Veeam threshold for `WarningsJobRuns`. Default: > 0.
  --warning-vm-lastest-states WARNING_VM_LASTEST_STATES
                        Veeam threshold for `WarningVmLastestStates`. Default:
                        > 0.

Usage Examples

./veeam-status \
    --username=Administrator \
    --password=password \
    --timeout=3 \
    --warning=80 \
    --critical=90 \
    --url=https://veeam:9398

Output:

1 Job failed [CRITICAL], 5 VMs failed [CRITICAL], "Backup_2014-10-18T044119" ran for 1W 3D [WARNING], Fileserver02 Replication ran for 1D 17h [WARNING], 2 Jobs with warnings [WARNING], 3 VMs with warnings [WARNING], "Backup Volume 01" 18.3% used - total: 1005.5GiB, used: 184.2GiB, free: 821.3GiB

Key                         ! Value                    
----------------------------+--------------------------
BackedUpVms                 ! 38                       
BackupServers               ! 2                        
FailedJobRuns               ! 1 [CRITICAL]             
FailedVmLastestStates       ! 5 [CRITICAL]             
FullBackupPointsSize        ! 1.1TiB                   
IncrementalBackupPointsSize ! 0.0B                     
MaxBackupJobDuration        ! 1W 3D [WARNING]          
MaxDurationBackupJobName    ! Backup_2014-10-18T044119 
MaxDurationReplicaJobName   ! Fileserver02 Replication 
MaxJobDuration              ! 16m                      
MaxReplicaJobDuration       ! 1D 17h [WARNING]         
ProtectedVms                ! 38                       
ProxyServers                ! 6                        
ReplicaRestorePointsSize    ! 0.0B                     
ReplicatedVms               ! 2                        
RepositoryServers           ! 6                        
RestorePoints               ! 38                       
RunningJobs                 ! 0                        
ScheduledBackupJobs         ! 2                        
ScheduledJobs               ! 8                        
ScheduledReplicaJobs        ! 0                        
SourceVmsSize               ! 2.7TiB                   
SuccessBackupPercents       ! 100%                     
SuccessfulJobRuns           ! 7                        
SuccessfulVmLastestStates   ! 38                       
TotalJobRuns                ! 12                       
WarningsJobRuns             ! 2 [WARNING]              
WarningVmLastestStates      ! 3 [WARNING]

States

  • CRIT if FailedJobRuns > --failed-job-runs (default: 0).
  • CRIT if FailedVmLastestStates > --failed-vm-lastest-states (default: 0).
  • WARN if WarningsJobRuns > --warnings-job-runs (default: 0).
  • WARN if WarningVmLastestStates > --warning-vm-lastest-states (default: 0).
  • WARN if MaxBackupJobDuration > --max-backup-job-duration (default: 86400 seconds).
  • WARN if MaxReplicaJobDuration > --max-replica-job-duration (default: 86400 seconds).
  • WARN or CRIT if backup repository usage >= --warning (default: 80%) or >= --critical (default: 90%).
  • --always-ok suppresses all alerts and always returns OK.

Perfdata / Metrics

Name Type Description
BackedUpVms Number Number of backed up VMs.
BackupServers Number Number of backup servers.
FailedJobRuns Number Number of failed job runs.
FailedVmLastestStates Number Number of VMs in failed state.
FullBackupPointsSize Bytes Size of full backup restore points.
IncrementalBackupPointsSize Bytes Size of incremental backup restore points.
MaxBackupJobDuration Seconds Duration of the longest backup job.
MaxJobDuration Seconds Duration of the longest job overall.
MaxReplicaJobDuration Seconds Duration of the longest replica job.
ProtectedVms Number Number of protected VMs.
ProxyServers Number Number of proxy servers.
Repo BackupSize REPONAME Bytes Used backup size per repository.
Repo Capacity REPONAME Bytes Total capacity per repository.
Repo FreeSpace REPONAME Bytes Free space per repository.
Repo Usage REPONAME Percentage Disk usage per repository.
ReplicaRestorePointsSize Bytes Size of replica restore points.
ReplicatedVms Number Number of replicated VMs.
RepositoryServers Number Number of repository servers.
RestorePoints Number Number of restore points.
RunningJobs Number Number of currently running jobs.
ScheduledBackupJobs Number Number of scheduled backup jobs.
ScheduledJobs Number Number of scheduled jobs.
ScheduledReplicaJobs Number Number of scheduled replica jobs.
SourceVmsSize Bytes Total size of source VMs.
SuccessBackupPercents Percentage Backup success rate.
SuccessfulJobRuns Number Number of successful job runs.
SuccessfulVmLastestStates Number Number of VMs in successful state.
TotalJobRuns Number Total number of job runs.
WarningVmLastestStates Number Number of VMs in warning state.
WarningsJobRuns Number Number of job runs with warnings.

Credits, License