Skip to content
Latchkey

Grafanaとは何か? dashboardと可視化の解説

Grafanaは、多くのデータソースに接続し、それらのmetrics、logs、tracesを共有された対話的なdashboardに変えるオープンソースの可視化プラットフォームです。

Grafanaは、monitoringデータの上に位置するdashboard層です。通常それ自体はデータを保存せず、代わりに他のシステムをクエリして結果を描画します。数十のバックエンドと話すため、複数のオブザーバビリティツールを混在させて運用するエンジニアリングチームにとって、共通のsingle pane of glassになっています。

データベースではなく可視化層

Grafanaは、Prometheus、Loki、Elasticsearch、多くのSQLやクラウドのバックエンドといったデータソースに接続し、パネルを構築するためにそれらをオンデマンドでクエリします。ストレージと可視化を分離しておくことで、一つのGrafanaインスタンスが、あるシステムのmetricsを別のシステムのlogsと同じ画面に並べて表示できます。

dashboardとパネル

dashboardは、それぞれがクエリに裏打ちされたパネルの集まりです。パネルは、時系列グラフ、単一統計タイル、テーブル、heatmap、gaugeのいずれにもなります。テンプレート変数により、クエリをパラメータ化することで一つのdashboardをサービスや環境間で再利用でき、単一のdeploy dashboardが選択したどのサービスにも機能します。

アラートとアノテーション

Grafanaはデータソースに対してアラートルールを評価し通知をルーティングでき、専用のアラートツールと重なります。またアノテーションもサポートします。deployのようなイベントを記録するグラフ上の縦線マーカーです。各releaseをレイテンシのグラフに印付けることで、deployが回帰を引き起こしたときに即座に見えるようになります。

CI/CDのためのGrafana

一般的なパターンは、deployアノテーションをアプリケーションのmetricsに重ねるデリバリーdashboardで、変更とその影響を一目で相関づけられるようにします。チームはまた、buildの所要時間、成功率、キュー時間を示すpipeline dashboardを構築し、生のCIテレメトリをチーム全体が観察できる傾向へと変えます。

より広いGrafanaスタック

Grafana Labsはcompanionプロジェクトを提供します。logsのためのLokiとtracesのためのTempoで、どちらもGrafanaと組み合わせて3つのオブザーバビリティシグナルすべてにわたる統合ビューを実現するよう設計されています。これにより、チームはmetrics dashboardから始めて、front endを切り替えることなく完全なオブザーバビリティへと成長できます。

重要なポイント

  • Grafanaは、データを保存するのではなく、多くのソースからのデータを可視化します。
  • dashboardは、クエリに裏打ちされたパネルとテンプレート変数から構築されます。
  • グラフ上のdeployアノテーションは、回帰の原因特定を容易にします。
  • logsとtracesのためにLokiやTempoと組み合わさります。

関連ガイド