UNPKG

artillery-plugin-dynamodb

Version:

A plugin for artillery.io that publishes stats to DynamoDB. See https://github.com/shoreditch-ops/artillery. Also see http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html

52 lines (39 loc) 1.57 kB
# artillery-plugin-dynamodb A plugin for artillery.io that publishes stats to DynamoDB. Based on [artillery-plugin-cloudwatch](https://github.com/Nordstrom/artillery-plugin-cloudwatch) To use: 1. `npm install -g artillery` 2. `npm install artillery-plugin-dynamodb` (add `-g` if you like) 3. Add `dynamodb` plugin config to your "`hello.json`" Artillery script ```json { "config": { "plugins": { "dynamodb": { "table": "[INSERT_TABLE_NAME]", "createTable": [true|false] } } } } ``` 4. `artillery run hello.json` This will cause every latency to be published to the given DynamoDB table. This plugin assumes that the `aws-sdk` has been pre-configured, before it is loaded, with credentials and any other setting that may be required to successfully `PutItem` to the DynamoDB table. This activity requires at least the rights given by the following IAM statement to the CloudWatch API in order to report latencies: ```json { "Effect": "Allow", "Action": [ "dynamodb:PutItem", "dynamodb:UpdateItem" ], "Resource": ["arn:aws:dynamodb:`region`:`account-id`:table/`table-name`"] } ``` If you want Artillery to automatically create the DynamoDB table, i.e. the `createTable` config is set to `true`, the 'dynamodb:CreateTable' action must be allowed on the same table resource. For more information, see: * https://github.com/shoreditch-ops/artillery * http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html Enjoy!