Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Grafana_Claude_Code
Search
Yona
September 05, 2025
0
65
Grafana_Claude_Code
Yona
September 05, 2025
Tweet
Share
More Decks by Yona
See All by Yona
project_offline_communication
yonasou
0
9
Easy choice of IaC
yonasou
1
300
Illust_Terraform
yonasou
0
2.2k
re:growth 2024
yonasou
0
450
Using figma is a good thing
yonasou
1
630
IoT_Greengrass_Begginer
yonasou
0
290
Grafana_IoT_Data_DataLake
yonasou
0
880
terraform_module_ Beginner
yonasou
10
180k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
284
13k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
Being A Developer After 40
akosma
90
590k
Navigating Team Friction
lara
189
15k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
510
The Pragmatic Product Professional
lauravandoore
36
6.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Transcript
[Session-A-08] GrafanaのGit Sync機能を使って生成AIと共に ダッシュボードを開発してみた
所属 クラスメソッド株式会社 クラウド事業本部コンサルティング部 ソリューションアーキテクト 趣味 ラジオ、散歩、山 好きなAWSサービス Amazon Managed Grafana
与那嶺 創(よなみね そう) 自己紹介 ピザのアイコンでブログ書いてます
アジェンダ 何を解決したかったのか? GrafanaのAPI GrafanaのGitSync機能 やってみた やってみた所感
何をしたかったのか? GrafanaをClaude Codeで操作できないか?
データソース毎にクエリ言語が違う Grafanaのオプションが多すぎて作りたいダッシュボードを作る のにどの機能を使えばいいか分らない ダッシュボード構築の時間を削減したい なぜ? これを普段から使ってるClaude Codeと 組み合わせて解決できないか? Grafana使う時の課題
何が必要? ダッシュボードをコード化する リモート↔︎ローカル間でコードを受け渡し リモートのコードをダッシュボードに反映
コード化
実は...Grafanaのダッシュボードは JSONで定義されているんです!! 意外と他の可視化ツールにないメリットかも?
None
ということで、コード化はクリア!
リモート↔︎ローカル間のコード管理
コード管理の課題 コードをローカル環境のClaude Codeで操作したい そのためには? どこかでコードを管理する ローカルにコードを落とす ローカルの変更内容をリモートにも反映させる
GrafanaのAPIを利用する
dashboard.json v1 取得 APIリクエスト
dashboard.json v1→v2 dashboard.json v2 編集 v1→v2 アップロード
None
よさそう...だけど...
dashboard.json v1→v2 dashboard.json v1 別の人がUI上から ダッシュボードを編集 問題点
dashboard.json v2 取得 dashboard.json v1→v2 その都度差分が無いか確認が必要 (実質コードが管理されていない状態) 問題点
問題点 dashboard.json v1→v2 dashboard.json v2 編集 v1→v2 アップロード どんな変更されるか 分らない
コードを編集しても 実際にダッシュボードを見るまで変更点が分かりづらい
None
今年、Grafana v12が発表されました!! その中で Git Sync という機能がプレビューリリース されました
どんな機能? コードと同じようにダッシュボードを管理できます。 ダッシュボードはGitでバージョン管理され、PRワークフ ローを通じて編集されるため、変更を常に追跡できます ※ドキュメントより
簡単にいうと GrafanaのダッシュボードjsonをGitHubと同期できる!
dashboard.json (ほぼ)同期 イメージ図
dashboard.json (ほぼ)同期 ここが自動的に同期してるのがGood!!
demo_dashboard.json (ほぼ)同期 更新 コード更新の数十秒後にはGrafanaの ダッシュボードに反映される
このコードをローカル環境のClaude Codeで操作したい そのためには? どこかでコードを管理する ローカルにコードを落とす 変更内容をリモートと合わせる これが解決できそう!?
やってみる まずはダッシュボードをひとつ作成
リポジトリをcloneして、あとはClaude Codeにお任せ
大事なこと Claude Codeにお任せしますが、 「いい感じにダッシュボード作って!」 だとそれっぽいダッシュボードは作られるかもしれませんが、使える ダッシュボードにはならないと思います。(たぶん) まずは何を達成したいのか、目的や利用シーンを考えて ラフでもいいので図を作って渡すと良いダッシュボードが作られます
こんな感じ→ のラフ図を作って渡してみる (今回はAWSのコスト分析ダッシュボード) これを文字で説明するのは難しい 図で渡す方が良いインプットになる
Claude Codeに渡すラフ図で意識していること パネルには得たい情報を入れる グラフの形式を入れる Grafanaで表現できそうな内容にする(閾値を決めて着色するなど) 一発で完璧なダッシュボードができるとは思わない
> [Image #1]こちらの画像をベースにdemo-dashboard.jsonを編集して AWSのコストを分析するダッシュボードを作成してください。 編集を終えたらdevelopにpushしてmainにプルリクを出してください。 プロンプト
#develop #main 編集 (New Branch) プルリクエスト プルリクエストの作成まではClaude Codeにやってもらうのが良さそう 人間がダッシュボードのコード見ても良し悪しがわからない
#develop プルリクエスト #main とはいえ... プルリクエストでコードの差分を見ても良し悪しが判断できない ダッシュボードに反映してから確認するしかない?
#develop プルリクエスト 変更前の ダッシュボード 変更後の ダッシュボード プレビュー機能 #main こんなのがあったら嬉しいのにな...
それ、あるんです。
プルリクエストプレビュー機能
全てのパネルでエラーが...
クエリでエラーが出てた
何度か0からClaude Codeでダッシュボード作ってみたが エラーが出たり出なかったり。 大体はデータソースの選択ミスかクエリの構文エラー
> クエリでエラーが出ています。 まずは実際にaws cliでathenaのクエリを実行して、結果が返ってく ることを確認してからダッシュボードに適用してdevelopブランチに pushしてmainにプルリクエストを出してください。 最もうまくいった方法
どちらにもアクセスできる
ダッシュボードに適用 期待するレスポンス 期待するレスポンスを受け取ってから ダッシュボードに反映した方がエラーが少ない
None
変数が入っていなかった
かなりいい感じじゃないか?? ここから、実際にダッシュボードを運用しながら修正を繰り返す
最終的にこんな感じに なりました
やってみて学んだこと ラフ図でいいのでインプットとなる図を書いた方がいい クエリの構文エラーが多かったので、データソースに直 接クエリできる場合は事前にクエリするとエラーが減る プルリクのプレビュー機能は細かい修正は分かりづらい 一度では絶対に良いダッシュボードは作れないので、 ダッシュボードの運用→改善のライフサイクルを回す
+α Grafana Git syncとClaude Codeだけではなく Grafana MCPも合わせると、ダッシュボード構築が捗るかも!? https://speakerdeck.com/hamadakoji/grafana-mcpsabaniyoruaiezientojing-you- denografanadatusiyubododong-de-sheng-cheng
一番大事なこと Git Syncは実験的な機能なので、実稼働環境 での使用はお勧めされていません!!!
おしまい