You are here
AWS DynamoDB Monitoring
Amazon DynamoDB is a fast and flexible NoSQL database service for all applications that need consistent, single-digit millisecond latency at any scale. It is a fully managed cloud database and supports both document and key-value store models. Its flexible data model and reliable performance make it a great fit for mobile, web, gaming, ad tech, IoT, and many other applications. This is just part of Opsview Monitor's AWS Monitoring capabilities.
What Can You Monitor
Opsview Monitor's AWS DynamoDB monitoring provides the most up-to-date metrics for your database needs. DynamoDB is built for high performance with seamless scalability and lets our Opspack track all the important metrics to keep your database up and running. The DynamDB Opspack can be used with many different AWS Opspacks to paint a larger picture of your AWS environment. AWS Service Statuses help you track the availability of your DynamoDB instances in various regions.
Note: This Opspack knows when it was last run, so when testing the results in the troubleshoot section, you will need to wait a couple minutes each time you recheck the results. The time frame that is searched for is based around the last time the Opspack ran, so running it too quickly will result in no data being found and the service check going into an unknown
Service Checks
Service Check | Description |
---|---|
AWS/DynamoDB.ConditionalCheckFailedRequests | The number of failed attempts to perform conditional writes. |
AWS/DynamoDB.ConsumedReadCapacityUnits | The number of read capacity units consumed over a specified time period. |
AWS/DynamoDB.ConsumedWriteCapacityUnits | The number of write capacity units consumed over a specified time period. |
AWS/DynamoDB.OnlineIndexConsumedWriteCapacity | The number of write capacity units consumed when adding a new global secondary index to a table. |
AWS/DynamoDB.OnlineIndexPercentageProgress | The percentage of completion when a new global secondary index is being added to a table. |
AWS/DynamoDB.OnlineIndexThrottleEvents | The number of write throttle events that occur when adding a new global secondary index to a table. |
AWS/DynamoDB.ProvisionedReadCapacityUnits | The number of provisioned read capacity units for a table or a global secondary index. |
AWS/DynamoDB.ProvisionedWriteCapacityUnits | The number of provisioned write capacity units for a table or a global secondary index. |
AWS/DynamoDB.ReadThrottleEvents | Requests to DynamoDB that exceed the provisioned read capacity units for a table or a global secondary index. |
AWS/DynamoDB.ReturnedBytes | The number of bytes returned by GetRecords operations (Amazon DynamoDB Streams) during the specified time period. |
AWS/DynamoDB.ReturnedItemCount | The number of items returned by Query or Scan operations during a specified time period. |
AWS/DynamoDB.ReturnedRecordsCount | The number of stream records returned by GetRecords operations (Amazon DynamoDB Streams) during the specified time period. |
AWS/DynamoDB.SuccessfulRequestLatency | Successful requests to DynamoDB or Amazon DynamoDB Streams during the specified time period. |
AWS/DynamoDB.SystemErrors | Requests to DynamoDB or Amazon DynamoDB Streams that generate an HTTP 500 status code during the specified time period. |
AWS/DynamoDB.ThrottledRequests | Requests to DynamoDB that exceed the provisioned throughput limits on a resource (such as a table or an index). |
AWS/DynamoDB.UserErrors | Requests to DynamoDB or Amazon DynamoDB Streams that generate an HTTP 400 status code during the specified time period. |
AWS/DynamoDB.WriteThrottleEvents | Requests to DynamoDB that exceed the provisioned write capacity units for a table or a global secondary index. |
AWS DynamoDB Monitoring Prerequisites
To be able to monitor AWS CloudWatch services, you need to add your AWS credentials to your Opsview Monitor server.
Create a temporary aws_credentials.cfg
file with the following contents:
[default]
aws_access_key_id = "Your Access Key Id"
aws_secret_access_key = "Your Secret Key Id"
Then run the following command as the opsview
user to import this file:
/opt/opsview/orchestrator/bin/orchestratorimportscripts etc-plugins cloud-aws /path/to/aws_credentials.cfg
After an Apply Changes has been run, this will be distributed to the live location on all Opsview collectors.
The default live location for this file is /opt/opsview/monitoringscripts/etc/plugins/cloud-aws/aws_credentials.cfg
. If you are not using the default location, you will need to assign your full path to the variable: AWS_CLOUDWATCH_AUTHENTICATION
.
AWS DynamoDB Monitoring Setup and Configuration
To configure and utilize this Opspack, you need to add the 'Cloud - AWS - DynamoDB CloudWatch' Opspack to your Opsview Monitor system
Step 1: Add the Host Template
Add the Cloud - AWS - DynamoDB CloudWatch Host Template to your Opsview Monitor host. Add the Primary Hostname/IP. This can be the Public DNS (IPV4) or IPV4 Public IP from the Description tab of an EC2 instance in the EC2 Console in AWS.
For more information, refer to Opsview Knowledge Center - Adding Host Templates to Hosts.
Step 2: Add and configure variables required for this host
Variable | Description |
---|---|
AWS_CLOUDWATCH_AUTHENTICATION | Authentication details for CloudWatch. The Value is not used and therefore can be set to anything. Either override the File Path with the location of your credentials file, or override the Access Key and Secret Key arguments (this approach is recommended as the values will be encrypted). Optionally, override the Region (default: eu-west-1) with the location of your instance if you are not using the default region. |
AWS_CLOUDWATCH_ROLE_ARN | This optional variable is the Amazon Resource Name (ARN) of the role to be used for the service checks. Override the Access ARN with the ARN of the role. The account should have AssumeRole(STS) for this ARN. |
AWS_DYNAMODB_TABLE_NAME | The name of the database you want to monitor in AWS. |
For more information, refer to Opsview Knowledge Center - Adding Variables to Hosts.