Monitoring Jump Start: RDS database instance

Michael Wittig – 15 Jan 2018

The database is a critical component of each system that needs monitoring. Amazon RDS provides PostgreSQL, MySQL, MariaDB, Oracle, and Microsoft SQL Server as a Service. Monitoring an RDS database instance touches multiple parts of AWS. We created a CloudFormation template that you can use to monitor any RDS database instance in a minute.

What do I have to monitor?

Each database instance sends metrics to CloudWatch that we can observe with CloudWatch Alarms. We recommend to create alarms for the following metrics:

  • Storage
    • BurstBalance
    • DiskQueueDepth
    • FreeStorageSpace
  • CPU
    • CPUUtilization
    • CPUCreditBalance
  • Memory
    • FreeableMemory
    • SwapUsage

If a metric crosses the alarm’s threshold, you receive an alert in Slack.

Besides metrics, RDS sends out events if the state of the database instance has changed. E.g., because of a Multi-AZ failover.

We recommend to subscribe to events of the following categories:

  • failover
  • failure
  • low storage
  • maintenance
  • notification
  • recovery

For each new event, you receive an alert in Slack.

Set up instructions

  1. Create the CloudFormation stack with a single click
    1. Ensure that you selected the AWS region of your database instance monitoring target
    2. Set the EndpointId parameter to the ID of your endpoint. You can get this value by asking @marbot for it on your Slack channel.
    3. Set the DBInstanceIdentifier parameter to the ID of your RDS database instance.
    4. Review the threshold parameters
    5. Save by clicking the Create button.
      Monitoring Jump Start: RDS database instance
Michael Wittig

Michael Wittig

I’m the author of Amazon Web Services in Action. I work as a software engineer, and independent consultant focused on AWS and DevOps.

You can contact me via Email, Twitter, and LinkedIn.

Briefcase icon
Hire me
marbot teaser

Incident Management for Slack

Team up to solve incidents with marbot. Never miss a critical alert. Escalate alerts from your AWS infrastructure among your team members. Strong integrations with all parts of your AWS infrastructure: CloudWatch, Elastic Beanstalk, RDS, EC2, ...

Slack icon
Add to Slack