Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Grafanaのvariables機能について

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 Grafanaのvariables機能について

Grafanaにはvariablesという機能があり、中でもglobal variableと custom variableというものがあります。 各機能の使い方や、実際に使ってみて気がついたことについて共有します。 特に、これを機にPrometheusで使われるglobal variableについて深掘りしたいです。

Avatar for 佐々木千奈

佐々木千奈

January 29, 2025
Tweet

More Decks by 佐々木千奈

Other Decks in Technology

Transcript

  1. © SIOS Corp. All rights Reserved. ▪ 自己紹介 ▪ Grafanaのvariablesって?

    ▪ ユーザー定義の変数 ▪ グローバル変数 ▪ ダッシュボード例 ▪ Prometheus特有のグローバル変数 ▪ まとめ 構成 2
  2. © SIOS Corp. All rights Reserved. 自己紹介 3 サイオステクノロジー株式会社 エンジニア

    佐々木 千奈 趣味: 旅行、音楽、読書 仕事: Grafana関連の技術サポー ト その他開発関連業務 ブログ: SIOS Tech Lab (Tina) YouTube: サイオステクノロジー エンジニア Grafanaに関する配信を4回 その他: 昨年Community plugin を作成し、Grafanaに申請中です!
  3. © SIOS Corp. All rights Reserved. Grafanaで利用できる「variables=変数」のこと ユーザー定義の変数と定義済のグローバル変数がある ▪ パネルのタイトルとメトリクスのクエリに利用

    ▪ variablesを利用して、ダッシュボードのクエリを 動的に変更することが可能 ▪ 用途に合わせて多くの種類のvariablesがある Grafanaのvariablesって? 4
  4. © SIOS Corp. All rights Reserved. ユーザーが作成する変数。 変数の種類や、値の選択肢を前もって設定し、 クエリに組み込んでおくことで、 動的なダッシュボードが作成できる。

    ユーザー定義の変数を利用したダッシュボードの例 変数の種類は多く、クエリ変数、カスタム変数、定数 変数などがある。 ユーザー定義の変数 5
  5. © SIOS Corp. All rights Reserved. $__interval Grafana標準のグローバル変数。 グラフの幅によって自動で計算される間隔です。 合計や平均などの集計関数で使用されます。

    rate関数の計算のための時間範囲として利用すると、 時間範囲が短い場合にrate関数の計算のためのサンプ ル数が足りず、グラフが描画できない場合がある。 Prometheus特有のGlobal variables 8
  6. © SIOS Corp. All rights Reserved. $__rate_interval GrafanaのPrometheus専用のグローバル変数。 上記をrate関数の計算用の時間範囲に利用すると scrape

    intervalの4倍以上の値を自動で計算するため Grafanaの時間範囲の表示を切り替えても rate関数が計算できる時間範囲を自動で入力します。 疑: しかし時間範囲があまり長くなるとそれに合わせて$__rate_intervalは大きくならないので、全体の傾向が見えなくなる。こ の状況に対処する方法について、同じ問題に直面した方がいればどのような方法で解決しているかお話しを聞かせて頂きたい です。そもそもPrometheus(のrate関数)は大きい時間範囲をあまり得意としてないのか、小さい範囲と大きい範囲を見るダッシ ュボードは分けたほうがいいのか等、悩ましく感じております。 Prometheus特有のGlobal variables 9
  7. © SIOS Corp. All rights Reserved. ▪ Grafanaのvariables機能について紹介しました ▪ ユーザー定義の変数と、組み込みのグローバル変数

    がありました ▪ グローバル変数の$__intervalと$__rate_interval について紹介しました まとめ 10