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
Prometheus / Grafana ハンズオン
Search
NearMeの技術発表資料です
PRO
October 13, 2023
0
280
Prometheus / Grafana ハンズオン
NearMeの技術発表資料です
PRO
October 13, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
希望休勤務を考慮したシフト作成
nearme_tech
PRO
0
20
Hub Labeling による高速経路探索
nearme_tech
PRO
0
54
Build an AI agent with Mastra
nearme_tech
PRO
0
68
Rustで強化学習アルゴリズムを実装する vol3
nearme_tech
PRO
0
33
Webアプリケーションにおけるクラスの設計再入門
nearme_tech
PRO
1
72
AIエージェント for 予約フォーム
nearme_tech
PRO
2
140
ULID生成速度を40倍にしたった
nearme_tech
PRO
2
51
Amazon AuroraとMongoDBの アーキテクチャを比較してみたら 結構違った件について
nearme_tech
PRO
0
24
GitHub Custom Actionのレシピ
nearme_tech
PRO
0
16
Featured
See All Featured
Building Adaptive Systems
keathley
43
2.6k
Thoughts on Productivity
jonyablonski
69
4.7k
Documentation Writing (for coders)
carmenintech
72
4.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Rails Girls Zürich Keynote
gr2m
94
14k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
Scaling GitHub
holman
459
140k
Fireside Chat
paigeccino
37
3.5k
GraphQLとの向き合い方2022年版
quramy
48
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Transcript
0 Prometheus / Grafana ハンズオン 2023-10-13 第64回NearMe技術勉強会 Takuma Kakinoue
1 Prometheusとは 「Cloud Native Computing FoundationのプロジェクトであるPrometheusは、システムお よびサービス監視システムです。設定されたターゲットから所定の間隔でメトリクスを収 集し、ルール式を評価し、結果を表⽰し、指定された条件が観察されたときにアラートを トリガーすることができます。」 ※
出典: https://github.com/prometheus/prometheus • 設定されたターゲット = APIサーバーやWebサーバーなど • メトリクス = アクセス回数,エラー回数,応答時間など • ルール式 = 「毎分のエラー回数がn回を超過したら」など • アラートは,slackやメールなどに送信することが可能
2 Grafanaとは https://github.com/grafana/grafana 監視およびビジュアライズのためのOSSプラットフォーム Prometheus同様,dockerイメージをpullするだけで簡単に使える Prometheusで監視対象から取得した モニタリング指標をGrafanaで可視化する
3 今回のハンズオンの到達⽬標 • 簡単なhttpサーバーに対して、アクセス回数およびエラー回数を Prometheus + Grafanaを⽤いて監視する • プログラムからPushした適当なメトリクスをビジュアライズする
4 ハンズオンで使う監視システムの構成 prometheus port : 9090 grafana port : 3000
push gateway port : 9091 my-server http port : 8080 metric port : 8000 job.py ※ PrometheusはPull型の監視システ ムなので、cronJobの様なサーバー機 能を持たないシステムの監視は push-gatewayを介して行う PromQL metrics Push metrics metrics metrics 背景が黄色のものが監視対象 request request
5 ハンズオン⼿順1 https://github.com/kakky-hacker/sandbox/tree/main/prometheus_sample README.mdの”Run servers”までを順に実⾏する。 ↓ ブラウザから http://localhost:9090/targets にアクセス
6 ハンズオン⼿順2 ブラウザから http://localhost:3000 にアクセス ↓ username: admin,password: adminでログイン ↓
Home > connectionsからPrometheus検索 ↓ 右上の”Add new data source”をクリック
7 ハンズオン⼿順3 Nameを適当な名前に設定 ↓ Prometheus server URLを http://host.docker.internal:9090 に設定 ↓
“Save & test”をクリック
8 ハンズオン⼿順4 Home > Dashboards > NewDashboardへと進む ↓ “Add Visualization”から作成したdata
sourceを選択し,dashboardを作成 ↓ QueryタブのMetricから指標を選び “Run queries”をクリック ↓ curlでリクエストを送信して, グラフの変化を確認する (リクエストの例はREADME参照)
9 ハンズオン⼿順5 job.pyを実⾏する ↓ メトリクス “job_random_number” を選択 ↓ id毎にグラフが描画される(計2つ) ↓
Transformタブから左上の”Add”を選択 ↓ 全てのidの和のグラフも描画される
10 次回予告 • PrometheusのAlertManagerを使ってみる • PromQLを理解する
11 Thank you