どうも JavaScript
は全くの素人のかっぱです。すいません。
はじめに
前回、前々回と Grafana
を弄ってきて Scripted Dashboard
が気になっていたので触ってみた。前回の記事で利用した td-agent
の monitor_agent
から取得してきたメトリクスを利用して Scripted Dashboard
を試してみる。
わっといず Scripted Dashboard ?
ペラ一枚という言い方は失礼かもしれないがドキュメントは上記のページのみ。逆に言うと JavaScript
の知識があれば自由に使えるよーってことなのかも知れない。
こんな感じで...
写経に始まり、写経に終わる
Grafana
を展開したディレクトリの app/dashboards
以下に scripted.js
という JavaScript
のファイルがあるのでそれを見よう見まねで作ってみた。
ネタ元は Export dashboard
上記の scripted.js
はあくまでもサンプルなので細かい設定が出来なかったが、既に設定済みのダッシュボードから Export dashboard
した際にダウンロードされる JSON
ファイルから設定を拾うことが出来る。
以下(一部、抜粋)のような JSON
が出力される。
上記の中から nullPointMode: "connected"
や steppedLine: true
を拾い上げて追加してみた。
アクセスしてみる
以下のように引数を与えて scripted.js
にアクセスしてみる。
http://grafana_url/#/dashboard/script/scripted.js?from=1h&rows=1&host=xx-xxx-xxx-xx&type=s3
おお、イケた。
でも...
ちょっと凝ったこと(複数ホストのメトリクスを表示させたいとか...)をしようとすると JavaScript
という壁が立ちはだかる...のはどうしようか悩みどころ。
ということで
- 以上、小ネタでした
おまけ
Graphite の Render API
Graphite
に Render API
という機能があるのでちょっと触ってみた。以下のような URL
にアクセスすると...
http://graphite_url/render?target=averageSeries(*.file.buffer*)&from=-1hours&lineMode=connected&format=png&height=400&width=500
おお。後でも少し詳しく見てみよ。