fluentdを使って、大量のログをelasticsearchに突っ込む時、
fluent-plugin-elasticsearchがリトライすると、同じ内容のログが重複する事があった。
elasticsearchが、ユニークなID(_id)をを自動生成するので仕方がないっぽいけど、
fluent-plugin-elasticsearch の id_key オプションを使えば重複せずに行けそう。
なので、ログの内容からハッシュ値(*1)を生成するpluginが欲しくて、fluent-plugin-genhashvalue を作ってみました。
(探せばありそうだけど、見つからなかったので)
*1: md5 / sha1 / sha256 / sha512
RubyGems: https://rubygems.org/gems/fluent-plugin-genhashvalue
GitHub: https://github.com/mtakemi/fluent-plugin-genhashvalue