fluent-logger-ruby が堅牢だった件
[2016-06-13-1] にも書いたとおり、こちらの PR で fluent-logger-ruby を導入しました。 fluentd にも POST する by masutaka · Pull Request #40 · masutaka/masutaka-metrics その時に、こんな問題に気づきました。 loading... 結論から言うと、Wrapper を作る必要はありません(一度作ってしまった けど… )。fluent-logger-ruby がいい感じに処理してくれます。 fluent-logger-ruby の基本的な使い方は、プログラム開始時に #new し てインスタンスを保持し、あとは必要な時に #post を呼ぶだけです。 class Masutaka def initialize @fluent_logger = ::Fluent::Logger::FluentLogger.new end def hoge metrics = { 'field1' => 'hogehoge' } @fluent_logger.post('masutaka.metrics', metrics) end end プログラム稼働中に fluentd が restart または reload すると、 fluentd との接続は切れてしまいます。#post も false を返し送信して くれません。でも、あまり気にする必要はありません。 なぜ気にする必要がないか、パターンをまとめました。登場するメソッド は全て Fluent::Logger::FluentLogger class にあります。...