This plugin makes use of the Telegraf Output Execd plugin. It will batch up input and push it to Amazon SQS.
The plugin also provides optional common configuration for writing to queues: - TODO: list these
It may be useful for users to review Amazons official documentation which is available here.
-
Download the latest release package for your platform.
-
Unpack the build to your system:
mkdir /var/lib/telegraf/sqs
chown telegraf:telegraf /var/lib/telegraf/sqs
tar xf telegraf-output-sqs-<LATEST_VERSION>-<OS>-<ARCH>.tar.gz -C /var/lib/telegraf/sqs
# e.g. tar xf telegraf-output-sqs-v1.0.0-linux-amd64.tar.gz -C /var/lib/telegraf/sqs
- Edit the plugin configuration as needed:
vi /var/lib/telegraf/sqs/plugin.conf
- Add the plugin to
/etc/telegraf/telegraf.conf
or into a new file in/etc/telegraf/telegraf.d
:
[[outputs.execd]]
command = [ "/var/lib/telegraf/sqs/telegraf-output-sqs", "-config", "/var/lib/telegraf/sqs/plugin.conf" ]
data_format = "influx"
- Restart or reload Telegraf.
This plugin uses a credential chain for Authentication with the Amazon Kinesis Data SQS API endpoint. The plugin will attempt to authenticate in the following order:
- web identity provider credentials via STS if
role_arn
andweb_identity_token_file
are specified, - assumed credentials via STS if the
role_arn
attribute is specified (source credentials are evaluated from subsequent rules), - explicit credentials from the
access_key
, andsecret_key
attributes, - shared profile from the
profile
attribute, - environment variables,
- shared credentials, and/or
- the EC2 instance profile.
If you are using credentials from a web identity provider, you can specify the
session name using role_session_name
.
If left empty, the current timestamp will be used.
The required AWS IAM Policy is:
TODO: provide refined alternative for "sqs:*"
{
"Statement": [
{
"Action": [
"sqs:*",
],
"Effect": "Allow",
"Resource": "arn:aws:sqs:us-east-1:123456789012:queue/my-queue",
"Sid": ""
},
],
"Version": "2012-10-17"
}
See the file plugin.conf
as an example configuration file.
The plugin was forked from the Amazon Kinesis Data Firehose Output Plugin.