はじめに
##本記事の全体構成について
本記事は、ElasticsearchとKibanaを使った環境のセットアップから、データの投入、データの検索・解析までを紹介する目的で作成した。
記事の構成は下記の通り。
以前の記事を確認していない場合は先にそちらをご参照いただくことをおすすめする。
1回目:Elasticsearch+Kibanaでデータ解析(①環境セットアップ編)
2回目:Elasticsearch+Kibanaでデータ解析(②スキーマ作成&データ登録編)
3回目(本記事):Elasticsearch+Kibanaでデータ解析(③グラフ&ダッシュボード作成編)
##前回までの振り返りと今回の内容
前回までで、Elasticsearchに直接データを登録したり、検索したりする方法を紹介した。
ここでは、elasticsearchに登録したデータをKibanaでグラフ化する方法を紹介する。
#対象インデックスの指定
最初に、対象とするインデックスパターンを選択する。
index2014,index2015,index2016という様に年ごとでインデックスを作成している場合、index*と指定することで複数のインデックスをまとめて指定することもできる。
ここでは、前回(URL)作成したデータにインデックス名を合わせる為、my_indexと入力する。
インデックスを入力すると、対象のインデックスに含まれる日付フィールドの一覧がTime-Field name欄に表示されるので、created_dateを選択する。
#グラフの作成
##作成グラフの選択
画面上のVisalizeをクリックした後、作成したいグラフを選択する。
ここでは、"Vertical bar char"を選択する。
##横軸・縦軸を選択
Y-Axis、X-Axisそれぞれ下図を参考にしながら同じ値を選択する。
Applyをクリックすると、条件に合致するデータをグラフ化することができる。
##データのフィルタリング
画面上に表示されているデータフィルタリングフィールドに検索条件を指定する事で、データを絞ることができる。
書式は下記の通り。
検索したい値名:検索値
下記は検索例。
#文字列完全一致検索
"body": "一括更新テストデス。"
#部分一致検索
"body": "一括更新*"
#範囲検索
view_count: [10 TO 1000]
#範囲検索(上限なし)
view_count: [1000 TO *]
その他の例は下記を参考にすること
https://www.elastic.co/guide/en/beats/packetbeat/current/_kibana_queries_and_filters.html
##ドリルダウン
グラフ上の横軸をクリックして選択することで、データの表示範囲を絞ることができる。
#ダッシュボード作成
画面上のDashboardを選択し、作成したグラフを選択することにより、グラフを複数表示するダッシュボードの作成が可能。
#その他
その他、円グラフ、積み上げ棒グラフ、折れ線グラフ、エリアチャート等、地図上にデータをプロットする等、様々なグラフの作成できる。