Splunkで遊んでみるよ



iPhoneを使ってなんかやると言ったな・・・あれは嘘だ

[Phone Appli Developers Advent Calendar 2019](https://qiita.com/advent-calendar/2019/phone_appli_developers) の6日目です
会社に内緒でやってます✌️

# What is Splunk ?

ログやらデータやらの管理・分析プラットフォームです。

**[公式](https://www.splunk.com/ja_jp)**

似たようなやつだと、[kibana](https://www.elastic.co/jp/products/kibana)とか。

# やっていく

まずはSplunkアカウントを作成し、Enterprise版をDL＆インストールします、しました。

コンソールからサーバを立ち上げます。

ブラウザでアクセスするとこんな画面です。

<img width="800" alt="Screen Shot 2019-12-06 at 3.26.33 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/151830a8-e1e5-c492-e28c-57543fe16c14.png">

## データ入れる

データ分析プラットフォームなので、データがないと始まりません。

とりあえず弊社のオフィスの会議室の温度とか湿度とか環境系を取ってるjsonデータがあったので、（勝手に）入れてみます。

<img width="800" alt="Screen Shot 2019-12-06 at 4.35.04 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/f602c123-9c13-80a9-fc6b-5a50f31981da.png">

入れました。
jsonの他にもcsvやxmlなどのデータでも取り込めます。

## パースしてもらう

Splunkはネストが深いjson（関係ないかも）は自動でパースしてくれないっぽいので、spath コマンドで、データのフィールド抽出をします。

<img width="800" alt="Screen Shot 2019-12-06 at 4.35.32 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/a641ef9a-a41a-9b84-c663-0f63c95b8494.png">

いい感じにしてくれました。


## いらないデータを除外する

このデータには会議室の環境データの他にもデータがあるっぽいので、そのデータを取り除きます。
コマンドでも書けますが、GUIから選択できるので、それでやってみます。
会議室のデータかどうかは"ibstag.name"フィールドに値があるかどうかで判断できます

<img width="800" alt="Screen Shot 2019-12-06 at 4.35.46 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/d2b1ab25-527b-7625-c9b3-69f2bd73b36e.png">

左サイドバーの、「選択されたフィールド」から、該当のフィールドを選択し、「このフィールドを持つイベント」をクリックします。

<img width="800" alt="Screen Shot 2019-12-06 at 4.35.59 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/03ed0070-8e11-dd12-36ca-170c7b7035f1.png">

除外したところです。
ちょっとわかりにくいですが、イベントの件数が1700件くらい減りました。

## データをグラフで表示する

文字だけだとわかりにくいので、グラフで表示してみます。
みんなグラフ好きですよね。

<img width="800" alt="Screen Shot 2019-12-06 at 4.36.04 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/8ebbea29-7b33-c5ab-0ebe-fb2fba0327eb.png">

タブから視覚エフェクト->ピボットと進みます。

<img width="800" alt="Screen Shot 2019-12-06 at 4.36.14 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/10d56457-4992-8847-6066-61bbcfc70ed0.png">

サイドバーいろんなグラフのアイコンが並んでいます。
今回は気温の変化を見ていこうと思うので、ちょっとだけ設定して、折れ線グラフのアイコンを選択します。

<img width="800
" alt="Screen Shot 2019-12-06 at 4.38.32 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/e1b05efa-6179-8ebc-e7ae-e4869cfcb5e2.png">

こんな感じで

<img width="800" alt="Screen Shot 2019-12-06 at 5.34.25 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/4fc89151-b7df-5c4c-3bc0-431adbd9e7a9.png">

できました

正直kibanaより簡単です。

## ほかにも

<img width="800" alt="Screen Shot 2019-12-06 at 4.56.30 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/249bec02-8247-207d-c01b-185b8e700254.png">

直近1時間以内の気温を見たり

<img width="800" alt="Screen Shot 2019-12-06 at 4.57.40 PM.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426991/a1fc66ee-5f02-0b9f-5661-c3188c27a0b0.png">

ダッシュボード化して表示したりできます。

今回やっていませんが、アドオンや、リアルタイムのログモニタ・アラート機能などもあるので、エラーログや閾値外の値がでたらアラートを出したり、そこから何かのスクリプトを実行したり、なんかができます。

# おわり

ちょっと時間がなさすぎて昔取った杵柄に頼ってしまいました。
去年あたりに少し触っていたんですが、その時より扱いやすくなっている印象です。
案外簡単にデータを可視化できますし、UIもきれいなので触りやすいと思います。
Excelのマクロで頑張るよりは、splunkに食わせていじいじする方が面白そうです。