Fluentdを用いたサービスの障害検知・電話等での通知を自動化する、夢のプロダクト構想。その名は「fluent-plugin-guardian」である。
Fluentdを用いたサーバ・サービスの死活監視・通知の自動化を行う、夢のプロダクト構想があります。
しばらくは設計の検討を進め、6月頃から開発、2013年の秋頃に安定版のリリースを目指したい。
これを実現すべく、「こうあるべきだ論」「こんな事が実現できたら素敵」等々、ご意見を募集しております。
2013年10月追記:
時間の工面が出来ておらず、開発準備中のままとなっております。申し訳ありません。
概要
fluent-plugin-guardian
は、以下のような連携を行うプラグインです。
閾値の設定や通知方法に関しては永続型のインメモリDB「Redis」に保存します。
この設定の編集には、別途用意するコマンドラインツールを利用します。
1. fluentd : 各種ログを収集する基盤として利用
- アプリログ
- アクセスログ
- エラーログ
- muninなどのメトリクス収集 など
2. fluent-plugin-guardian : 監視・通知を行う
- 閾値のチェック (warn/crit)
- 異常値検出
- 通知
第1優先のプラグインにメッセージを送り、
指定分数経過後も状況が変わらなければ第2優先のプラグインに通知をする設定も可能。
既存のプラグインを組み合わせて行う場合、秒間処理可能メッセージ数的な懸念がありますが、
1つのプラグインの中で処理効率化を図ることで、それを解決していきます。
3. 通知
fluentd pluginの素晴らしいエコシステムに頼ります。
欲しい機能が無ければ、自分で容易に拡張できますね。
- fluent-plugin-twilio : twilioを用いて合成音声による電話を掛ける
- fluent-plugin-jabber : XMPP(Jabber)プロトコルを用いたチャットツールへの通知を行う
- fluent-plugin-hipchat : HipChat への通知
- fluent-plugin-mail : メールを送る
- fluent-plugin-growl : Growlを用いたデスクトップ通知を行う
- fluent-plugin-twitter : ダウンしていますごめんなさいてへぺろ的なツイートをする
等々...
詳細
さらに掘り下げた構想については、プラグインのリポジトリに書き連ねています。
https://github.com/y-ken/fluent-plugin-guardian
名前の由来
「守り神」「守護神」という意味合いである言葉、「guardian」に由来します。
発音としては、gɑ́ːrdiən
(ガーデアン、ガーディアン)と言うらしいです。
最後に
こんな悩みがあり、こうあると助かる!的な皆さんの現場の声が必要です。
はてブコメントやTwitterなどで是非お知らせ頂ければ、可能な限り取り込みたいと思います。
(GitHubは英語ですが、ご連絡の際は日本語で構いません)
どうか、よろしくお願いします!!