AWS DynamoDB monitoring integration

Access to this feature depends on your subscription level. Requires Infrastructure Pro.

New Relic Infrastructure integrations include an integration for reporting AWS DynamoDB data to New Relic products. This document explains how to activate this integration and describes the data that can be reported.

Features

Amazon DynamoDB is a fully managed NoSQL cloud database that supports both document and key-value store models. With the New Relic DynamoDB Integration, you can quickly understand how request latency or errors are affecting your environment. You'll receive metrics about how the database is performing, as well as inventory data like configuration settings, service status, and host metadata.

Activate integration

To enable this integration:

  1. Make sure you have installed the Infrastructure agent before you activate AWS integrations from your Infrastructure account.
  2. Follow standard procedures to Connect AWS services to Infrastructure.

Configuration and polling

You can change the polling frequency and filter data using configuration options.

Default polling information for the AWS DynamoDB integration:

  • New Relic polling interval: 5 minutes
  • Amazon CloudWatch data interval: 1 minute or 5 minutes, depending on statistic

Find and use data

To find your integration data in Infrastructure, go to infrastructure.newrelic.com > Integrations > Amazon Web Services and select one of the AWS DynamodDB integration links.

In New Relic Insights, data is attached to the DatastoreSample event type, with a provider value of DynamoDbTable for DynamoDB tables, DynamoDbRegion for regions, or DynamoDbGlobalSecondaryIndex for DynamoDB global secondary indexes.

For more on how to find and use integration data, see Understand integration data.

Metric data

The New Relic Infrastructure AWS DynamoDB integration collects the following metric data:

DynamoDbTable

Metric Description
batchGetSuccessfulRequestLatency Elapsed time for successful BatchGetItem operation requests, in milliseconds.
batchGetThrottledRequests BatchGetItem operation requests that exceed the provisioned throughput limits on a table.
batchWriteSuccessfulRequestLatency Elapsed time for successful BatchWriteItem operation requests, in milliseconds.
batchWriteThrottledRequests BatchWriteItem operation requests that exceed the provisioned throughput limits on a table.
conditionalCheckFailedRequests The number of failed attempts to perform conditional writes.
consumedReadCapacityUnits The number of read capacity units consumed over the specified time period, to track how much of provisioned throughput is used.
consumedWriteCapacityUnits The number of write capacity units consumed over the specified time period, to track how much of provisioned throughput is used.
deleteSuccessfulRequestLatency Elapsed time for successful Delete operation requests, in milliseconds.
deleteThrottledRequests Delete operation requests that exceed the provisioned throughput limits on a table.
getSuccessfulRequestLatency Elapsed time for successful Get operation requests, in milliseconds.
getThrottledRequests Get operation requests that exceed the provisioned throughput limits on a table.
pendingReplicationCount The number of item updates that are written to one replica table, but that have not yet been written to another replica in the global table.
provisionedReadCapacityUnits The number of provisioned read capacity units for a table.
provisionedWriteCapacityUnits The number of provisioned write capacity units for a table.
putSuccessfulRequestLatency Elapsed time for successful Put operation requests, in milliseconds.
putThrottledRequests Put operation requests that exceed the provisioned throughput limits on a table.
queryReturnedItemCount The number of items returned by Query operations.
querySuccessfulRequestLatency Elapsed time for successful Query operation requests, in milliseconds.
queryThrottledRequests Query operation requests that exceed the provisioned throughput limits on a table.
readThrottleEvents Requests to DynamoDB that exceed the provisioned read capacity units for a table.
replicationLatency The elapsed time between an updated item appearing in the DynamoDB stream for one replica table, and that item appearing in another replica in the global table, in milliseconds.
scanReturnedItemCount

The number of items returned by Scan operations.

scanSuccessfulRequestLatency Elapsed time for successful Scan operation requests, in milliseconds.
scanThrottledRequests Scan operation requests that exceed the provisioned throughput limits on a table.
batchGetSystemErrors BatchGetItem operation requests that generate an HTTP 500 status code.
batchWriteSystemErrors BatchWriteItem operation requests that generate an HTTP 500 status code.
deleteSystemErrors DeleteItem operation requests that generate an HTTP 500 status code.
getSystemErrors GetItem operation requests that generate an HTTP 500 status code.
putSystemErrors PutItem operation requests that generate an HTTP 500 status code.
querySystemErrors Query operation requests that generate an HTTP 500 status code.
scanSystemErrors Scan operation requests that generate an HTTP 500 status code.
updateSystemErrors UpdateItem operation requests that generate an HTTP 500 status code.
updateSuccessfulRequestLatency Elapsed time for successful Update operation requests, in milliseconds.
updateThrottledRequests Update operation requests that exceed the provisioned throughput limits on a table.
userErrors Requests that generate an HTTP 400 status code.
writeThrottleEvents

Requests to DynamoDB that exceed the provisioned write capacity units for a table.

DynamoDbRegion

This sample limits the data to a particular AWS region. It is used with metrics originating from replica tables within a DynamoDB global table.

Metric Description
systemErrors

Requests that generate an HTTP 500 status code.

userErrors Requests that generate an HTTP 400 status code

DynamoDbGlobalSecondaryIndex

Metric Description
consumedReadCapacityUnits The number of read capacity units consumed over the specified time period, to track how much of provisioned throughput is used.
consumedWriteCapacityUnits The number of write capacity units consumed over the specified time period, to track how much of provisioned throughput is used.
onlineIndexConsumedWriteCapacity The number of write capacity units consumed when adding a new global secondary index to a table.
onlineIndexPercentageProgress The percentage of completion when a new global secondary index is being added to a table.
onlineIndexThrottleEvents The number of write throttle events that occur when adding a new global secondary index to a table.
provisionedReadCapacityUnits The number of provisioned read capacity units for a global secondary index.
provisionedWriteCapacityUnits The number of provisioned write capacity units for a table.
readThrottleEvents Requests to DynamoDB that exceed the provisioned read capacity units for a table.
writeThrottleEvents

Requests to DynamoDB that exceed the provisioned write capacity units for a table.

Inventory data

Inventory data provides information about a service's state and configuration, and available host information. For more about inventory data, see Understand and use data.

/limits

Name Description
accountMaxReadCapacity The maximum total read capacity units that your account allows you to provision across all of your tables in this region.
accountMaxWriteCapacity The maximum total write capacity units that your account allows you to provision across all of your tables in this region.
awsRegion The AWS region that the table was provisioned in.
tableMaxReadCapacity The maximum read capacity units allowed by your account to provision a new table created in this region, including the read capacity units provisioned for its Global Secondary Indexes (GSIs).
tableMaxWriteCapacity The maximum write capacity units allowed by your account to provision a new table created in this region, including the write capacity units provisioned for its Global Secondary Indexes (GSIs).

/table

Name Description
awsRegion The AWS region that the table was provisioned in.
tableStatus

The state of the table:

  • creating: The table is being created.
  • updating: The table is being updated.
  • deleting: The table is being deleted.
  • active: The table is ready for use.

/table/provisionedThroughput

Name Description
numberOfDecreasesToday The number of provisioned throughput decreases for this table during this UTC calendar day. For current maximums on provisioned throughput decreases, see Limits in DynamoDB.
readCapacityUnits The maximum number of strongly consistent reads consumed per second before DynamoDB returns a ThrottlingException. Eventually, consistent reads require less effort than strongly consistent reads, so a setting of 50 ReadCapacityUnits per second provides 100 eventually consistent ReadCapacityUnits per second.
writeCapacityUnits The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException.

For more help

Recommendations for learning more: