Available solutions
Veeam Backup & Replication by HTTP
Overview
This template is designed to monitor Veeam Backup & Replication. It works without any external scripts and uses the script item.
NOTE: The native Veeam Backup & Replication REST API (port 9419) is available only in editions that include REST API functionality.
Supported editions include:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Socket-based editions:
- Enterprise
- Enterprise Plus
- Community Edition
- Supported with workload limitations defined by Veeam licensing.
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 8.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup & Replication, version 13.1.1.18
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details. NOTE: License, Authorization Events, and Security Analyzer Data require the "Backup Administrator" role; without it, these items are not supported.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.API.VERSION},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.API.VERSION} | The REST API revision. |
1.3-rev2 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup & Replication", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup & Replication"}. |
full |
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.FREQUENCY} | The update interval for the get metrics item. |
1m |
| {$VEEAM.SECURITY.DATA.FREQUENCY} | The update interval for the security analyzer best practices item. |
4h |
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
30 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | Filter of discoverable sessions by name. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | Filter to exclude discoverable sessions by name. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | Filter of discoverable sessions by type. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | Filter to exclude discoverable sessions by type. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | Filter of discoverable proxies by name. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | Filter to exclude discoverable proxies by name. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | Filter of discoverable proxies by type. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | Filter to exclude discoverable proxies by type. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | Filter of discoverable repositories by name. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | Filter to exclude discoverable repositories by name. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | Filter of discoverable repositories by type. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | Filter to exclude discoverable repositories by type. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | Filter of discoverable jobs by name. |
.* |
| {$JOB.NAME.NOT_MATCHES} | Filter to exclude discoverable jobs by name. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | Filter of discoverable jobs by type. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | Filter to exclude discoverable jobs by type. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | Filter of discoverable jobs by status. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | Filter to exclude discoverable jobs by status. |
CHANGE_IF_NEEDED |
| {$VEEAM.LICENSE.EXPIRY.WARN} | Number of days until the license expires. |
7 |
| {$MALWARE_EVENTS.TYPE.MATCHES} | Filter of discoverable malware events by type. |
.* |
| {$MALWARE_EVENTS.TYPE.NOT_MATCHES} | Filter to exclude discoverable malware events by type. |
CHANGE_IF_NEEDED |
| {$MALWARE_EVENTS.SEVERITY.MATCHES} | Filter of discoverable malware events by severity. |
.* |
| {$MALWARE_EVENTS.SEVERITY.NOT_MATCHES} | Filter to exclude discoverable malware events by severity. |
CHANGE_IF_NEEDED |
| {$MALWARE_EVENTS.STATE.MATCHES} | Filter of discoverable malware events by state. |
.* |
| {$MALWARE_EVENTS.STATE.NOT_MATCHES} | Filter to exclude discoverable malware events by state. |
CHANGE_IF_NEEDED |
| {$SECURITY_ANALYZER.STATUS.MATCHES} | Filter of discoverable security best practices by status. |
.* |
| {$SECURITY_ANALYZER.STATUS.NOT_MATCHES} | Filter to exclude discoverable security best practices by status. |
OK |
| {$SECURITY_ANALYZER.BEST_PRACTICE.MATCHES} | Filter of discoverable security best practices by name. |
.* |
| {$SECURITY_ANALYZER.BEST_PRACTICE.NOT_MATCHES} | Filter to exclude discoverable security best practices by name. |
CHANGE_IF_NEEDED |
| {$AUTH_EVENTS.NAME.MATCHES} | Filter of discoverable authorization events by name. |
.* |
| {$AUTH_EVENTS.NAME.NOT_MATCHES} | Filter to exclude discoverable authorization events by name. |
CHANGE_IF_NEEDED |
| {$AUTH_EVENTS.STATE.MATCHES} | Filter of discoverable authorization events by state. |
.* |
| {$AUTH_EVENTS.STATE.NOT_MATCHES} | Filter to exclude discoverable authorization events by state. |
CHANGE_IF_NEEDED |
| {$VEEAM.REPOSITORY.SPACE.WARN} | Repository space warning threshold, expressed in %. |
80 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is returned as JSON. |
Script | veeam.get.metrics |
| Get security analyzer results | Authenticates with the Veeam API and retrieves security analyzer best practices data. |
HTTP agent | veeam.security.analyzer.get Preprocessing
|
| Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
| License: Status | The status of the license. |
Dependent item | veeam.license.status Preprocessing
|
| License: Expiration date | The expiration date of the license. |
Dependent item | veeam.license.expiration Preprocessing
|
| License: Licensed instances | The number of licensed instances. |
Dependent item | veeam.license.licensed.instances Preprocessing
|
| License: Used instances | The number of used instances. |
Dependent item | veeam.license.used.instances Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average | |
| Veeam Backup: License is expired | The Veeam license is expired. |
last(/Veeam Backup and Replication by HTTP/veeam.license.status)=1 |
Average | |
| Veeam Backup: License is invalid | The Veeam license is invalid. |
last(/Veeam Backup and Replication by HTTP/veeam.license.status)=2 |
Warning | |
| Veeam Backup: License expires soon | The Veeam license expires soon. |
(last(/Veeam Backup and Replication by HTTP/veeam.license.expiration) - now()) / 86400 < {$VEEAM.LICENSE.EXPIRY.WARN} and last(/Veeam Backup and Replication by HTTP/veeam.license.expiration) > now() |
Warning | Manual close: Yes |
| Veeam Backup: Used instances exceed the licensed count | The number of used instances is more than the number of licensed instances. |
last(/Veeam Backup and Replication by HTTP/veeam.license.used.instances)>last(/Veeam Backup and Replication by HTTP/veeam.license.licensed.instances) |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.max.task[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Status | The status of the proxy server. |
Dependent item | veeam.proxy.server.status[{#NAME}] Preprocessing
|
Trigger prototypes for Proxies discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Proxy [{#NAME}] is offline | Proxy |
min(/Veeam Backup and Replication by HTTP/veeam.proxy.server.status[{#NAME}],5m)=0 |
High |
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}]: Path [{#PATH}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Capacity | The total capacity of the repository. |
Dependent item | veeam.repository.capacity.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Used space | The used space in the repository. |
Dependent item | veeam.repository.used.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Free space | The free space in the repository. |
Dependent item | veeam.repository.free.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Utilization space | The percentage of repository capacity in use. |
Calculated | veeam.repository.utilization[{#ID}] |
| Repository [{#NAME}]: Path [{#PATH}]: Is Out Of Date | Indicates whether the repository is out of date. |
Dependent item | veeam.repository.out_of_date[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: State | The online/offline state of the repository. |
Dependent item | veeam.repository.state[{#ID}] Preprocessing
|
Trigger prototypes for Repositories discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Repository [{#NAME}] utilization is high | Utilization of the repository |
min(/Veeam Backup and Replication by HTTP/veeam.repository.utilization[{#ID}],5m)>{$VEEAM.REPOSITORY.SPACE.WARN} |
High | |
| Veeam Backup: Repository [{#NAME}] is out of date | Repository |
last(/Veeam Backup and Replication by HTTP/veeam.repository.out_of_date[{#ID}])=1 |
Warning | |
| Veeam Backup: Repository [{#NAME}] is offline | Repository |
min(/Veeam Backup and Replication by HTTP/veeam.repository.state[{#ID}],5m)=0 |
High |
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Progress percent | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#NAME}/{#TYPE}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result session failed | The last result of the session |
last(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#NAME}/{#TYPE}])=4 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Last result | The last run result of the job. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result job failed | The last run result of the job |
last(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}])=4 |
Average | Manual close: Yes |
LLD rule Malware events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Malware events discovery | Discovery of malware events. |
Dependent item | veeam.malware.events.discovery Preprocessing
|
Item prototypes for Malware events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Malware event [{#MACHINE}]: Get data | Gets raw data from malware event with the ID |
Dependent item | veeam.malware.event.get[{#ID}] Preprocessing
|
| Malware event [{#MACHINE}]: Severity | The severity level of the malware event. The enums used: |
Dependent item | veeam.malware.event.severity[{#ID}] Preprocessing
|
| Malware event [{#MACHINE}]: State | The state of the malware event. The enums used: |
Dependent item | veeam.malware.event.state[{#ID}] Preprocessing
|
Trigger prototypes for Malware events discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Malware infection detected on [{#MACHINE}] | A malware infection has been detected on the machine |
last(/Veeam Backup and Replication by HTTP/veeam.malware.event.severity[{#ID}])=3 |
High | Manual close: Yes |
| Veeam Backup: Suspicious malware activity detected on [{#MACHINE}] | Suspicious malware activity has been detected on the machine |
last(/Veeam Backup and Replication by HTTP/veeam.malware.event.severity[{#ID}])=2 |
Average | Manual close: Yes |
LLD rule Authorization events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Authorization events discovery | Discovery of authorization events. |
Dependent item | veeam.authorization.events.discovery Preprocessing
|
Item prototypes for Authorization events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Authorization event [{#NAME}]: Get data | Gets raw data from authorization event with the ID |
Dependent item | veeam.authorization.event.get[{#ID}] Preprocessing
|
| Authorization event [{#NAME}]: State | The state of the authorization event. The enums used: |
Dependent item | veeam.authorization.event.state[{#ID}] Preprocessing
|
Trigger prototypes for Authorization events discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Authorization event [{#NAME}] is rejected | The authorization event |
last(/Veeam Backup and Replication by HTTP/veeam.authorization.event.state[{#ID}])=3 |
High | Manual close: Yes |
LLD rule Security analyzer discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Security analyzer discovery | Discovery of security best practices compliance checks. |
Dependent item | veeam.security.analyzer.discovery Preprocessing
|
Item prototypes for Security analyzer discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Security [{#BEST_PRACTICE}]: Status | The compliance status of the security best practice. The enums used: |
Dependent item | veeam.security.best.practice.status[{#ID}] Preprocessing
|
Trigger prototypes for Security analyzer discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Security best practice violation: [{#BEST_PRACTICE}] | The security best practice |
last(/Veeam Backup and Replication by HTTP/veeam.security.best.practice.status[{#ID}])=6 |
High | Manual close: Yes |
| Veeam Backup: Security best practice unable to check: [{#BEST_PRACTICE}] | The security best practice |
last(/Veeam Backup and Replication by HTTP/veeam.security.best.practice.status[{#ID}])=5 |
Warning | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: This template uses the Veeam Backup Enterprise Manager REST API.
Veeam Backup Enterprise Manager must be installed and licensed.
Supported editions include:
- VUL Foundation
- VUL Advanced
- VUL Premium
- Enterprise
- Enterprise Plus
Community Edition and Backup Starter do not provide Enterprise Manager functionality and are not supported by this template.
NOTE: Veeam Backup & Replication v13 also provides a native REST API on port 9419, separate from the Enterprise Manager REST API used by this template.
A different Veeam Backup & Replication by HTTP template is required for monitoring the native VBR REST API.
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 8.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup & Replication, version 13.1.1.18
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for the script item: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup Enterprise Manager", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup Enterprise Manager"}. |
full |
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.FREQUENCY} | The update interval for the get metrics item. |
1m |
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
15s |
| {$BACKUP.TYPE.MATCHES} | Filter of discoverable backups by type. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | Filter to exclude discoverable backups by type. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | Filter of discoverable backups by name. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | Filter to exclude discoverable backups by name. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
| {$VEEAM.REPOSITORY.NAME.MATCHES} | Filter of discoverable repositories by name. |
.* |
| {$VEEAM.REPOSITORY.NAME.NOT_MATCHES} | Filter to exclude discoverable repositories by name. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.REPO.PFREE.WARN} | The minimum free space percentage for a warning trigger expression (percent). |
20 |
| {$VEEAM.MANAGER.REPO.PFREE.CRIT} | The minimum free space percentage for a critical trigger expression (percent). |
10 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is returned as JSON. |
Script | veeam.manager.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Jobs: Running | Number of running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Jobs: Scheduled | Number of scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Jobs: Scheduled backup | Number of scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Jobs: Scheduled replica | Number of scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Jobs: Total | Number of total job runs. |
Dependent item | veeam.manager.total.jobs Preprocessing
|
| Jobs: Warnings | Number of warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Jobs: Failed | Number of failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
| Overview: Backup servers | Number of backup servers. |
Dependent item | veeam.manager.overview.backup.servers Preprocessing
|
| Overview: Proxy servers | Number of proxy servers. |
Dependent item | veeam.manager.overview.proxy.servers Preprocessing
|
| Overview: Repository servers | Number of repository servers. |
Dependent item | veeam.manager.overview.repository.servers Preprocessing
|
| VM States: Successful | Number of successful VM latest states. |
Dependent item | veeam.manager.overview.successful.vm.states Preprocessing
|
| VM States: Warning | Number of warning VM latest states. |
Dependent item | veeam.manager.overview.warning.vm.states Preprocessing
|
| VM States: Failed | Number of failed VM latest states. |
Dependent item | veeam.manager.overview.failed.vm.states Preprocessing
|
| VM: Protected | Number of protected VMs. |
Dependent item | veeam.manager.vms.protected Preprocessing
|
| VM: Backed up | Number of backed up VMs. |
Dependent item | veeam.manager.vms.backedup Preprocessing
|
| VM: Replicated | Number of replicated VMs. |
Dependent item | veeam.manager.vms.replicated Preprocessing
|
| VM: Restore points | Number of restore points. |
Dependent item | veeam.manager.vms.restore.points Preprocessing
|
| VM: Full backup points size | Full backup points total size. |
Dependent item | veeam.manager.vms.full.backup.size Preprocessing
|
| VM: Incremental backup points size | Incremental backup points total size. |
Dependent item | veeam.manager.vms.incremental.backup.size Preprocessing
|
| VM: Replica restore points size | Replica restore points total size. |
Dependent item | veeam.manager.vms.replica.restore.size Preprocessing
|
| VM: Source size | Total size of source VMs. |
Dependent item | veeam.manager.vms.source.size Preprocessing
|
| VM: Success backup percent | Percent of successful backups. |
Dependent item | veeam.manager.vms.success.backup.percent Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup Enterprise Manager: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Backup Enterprise Manager: Warning job runs are too high | min(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs, 5m)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Backup Enterprise Manager: Failed job runs are too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup file [{#NAME}]: Size | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Data size | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Compression ratio | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Deduplication ratio | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of all backup repositories connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.repository.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}]: Capacity | Total capacity of the backup repository |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Repository [{#NAME}]: Free space | Free space on the backup repository |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
| Repository [{#NAME}]: Backup size | Backup data size on the backup repository |
Dependent item | veeam.repository.backup.size[{#NAME}] Preprocessing
|
Trigger prototypes for Repositories discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup Enterprise Manager: Repository [{#NAME}]: Free space is critically low | Free space on the repository |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])>0 and min(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.free.space[{#NAME}],15m)/last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])*100<{$VEEAM.MANAGER.REPO.PFREE.CRIT} |
Average | |
| Veeam Backup Enterprise Manager: Repository [{#NAME}]: Free space is low | Free space on the repository |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])>0 and min(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.free.space[{#NAME}],15m)/last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])*100<{$VEEAM.MANAGER.REPO.PFREE.WARN} |
Warning | Depends on:
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Vendor and Community integrations are created by third parties and are not verified by Zabbix. Zabbix is not responsible for their functionality or quality.
Zabbix community templates
2 Contributed to the zabbix/community-templates repositoryThis Veeam Backup & Replication use email and not Powershell snippet. It is as efficient (or more) as other method of integration with Zabbix and it requires a lot less ressources. It monitors even Backup Database backup (which others do not).Using a specific script it can be applied to Free Agents as well.It uses zbxsmtptrap (on an idea from here : https://www.zabbix.com/forum/showthread.php?p=186838)https://github.com/sibiodev/zbxsmtptrapNB: a bug was recently corrected about Veeam sending multiline subjects - not really nice... but it can happen if you have long hostnames and happen to be sudenly out of support (which adds some garbage at the begining of the title)Give it a try!PS: to use this script with Veeam Free Agents without a VBR server (if you use a VBR server with a Free Agent, then you do not need this script because VBR will report by email to you), you´ll need this small script to send the email :https://github.com/sibiodev/veeamrun
This template provide a way to monitor backup made by Veeam Backup Agent for Microsoft Windows.There is no additionnals scripts needed, all results are read from the Windows Event Log.It also monitor the service state of the application.This template is made with "zabbix active" item, meaning it can work behind remote firewall.
Veeam Backup & Replication by HTTP
Overview
This template is designed to monitor Veeam Backup & Replication. It works without any external scripts and uses the script item.
NOTE: The native Veeam Backup & Replication REST API (port 9419) is available only in editions that include REST API functionality.
Supported editions include:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Socket-based editions:
- Enterprise
- Enterprise Plus
- Community Edition
- Supported with workload limitations defined by Veeam licensing.
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.4 and higher.
Tested versions
This template has been tested on:
- Veeam Backup & Replication, version 13.1.1.18
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details. NOTE: License, Authorization Events, and Security Analyzer Data require the "Backup Administrator" role; without it, these items are not supported.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.API.VERSION},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.API.VERSION} | The REST API revision. |
1.3-rev2 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup & Replication", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup & Replication"}. |
full |
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.FREQUENCY} | The update interval for the get metrics item. |
1m |
| {$VEEAM.SECURITY.DATA.FREQUENCY} | The update interval for the security analyzer best practices item. |
4h |
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
30 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | Filter of discoverable sessions by name. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | Filter to exclude discoverable sessions by name. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | Filter of discoverable sessions by type. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | Filter to exclude discoverable sessions by type. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | Filter of discoverable proxies by name. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | Filter to exclude discoverable proxies by name. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | Filter of discoverable proxies by type. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | Filter to exclude discoverable proxies by type. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | Filter of discoverable repositories by name. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | Filter to exclude discoverable repositories by name. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | Filter of discoverable repositories by type. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | Filter to exclude discoverable repositories by type. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | Filter of discoverable jobs by name. |
.* |
| {$JOB.NAME.NOT_MATCHES} | Filter to exclude discoverable jobs by name. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | Filter of discoverable jobs by type. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | Filter to exclude discoverable jobs by type. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | Filter of discoverable jobs by status. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | Filter to exclude discoverable jobs by status. |
CHANGE_IF_NEEDED |
| {$VEEAM.LICENSE.EXPIRY.WARN} | Number of days until the license expires. |
7 |
| {$MALWARE_EVENTS.TYPE.MATCHES} | Filter of discoverable malware events by type. |
.* |
| {$MALWARE_EVENTS.TYPE.NOT_MATCHES} | Filter to exclude discoverable malware events by type. |
CHANGE_IF_NEEDED |
| {$MALWARE_EVENTS.SEVERITY.MATCHES} | Filter of discoverable malware events by severity. |
.* |
| {$MALWARE_EVENTS.SEVERITY.NOT_MATCHES} | Filter to exclude discoverable malware events by severity. |
CHANGE_IF_NEEDED |
| {$MALWARE_EVENTS.STATE.MATCHES} | Filter of discoverable malware events by state. |
.* |
| {$MALWARE_EVENTS.STATE.NOT_MATCHES} | Filter to exclude discoverable malware events by state. |
CHANGE_IF_NEEDED |
| {$SECURITY_ANALYZER.STATUS.MATCHES} | Filter of discoverable security best practices by status. |
.* |
| {$SECURITY_ANALYZER.STATUS.NOT_MATCHES} | Filter to exclude discoverable security best practices by status. |
OK |
| {$SECURITY_ANALYZER.BEST_PRACTICE.MATCHES} | Filter of discoverable security best practices by name. |
.* |
| {$SECURITY_ANALYZER.BEST_PRACTICE.NOT_MATCHES} | Filter to exclude discoverable security best practices by name. |
CHANGE_IF_NEEDED |
| {$AUTH_EVENTS.NAME.MATCHES} | Filter of discoverable authorization events by name. |
.* |
| {$AUTH_EVENTS.NAME.NOT_MATCHES} | Filter to exclude discoverable authorization events by name. |
CHANGE_IF_NEEDED |
| {$AUTH_EVENTS.STATE.MATCHES} | Filter of discoverable authorization events by state. |
.* |
| {$AUTH_EVENTS.STATE.NOT_MATCHES} | Filter to exclude discoverable authorization events by state. |
CHANGE_IF_NEEDED |
| {$VEEAM.REPOSITORY.SPACE.WARN} | Repository space warning threshold, expressed in %. |
80 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is returned as JSON. |
Script | veeam.get.metrics |
| Get security analyzer results | Authenticates with the Veeam API and retrieves security analyzer best practices data. |
HTTP agent | veeam.security.analyzer.get Preprocessing
|
| Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
| License: Status | The status of the license. |
Dependent item | veeam.license.status Preprocessing
|
| License: Expiration date | The expiration date of the license. |
Dependent item | veeam.license.expiration Preprocessing
|
| License: Licensed instances | The number of licensed instances. |
Dependent item | veeam.license.licensed.instances Preprocessing
|
| License: Used instances | The number of used instances. |
Dependent item | veeam.license.used.instances Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average | |
| Veeam Backup: License is expired | The Veeam license is expired. |
last(/Veeam Backup and Replication by HTTP/veeam.license.status)=1 |
Average | |
| Veeam Backup: License is invalid | The Veeam license is invalid. |
last(/Veeam Backup and Replication by HTTP/veeam.license.status)=2 |
Warning | |
| Veeam Backup: License expires soon | The Veeam license expires soon. |
(last(/Veeam Backup and Replication by HTTP/veeam.license.expiration) - now()) / 86400 < {$VEEAM.LICENSE.EXPIRY.WARN} and last(/Veeam Backup and Replication by HTTP/veeam.license.expiration) > now() |
Warning | Manual close: Yes |
| Veeam Backup: Used instances exceed the licensed count | The number of used instances is more than the number of licensed instances. |
last(/Veeam Backup and Replication by HTTP/veeam.license.used.instances)>last(/Veeam Backup and Replication by HTTP/veeam.license.licensed.instances) |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.max.task[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
| Proxy [{#NAME}]: Status | The status of the proxy server. |
Dependent item | veeam.proxy.server.status[{#NAME}] Preprocessing
|
Trigger prototypes for Proxies discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Proxy [{#NAME}] is offline | Proxy |
min(/Veeam Backup and Replication by HTTP/veeam.proxy.server.status[{#NAME}],5m)=0 |
High |
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}]: Path [{#PATH}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Capacity | The total capacity of the repository. |
Dependent item | veeam.repository.capacity.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Used space | The used space in the repository. |
Dependent item | veeam.repository.used.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Free space | The free space in the repository. |
Dependent item | veeam.repository.free.space[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: Utilization space | The percentage of repository capacity in use. |
Calculated | veeam.repository.utilization[{#ID}] |
| Repository [{#NAME}]: Path [{#PATH}]: Is Out Of Date | Indicates whether the repository is out of date. |
Dependent item | veeam.repository.out_of_date[{#ID}] Preprocessing
|
| Repository [{#NAME}]: Path [{#PATH}]: State | The online/offline state of the repository. |
Dependent item | veeam.repository.state[{#ID}] Preprocessing
|
Trigger prototypes for Repositories discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Repository [{#NAME}] utilization is high | Utilization of the repository |
min(/Veeam Backup and Replication by HTTP/veeam.repository.utilization[{#ID}],5m)>{$VEEAM.REPOSITORY.SPACE.WARN} |
High | |
| Veeam Backup: Repository [{#NAME}] is out of date | Repository |
last(/Veeam Backup and Replication by HTTP/veeam.repository.out_of_date[{#ID}])=1 |
Warning | |
| Veeam Backup: Repository [{#NAME}] is offline | Repository |
min(/Veeam Backup and Replication by HTTP/veeam.repository.state[{#ID}],5m)=0 |
High |
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#NAME}/{#TYPE}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Progress percent | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#NAME}/{#TYPE}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result session failed | The last result of the session |
last(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#NAME}/{#TYPE}])=4 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Last result | The last run result of the job. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result job failed | The last run result of the job |
last(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}])=4 |
Average | Manual close: Yes |
LLD rule Malware events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Malware events discovery | Discovery of malware events. |
Dependent item | veeam.malware.events.discovery Preprocessing
|
Item prototypes for Malware events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Malware event [{#MACHINE}]: Get data | Gets raw data from malware event with the ID |
Dependent item | veeam.malware.event.get[{#ID}] Preprocessing
|
| Malware event [{#MACHINE}]: Severity | The severity level of the malware event. The enums used: |
Dependent item | veeam.malware.event.severity[{#ID}] Preprocessing
|
| Malware event [{#MACHINE}]: State | The state of the malware event. The enums used: |
Dependent item | veeam.malware.event.state[{#ID}] Preprocessing
|
Trigger prototypes for Malware events discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Malware infection detected on [{#MACHINE}] | A malware infection has been detected on the machine |
last(/Veeam Backup and Replication by HTTP/veeam.malware.event.severity[{#ID}])=3 |
High | Manual close: Yes |
| Veeam Backup: Suspicious malware activity detected on [{#MACHINE}] | Suspicious malware activity has been detected on the machine |
last(/Veeam Backup and Replication by HTTP/veeam.malware.event.severity[{#ID}])=2 |
Average | Manual close: Yes |
LLD rule Authorization events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Authorization events discovery | Discovery of authorization events. |
Dependent item | veeam.authorization.events.discovery Preprocessing
|
Item prototypes for Authorization events discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Authorization event [{#NAME}]: Get data | Gets raw data from authorization event with the ID |
Dependent item | veeam.authorization.event.get[{#ID}] Preprocessing
|
| Authorization event [{#NAME}]: State | The state of the authorization event. The enums used: |
Dependent item | veeam.authorization.event.state[{#ID}] Preprocessing
|
Trigger prototypes for Authorization events discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Authorization event [{#NAME}] is rejected | The authorization event |
last(/Veeam Backup and Replication by HTTP/veeam.authorization.event.state[{#ID}])=3 |
High | Manual close: Yes |
LLD rule Security analyzer discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Security analyzer discovery | Discovery of security best practices compliance checks. |
Dependent item | veeam.security.analyzer.discovery Preprocessing
|
Item prototypes for Security analyzer discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Security [{#BEST_PRACTICE}]: Status | The compliance status of the security best practice. The enums used: |
Dependent item | veeam.security.best.practice.status[{#ID}] Preprocessing
|
Trigger prototypes for Security analyzer discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Security best practice violation: [{#BEST_PRACTICE}] | The security best practice |
last(/Veeam Backup and Replication by HTTP/veeam.security.best.practice.status[{#ID}])=6 |
High | Manual close: Yes |
| Veeam Backup: Security best practice unable to check: [{#BEST_PRACTICE}] | The security best practice |
last(/Veeam Backup and Replication by HTTP/veeam.security.best.practice.status[{#ID}])=5 |
Warning | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup and Replication by HTTP
Overview
This template is designed to monitor Veeam Backup and Replication. It works without any external scripts and uses the script item.
NOTE: Since the RESTful API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.2 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
10 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.maxtask[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}] [{#TYPE}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#NAME}] Preprocessing
|
| Repository [{#NAME}] [{#TYPE}]: Used space [{#PATH}] | Used space by repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Repository [{#NAME}] [{#TYPE}]: Free space [{#PATH}] | Free space of repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#ID}] Preprocessing
|
| Session progress percent [{#NAME}] [{#TYPE}] | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#ID}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result session failed | find(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Last result | The result of the session. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result job failed | find(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup and Replication by HTTP
Overview
This template is designed to monitor Veeam Backup and Replication. It works without any external scripts and uses the script item.
NOTE: Since the RESTful API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup and Replication", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup and Replication"}. |
full |
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
10 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.maxtask[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Proxy [{#NAME}] [{#TYPE}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}] [{#TYPE}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#NAME}] Preprocessing
|
| Repository [{#NAME}] [{#TYPE}]: Used space [{#PATH}] | Used space by repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Repository [{#NAME}] [{#TYPE}]: Free space [{#PATH}] | Free space of repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#ID}] Preprocessing
|
| Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#ID}] Preprocessing
|
| Session progress percent [{#NAME}] [{#TYPE}] | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#ID}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result session failed | find(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Job states [{#NAME}] [{#TYPE}]: Last result | The result of the session. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: Last result job failed | find(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup and Replication by HTTP
Overview
This template is designed to monitor Veeam Backup and Replication. It works without any external scripts and uses the script item.
NOTE: Since the RESTful API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 6.4 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
10 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.get.metrics |
| Veeam: Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.maxtask[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#NAME}] Preprocessing
|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Used space [{#PATH}] | Used space by repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Free space [{#PATH}] | Free space of repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#ID}] Preprocessing
|
| Veeam: Session progress percent [{#NAME}] [{#TYPE}] | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#ID}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: Last result session failed | find(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Last result | The result of the session. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: Last result job failed | find(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup and Replication by HTTP
Overview
This template is designed to monitor Veeam Backup and Replication version 11.0. It works without any external scripts and uses the script item.
Requirements
For Zabbix version: 6.2 and higher.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure macros
{$VEEAM.API.URL},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Configuration
No specific Zabbix configuration is required.
Macros used
| Name | Description | Default |
|---|---|---|
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$JOB.NAME.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$SESSION.NAME.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
10 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
`` |
| {$VEEAM.PASSWORD} | The |
`` |
| {$VEEAM.USER} | The |
`` |
Template links
There are no template links in this template.
Discovery rules
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
DEPENDENT | veeam.job.state.discovery Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: Filter: AND- {#TYPE} MATCHES_REGEX - {#TYPE} NOT_MATCHES_REGEX - {#NAME} MATCHES_REGEX - {#NAME} NOT_MATCHES_REGEX - {#JOB.STATUS} MATCHES_REGEX - {#JOB.STATUS} NOT_MATCHES_REGEX |
| Proxies discovery | Discovery of proxies. |
DEPENDENT | veeam.proxies.discovery Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: Filter: AND- {#TYPE} MATCHES_REGEX - {#TYPE} NOT_MATCHES_REGEX - {#NAME} MATCHES_REGEX - {#NAME} NOT_MATCHES_REGEX |
| Repositories discovery | Discovery of repositories. |
DEPENDENT | veeam.repositories.discovery Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: Filter: AND- {#TYPE} MATCHES_REGEX - {#TYPE} NOT_MATCHES_REGEX - {#NAME} MATCHES_REGEX - {#NAME} NOT_MATCHES_REGEX |
| Sessions discovery | Discovery of sessions. |
DEPENDENT | veeam.sessions.discovery Preprocessing: - JSONPATH: - JAVASCRIPT - DISCARD_UNCHANGED_HEARTBEAT: Filter: AND- {#TYPE} MATCHES_REGEX - {#TYPE} NOT_MATCHES_REGEX - {#NAME} MATCHES_REGEX - {#NAME} NOT_MATCHES_REGEX |
Items collected
| Group | Name | Description | Type | Key and additional info |
|---|---|---|---|---|
| Veeam | Veeam: Get metrics | The result of API requests is expressed in the JSON. |
SCRIPT | veeam.get.metrics Expression: The text is too long. Please see the template. |
| Veeam | Veeam: Get errors | The errors from API requests. |
DEPENDENT | veeam.get.errors Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam: Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
DEPENDENT | veeam.proxy.server.raw[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Proxy [{#NAME}] [{#TYPE}]: Get data | Gets raw data collected by the proxy with the name |
DEPENDENT | veeam.proxy.raw[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Proxy [{#NAME}] [{#TYPE}]: Max Task Count | The maximum number of concurrent tasks. |
DEPENDENT | veeam.proxy.maxtask[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Proxy [{#NAME}] [{#TYPE}]: Host name | The name of the proxy server. |
DEPENDENT | veeam.proxy.server.name[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Proxy [{#NAME}] [{#TYPE}]: Host type | The type of the proxy server. |
DEPENDENT | veeam.proxy.server.type[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Repository [{#NAME}] [{#TYPE}]: Get data | Gets raw data from repository with the name: |
DEPENDENT | veeam.repositories.raw[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Repository [{#NAME}] [{#TYPE}]: Used space [{#PATH}] | Used space by repositories expressed in gigabytes (GB). |
DEPENDENT | veeam.repository.capacity[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Repository [{#NAME}] [{#TYPE}]: Free space [{#PATH}] | Free space of repositories expressed in gigabytes (GB). |
DEPENDENT | veeam.repository.free.space[{#NAME}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
DEPENDENT | veeam.sessions.raw[{#ID}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
| Veeam | Veeam: Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
DEPENDENT | veeam.sessions.state[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
DEPENDENT | veeam.sessions.result[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
DEPENDENT | veeam.sessions.message[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Session progress percent [{#NAME}] [{#TYPE}] | The progress of the session expressed as percentage. |
DEPENDENT | veeam.sessions.progress.percent[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
DEPENDENT | veeam.jobs.states.raw[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
DEPENDENT | veeam.jobs.status[{#ID}] Preprocessing: - JSONPATH: |
| Veeam | Veeam: Job states [{#NAME}] [{#TYPE}]: Last result | The result of the session. The enums used: |
DEPENDENT | veeam.jobs.last.result[{#ID}] Preprocessing: - JSONPATH: |
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
AVERAGE | |
| Veeam: Last result session failed | - |
find(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#ID}],,"like","Failed")=1 |
AVERAGE | Manual close: YES |
| Veeam: Last result job failed | - |
find(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}],,"like","Failed")=1 |
AVERAGE | Manual close: YES |
Feedback
Please report any issues with the template at https://support.zabbix.com.
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums.
Veeam Backup and Replication by HTTP
Overview
This template is designed to monitor Veeam Backup and Replication. It works without any external scripts and uses the script item.
NOTE: Since the RESTful API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 6.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Create a user to monitor the service or use an existing read-only account.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.API.URL},{$VEEAM.USER}, and{$VEEAM.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.API.URL} | The Veeam API endpoint is a URL in the format |
https://localhost:9419 |
| {$VEEAM.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.PASSWORD} | The |
|
| {$VEEAM.USER} | The |
|
| {$VEEAM.DATA.TIMEOUT} | A response timeout for the API. |
10 |
| {$CREATED.AFTER} | Returns sessions that are created after chosen days. |
7 |
| {$SESSION.NAME.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$SESSION.TYPE.MATCHES} | This macro is used in discovery rule to evaluate sessions. |
.* |
| {$SESSION.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate sessions. |
CHANGE_IF_NEEDED |
| {$PROXIES.NAME.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.NAME.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$PROXIES.TYPE.MATCHES} | This macro is used in proxies discovery rule. |
.* |
| {$PROXIES.TYPE.NOT_MATCHES} | This macro is used in proxies discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.NAME.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.NAME.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$REPOSITORIES.TYPE.MATCHES} | This macro is used in repositories discovery rule. |
.* |
| {$REPOSITORIES.TYPE.NOT_MATCHES} | This macro is used in repositories discovery rule. |
CHANGE_IF_NEEDED |
| {$JOB.NAME.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.NAME.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.TYPE.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.TYPE.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
| {$JOB.STATUS.MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
.* |
| {$JOB.STATUS.NOT_MATCHES} | This macro is used in discovery rule to evaluate the states of jobs. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.get.metrics |
| Veeam: Get errors | The errors from API requests. |
Dependent item | veeam.get.errors Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup and Replication by HTTP/veeam.get.errors))>0 |
Average |
LLD rule Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Proxies discovery | Discovery of proxies. |
Dependent item | veeam.proxies.discovery Preprocessing
|
Item prototypes for Proxies discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Server [{#NAME}]: Get data | Gets raw data collected by the proxy server. |
Dependent item | veeam.proxy.server.raw[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Get data | Gets raw data collected by the proxy with the name |
Dependent item | veeam.proxy.raw[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Max Task Count | The maximum number of concurrent tasks. |
Dependent item | veeam.proxy.maxtask[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Host name | The name of the proxy server. |
Dependent item | veeam.proxy.server.name[{#NAME}] Preprocessing
|
| Veeam: Proxy [{#NAME}] [{#TYPE}]: Host type | The type of the proxy server. |
Dependent item | veeam.proxy.server.type[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of repositories. |
Dependent item | veeam.repositories.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Get data | Gets raw data from repository with the name: |
Dependent item | veeam.repositories.raw[{#NAME}] Preprocessing
|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Used space [{#PATH}] | Used space by repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Veeam: Repository [{#NAME}] [{#TYPE}]: Free space [{#PATH}] | Free space of repositories expressed in gigabytes (GB). |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
LLD rule Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Sessions discovery | Discovery of sessions. |
Dependent item | veeam.sessions.discovery Preprocessing
|
Item prototypes for Sessions discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Session [{#NAME}] [{#TYPE}]: Get data | Gets raw data from session with the name: |
Dependent item | veeam.sessions.raw[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: State | The state of the session. The enums used: |
Dependent item | veeam.sessions.state[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: Result | The result of the session. The enums used: |
Dependent item | veeam.sessions.result[{#ID}] Preprocessing
|
| Veeam: Session [{#NAME}] [{#TYPE}]: Message | A message that explains the session result. |
Dependent item | veeam.sessions.message[{#ID}] Preprocessing
|
| Veeam: Session progress percent [{#NAME}] [{#TYPE}] | The progress of the session expressed as percentage. |
Dependent item | veeam.sessions.progress.percent[{#ID}] Preprocessing
|
Trigger prototypes for Sessions discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: Last result session failed | find(/Veeam Backup and Replication by HTTP/veeam.sessions.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
LLD rule Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Jobs states discovery | Discovery of the jobs states. |
Dependent item | veeam.job.state.discovery Preprocessing
|
Item prototypes for Jobs states discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Get data | Gets raw data from the job states with the name |
Dependent item | veeam.jobs.states.raw[{#ID}] Preprocessing
|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Status | The current status of the job. The enums used: |
Dependent item | veeam.jobs.status[{#ID}] Preprocessing
|
| Veeam: Job states [{#NAME}] [{#TYPE}]: Last result | The result of the session. The enums used: |
Dependent item | veeam.jobs.last.result[{#ID}] Preprocessing
|
Trigger prototypes for Jobs states discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam: Last result job failed | find(/Veeam Backup and Replication by HTTP/veeam.jobs.last.result[{#ID}],,"like","Failed")=1 |
Average | Manual close: Yes |
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: This template uses the Veeam Backup Enterprise Manager REST API.
Veeam Backup Enterprise Manager must be installed and licensed.
Supported editions include:
- VUL Foundation
- VUL Advanced
- VUL Premium
- Enterprise
- Enterprise Plus
Community Edition and Backup Starter do not provide Enterprise Manager functionality and are not supported by this template.
NOTE: Veeam Backup & Replication v13 also provides a native REST API on port 9419, separate from the Enterprise Manager REST API used by this template.
A different Veeam Backup & Replication by HTTP template is required for monitoring the native VBR REST API.
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.4 and higher.
Tested versions
This template has been tested on:
- Veeam Backup & Replication, version 13.1.1.18
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for the script item: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup Enterprise Manager", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup Enterprise Manager"}. |
full |
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.FREQUENCY} | The update interval for the get metrics item. |
1m |
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
15s |
| {$BACKUP.TYPE.MATCHES} | Filter of discoverable backups by type. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | Filter to exclude discoverable backups by type. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | Filter of discoverable backups by name. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | Filter to exclude discoverable backups by name. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
| {$VEEAM.REPOSITORY.NAME.MATCHES} | Filter of discoverable repositories by name. |
.* |
| {$VEEAM.REPOSITORY.NAME.NOT_MATCHES} | Filter to exclude discoverable repositories by name. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.REPO.PFREE.WARN} | The minimum free space percentage for a warning trigger expression (percent). |
20 |
| {$VEEAM.MANAGER.REPO.PFREE.CRIT} | The minimum free space percentage for a critical trigger expression (percent). |
10 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is returned as JSON. |
Script | veeam.manager.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Jobs: Running | Number of running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Jobs: Scheduled | Number of scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Jobs: Scheduled backup | Number of scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Jobs: Scheduled replica | Number of scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Jobs: Total | Number of total job runs. |
Dependent item | veeam.manager.total.jobs Preprocessing
|
| Jobs: Warnings | Number of warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Jobs: Failed | Number of failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
| Overview: Backup servers | Number of backup servers. |
Dependent item | veeam.manager.overview.backup.servers Preprocessing
|
| Overview: Proxy servers | Number of proxy servers. |
Dependent item | veeam.manager.overview.proxy.servers Preprocessing
|
| Overview: Repository servers | Number of repository servers. |
Dependent item | veeam.manager.overview.repository.servers Preprocessing
|
| VM States: Successful | Number of successful VM latest states. |
Dependent item | veeam.manager.overview.successful.vm.states Preprocessing
|
| VM States: Warning | Number of warning VM latest states. |
Dependent item | veeam.manager.overview.warning.vm.states Preprocessing
|
| VM States: Failed | Number of failed VM latest states. |
Dependent item | veeam.manager.overview.failed.vm.states Preprocessing
|
| VM: Protected | Number of protected VMs. |
Dependent item | veeam.manager.vms.protected Preprocessing
|
| VM: Backed up | Number of backed up VMs. |
Dependent item | veeam.manager.vms.backedup Preprocessing
|
| VM: Replicated | Number of replicated VMs. |
Dependent item | veeam.manager.vms.replicated Preprocessing
|
| VM: Restore points | Number of restore points. |
Dependent item | veeam.manager.vms.restore.points Preprocessing
|
| VM: Full backup points size | Full backup points total size. |
Dependent item | veeam.manager.vms.full.backup.size Preprocessing
|
| VM: Incremental backup points size | Incremental backup points total size. |
Dependent item | veeam.manager.vms.incremental.backup.size Preprocessing
|
| VM: Replica restore points size | Replica restore points total size. |
Dependent item | veeam.manager.vms.replica.restore.size Preprocessing
|
| VM: Source size | Total size of source VMs. |
Dependent item | veeam.manager.vms.source.size Preprocessing
|
| VM: Success backup percent | Percent of successful backups. |
Dependent item | veeam.manager.vms.success.backup.percent Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup Enterprise Manager: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Backup Enterprise Manager: Warning job runs are too high | min(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs, 5m)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Backup Enterprise Manager: Failed job runs are too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup file [{#NAME}]: Size | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Data size | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Compression ratio | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Backup file [{#NAME}]: Deduplication ratio | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
LLD rule Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repositories discovery | Discovery of all backup repositories connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.repository.discovery Preprocessing
|
Item prototypes for Repositories discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Repository [{#NAME}]: Capacity | Total capacity of the backup repository |
Dependent item | veeam.repository.capacity[{#NAME}] Preprocessing
|
| Repository [{#NAME}]: Free space | Free space on the backup repository |
Dependent item | veeam.repository.free.space[{#NAME}] Preprocessing
|
| Repository [{#NAME}]: Backup size | Backup data size on the backup repository |
Dependent item | veeam.repository.backup.size[{#NAME}] Preprocessing
|
Trigger prototypes for Repositories discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup Enterprise Manager: Repository [{#NAME}]: Free space is critically low | Free space on the repository |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])>0 and min(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.free.space[{#NAME}],15m)/last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])*100<{$VEEAM.MANAGER.REPO.PFREE.CRIT} |
Average | |
| Veeam Backup Enterprise Manager: Repository [{#NAME}]: Free space is low | Free space on the repository |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])>0 and min(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.free.space[{#NAME}],15m)/last(/Veeam Backup Enterprise Manager by HTTP/veeam.repository.capacity[{#NAME}])*100<{$VEEAM.MANAGER.REPO.PFREE.WARN} |
Warning | Depends on:
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: Veeam Backup Enterprise Manager REST API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Socket
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.2 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
10 |
| {$BACKUP.TYPE.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.manager.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Running Jobs | Informs about the running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Scheduled Jobs | Informs about the scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Scheduled Backup Jobs | Informs about the scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Scheduled Replica Jobs | Informs about the scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Total Job Runs | Informs about the total job runs. |
Dependent item | veeam.manager.scheduled.total.jobs Preprocessing
|
| Warnings Job Runs | Informs about the warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Failed Job Runs | Informs about the failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Backup: Warning job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Backup: Failed job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Size [{#NAME}] | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Data Size [{#NAME}] | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Compression ratio [{#NAME}] | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Deduplication Ratio [{#NAME}] | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: Veeam Backup Enterprise Manager REST API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Socket
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for the script item: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Veeam Backup Enterprise Manager", e.g. {$HTTP.TLS.VERIFY:"Veeam Backup Enterprise Manager"}. |
full |
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
10 |
| {$BACKUP.TYPE.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.manager.get.metrics |
| Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Running Jobs | Informs about the running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Scheduled Jobs | Informs about the scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Scheduled Backup Jobs | Informs about the scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Scheduled Replica Jobs | Informs about the scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Total Job Runs | Informs about the total job runs. |
Dependent item | veeam.manager.scheduled.total.jobs Preprocessing
|
| Warnings Job Runs | Informs about the warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Failed Job Runs | Informs about the failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Backup: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Backup: Warning job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Backup: Failed job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Size [{#NAME}] | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Data Size [{#NAME}] | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Compression ratio [{#NAME}] | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Deduplication Ratio [{#NAME}] | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: Veeam Backup Enterprise Manager REST API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Socket
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 6.4 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
10 |
| {$BACKUP.TYPE.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam Manager: Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.manager.get.metrics |
| Veeam Manager: Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Veeam Manager: Running Jobs | Informs about the running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Veeam Manager: Scheduled Jobs | Informs about the scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Veeam Manager: Scheduled Backup Jobs | Informs about the scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Veeam Manager: Scheduled Replica Jobs | Informs about the scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Veeam Manager: Total Job Runs | Informs about the total job runs. |
Dependent item | veeam.manager.scheduled.total.jobs Preprocessing
|
| Veeam Manager: Warnings Job Runs | Informs about the warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Veeam Manager: Failed Job Runs | Informs about the failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Manager: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Manager: Warning job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Manager: Failed job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam Manager: Backup Size [{#NAME}] | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Veeam Manager: Data Size [{#NAME}] | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Veeam Manager: Compression ratio [{#NAME}] | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Veeam Manager: Deduplication Ratio [{#NAME}] | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Veeam Backup Enterprise Manager by HTTP
Overview
This template is designed to monitor Veeam Backup Enterprise Manager. The Veeam Backup Enterprise Manager REST API enables the communication with Zabbix to query the information about Veeam Backup Enterprise Manager objects. It works without any external scripts and uses the script item.
Requirements
For Zabbix version: 6.2 and higher.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Configuration
No specific Zabbix configuration is required.
Macros used
| Name | Description | Default |
|---|---|---|
| {$BACKUP.NAME.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$BACKUP.TYPE.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
10 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
`` |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.PASSWORD} | The |
`` |
| {$VEEAM.MANAGER.USER} | The |
`` |
Template links
There are no template links in this template.
Discovery rules
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
DEPENDENT | veeam.backup.files.discovery Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: Filter: AND- {#TYPE} MATCHES_REGEX - {#TYPE} NOT_MATCHES_REGEX - {#NAME} MATCHES_REGEX - {#NAME} NOT_MATCHES_REGEX |
Items collected
| Group | Name | Description | Type | Key and additional info |
|---|---|---|---|---|
| Veeam | Veeam Manager: Get metrics | The result of API requests is expressed in the JSON. |
SCRIPT | veeam.manager.get.metrics Expression: The text is too long. Please see the template. |
| Veeam | Veeam Manager: Get errors | The errors from API requests. |
DEPENDENT | veeam.manager.get.errors Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Running Jobs | Informs about the running jobs. |
DEPENDENT | veeam.manager.running.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Scheduled Jobs | Informs about the scheduled jobs. |
DEPENDENT | veeam.manager.scheduled.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Scheduled Backup Jobs | Informs about the scheduled backup jobs. |
DEPENDENT | veeam.manager.scheduled.backup.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Scheduled Replica Jobs | Informs about the scheduled replica jobs. |
DEPENDENT | veeam.manager.scheduled.replica.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Total Job Runs | Informs about the total job runs. |
DEPENDENT | veeam.manager.scheduled.total.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Warnings Job Runs | Informs about the warning job runs. |
DEPENDENT | veeam.manager.warning.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Failed Job Runs | Informs about the failed job runs. |
DEPENDENT | veeam.manager.failed.jobs Preprocessing: - JSONPATH: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Veeam | Veeam Manager: Backup Size [{#NAME}] | Gets the backup size with the name |
DEPENDENT | veeam.backup.file.size[{#NAME}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
| Veeam | Veeam Manager: Data Size [{#NAME}] | Gets the data size with the name |
DEPENDENT | veeam.backup.data.size[{#NAME}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
| Veeam | Veeam Manager: Compression ratio [{#NAME}] | Gets the data compression ratio with the name |
DEPENDENT | veeam.backup.compress.ratio[{#NAME}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
| Veeam | Veeam Manager: Deduplication Ratio [{#NAME}] | Gets the data deduplication ratio with the name |
DEPENDENT | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Manager: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
AVERAGE | |
| Veeam Manager: Warning job runs is too high | - |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
WARNING | Manual close: YES |
| Veeam Manager: Failed job runs is too high | - |
last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
AVERAGE | Manual close: YES |
Feedback
Please report any issues with the template at https://support.zabbix.com.
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums.
Veeam Backup Enterprise Manager by HTTP
Overview
It works without any external scripts and uses the script item.
NOTE: Veeam Backup Enterprise Manager REST API may not be available for some editions, the template will only work with the following editions of Veeam Backup and Replication:
- Veeam Universal License (VUL) editions:
- Foundation
- Advanced
- Premium
- Veeam Socket License editions:
- Enterprise Socket
- Enterprise Plus Socket
See Veeam Data Platform Feature Comparison for more details.
Requirements
Zabbix version: 6.0 and higher.
Tested versions
This template has been tested on:
- Veeam Backup and Replication, version 11.0
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
See Zabbix template operation for basic instructions.
- Create a user to monitor the service, or use an existing read-only account.
Similarly to the user authentication in the Veeam Backup Enterprise Manager Web UI,
the client authentication in the REST API dictates which operations a client is allowed to perform when working with the REST API.
That is, if the client is authenticated using an account that does not have enough permissions to perform some actions, it will not be able to execute them.
You can also obtain the collected jobs if you are logged in under an account having only
Portal Administratorrole.
See Veeam Help Center for more details.
- Link the template to a host.
- Configure the following macros:
{$VEEAM.MANAGER.API.URL},{$VEEAM.MANAGER.USER},{$VEEAM.MANAGER.PASSWORD}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VEEAM.MANAGER.API.URL} | Veeam Backup Enterprise Manager API endpoint is a URL in the format: |
https://localhost:9398 |
| {$VEEAM.MANAGER.HTTP.PROXY} | Sets the HTTP proxy to |
|
| {$VEEAM.MANAGER.PASSWORD} | The |
|
| {$VEEAM.MANAGER.USER} | The |
|
| {$VEEAM.MANAGER.DATA.TIMEOUT} | A response timeout for API. |
10 |
| {$BACKUP.TYPE.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.TYPE.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$BACKUP.NAME.MATCHES} | This macro is used in backup discovery rule. |
.* |
| {$BACKUP.NAME.NOT_MATCHES} | This macro is used in backup discovery rule. |
CHANGE_IF_NEEDED |
| {$VEEAM.MANAGER.JOB.MAX.WARN} | The maximum score of warning jobs (for a trigger expression). |
10 |
| {$VEEAM.MANAGER.JOB.MAX.FAIL} | The maximum score of failed jobs (for a trigger expression). |
5 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam Manager: Get metrics | The result of API requests is expressed in the JSON. |
Script | veeam.manager.get.metrics |
| Veeam Manager: Get errors | The errors from API requests. |
Dependent item | veeam.manager.get.errors Preprocessing
|
| Veeam Manager: Running Jobs | Informs about the running jobs. |
Dependent item | veeam.manager.running.jobs Preprocessing
|
| Veeam Manager: Scheduled Jobs | Informs about the scheduled jobs. |
Dependent item | veeam.manager.scheduled.jobs Preprocessing
|
| Veeam Manager: Scheduled Backup Jobs | Informs about the scheduled backup jobs. |
Dependent item | veeam.manager.scheduled.backup.jobs Preprocessing
|
| Veeam Manager: Scheduled Replica Jobs | Informs about the scheduled replica jobs. |
Dependent item | veeam.manager.scheduled.replica.jobs Preprocessing
|
| Veeam Manager: Total Job Runs | Informs about the total job runs. |
Dependent item | veeam.manager.scheduled.total.jobs Preprocessing
|
| Veeam Manager: Warnings Job Runs | Informs about the warning job runs. |
Dependent item | veeam.manager.warning.jobs Preprocessing
|
| Veeam Manager: Failed Job Runs | Informs about the failed job runs. |
Dependent item | veeam.manager.failed.jobs Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Veeam Manager: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.get.errors))>0 |
Average | |
| Veeam Manager: Warning job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.warning.jobs)>{$VEEAM.MANAGER.JOB.MAX.WARN} |
Warning | Manual close: Yes | |
| Veeam Manager: Failed job runs is too high | last(/Veeam Backup Enterprise Manager by HTTP/veeam.manager.failed.jobs)>{$VEEAM.MANAGER.JOB.MAX.FAIL} |
Average | Manual close: Yes |
LLD rule Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Backup Files discovery | Discovery of all backup files created on, or imported to the backup servers that are connected to Veeam Backup Enterprise Manager. |
Dependent item | veeam.backup.files.discovery Preprocessing
|
Item prototypes for Backup Files discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Veeam Manager: Backup Size [{#NAME}] | Gets the backup size with the name |
Dependent item | veeam.backup.file.size[{#NAME}] Preprocessing
|
| Veeam Manager: Data Size [{#NAME}] | Gets the data size with the name |
Dependent item | veeam.backup.data.size[{#NAME}] Preprocessing
|
| Veeam Manager: Compression ratio [{#NAME}] | Gets the data compression ratio with the name |
Dependent item | veeam.backup.compress.ratio[{#NAME}] Preprocessing
|
| Veeam Manager: Deduplication Ratio [{#NAME}] | Gets the data deduplication ratio with the name |
Dependent item | veeam.backup.deduplication.ratio[{#NAME}] Preprocessing
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums