Skip to content

Aurora

One of the supported backing services is Aurora in its serverless v1 edition. It can be created by adding the following lines to your box.yaml:

backing_services:
  aurora: { }

Viewing

You can view monitoring metrics in the AWS console. There are several places where you can find them. The most important are:

RDS monitoring view

You can view some monitoring metrics in the AWS RDS console. To show them you have to open the Monitoring view:

  • Find and select the RDS console:

    Find AWS RDS service

  • Open the Databases menu item:

    Select AWS RDS "Databases"

  • Select your Aurora cluster. The naming convention is APP_NAME-ENVIRONMENT-BACKING_SERVICE_KEY-HASH, all the . and / characters are replaced with - (e.g. devopsbox-io-example-backend-app-dev-aurora-9c280b93d803d69b7ed):

    Select AWS Aurora cluster

  • Metrics are available in the Monitoring tab:

    Aurora cluster metrics

CloudWatch

To access Aurora metrics in the CloudWatch console, first you have to obtain the Aurora cluster identifier (check " Select your Aurora cluster" in RDS monitoring view). An example of a cluster identifier is devopsbox-io-example-backend-app-dev-aurora-9c280b93d803d69b7ed.

Monitoring metrics can be accessed in the AWS CloudWatch console. To show them you have to open the All metrics view:

  • Find and select the CloudWatch console:

    Find AWS CloudWatch service

  • Select the All metrics view:

    Select AWS CloudWatch "All metrics"

Then you can show all metrics related to your Aurora cluster by entering DbClusterIdentifier="YOUR_CLUSTER_IDENTIFIER" ( e.g. DbClusterIdentifier="devopsbox-io-example-backend-app-dev-aurora-9c280b93d803d69b7ed"):

Select AWS CloudWatch "All metrics" Aurora cluster

or DBClusterIdentifier="YOUR_CLUSTER_IDENTIFIER" ( e.g. DBClusterIdentifier="devopsbox-io-example-backend-app-dev-aurora-9c280b93d803d69b7ed"):

Select AWS CloudWatch "All metrics" Aurora cluster 2

Notifications

There are multiple CloudWatch alarms created for your Aurora cluster, all of them are sending notifications to an SNS topic. There is a single SNS topic created for each ECS cluster, where your application has been deployed, for example box-nonprod-monitoring-notification and box-prod-monitoring-notification.

You can subscribe to an SNS topic - there are multiple options, one of them is Slack via AWS Chatbot.

Alarms

Following alarms are created for each Aurora cluster:

  • APP_NAME.ENVIRONMENT.BACKING_SERVICE_KEY.Deadlocks ( e.g. devopsbox-io/example-backend-app.staging.aurora.Deadlocks) - sends a notification when there was at least one deadlock over the last 5 minutes.
  • APP_NAME.ENVIRONMENT.BACKING_SERVICE_KEY.MaximumServerlessDatabaseCapacity ( e.g. devopsbox-io/example-backend-app.staging.aurora.MaximumServerlessDatabaseCapacity) - sends a notification when the cluster reached the maximum serverless database capacity.
  • APP_NAME.ENVIRONMENT.BACKING_SERVICE_KEY.LoginFailures ( e.g. devopsbox-io/example-backend-app.staging.aurora.LoginFailures) - sends a notification when there were any login failures.