フォーム読み込み中
ご覧いただきありがとうございます。ソフトバンクの結城です。
今回は前回紹介させていただいた「Managed Service for Grafanaの紹介(概要編)」の続編として、Managed Service for Grafanaでデータを連携する方法について紹介します。
ApsaraDB for RDS(MySQL) *1 (日本リージョン / パブリックエンドポイントを作成済み)
<サンプルコード>
■データベース作成
CREATE DATABASE test;
■テーブル作成
CREATE TABLE `table_grafana` (
`id` int(11) NOT NULL,
`place` varchar(32) DEFAULT NULL,
`user` varchar(32) DEFAULT NULL,
`operate` varchar(32) DEFAULT NULL,
`operate_time` varchar(32) DEFAULT NULL,
`count` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
■データ
insert into test.table_grafana values (1, 'Hangzhou', 'UserAD', 'browse', '2023/04/20 0:00', '3');
insert into test.table_grafana values (2, 'Nanjing', 'UserAG', 'browse', '2023/04/20 1:00', '4');
insert into test.table_grafana values (3, 'Hangzhou', 'UserAW', 'browse', '2023/04/20 2:00', '5');
insert into test.table_grafana values (4, 'Shanghai', 'UserCA', 'browse', '2023/04/20 3:00', '6');
insert into test.table_grafana values (5, 'Japan', 'UserGA', 'browse', '2023/04/20 4:00', '31');
insert into test.table_grafana values (6, 'Tokyo', 'UserDA', 'browse', '2023/04/20 5:00', '32');
insert into test.table_grafana values (7, 'America', 'UserAC', 'browse', '2023/04/20 6:00', '53');
insert into test.table_grafana values (8, 'Canada', 'UserBA', 'browse', '2023/04/20 7:00', '63');
insert into test.table_grafana values (9, 'NewYork', 'UserAB', 'browse', '2023/04/20 8:00', '322');
insert into test.table_grafana values (10, 'USA', 'UserWA', 'browse', '2023/04/20 9:00', '3567');
1-1 ) Alibaba Cloudコンソールにログインし、Managed Service for Grafanaコンソールを開きます。
1-2 ) 「Create Workspace」をクリックし、ワークスペースの作成をします。
1-3 ) 以下の通り、設定値を入力し、「Buy Now」をクリックします。
1-4 ) ワークスペースが作成されたことを確認します。
1-5 ) ワークスペースのIDをクリックし、詳細画面に移動します。
1-6 ) 「public network address」のリンクをコピーし、ブラウザで開きます。
1-7 ) Grafanaのログイン画面が表示されるので、ユーザ名「Admin」、設定したパスワードを入力し、ログインができることを確認します。
2-1 ) Grafanaコンソールにログインし、データソース(MySQL)の追加を行います。
2-2 ) 以下画像で黄色くハイライトされている設定値を入力し、「Save & test」をクリックします。「Database Connection OK」と表示されることを確認します。
Host : RDSのパブリックエンドポイント:3306
Database : MySQLのデータベース名を入力
User : MySQLのデータベースユーザのユーザ名を入力
Password : MySQLのデータベースユーザのパスワードを入力
2-3 ) Dashboardsを開き、「New Dashboard」をクリックし、ダッシュボードの作成を行います。
2-4 ) 「Add a new panel」をクリックし、ダッシュボードに追加します。
2-5 ) Data sourceを「MySQL」に変更し、「Edit SQL」をクリックします。
2-6 ) クエリ文を入力します。
※事前準備でサンプルコードを使用している場合は以下、クエリ文をご参考ください。
SELECT
id AS "番号",
place AS "都市",
user AS "ユーザー",
operate AS "動作",
count AS "回数",
operate_time AS "操作時間"
FROM table_grafana
2-7 ) 画面右上の「Apply」をクリックし、設定を保存します。
2-8 ) 2-4の画面に戻り、「Add a new panel」をクリックし、ダッシュボードに追加します。
2-9 ) 2-5の手順と同様に Data sourceを「MySQL」に変更し、「Edit SQL」をクリックします。
2-10 ) クエリ文を入力します。
※事前準備でサンプルコードを使用している場合は以下、クエリ文をご参考ください。
SELECT
UNIX_TIMESTAMP(operate_time) DIV 3600 * 3600 AS "time",
user AS metric,
avg(count) AS "count"
FROM table_grafana
WHERE
operate_time BETWEEN FROM_UNIXTIME(1681920000) AND FROM_UNIXTIME( 1681934400)
GROUP BY 1,2
ORDER BY UNIX_TIMESTAMP(operate_time) DIV 3600 * 3600
2-11 ) 画面右上の「Apply」をクリックし、設定を保存します。
2-12 ) ダッシュボードの画面に移動し、データが表示されることを確認します。
GrafanaとApsaraDB for RDS(MySQL)の連携する際の設定はシンプルで簡単に行うことができました。ご紹介させていただいた手順にある、データベースのテーブルに入っている情報を表示するダッシュボードには、RDSのテーブルにデータが追加された後、すぐにGrafanaにも反映がされました。このため、リアルタイムのデータ分析も行うことができます。
今回は、Manged Service for GrafanaとApsaraDB for RDS(MySQL)を連携させる方法についてご紹介しました。
Alibaba Cloudが提供しているManged Service for Grafanaはフルマネージドであるため、利用ユーザがGrafanaのミドルウェアやハードウェアなどを気にする必要がないため、Grafanaでのデータ分析に集中することができるといった利点があります。
また、source側に更新があった際には、すぐにGrafanaに反映されるため、データのリアルタイム分析といったことも行うことができます。
オンプレミス環境や他の環境で運用中のGrafanaをAlibaba CloudのManaged Service for Grafanaにマイグレーションすることもサポートされているので、フルマネージドのGrafanaを利用したい場合は、Alibaba Cloudが提供するManaged Service for Grafanaのご利用をお勧めします。
条件に該当するページがございません