AWS Backup
Overview
The AWS Backup integration with Motadata AIOps collects operational telemetry and configuration inventory from AWS Backup, Amazon's centralized backup service. It monitors backup vaults, backup plans, backup rules, backup jobs, copy jobs, protected resources, and recovery points across AWS accounts.
These metrics help administrators track backup execution health, storage consumption, job success and failure rates, retention policy compliance, and recovery point availability to ensure data protection objectives are consistently met.
Prerequisites
- AWS Backup is enabled in the target AWS account and region.
- The IAM role or user used for integration has read access to AWS Backup resources.
- Required AWS Backup API endpoints are reachable from Motadata AIOps.
- The AWS account is added in discovery with correct credentials and region configuration.
List of Supported KPIs
Vault
| Metric | Description | Type |
|---|---|---|
| aws.backup.vault | Identifier of the AWS Backup vault. | String |
| aws.backup.vault.arn | Amazon Resource Name of the backup vault. | String |
| aws.backup.vault.state | Current operational state of the backup vault. | String |
| aws.backup.vault.type | Type of the backup vault. | String |
| aws.backup.vault.lock.state | Lock state of the vault indicating immutability configuration. | String |
| aws.backup.vault.encryption.key.arn | ARN of the encryption key used to secure the vault. | String |
| aws.backup.vault.encryption.key.type | Type of encryption key applied to the vault. | String |
| aws.backup.vault.recovery.points | Total number of recovery points stored in the vault. | Count |
| aws.backup.vault.lock.date | Date from which the vault lock policy becomes effective. | Timestamp |
| aws.backup.vault.min.retention.days | Minimum retention period enforced for recovery points in the vault. | Days |
| aws.backup.vault.max.retention.days | Maximum retention period allowed for recovery points in the vault. | Days |
| aws.backup.vault.creation.time | Timestamp when the backup vault was created. | Timestamp |
Backup Plans
| Metric | Description | Type |
|---|---|---|
| aws.backup.plans | Total number of backup plans configured in the account. | Count |
| aws.backup.plan | Identifier of an individual backup plan. | String |
| aws.backup.plan.id | Unique ID assigned to the backup plan. | String |
| aws.backup.plan.arn | Amazon Resource Name of the backup plan. | String |
| aws.backup.plan.resource.type | Resource type associated with the backup plan. | String |
| aws.backup.plan.creation.time | Timestamp when the backup plan was created. | Timestamp |
| aws.backup.plan.last.execution.time | Timestamp of the most recent execution of the backup plan. | Timestamp |
| aws.backup.plan.version.id | Version identifier of the current backup plan configuration. | String |
| aws.backup.plan.advanced.settings.acls | Advanced backup setting controlling ACL behavior for S3 backups. | String |
| aws.backup.plan.advanced.settings.object.tags | Advanced backup setting controlling object tag behavior. | String |
Backup Rules
| Metric | Description | Type |
|---|---|---|
| aws.backup.rules | Total number of rules defined across all backup plans. | Count |
| aws.backup.rule | Identifier of an individual backup rule. | String |
| aws.backup.rule.id | Unique ID assigned to the backup rule. | String |
| aws.backup.rule.schedule.expression | Cron or rate expression defining the backup schedule. | String |
| aws.backup.rule.schedule.timezone | Timezone applied to the backup rule schedule. | String |
| aws.backup.rule.target.vault | Name of the vault where backups produced by this rule are stored. | String |
| aws.backup.rule.start.window.seconds | Time window in seconds within which a backup job must start. | Seconds |
| aws.backup.rule.completion.window.seconds | Time window in seconds within which a backup job must complete. | Seconds |
| aws.backup.rule.delete.after.days | Number of days after which recovery points are deleted. | Days |
| aws.backup.rule.cold.after.days | Number of days after which recovery points transition to cold storage. | Days |
| aws.backup.rule.continuous.backup | Indicates whether continuous backup is enabled for this rule. | Boolean |
Backup Jobs — Summary
| Metric | Description | Type |
|---|---|---|
| aws.backup.combined.jobs | Total number of backup and copy jobs across all states. | Count |
| aws.backup.jobs | Total number of backup jobs. | Count |
| aws.backup.created.jobs | Number of backup jobs in the created state. | Count |
| aws.backup.running.jobs | Number of backup jobs currently running. | Count |
| aws.backup.pending.jobs | Number of backup jobs waiting to start. | Count |
| aws.backup.completed.jobs | Number of backup jobs that completed successfully. | Count |
| aws.backup.failed.jobs | Number of backup jobs that failed. | Count |
Backup Jobs — Detail
| Metric | Description | Type |
|---|---|---|
| aws.backup.job | Identifier of an individual backup job. | String |
| aws.backup.job.state | Current state of the backup job. | String |
| aws.backup.job.message.category | Category of the status message associated with the job. | String |
| aws.backup.job.resource.name | Name of the resource being backed up. | String |
| aws.backup.job.resource.id | Unique identifier of the resource being backed up. | String |
| aws.backup.job.resource.type | AWS resource type being protected by the job. | String |
| aws.backup.job.creation.time | Timestamp when the backup job was created. | Timestamp |
| aws.backup.job.start.by.time | Deadline by which the backup job must start. | Timestamp |
| aws.backup.job.completion.time | Timestamp when the backup job completed. | Timestamp |
| aws.backup.job.recovery.point.arn | ARN of the recovery point created by this job. | String |
| aws.backup.job.plan.id | ID of the backup plan that triggered this job. | String |
| aws.backup.job.rule.name | Name of the backup rule that triggered this job. | String |
| aws.backup.job.target.vault.name | Name of the vault where the backup is stored. | String |
| aws.backup.job.encryption.enabled | Indicates whether encryption is enabled for this backup job. | Boolean |
| aws.backup.job.size.bytes | Total size of the backup produced by this job. | Bytes |
| aws.backup.job.transferred.bytes | Amount of data transferred during the backup job. | Bytes |
| aws.backup.job.completion.percent | Percentage of the backup job that has completed. | Percent |
| aws.backup.job.vault.lock.state | Lock state of the target vault at the time of the job. | String |
Copy Jobs — Summary
| Metric | Description | Type |
|---|---|---|
| aws.backup.copy.jobs | Total number of copy jobs. | Count |
| aws.backup.created.copy.jobs | Number of copy jobs in the created state. | Count |
| aws.backup.running.copy.jobs | Number of copy jobs currently running. | Count |
| aws.backup.completed.copy.jobs | Number of copy jobs that completed successfully. | Count |
| aws.backup.failed.copy.jobs | Number of copy jobs that failed. | Count |
Copy Jobs — Detail
| Metric | Description | Type |
|---|---|---|
| aws.backup.copy.job | Identifier of an individual copy job. | String |
| aws.backup.copy.job.state | Current state of the copy job. | String |
| aws.backup.copy.job.message.category | Category of the status message associated with the copy job. | String |
| aws.backup.copy.job.resource.name | Name of the resource being copied. | String |
| aws.backup.copy.job.resource.id | Unique identifier of the resource being copied. | String |
| aws.backup.copy.job.resource.type | AWS resource type involved in the copy job. | String |
| aws.backup.copy.job.creation.time | Timestamp when the copy job was created. | Timestamp |
| aws.backup.copy.job.completion.time | Timestamp when the copy job completed. | Timestamp |
| aws.backup.copy.job.source.vault.name | Name of the source vault from which data is being copied. | String |
| aws.backup.copy.job.destination.vault.name | Name of the destination vault receiving the copied data. | String |
| aws.backup.copy.job.size.bytes | Total size of data involved in the copy job. | Bytes |
| aws.backup.copy.job.childs | Number of child jobs associated with this copy job. | Count |
| aws.backup.copy.job.destination.vault.lock.state | Lock state of the destination vault at the time of the copy job. | String |
Protected Resources
| Metric | Description | Type |
|---|---|---|
| aws.backup.protected.resources | Total number of resources protected by AWS Backup. | Count |
| aws.backup.protected.resource | Identifier of an individual protected resource. | String |
| aws.backup.protected.resource.name | Name of the protected resource. | String |
| aws.backup.protected.resource.arn | ARN of the protected resource. | String |
| aws.backup.protected.resource.type | AWS resource type of the protected resource. | String |
| aws.backup.protected.resource.last.backup.time | Timestamp of the most recent backup taken for this resource. | Timestamp |
| aws.backup.protected.resource.last.backup.vault.arn | ARN of the vault where the last backup is stored. | String |
| aws.backup.protected.resource.last.recovery.point.arn | ARN of the most recent recovery point for this resource. | String |
Recovery Points — Summary
| Metric | Description | Type |
|---|---|---|
| aws.backup.recovery.points | Total number of recovery points across all vaults. | Count |
| aws.backup.completed.recovery.points | Number of recovery points in completed state. | Count |
| aws.backup.partial.recovery.points | Number of recovery points in partial state. | Count |
| aws.backup.deleting.recovery.points | Number of recovery points currently being deleted. | Count |
| aws.backup.warm.recovery.points | Number of recovery points stored in warm storage. | Count |
| aws.backup.cold.recovery.points | Number of recovery points stored in cold storage. | Count |
| aws.backup.recovery.points.size.bytes | Total storage consumed by all recovery points. | Bytes |
| aws.backup.recovery.points.max.size.bytes | Maximum storage size recorded across all recovery points. | Bytes |
Recovery Points — Detail
| Metric | Description | Type |
|---|---|---|
| aws.backup.recovery.point | Identifier of an individual recovery point. | String |
| aws.backup.recovery.point.status | Current status of the recovery point. | String |
| aws.backup.recovery.point.size.bytes | Storage size of this recovery point. | Bytes |
| aws.backup.recovery.point.resource.name | Name of the resource this recovery point protects. | String |
| aws.backup.recovery.point.resource.id | Unique identifier of the protected resource. | String |
| aws.backup.recovery.point.resource.type | AWS resource type associated with this recovery point. | String |
| aws.backup.recovery.point.creation.time | Timestamp when the recovery point was created. | Timestamp |
| aws.backup.recovery.point.expiration.time | Timestamp when the recovery point is scheduled to expire. | Timestamp |
| aws.backup.recovery.point.vault.name | Name of the vault storing this recovery point. | String |
| aws.backup.recovery.point.plan.id | ID of the backup plan that created this recovery point. | String |
| aws.backup.recovery.point.encryption.enabled | Indicates whether this recovery point is encrypted. | Boolean |
| aws.backup.recovery.point.storage.class | Storage class of the recovery point — warm or cold. | String |
| aws.backup.recovery.point.retention.days | Number of days this recovery point is retained before deletion. | Days |
| aws.backup.recovery.point.cold.transition.days | Number of days after which this recovery point transitions to cold storage. | Days |
| aws.backup.recovery.point.encryption.key.type | Type of encryption key used for this recovery point. | String |
| aws.backup.recovery.point.index.status | Index status of the recovery point for search and restore operations. | String |
| aws.backup.recovery.point.scan.result | Result of the malware or integrity scan performed on this recovery point. | String |