Amazon CloudWatch metrics for Amazon Aurora - Amazon Aurora
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Amazon CloudWatch metrics for Amazon Aurora

The AWS/RDS namespace includes the following metrics that apply to database entities running on Amazon Aurora. Some metrics apply to either Aurora MySQL, Aurora PostgreSQL, or both. Furthermore, some metrics are specific to a DB cluster, primary DB instance, replica DB instance, or all DB instances.

For Aurora global database metrics, see Amazon CloudWatch metrics for write forwarding in Aurora MySQL and Amazon CloudWatch metrics for write forwarding in Aurora PostgreSQL. For Aurora parallel query metrics, see Monitoring parallel query.

Cluster-level metrics for Amazon Aurora

The following table describes metrics that are specific to Aurora clusters.

Amazon Aurora cluster-level metrics
Metric Description Applies to Units

AuroraGlobalDBDataTransferBytes

In an Aurora Global Database, the amount of redo log data transferred from the master Amazon Region to a secondary Amazon Region.

Note

This metric is available only in secondary Amazon Web Services Region.

Aurora MySQL and Aurora PostgreSQL

Bytes

AuroraGlobalDBProgressLag

In an Aurora Global Database, the measure of how far the secondary cluster is behind the primary cluster for both user transactions and system transactions.

Note

This metric is available only in secondary Amazon Web Services Region.

Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraGlobalDBReplicatedWriteIO

In an Aurora Global Database, the number of write I/O operations replicated from the primary Amazon Region to the cluster volume in a secondary Amazon Region. The billing calculations for the secondary Amazon Regions in a global database use VolumeWriteIOPs to account for writes performed within the cluster. The billing calculations for the primary Amazon Region in a global database use VolumeWriteIOPs to account for the write activity within that cluster, and AuroraGlobalDBReplicatedWriteIO to account for cross-Region replication within the global database.

Note

This metric is available only in secondary Amazon Web Services Region.

Aurora MySQL and Aurora PostgreSQL

Count

AuroraGlobalDBReplicationLag

For an Aurora Global Database, the amount of lag when replicating updates from the primary Amazon Region.

Note

This metric is available only in secondary Amazon Web Services Region.

Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraGlobalDBRPOLag

In an Aurora Global Database, the recovery point objective (RPO) lag time. This metric measures how far the secondary cluster is behind the primary cluster for user transactions.

Note

This metric is available only in secondary Amazon Web Services Region.

Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraVolumeBytesLeftTotal

The remaining available space for the cluster volume. As the cluster volume grows, this value decreases. If it reaches zero, the cluster reports an out-of-space error.

If you want to detect whether your Aurora MySQL cluster is approaching the size limit of 128 tebibytes (TiB), this value is simpler and more reliable to monitor than VolumeBytesUsed. AuroraVolumeBytesLeftTotal takes into account storage used for internal housekeeping and other allocations that don't affect your storage billing.

Aurora MySQL

Bytes

BacktrackChangeRecordsCreationRate

The number of backtrack change records created over 5 minutes for your DB cluster.

Aurora MySQL

Count per 5 minutes

BacktrackChangeRecordsStored

The number of backtrack change records used by your DB cluster.

Aurora MySQL

Count

BackupRetentionPeriodStorageUsed

The total amount of backup storage used to support the point-in-time restore feature within the Aurora DB cluster's backup retention window. This amount is included in the total reported by the TotalBackupStorageBilled metric. It is computed separately for each Aurora cluster. For instructions, see Understanding Amazon Aurora backup storage usage.

Aurora MySQL and Aurora PostgreSQL

Bytes

ServerlessDatabaseCapacity

The current capacity of an Aurora Serverless DB cluster.

Aurora MySQL and Aurora PostgreSQL

Count

SnapshotStorageUsed

The total amount of backup storage consumed by all Aurora snapshots for an Aurora DB cluster outside its backup retention window. This amount is included in the total reported by the TotalBackupStorageBilled metric. It is computed separately for each Aurora cluster. For instructions, see Understanding Amazon Aurora backup storage usage.

Aurora MySQL and Aurora PostgreSQL

Bytes

TotalBackupStorageBilled

The total amount of backup storage in bytes for which you are billed for a given Aurora DB cluster. The metric includes the backup storage measured by the BackupRetentionPeriodStorageUsed and SnapshotStorageUsed metrics. This metric is computed separately for each Aurora cluster. For instructions, see Understanding Amazon Aurora backup storage usage.

Aurora MySQL and Aurora PostgreSQL

Bytes

VolumeBytesUsed

The amount of storage used by your Aurora DB cluster.

This value affects the cost of the Aurora DB cluster (for pricing information, see the Amazon RDS pricing page).

This value doesn't reflect some internal storage allocations that don't affect storage billing. For Aurora MySQL you can anticipate out-of-space issues more accurately by testing whether AuroraVolumeBytesLeftTotal is approaching zero instead of comparing VolumeBytesUsed against the storage limit of 128 TiB.

For clusters that are clones, the value of this metric depends on the amount of data added or changed on the clone. The metric can also increase or decrease when the original cluster is deleted, or as new clones are added or deleted. For details, see Deleting a source cluster volume

Aurora MySQL and Aurora PostgreSQL

Bytes

VolumeReadIOPs

The number of billed read I/O operations from a cluster volume within a 5-minute interval.

Billed read operations are calculated at the cluster volume level, aggregated from all instances in the Aurora DB cluster, and then reported at 5-minute intervals. The value is calculated by taking the value of the Read operations metric over a 5-minute period. You can determine the amount of billed read operations per second by taking the value of the Billed read operations metric and dividing by 300 seconds. For example, if the Billed read operations returns 13,686, then the billed read operations per second is 45 (13,686 / 300 = 45.62).

You accrue billed read operations for queries that request database pages that aren't in the buffer cache and must be loaded from storage. You might see spikes in billed read operations as query results are read from storage and then loaded into the buffer cache.

Tip

If your Aurora MySQL cluster uses parallel query, you might see an increase in VolumeReadIOPS values. Parallel queries don't use the buffer pool. Thus, although the queries are fast, this optimized processing can result in an increase in read operations and associated charges.

Aurora MySQL and Aurora PostgreSQL

Count per 5 minutes

VolumeWriteIOPs

The number of write disk I/O operations to the cluster volume, reported at 5-minute intervals. For a detailed description of how billed write operations are calculated, see VolumeReadIOPs.

Aurora MySQL and Aurora PostgreSQL

Count per 5 minutes

Instance-level metrics for Amazon Aurora

The following instance-specific CloudWatch metrics apply to all Aurora MySQL and Aurora PostgreSQL instances unless noted otherwise.

Amazon Aurora instance-level metrics
Metric Description Applies to Units

AbortedClients

The number of client connections that have not been closed properly.

Aurora MySQL

Count

ActiveTransactions

The average number of current transactions executing on an Aurora database instance per second.

By default, Aurora doesn't enable this metric. To begin measuring this value, set innodb_monitor_enable='all' in the DB parameter group for a specific DB instance.

Aurora MySQL

Count per second

ACUUtilization

The value of the ServerlessDatabaseCapacity metric divided by the maximum ACU value of the DB cluster.

This metric is applicable for Aurora Serverless v1 and Aurora Serverless v2.

Aurora MySQL and Aurora PostgreSQL

Percentage

AuroraBinlogReplicaLag

The amount of time that a binary log replica DB cluster running on Aurora MySQL-Compatible Edition lags behind the binary log replication source. A lag means that the source is generating records faster than the replica can apply them.

This metric reports different values depending on the engine version:

Aurora MySQL version 2

The Seconds_Behind_Master field of the MySQL SHOW SLAVE STATUS

Aurora MySQL version 3

SHOW REPLICA STATUS

You can use this metric to monitor errors and replica lag in a cluster that acts as a binary log replica. The metric value indicates the following:

A high value

The replica is lagging the replication source.

0 or a value close to 0

The replica process is active and current.

-1

Aurora can't determine the lag, which can happen during replica setup or when the replica is in an error state.

Because binary log replication only occurs on the writer instance of the cluster, we recommend using the version of this metric associated with the WRITER role.

For more information about administering replication, see Replicating Amazon Aurora MySQL DB clusters across Amazon Web Services Regions. For more information about troubleshooting, see Amazon Aurora MySQL replication issues.

Primary for Aurora MySQL

Seconds

AuroraEstimatedSharedMemoryBytes

The estimated amount of shared buffer or buffer pool memory which was actively used during the last configured polling interval.

Bytes

AuroraOptimizedReadsCacheHitRatio

The percentage of requests that are served by the Optimized Reads cache.

The value is calculated using the following formula:

orcache_blks_hit/ (orcache_blks_hit + storage_blks_read)

When AuroraOptimizedReadsCacheHitRatio is 100%, it means that no pages were read from the Optimized Reads cache and the value will be 0.

Primary for Aurora PostgreSQL

Percentage

AuroraReplicaLag

For an Aurora replica, the amount of lag when replicating updates from the primary instance.

Replica for Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraReplicaLagMaximum

The maximum amount of lag between the primary instance and any of the Aurora DB instance in the DB cluster.

Primary for Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraReplicaLagMinimum

The minimum amount of lag between the primary instance and any of the Aurora DB instance in the DB cluster.

Primary for Aurora MySQL and Aurora PostgreSQL

Milliseconds

AuroraSlowConnectionHandleCount

The number of connections that have waited two seconds or longer to start the handshake.

This metric applies only to Aurora MySQL version 3.

Aurora MySQL

Count

AuroraSlowHandshakeCount

The number of connections that have taken 50 milliseconds or longer to finish the handshake.

This metric applies only to Aurora MySQL version 3.

Aurora MySQL

Count

BacktrackWindowActual

The difference between the target backtrack window and the actual backtrack window.

Primary for Aurora MySQL

Minutes

BacktrackWindowAlert

The number of times that the actual backtrack window is smaller than the target backtrack window for a given period of time.

Primary for Aurora MySQL

Count

BlockedTransactions

The average number of transactions in the database that are blocked per second.

Aurora MySQL

Count per second

BufferCacheHitRatio

The percentage of requests that are served by the buffer cache.

Aurora MySQL and Aurora PostgreSQL

Percentage

CommitLatency

The average duration taken by the engine and storage to complete the commit operations.

Aurora MySQL and Aurora PostgreSQL

Milliseconds

CommitThroughput

The average number of commit operations per second.

Aurora MySQL and Aurora PostgreSQL

Count per second

ConnectionAttempts

The number of attempts to connect to an instance, whether successful or not.

Aurora MySQL

Count

CPUCreditBalance

The number of CPU credits that an instance has accumulated, reported at 5-minute intervals. You can use this metric to determine how long a DB instance can burst beyond its baseline performance level at a given rate.

This metric applies only to these instance classes:

  • Aurora MySQL: db.t2.small, db.t2.medium, db.t3, and db.t4g

  • Aurora PostgreSQL: db.t3 and db.t4g

Note

We recommend using the T DB instance classes only for development and test servers, or other non-production servers. For more details on the T instance classes, see DB instance class types.

Launch credits work the same way in Amazon RDS as they do in Amazon EC2. For more information, see Launch credits in the Amazon Elastic Compute Cloud User Guide for Linux Instances.

Aurora MySQL and Aurora PostgreSQL

Count

CPUCreditUsage

The number of CPU credits consumed during the specified period, reported at 5-minute intervals. This metric measures the amount of time during which physical CPUs have been used for processing instructions by virtual CPUs allocated to the DB instance.

This metric applies only to these instance classes:

  • Aurora MySQL: db.t2.small, db.t2.medium, db.t3, and db.t4g

  • Aurora PostgreSQL: db.t3 and db.t4g

Note

We recommend using the T DB instance classes only for development and test servers, or other non-production servers. For more details on the T instance classes, see DB instance class types.

Aurora MySQL and Aurora PostgreSQL

Count

CPUSurplusCreditBalance

The number of surplus credits that have been spent by an unlimited instance when its CPUCreditBalance value is zero.

The CPUSurplusCreditBalance value is paid down by earned CPU credits. If the number of surplus credits exceeds the maximum number of credits that the instance can earn in a 24-hour period, the spent surplus credits above the maximum incur an additional charge.

CPU credit metrics are available at a 5-minute frequency only.

Aurora MySQL and Aurora PostgreSQL

Credits (vCPU-minutes)

CPUSurplusCreditsCharged

The number of spent surplus credits that are not paid down by earned CPU credits, and which thus incur an additional charge.

Spent surplus credits are charged when any of the following occurs:

  • The spent surplus credits exceed the maximum number of credits that the instance can earn in a 24-hour period. Spent surplus credits above the maximum are charged at the end of the hour.

  • The instance is stopped or terminated.

  • The instance is switched from unlimited to standard.

CPU credit metrics are available at a 5-minute frequency only.

Aurora MySQL and Aurora PostgreSQL

Credits (vCPU-minutes)

CPUUtilization

The percentage of CPU used by an Aurora DB instance.

Aurora MySQL and Aurora PostgreSQL

Percentage

DatabaseConnections

The number of client network connections to the database instance.

The number of database sessions can be higher than the metric value because the metric value doesn't include the following:

  • Sessions that no longer have a network connection but which the database hasn't cleaned up

  • Sessions created by the database engine for its own purposes

  • Sessions created by the database engine's parallel execution capabilities

  • Sessions created by the database engine job scheduler

  • Amazon Aurora connections

Aurora MySQL and Aurora PostgreSQL

Count

DDLLatency

The average duration of requests such as example, create, alter, and drop requests.

Aurora MySQL

Milliseconds

DDLThroughput

The average number of DDL requests per second.

Aurora MySQL

Count per second

Deadlocks

The average number of deadlocks in the database per second.

Aurora MySQL and Aurora PostgreSQL

Count per second

DeleteLatency

The average duration of delete operations.

Aurora MySQL

Milliseconds

DeleteThroughput

The average number of delete queries per second.

Aurora MySQL

Count per second

DiskQueueDepth

The number of outstanding read/write requests waiting to access the disk.

Aurora MySQL and Aurora PostgreSQL

Count

DMLLatency

The average duration of inserts, updates, and deletes.

Aurora MySQL

Milliseconds

DMLThroughput

The average number of inserts, updates, and deletes per second.

Aurora MySQL

Count per second

EngineUptime

The amount of time that the instance has been running.

Aurora MySQL and Aurora PostgreSQL

Seconds

FreeableMemory

The amount of available random access memory.

Aurora MySQL and Aurora PostgreSQL

Bytes

FreeEphemeralStorage

The amount of available Ephemeral NVMe storage.

Aurora PostgreSQL

Bytes

FreeLocalStorage

The amount of local storage available.

Unlike for other DB engines, for Aurora DB instances this metric reports the amount of storage available to each DB instance. This value depends on the DB instance class (for pricing information, see the Amazon RDS pricing page). You can increase the amount of free storage space for an instance by choosing a larger DB instance class for your instance.

(This doesn't apply to Aurora Serverless v2.)

Aurora MySQL and Aurora PostgreSQL

Bytes

InsertLatency

The average duration of insert operations.

Aurora MySQL

Milliseconds

InsertThroughput

The average number of insert operations per second.

Aurora MySQL

Count per second

LoginFailures

The average number of failed login attempts per second.

Aurora MySQL

Count per second

MaximumUsedTransactionIDs

The age of the oldest unvacuumed transaction ID, in transactions. If this value reaches 2,146,483,648 (2^31 - 1,000,000), the database is forced into read-only mode, to avoid transaction ID wraparound. For more information, see Preventing transaction ID wraparound failures in the PostgreSQL documentation.

Aurora PostgreSQL

Count

NetworkReceiveThroughput

The amount of network throughput received from clients by each instance in the Aurora DB cluster. This throughput doesn't include network traffic between instances in the Aurora DB cluster and the cluster volume.

Aurora MySQL and Aurora PostgreSQL

Bytes per second (console shows Megabytes per second)

NetworkThroughput

The amount of network throughput both received from and transmitted to clients by each instance in the Aurora DB cluster. This throughput doesn't include network traffic between instances in the Aurora DB cluster and the cluster volume.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

NetworkTransmitThroughput

The amount of network throughput sent to clients by each instance in the Aurora DB cluster. This throughput doesn't include network traffic between instances in the DB cluster and the cluster volume.

Aurora MySQL and Aurora PostgreSQL

Bytes per second (console shows Megabytes per second)

NumBinaryLogFiles

The number of binlog files generated.

Aurora MySQL

Count

PurgeBoundary

Transaction number up to which InnoDB purging is allowed. If this metric doesn't advance for extended periods of time, it's a good indication that InnoDB purging is blocked by long-running transactions. To investigate, check the active transactions on your Aurora MySQL DB cluster.

Aurora MySQL version 2, versions 2.11 and higher Count

PurgeFinishedPoint

Transaction number up to which InnoDB purging is performed. This metric can help you examine how fast InnoDB purging is progressing.

Aurora MySQL version 2, versions 2.11 and higher Count

Queries

The average number of queries executed per second.

Aurora MySQL

Count per second

RDSToAuroraPostgreSQLReplicaLag

The lag when replicating updates from the primary RDS PostgreSQL instance to other nodes in the cluster.

Replica for Aurora PostgreSQL

Seconds

ReadIOPS

The average number of disk I/O operations per second but the reports read and write separately, in 1-minute intervals.

Aurora MySQL and Aurora PostgreSQL

Count per second

ReadIOPSEphemeralStorage

The average number of disk read I/O operations to Ephemeral NVMe storage.

Aurora PostgreSQL

Count per second

ReadLatency

The average amount of time taken per disk I/O operation.

Aurora MySQL and Aurora PostgreSQL

Seconds

ReadLatencyEphemeralStorage

The average amount of time taken per disk read I/O operation for Ephemeral NVMe storage.

Aurora PostgreSQL

Milliseconds

ReadThroughput

The average number of bytes read from disk per second.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

ReadThroughputEphemeralStorage

The average number of bytes read from disk per second for Ephemeral NVMe storage.

Aurora PostgreSQL

Bytes per second

ReplicationSlotDiskUsage

The amount of disk space consumed by replication slot files.

Aurora PostgreSQL

Bytes

ResultSetCacheHitRatio

The percentage of requests that are served by the Resultset cache.

Aurora MySQL

Percentage

RollbackSegmentHistoryListLength

The undo logs that record committed transactions with delete-marked records. These records are scheduled to be processed by the InnoDB purge operation.

Aurora MySQL

Count

RowLockTime

The total time spent acquiring row locks for InnoDB tables.

Aurora MySQL

Milliseconds

SelectLatency

The average amount of time for select operations.

Aurora MySQL

Milliseconds

SelectThroughput

The average number of select queries per second.

Aurora MySQL

Count per second

StorageNetworkReceiveThroughput

The amount of network throughput received from the Aurora storage subsystem by each instance in the DB cluster.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

StorageNetworkThroughput

The amount of network throughput received from and sent to the Aurora storage subsystem by each instance in the Aurora DB cluster.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

StorageNetworkTransmitThroughput

The amount of network throughput sent to the Aurora storage subsystem by each instance in the Aurora DB cluster.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

SumBinaryLogSize

The total size of the binlog files.

Aurora MySQL

Bytes

SwapUsage

The amount of swap space used. This metric isn't available for the following DB instance classes:
  • db.r3.*, db.r4.*, and db.r7g.* (Aurora MySQL)

  • db.r7g.* (Aurora PostgreSQL)

Aurora MySQL and Aurora PostgreSQL

Bytes

TempStorageIOPS

The number of IOPS for both read and writes on local storage attached to the DB instance. This metric represents a count and is measured once per second.

This metric is applicable for Aurora Serverless v1 and Aurora Serverless v2.

Aurora MySQL and Aurora PostgreSQL

Count per second

TempStorageThroughput

The amount of data transferred to and from local storage associated with the DB instance. This metric represents bytes and is measured once per second.

This metric is applicable for Aurora Serverless v1 and Aurora Serverless v2.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

TransactionLogsDiskUsage

The amount of disk space consumed by transaction logs on the Aurora PostgreSQL DB instance.

This metric is generated only when Aurora PostgreSQL is using logical replication or Amazon Database Migration Service. By default, Aurora PostgreSQL uses log records, not transaction logs. When transaction logs aren't in use, the value for this metric is -1.

Primary for Aurora PostgreSQL

Bytes

TruncateFinishedPoint

Transaction identifier up to which undo truncation is performed.

Aurora MySQL version 2, versions 2.11 and higher Count

UpdateLatency

The average amount of time taken for update operations.

Aurora MySQL

Milliseconds

UpdateThroughput

The average number of updates per second.

Aurora MySQL

Count per second

WriteIOPS

The number of Aurora storage write records generated per second. This is more or less the number of log records generated by the database. These do not correspond to 8K page writes, and do not correspond to network packets sent.

Aurora MySQL and Aurora PostgreSQL

Count per second

WriteIOPSEphemeralStorage

The average number of disk write I/O operations to Ephemeral NVMe storage.

Aurora PostgreSQL

Count per second

WriteLatency

The average amount of time taken per disk I/O operation.

Aurora MySQL and Aurora PostgreSQL

Seconds

WriteLatencyEphemeralStorage

The average amount of time taken per disk write I/O operation for Ephemeral NVMe storage.

Aurora PostgreSQL

Milliseconds

WriteThroughput

The average number of bytes written to persistent storage every second.

Aurora MySQL and Aurora PostgreSQL

Bytes per second

WriteThroughputEphemeralStorage

The average number of bytes written to disk per second for Ephemeral NVMe storage.

Aurora PostgreSQL

Bytes per second

Amazon CloudWatch usage metrics for Amazon Aurora

The AWS/Usage namespace in Amazon CloudWatch includes account-level usage metrics for your Amazon RDS service quotas. CloudWatch collects usage metrics automatically for all Amazon Web Services Regions.

For more information, see CloudWatch usage metrics in the Amazon CloudWatch User Guide. For more information about quotas, see Quotas and constraints for Amazon Aurora and Requesting a quota increase in the Service Quotas User Guide.

Metric Description Units*
DBClusterParameterGroups

The number of DB cluster parameter groups in your Amazon Web Services account. The count excludes default parameter groups.

Count

DBClusters

The number of Amazon Aurora DB clusters in your Amazon Web Services account.

Count

DBInstances

The number of DB instances in your Amazon Web Services account.

Count

DBParameterGroups

The number of DB parameter groups in your Amazon Web Services account. The count excludes the default DB parameter groups.

Count

DBSubnetGroups

The number of DB subnet groups in your Amazon Web Services account. The count excludes the default subnet group.

Count

ManualClusterSnapshots

The number of manually created DB cluster snapshots in your Amazon Web Services account. The count excludes invalid snapshots.

Count

OptionGroups

The number of option groups in your Amazon Web Services account. The count excludes the default option groups.

Count

ReservedDBInstances

The number of reserved DB instances in your Amazon Web Services account. The count excludes retired or declined instances.

Count

Note

Amazon RDS doesn't publish units for usage metrics to CloudWatch. The units only appear in the documentation.