Skip to content

AWS Integration - RDS

Mackerel supports obtaining and monitoring Amazon Relational Database Service (RDS) metrics in AWS Integration. When integrating with AWS Integration, billable targets are determined using the following conversions.

  • For Aurora Serverless v1: 1 Cluster = 1 Micro Host
  • For others: 1 Instance = 1 Micro Host

In addition to this, depending on the number of metrics retrieved, you may be charged for exceeding the maximum number of metrics per micro host.

Please refer to the following page for AWS Integration configuration methods and a list of supported AWS services.
AWS Integration

Obtaining metrics

The metrics obtainable with AWS Integration’s RDS support are as follows. For Metric explanations, refer to the AWS help pages (Aurora and otherwise).

For each DB engine, the maximum number of metrics shown in the table below is obtained.

DB engineThe maximum number of metrics obtainable
RDSPostgreSQL38
SQL Server34
MySQL33 + (number of replication sources)
Other than those above33
AuroraMySQL63
PostgreSQL59
Aurora Serverless v1MySQL57
PostgreSQL56

Common metrics

The following metrics can be obtained in common for RDS, Aurora, and Aurora Serverless v1.

Graph nameMetricMetric name in MackerelUnitStatistics
CPUCPUUtilizationrds.cpu.usedpercentageAverage
CPU CreditCPUCreditUsage
CPUCreditBalance
rds.cpu_credit.used
rds.cpu_credit.balance
floatAverage
Database ConnectionsDatabaseConnectionsrds.database_connections.usedfloatAverage
BinLog Disk UsageBinLogDiskUsagerds.disk_usage.bin_logbytesAverage
MemoryFreeableMemory
SwapUsage
rds.memory.free
rds.memory.swap
bytesAverage
Network ThroughputNetworkReceiveThroughput
NetworkTransmitThroughput
rds.network_throughput.receive
rds.network_throughput.transmit
bytes/secAverage
Disk IOPSReadIOPS
WriteIOPS
rds.diskiops.read
rds.diskiops.write
iopsAverage
gp2 Storage Burst BalanceBurstBalancerds.burst_balance.balancepercentageAverage
Maximum Used Transaction IDsMaximumUsedTransactionIDs *1rds.maximum_used_transaction_ids.countintegerAverage
Checkpoint LagCheckpointLagrds.checkpoint_lag.lagsecondsAverage
Connection AttemptsConnectionAttemptsrds.connection_attempts.countintegerAverage
CPU Surplus CreditsCPUSurplusCreditBalance
CPUSurplusCreditsCharged
rds.cpu_surplus_credits.balance
rds.cpu_surplus_credits.charged
floatAverage
EBS BalanceEBSByteBalance%
EBSIOBalance%
rds.ebs_balance.byte
rds.ebs_balance.io
percentageAverage
Log Volume Disk QueueDiskQueueDepthLogVolumerds.log_volume_disk_queue.depthintegerAverage
Log Volume Free Storage SpaceFreeStorageSpaceLogVolumerds.log_volume_disk.freebytesAverage
Log Volume IOPSReadIOPSLogVolume
WriteIOPSLogVolume
rds.log_volume_iops.read
rds.log_volume_iops.write
iopsAverage
Log Volume LatencyReadLatencyLogVolume
WriteLatencyLogVolume
rds.log_volume_latency.read
rds.log_volume_latency.write
secondsAverage
Log Volume ThroughputReadThroughputLogVolume
WriteThroughputLogVolume
rds.log_volume_throughput.read
rds.log_volume_throughput.write
bytes/secAverage
*1 Applies to PostgreSQL

RDS metrics

In the case of RDS, the following metrics can be obtained in addition to the above common metrics.

Enter the replication channel name in place of CHANNEL_NAME in the metric name.

Graph nameMetricMetric name in MackerelUnitStatistics
Disk QueueDiskQueueDepthrds.disk_queue.depthintegerAverage
Free Storage SpaceFreeStorageSpacerds.disk.freebytesAverage
Replica LagReplicaLagrds.replica_lag.lagfloatAverage
Disk LatencyReadLatency
WriteLatency
rds.latency.read
rds.latency.write
secondsAverage
Disk ThroughputReadThroughput
WriteThroughput
rds.throughput.read
rds.throughput.write
bytes/secAverage
Disk UsageReplicationSlotDiskUsage *2
TransactionLogsDiskUsage *2
rds.postgres_disk_usage.replication_slot
rds.postgres_disk_usage.transaction_logs
bytesAverage
Oldest Replication Slot LagOldestReplicationSlotLag *2rds.oldest_replication_slot_lag.slot_lagbytesAverage
Transaction Logs GenerationTransactionLogsGeneration *2rds.transaction_logs_generation.transaction_logbytes/secAverage
Failed SQL Server Agent JobsFailedSQLServerAgentJobsCount *3rds.failed_sql_server_agent_jobs.failedintegerAverage
Replication Channel LagReplicationChannelLag *4rds.replication_channel_lag.CHANNEL_NAMEsecondsAverage
*2 Applies to PostgreSQL
*3 Applies to Microsoft SQL Server
*4 Applies to MySQL

### Aurora metrics In the case of Aurora, the following metrics can be obtained in addition to the above common metrics.
Graph nameMetricMetric name in MackerelUnitStatistics
StorageFreeLocalStoragerds.aurora.storage.freebytesAverage
BinLog Replica LagAuroraBinlogReplicaLagrds.aurora.binlog_replica_lag.lagfloatAverage
Replica LagAuroraReplicaLag
AuroraReplicaLagMaximum
AuroraReplicaLagMinimum
rds.aurora.replica_lag.lag
rds.aurora.replica_lag.max_lag
rds.aurora.replica_lag.min_lag
floatAverage
Engine UptimeEngineUptimerds.aurora.engine_uptime.uptimefloatAverage
TransactionsActiveTransactions
BlockedTransactions
rds.aurora.transactions.active
rds.aurora.transactions.blocked
floatAverage
Cache Hit RatioBufferCacheHitRatio
ResultSetCacheHitRatio
rds.aurora.hit_ratio.buffer
rds.aurora.hit_ratio.result_set
percentageAverage
DML LatencyInsertLatency
UpdateLatency
DeleteLatency
DMLLatency
rds.aurora.dml_latency.insert
rds.aurora.dml_latency.update
rds.aurora.dml_latency.delete
rds.aurora.dml_latency.dml
floatAverage
DML throughputInsertThroughput
UpdateThroughput
DeleteThroughput
DMLThroughput
rds.aurora.dml_throughput.insert
rds.aurora.dml_throughput.update
rds.aurora.dml_throughput.delete
rds.aurora.dml_throughput.dml
floatAverage
Commit LatencyCommitLatencyrds.aurora.commit_latency.commitfloatAverage
Commit ThroughputCommitThroughputrds.aurora.commit_throughput.commitfloatAverage
Select LatencySelectLatencyrds.aurora.select_latency.selectfloatAverage
Select ThroughputSelectThroughputrds.aurora.select_throughput.selectfloatAverage
DDL LatencyDDLLatencyrds.aurora.ddl_latency.ddlfloatAverage
DDL ThroughputDDLThroughputrds.aurora.ddl_throughput.ddlfloatAverage
QueriesQueriesrds.aurora.queries.queriesfloatAverage
Login FailuresLoginFailuresrds.aurora.login_failures.failuresfloatAverage
DeadlocksDeadlocksrds.aurora.deadlocks.deadlocksfloatAverage
Backtrack Window DifferenceBacktrackWindowActual *5rds.aurora.backtrack_window_difference.minutesintegerAverage
Backtrack Window AlertBacktrackWindowAlert *5rds.aurora.backtrack_window_alert.alertintegerSum
Aurora Volume Bytes Left TotalAuroraVolumeBytesLeftTotal *5rds.aurora.aurora_volume_bytes_left_total.totalbytesAverage
Aborted ClientsAbortedClients *5rds.aurora.aborted_clients.abortedintegerSum
Row Lock TimeRowLockTime *5rds.aurora.row_lock_time.row_lockfloatAverage
Volume UsedVolumeBytesUsed *6rds.aurora.volume_used.bytesbytesAverage
*5 Applies to Aurora MySQL
*6 Generated per cluster. Instances of the same cluster will display the same metric.

Aurora Serverless v1 metrics

In the case of Aurora Serverless v1, the following metrics can be obtained in addition to the above Aurora metrics.

Graph nameMetricMetric name in MackerelUnitStatistics
Serverless Database CapacityServerlessDatabaseCapacityrds.aurora.serverless_database_capacity.capacityfloatAverage

Aurora Serverless v2 metrics

In the case of Aurora Serverless v2, the following metrics can be obtained in addition to the above Aurora metrics.

Graph nameMetricMetric name in MackerelUnitStatistics
Serverless Database CapacityServerlessDatabaseCapacityrds.aurora.serverless_database_capacity.capacityfloatAverage
ACU UtilizationACUUtilizationrds.aurora.acu_utilization.utilizationpercentageAverage
Temp Storage IOPSTempStorageIOPSrds.aurora.temp_storage_iops.iopsiopsAverage
Temp Storage ThroughputTempStorageThroughputrds.aurora.temp_storage_throughput.throughputbytes/secAverage

Precautions

Among the graphs/metrics obtainable with AWS Integration, metrics included in the following graphs are usually obtained in 5 minute intervals.

  • CPU Credit
  • CPU Surplus Credits
  • gp2 Storage Burst Balance
  • Volume Used

This is specified by the AWS CloudWatch API.