ssossanの日記スマートフォン用の表示で見るssossanの日記この広告は、90日以上更新していないブログに表示しています。2015-02-27fluentd+elasticsearch+kibanaの環境を構築してみた背景webサービスを運用してるんですが、ログをもっと有効活用しようぜ!って話になり、とりあえず手元でfluentd+elasticsearch+kibanaを使って環境を作ってみました。アプリが入ったサーバには極力負荷をかけたくないので、パース作業は別のサーバで行いました。そのへんでいい感じにまとまってる情報が見つからなかったので、備忘録を兼ねてメモ。fluentdを入れてログの送信だけやらせる。kibanaを入れてログのパース〜蓄積〜表示まで。実運用では変わるだろうけどまあ練習ということで。parserプラグインでもtypes使えました。(*1)</source>本来はformatに[apache2]とか任意の正規表現を書くんだけど、noneって書くとmessageっていう1つのキーにまとめてくれるんですって。これでアプリケーションサーバにそこまで負荷かけなくてすみますね。10s今回はファイルとして残しつつ、受信側のfluentdまでforward。portはデフォルトの24224をそのまま使いました。flush_intervalは見たまんまだけど、どれくらいの頻度で送信するか。どれくらいが適切かは分からんが、今回はローカルですぐ反応が欲しかったため10sで設定。http://www.elasticsearch.org/overview/elkdownloads/kibanaは、昔はnginxと連携しないといけなかったみたいだけど、現在のはkibana単体で動作するようになってました。fluent-plugin-parserでparserプラグインを導入。参考にせこせこ頑張りました。地道に手元で頑張るよりはるかに効率良く書けました。GitHubさんありがとうございます♡だがしかし、ここで問題が!typesオプションねーじゃん!!!tailプラグインにはあるのになんでや。GitHub動きはあるみたい。junて、、って思ったけどまあそのうち導入されるでしょう。いうことで、型変換のプラグインを別で使うことにしました。casted</match>こんな感じ。前述したけど、数値型じゃないと最小、最大、平均など計算できないから、kibanaでpathごとのレスポンスタイムの平均見たいっす、ってのができない。fluent-plugin-elasticsearchでelasticsearchプラグインを導入。libcurl3-devしたらうまくいきました。</store></match>elasticsearchは同じサーバの9200で起動させてたので、こんな感じで設定。あとはkibanaのdirで./bin/kibana叩いて起動して、5601ポートにアクセス!書いてて思ったけど、elasticsearchとkibanaの連携何やったか全然覚えてません。response-time、x-axisにpathを設定すれば、めでたくpathごとのレスポンスタイムが表示されましたとさ。Eclipseはじめました月別アーカイブはてなブログをはじめよう!ssossanさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。