Amazon SNS output plugin for Fluent¶ ↑
Install¶ ↑
$ gem install fluent-plugin-sns
Component¶ ↑
SNSOutput¶ ↑
Send fluent-event as message to amazon SNS.
Configuratin¶ ↑
SNSOutput¶ ↑
<match sns.**> type sns # following attibutes are required sns_topic_name {sns_topic_name} # following attibutes are required if you don't use IAM Role nor export credentials to ENV aws_key_id {your_aws_key_id} aws_sec_key {your_aws_secret_key} # following attibutes are optional # AWS region (defaults to 'ap-northeast-1'), for a list of all available # regions see: http://docs.aws.amazon.com/general/latest/gr/rande.html#sns_region sns_region {region} 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} # SNS Message attributes: # http://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html # Note that currently only string values are supported. sns_message_attributes {attribute: string_value} sns_message_attributes_keys {attribute: key_in_record_with_string_value} proxy http(s)://{url}:{port} </match>
Example¶ ↑
fluentd.conf¶ ↑
<match sns.**> 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 </match>
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 © 2011- Yuri Odagiri
- License
-
Apache License, Version 2.0