GrafanaのダッシュボードでMySQLから取得したデータを可視化してみた

今回は、Grafanaでダッシュボードを作成し、MySQLのデータをGrafana上で可視化した内容を紹介します。

Grafanaのインストールについては、以下で紹介しています。

環境

利用する環境は以下の通りです。

OSCentOS Stream release 9
Grafanagrafana-11.3.0-1

データソース設定で設定するDBはローカル環境にインストールしているMySQLを利用します。

MySQL8.4.2 MySQL Community Server
データベースmy_database
テーブルusers

データソース設定

最初に、GrafanaとMySQLとの接続設定を実施します。
ホーム画面の左のサイドバーにある「Connections」をクリックします。

「Add new connection」タブから、検索欄に”mysql”を入力し、「MySQL」の項目をクリックします。

「Add new data source」のボタンをクリックします。

MySQLのデータソースが追加されました。次にDB接続に必要な情報を設定していきます。

以下の通り、設定を入力します。

設定項目説明
Host URLDBの接続先URLを設定します。
Database name接続するデータベース名を設定します。
UsernameDB接続するときのユーザ名を設定します。
PasswordDB接続するときのパスワードを設定します。

設定が完了したら、画面下の「Save & test」ボタンをクリックします。

「Database Connection OK」が表示されたら、設定完了です。

ダッシュボードの作成

次に、Grafana上でダッシュボードを作成します。

Home画面の左のサイドバーにある「Dashboards」をクリックし、ダッシュボード画面の「Create dashboard」ボタンをクリックします。

ダッシュボードの作成画面が表示されます。
「Add visuaization」ボタンをクリックします。

データソース設定を選択します。
先ほど設定した、データソース設定の「mysql」を選択します。

パネルの設定画面が表示されました。
今回はMySQLから出力したデータをそのまま表形式で表示させるパネルを設定します。

最初に、画面右上画面からパネルの種類のセレクトボックスをクリックし、「Table」を選択します。

次に表示させるクエリを設定します。
今回は、コードで設定するので、画面中央の「Code」をクリックし、以下の内容を入力します。

設定が完了したら、画面左下の「Add Query」をクリックします。

SELECT 
  birthplace,COUNT(*) 
FROM my_database.users 
GROUP BY birthplace
LIMIT 50 

クエリが設定されました、画面中央の「Run query」ボタンをクリックすると、SQLクエリが実行され、
画面のパネルに表が表示されました。

Screenshot

こちらで設定は完了です。
最後に画面右上の「Save dashboard」ボタンをクリックし、適切なダッシュボード名を入力して、「Save」ボタンをクリックします。

こちらでダッシュボードが作成されました。
実際にダッシュボードの画面から先ほど設定したパネルが表示されているかを確認します。

以下の通り、表示されていることが確認できました。

以上で設定は完了になります。

まとめ

今回は、GrafanaからMySQLのデータソース設定を実施し、MySQLのデータをパネルに表示させる内容を紹介しました。

ご参考になれば、幸いです。

以上になります。ありがとうございました。

コメント

タイトルとURLをコピーしました