Grafanaをセットアップしたときは、テンプレからかなり基本的なDashboardを作って、主に自分のDebian VPSを監視してました。こんな感じ。

ここをよく見てたんですが、Prometheusを直接GethomepageのDashboardにクエリするようになってから、Grafanaはあんまり気にしなくなりました。
必要な項目はもう全部ここにあるし。

でも今後データはGrafana側に溜まっていくし、過去も見られるし、Network Trafficの分析にも使える。そこが大事。
というわけで今日はGrafanaを掘り起こします。
1.ChatGPTでざっくりOverview
いくつかプロンプトを投げて軽く調べたら、JSONを直接importできるのでGPTにやらせたらこんな結果に。Expectedほどじゃない。

もう何回かやるとこうなった

でもこの方法はUseCaseに合わない。複数の時間帯でMonitorしたいのに、これだと自分のDashboardと同じQueryスタイルになる

2. いくつか分析
Variable

上の塊がVariableです

Queryでの使い方はこう
100 * (1 - avg(rate(node_cpu_seconds_total{mode="idle", instance="$node"}[$__rate_interval])))
ポイントは [$__rate_interval]。時間レンジのバーに合わせてデータを絞れます。
今回の目的
GrafanaのクエリをPrometheusっぽく見せる。

直接貼ると期待値通りになる

次は時間に応じてvariableを使えるようにする

2種類のVariableに変えたけど、まだ動かない
どこが問題?
$__rate_interval vs $__rangeを理解する
これが $__rate_interval

こっちは $__range

GBなのは単位変換してないだけで、主にデバッグ用。今はだいたい理解できた。
$__rangeはlabel側のもの

labelを変えるとデータも変わる。
成功



でもこのグラフはちょっと合わないので一旦保留。次の問題へ。
目的2

win-4を他の名前に切り替えられるようにする
最初のアイデア
このVariableを丸ごと向こうにコピーする

でもVPSにしか効かないので動かない。
Windows Exporterも拾える変数が必要 => upが答え。

あとは使うだけ

かなり良い
じゃあ家族迎えに行ってくる。
~4時間後
続きやるよ
目的3
これを22個にクローンして、variableだけ変える

方法は2つ。GPTの方法は巨大なJSONを使うやつで、正直バカらしい。DevOpsやSysAdmin向けのプラットフォームなのにClone機能がないわけないでしょ。
で、いろいろ弄ってたら方法を見つけた。機能名は repeat rows and panels。動画の6:28でMulti Valueの話があるので、オンにすればOK。
Public PVEのSolutionもsimple stupidだったのを思い出した。
だからGPTはダメ。追いかけ続けると家を売ることになる =))
成果

時間変数をいくつか調整できる、超ロングなDashboard。最高!!!
Comments
Join the conversation
Leave a comment
No comments yet
Be the first to share your thoughts!