ElasticSearch勉強会#2 に参加してきました
11/12(火)にリクルートテクノロジーズで行われた「ElasticSearch勉強会#2」に参加してきました。
勉強会の詳細はこちら
http://elasticsearch.doorkeeper.jp/events/6532
アジェンダはこんな感じでした。
●本編●
- 株式会社シーマーク 大谷 純さん (@johtani)
- タイトル:「sharding周り(仮)」
- 株式会社富士通ソフトウェアテクノロジーズ 滝田聖己さん(@pisatoshi)
- タイトル:「ElasticSearchを使ったBaaS基盤の開発(仮)」
- クックパッド 水戸祐介さん(@y_310)
- タイトル:Kibana入門
●LT●
- 株式会社リブセンス Y.Kentaro さん (@yoshi_ken) さん
- タイトル:「データ集計用ダッシュボードブラウザとしても使えるElasticSearch+Kibana v3を利用する際の運用ノウハウ紹介」
- @repeatedly さん
- タイトル:「Fluentd as a Kibana」
- 株式会社エヌツーエスエム 菅谷信介さん (@shinsuke_sugaya)
- タイトル:「Authプラグインでアクセスコントロール」
という内容。
ElasticeSearchはJavaで作られた全文検索エンジンでApache Lucene上で稼働します。
RESTfulで、APIはすべてJSON形式でやりとりできるため扱いやすい印象があり社内のログ管理改善に流用できないかと思って参加しました。(現在、社内のログをとりまく環境はレガシーすぎて語れませんが、改善した後でご紹介できればと思います)
会社を脱出するのが遅れてしまい、到着したときには @pisatoshi さんの発表の終わりかけでしたので、@y_310さんの発表について書きたいと思います。
Kibana入門 水戸祐介さん(@y_310)
クックパッド本体ではなく別のサービスでログ可視化・解析にkibanaを使っています、kibana使えるのでご紹介します、というお話。kibana はElasticSearchの公式ツールとなったログの可視化、解析ツールで最近注目されているツール。
kibana http://www.elasticsearch.org/overview/kibana/
kibanaの良いところ
kibanaの使い方、Tips
- ダッシュボードはRow単位で構成されている
- RowにPanel(アイテム的なもの)を追加してカスタマイズする
- RowにPanelを追加してダッシュボードを作ったら必ずSave!!(saveしないとリロードで消えてしまうらしいです。。)
Panelにセットできるものには以下のような種類がある
クエリの書き方
- $column_name:"$search_word" 的な投げ方($column_name -> カラム名、$search_word -> 検索したいワード)
kibana tips
- 1つのindexに異なるschemaを入れられる(1indexにaccess_log, app_log とか)
- auto mappingは大概うまくいかない(これは他の方も言ってたので、そうなんでしょうね)
性能
感想
ちょっと端折っていますがこんな感じです。
「入門」だけあって、とてもわかりやすいスライドでこれから使用を検討しようと思っている自分にとっては有り難い情報がいくつも得られました。一休でもログ管理をmysqlにためつつ、elastic searchにもoutputしてkibanaのコンボで可視化・解析するというロードマップが見えた気がしました。年内にfluentdを使用してログをためる仕組みは構築できそうなので、水戸さんの後に発表をされてたリブセンスの@yoshi_kenさんが仰っていた
- エラーログ
- 応答速度
- n秒以上のスロークエリ
- HTTPステータスコード400, 500
- botのクロール状況
などを可視化できるようにロードマップに沿って進めていこうと思います。
水戸さんの発表スライドはこちら。
https://speakerdeck.com/y310/kibanaru-men