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
230
Prometheus / Grafana ハンズオン
NearMeの技術発表資料です
PRO
October 13, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
WASM入門
nearme_tech
PRO
0
10
ESLintをもっと有効活用しよう
nearme_tech
PRO
0
13
リファクタリングのための第一歩
nearme_tech
PRO
0
39
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
1
110
確率的プログラミング入門
nearme_tech
PRO
2
89
Observability and OpenTelemetry
nearme_tech
PRO
2
39
観察研究における因果推論
nearme_tech
PRO
1
120
React
nearme_tech
PRO
2
45
Architecture Decision Record (ADR)
nearme_tech
PRO
1
880
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
Designing Experiences People Love
moore
139
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Agile that works and the tools we love
rasmusluckow
328
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Thoughts on Productivity
jonyablonski
68
4.4k
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