= Amazon SNS output plugin for Fluent
== Install
$ gem install fluent-plugin-sns
== Component
=== SNSOutput
Send fluent-event as message to amazon SNS.
== Configuratin
=== SNSOutput
type sns
# following attibutes are required
sns_topic_name {sns_topic_name}
# following attibutes are required if you don't use IAM Role and you don't set environment variables
aws_key_id {your_aws_key_id} # Default: ENV['AWS_ACCESS_KEY_ID']
aws_sec_key {your_aws_secret_key} # Default: ENV['AWS_SECRET_ACCESS_KEY']
# following attibutes are optional
sns_endpoint {endpointURL}
### endpoint list ###
# Asia Pacific (Tokyo) [Default] : sns.ap-northeast-1.amazonaws.com
# Asia Pacific (Singapore) : sns.ap-southeast-1.amazonaws.com
# US-East (Virginia) : sns.us-east-1.amazonaws.com
# US-West (Oregon) : sns.us-west-2.amazonaws.com
# US-West (N.California) : sns.us-west-1.amazonaws.com
# EU-West (Ireland) : sns.eu-west-1.amazonaws.com
# South America (São Paulo) : sns.sa-east-1.amazonaws.com
sns_subject_template {template_erb_file_path}
sns_subject_key {sns_subject_key}
sns_subject {sns_subject} #constant subject
sns_body_template {sns_body_template}
sns_body_key {sns_body_key}
proxy http(s)://{url}:{port}
== Example
=== fluentd.conf
type sns
sns_topic_name example
sns_endpoint sns.ap-northeast-1.amazonaws.com
sns_subject_key from
sns_body_template /path/to/template/body_template.erb
=== template
/path/to/template/body_template.erb
hello <%= record['to'] %>!
=== sample input
$ echo '{"from":'Alice',"to":"Bob" }' | fluent-cat sns.example
Then, the message is published. (subject -> 'Alice', body -> 'hello Bob!')
== Copyright
Copyright:: Copyright (c) 2011- Yuri Odagiri
License:: Apache License, Version 2.0