Monitoring AWS RDS

The AWS RDS sensor is automatically deployed and installed after you install the Instana agent.

Learn about the other supported AWS services with our AWS documentation.

Sensor (Data Collection)

Tracked Configuration

RDS Instance Details Description
ARN The unqualified Amazon Resource Name (ARN) assigned to the instance.
Endpoint The endpoint of the instance.
Port The port of the instance.
Master User The master user of the instance.
Availability Zone The location of the instance.
Engine The instance engine.
Cluster The instance of cluster.

Metrics

RDS Instance metrics Description
CPUUtilization The percentage of CPU utilization.
CPUCreditUsage The number of CPU credits spent by the instance for CPU utilization.
CPUCreditBalance The number of earned CPU credits that an instance has accrued since it was launched or started.
BurstBalance The percent of General Purpose SSD (gp2) burst-bucket I/O credits available.
DatabaseConnections The number of database connections in use.
DiskQueueDepth The number of outstanding IOs (read/write requests) waiting to access the disk.
FreeableMemory The amount of available random access memory.
FreeStorageSpace The amount of available storage space.
ReplicaLag The amount of time a Read Replica DB instance lags behind the source DB instance.
SwapUsage The amount of swap space used on the DB instance.
ReadIOPS The average number of disk read I/O operations per second.
WriteIOPS The average number of disk write I/O operations per second.
ReadLatency The average amount of time taken per disk I/O operation.
WriteLatency The average amount of time taken per disk I/O operation.
ReadThroughput The average number of bytes read from disk per second.
WriteThroughput The average number of bytes written to disk per second.
EBSIOBalance% The percentage of I/O credits remaining in the burst bucket of your RDS database.
NetworkReceiveThroughput The incoming network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication.
NetworkTransmitThroughput The outgoing network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication.
VolumeBytesUsed (Aurora) The amount of storage used by your Aurora DB instance.

Required Permissions

  • cloudwatch:GetMetricStatistics
  • cloudwatch:GetMetricData
  • rds:DescribeDBInstances
  • rds:DescribeEvents
  • rds:ListTagsForResource

Configuration

Metrics for RDS are pulled every 60 seconds, this can be changed via agent configuration in <agent_install_dir>/etc/instana/configuration.yml:

com.instana.plugin.aws.rds:
  cloudwatch_period: 300

To disable monitoring of RDS instances use the following configuration:

com.instana.plugin.aws.rds:
  enabled: false

To enable batch discovery of RDS instances use the following configuration:

com.instana.plugin.aws.rds:
  enable_batch_discovery: true # default false

Proxy configuration

To configure the specific AWS Sensor to use proxy configuration, add the following agent configuration settings:

com.instana.plugin.aws.rds:
  proxy_host: 'example.com' # proxy host name or ip address
  proxy_port: 3128 # proxy port
  proxy_protocol: 'HTTP' # proxy protocol: HTTP or HTTPS
  proxy_username: 'username' # OPTIONAL: proxy username
  proxy_password: 'password' # OPTIONAL: proxy password

Monitoring multiple AWS accounts

Refer to the Monitoring multiple AWS accounts documentation to set up monitoring of multiple AWS accounts with one AWS agent in the same region.

AWS named profiles approach

To override which profiles should be used to monitor RDS, use the following configuration:

com.instana.plugin.aws.rds:
  profile_names:
    - 'profile2'
    - 'profile3'

Defining profiles on service level will override the global AWS profiles configuration.

AWS STS approach

To override which IAM Roles should be used to monitor RDS, use the following configuration:

com.instana.plugin.aws.rds:
  role_arns:
    - 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
    - 'arn:aws:iam::<account_2_id>:role/<role_2_name>'

Defining IAM roles on service level will override the global AWS IAM roles configuration.

Filtering

Multiple tags can be defined, separated by a comma. Tags should be provided as a key-value pair separated by :. In order to make configuration easier, it is possible to define which tags you want to include in discovery or exclude from discovery. In case of defining tag in both lists (include and exclude), exclude list has higher priority. If there is no need for services filtering, the configuration should not be defined. It’s not mandatory to define all values in order to enable filtering.

Users are able to specify how often sensors will poll the AWS tagged resources using the tagged-services-poll-rate configuration property (default 300 seconds).

Tags are only available in conjunction with the AWS Agent.

To define how often sensors will poll the tagged resources use following configuration:

com.instana.plugin.aws:
  tagged-services-poll-rate: 60 #default 300

To enable batch discovery in order to reduce throttling of rds instances, use following configuration:

com.instana.plugin.aws:
  enable_batch_discovery: true #default false

To include services by tags into discovery use following configuration:

com.instana.plugin.aws.rds:
  include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)

To exclude services by tags from discovery use following configuration:

com.instana.plugin.aws.rds:
  exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)

AWS services without tags will be monitored by default but can be excluded by setting the include_untagged field to false:

com.instana.plugin.aws.rds:
  include_untagged: false # True value by default

Instana Agent Tags

Note that tags are only available in conjunction with the AWS Agent. More details on using tags are described here.