LoginSignup
8
13

More than 1 year has passed since last update.

Kibanaの設定をまるっと別のElasticsearchに移したい(改訂版)

Last updated at Posted at 2016-03-04

※当記事は個人ブログに移行しました

以前こんな記事を書いたんですが、
そもそもKibana自身に設定をexport/importできる機能があることに気がついたので、
使ってみたいと思います。

検証環境

これで用意。

{
  "name" : "Zarek",
  "cluster_name" : "elasticsearch",
  "version" : {
    "number" : "2.1.0",
    "build_hash" : "72cd1f1a3eee09505e036106146dc1949dc5dc87",
    "build_timestamp" : "2015-11-18T22:40:03Z",
    "build_snapshot" : false,
    "lucene_version" : "5.3.1"
  },
  "tagline" : "You Know, for Search"
}

Kibana Version

手順

Visualizeを作成する

移行するものがないと始まらないのでとりあえずVisualizeを作成します。
ちなみにすでにとあるWebサイトのアクセスログをサンプルとして入れてあるので、
トップページの時系列アクセス数のグラフにしてみます。

  1. 上部メニューからVisualizeを選び、グラフの種類はVertical bar chartを選択します。
  2. 入力元を選びます。
    新しいVisualizeを作るのでFrom a new searchを選びます。
  3. Y軸(縦軸)の設定をします。Y-Axisの Aggregationcountにします。
    というかたぶん最初からそうなってると思います。
    この時点での見た目はこんな感じです。
    Kobito.CaCSV2.png
  4. Select buckets typeからX-Axisを選択します。
    これでX軸(横軸)が追加できるようになります。
  5. X-Axisの AggregationDate Histogramにします。
    Field@timestampInterval はお好みに合わせてください。
    今回はAutoにしておきます。
    いったんこの状態でグラフを描画してみましょう。
    右向きの三角形を押すとグラフが更新されます。
    この時点での見た目はこんな感じです。
    Kobito.4LNmdn.png
  6. 続いてトップページだけにフィルタリングを行います。
    Add sub-bucketsを押します。
    選択肢が出てきますがとりあえず今回はSplit Barsにしておきます。
    Sub Aggregation からFiltersを選びます。
    Filter 1 に絞り込みたい文字列を入力します。
    今回はrequestというFieldの値が"GET / HTTP/1.1"に絞り込んでみます。
    テキストボックスにrequest:"GET / HTTP/1.1"を入力します。
    フィルタの設定ができたのでグラフを更新しましょう。
    右向き三角系を押します。
    こんな感じのグラフになりました。
    Kobito.bwZGvU.png
  7. 作成したVisualizeを保存します。
    右上の方にあるフロッピーディスクっぽいボタンを押します1

Dashboardを作成する

せっかくなのでDashboardも作っちゃいます。

  1. 上部メニューからDashboardを選びます。
    初めてDashboardを作るのであれば*+*ボタンが画面中央あたりにあるので押します。
  2. 画面を作ります。
    先ほど作ったTopPageHistgramが選択できる状態になっているので選びます。
    画面に先ほどのグラフが小さく出てきたと思います。
    あとはグラフの右下をひっぱって好きな大きさにします。
    こんな感じになりました。
    Kobito.oaqexy.png
  3. 作成したDashboardを保存します。
    右上のフロッピーディスクっぽいボタンを押します。
    テキストボックスに好きな名前を入れて save します。
    今回はWebSiteAccessにしてみました。
    これで無事Dashboardが保存できました。

Kibanaの設定をexportする

前置きが長くなりましたがいよいよ本題に入ります。

  1. 上部メニューからSettingを選びます。
  2. その下のサブメニューからObjectsを選びます。
  3. Export Everythingを押すとKibanaの設定がダウンロードできます。
    下のチェックボックスを入れたりする部分で個別にダウンロードすることもできます。
    が、僕の環境ではExport Everythingを押したらいくつかのPOSTリクエストで 500 Internal Server Error
    が出た。。。
    とりあえずVisualizationsだけダウンロードしてみました2

タブからVisualizationsを選択し、TopPageHistgramにチェックを入れた状態でExportボタンを押します。
画面はこんな感じ。
Kobito.57Lmex.png
export.json がダウンロードできたと思います。

export.json
[
  {
    "_id": "TopPageHistgram",
    "_type": "visualization",
    "_source": {
      "title": "TopPageHistgram",
      "visState": "{\"type\":\"histogram\",\"params\":{\"shareYAxis\":true,\"addTooltip\":true,\"addLegend\":true,\"scale\":\"linear\",\"mode\":\"stacked\",\"times\":[],\"addTimeMarker\":false,\"defaultYExtents\":false,\"setYExtents\":false,\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"@timestamp\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{}}},{\"id\":\"3\",\"type\":\"filters\",\"schema\":\"group\",\"params\":{\"filters\":[{\"input\":{\"query\":{\"query_string\":{\"query\":\"request:\\\"GET / HTTP/1.1\\\"\",\"analyze_wildcard\":true}}},\"label\":\"\"}]}}],\"listeners\":{}}",
      "uiStateJSON": "{}",
      "description": "",
      "version": 1,
      "kibanaSavedObjectMeta": {
        "searchSourceJSON": "{\"index\":\"accesslog-*\",\"query\":{\"query_string\":{\"query\":\"*\",\"analyze_wildcard\":true}},\"filter\":[]}"
      }
    }
  }
]

これでKibanaの設定が(一部ですが)exportできました。

Kibanaの設定をimportする

本来は別のelasticスタックで試すのがいいんですが、(用意するのが面倒なので)Visualizationsを削除しちゃいます。
先ほどexportした画面のままになっていると思うので、TopPageHistgramにチェックを入れてDeleteボタンを押します。
ポップアップが出てほんとにいいか聞いてきますが、OKを押します。
上部メニューからVisualizeを選んでもTopPageHistgramはもういません。
ここから、先ほどの設定(export.json)をimportします。

  1. 上部メニューからSettingを選びます。
  2. その下のサブメニューからObjectsを選びます。
  3. importボタンを押すと、Finderあたりが開くので、先ほどのexport.jsonを選択します。
    Visualizations に先ほど消したTopPageHistgramが戻ってきたと思います。
    上部メニューからVisualizeを選択すると、TopPageHistgramが選べます。
    無事グラフも見れたと思います。
  1. どーでもいいですが、きっと若い人はフロッピーディスク見たことないですよね。見たことない人はSDカードっぽい絵のやつがそれです。
    テキストボックスに好きな名前を入れて save します。
    今回はTopPageHistgramにしてみました。
    これで無事Visualizeが保存できました。

  2. 解決するのが面倒なので...

8
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
13