Posted on Apr 20
人はなぜか kibana
のようなダッシュボードが好きである。普段は「マネジメントコンソールからポチポチするのはかったりー」と嘆きながら AWS CLI
なんかバシバシ書いている DevOps
な人も kibana
のような黒い画面に折れ線グラフがバババーって表示されているダッシュボードは大好きなはず…
ということで Grafana
をちょっとだけ触ってみるのと Tasseo
というダッシュボードもあるようなのでそちらも触ってみる。
kibana
を fork
して作られた Grafana
というダッシュボードが InfluxDB
を標準でサポートしているので触ってみる。
は簡単。以下からダウンロードする。
ダウンロードして Web
サーバーの DocumentRoot
に展開するだけ。
以下等を参考にさせて頂いて config.js
を修正する。
以下のように修正した。
--- config.sample.js 2014-04-20 13:12:19.116976452 +0900
+++ config.js 2014-04-20 19:42:50.471148947 +0900
@@ -21,8 +21,8 @@
* Basic authentication requires special HTTP headers to be configured
* in nginx or apache for cross origin domain sharing to work (CORS).
* Check install documentation on github
- */
graphiteUrl: "http://"+window.location.hostname+":8080",
+ */
/**
* Multiple graphite servers? Comment out graphiteUrl and replace with
@@ -33,6 +33,17 @@
* }
*/
+
+ datasources: {
+ influx: {
+ default: true,
+ type: 'influxdb',
+ url: "http://"+window.location.hostname+":8086/db/hogehuga",
+ username: 'root',
+ password: 'root',
+ }
+ },
+
default_route: '/dashboard/file/default.json',
/**
InfluxDB
へのデータ登録は以下のように HTTP API
で登録してみる。
#!/bin/bash
T=`ruby -e 'puts Time.now.to_i * 1000'`
V=`echo $RANDOM`
cat << EOT > data
[
{
"name": "ahoaho",
"columns": ["time", "value"],
"points": [
[$T, $V]
]
}
]
EOT
curl -v --dump-header - -X POST 'http://localhost:8086/db/hogehuga/series?u=root&p=root' -d @data
やっぱりレスポンスボディに何かしらの情報が欲しいところだが上記のスクリプトを何度か叩く。実行後にInfluxDB
のダッシュボードにて…
上記のように select * from ahoaho
というようなクエリを投げると一応グラフ化してくれる。まあ、これでも悪くないけど。
セットアップした Grafana
でも InfluxDB
に登録したデータを見てみる。
上図の通り操作することで InfluxDB
に登録したデータをグラフとして表示してくれる。
おおって感じ。
Tasseo
というなんと呼んでいいのか解らないダッシュボードも InfluxDB
をバックエンドとして利用出来るようなのでちょっとだけ触ってみた。
ざっくり以下のような感じ。
git clone https://github.com/obfuscurity/tasseo.git
cd tasseo
bundle install
cd dashboards
cat << EOT > hoge.js
var metrics =
[
{
target: "value",
series: "ahoaho"
}
];
export INFLUXDB_URL=http://${your_host}:8086/db/hogehuga
export INFLUXDB_AUTH=root:root
foreman start
foreman start
を実行してブラウザで http://${your_host}:5000
にアクセスすると以下のような超シンプルページが表示される。
hoge
にアクセスしてみると…
上記のように InfluxDB
から ahoaho
の value
を取得してシンプルなグラフとして表示している。ああ、かなりシンプル。
Grafana
と Tasseo
を比較するつもりはありませんInfluxDB
と各種ダッシュボードとの連携は試せたけど今のところは Grafana
が良さそう2014 かっぱのほげふが