An asynchronous DynamoDB client and mixin for Tornado applications
sprockets-dynamodb
is available on the Python package index and is installable via pip:
pip install sprockets-dynamodb
Documentation is available at sprockets-dynamodb.readthedocs.io.
The following table details the environment variable configuration options.
Variable | Definition | Default |
---|---|---|
DYNAMODB_ENDPOINT |
Override the default DynamoDB HTTP endpoint | |
DYNAMODB_MAX_CLIENTS |
Maximum number of concurrent DynamoDB clients/requests per process | 100 |
DYNAMODB_MAX_RETRIES |
Maximum number retries for transient errors | 3 |
DYANMODB_NO_CREDS_RATE_LIMIT |
If set to true , a sprockets_dynamodb.NoCredentialsException will return a 429 response when using sprockets_dynamodb.DynamoDBMixin |
The sprockets_dynamodb.DynamoDBMixin
class will automatically raise HTTPError
responses for different classes of errors coming from DynamoDB. In addition it will attempt to work with the Sprockets InfluxDB client to instrument all DynamoDB requests, submitting per request measurements to InfluxDB. It will attempt to automatically tag measurements with the application/service name if the SERVICE
environment variable is set. It will also tag the measurement if the ENVIRONMENT
environment variable is set with the environment that the application is running in. Finally, if you are using the Sprockets Correlation Mixin, measurements will automatically be tagged with the correlation ID for a request.
Available at https://sprockets-dynamodb.readthedocs.org/en/latest/history.html