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
300
Prometheus / Grafana ハンズオン
NearMeの技術発表資料です
PRO
October 13, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
260
ReactNative のアップグレード作業が (意外に)楽しかった話
nearme_tech
PRO
2
80
強化学習アルゴリズムPPOの改善案を考えてみた
nearme_tech
PRO
0
8
Apple Containerについて調べて触ってみた
nearme_tech
PRO
0
150
Rust 並列強化学習
nearme_tech
PRO
0
25
並列で⽣成AIにコーディングをやらせる
nearme_tech
PRO
1
150
希望休勤務を考慮したシフト作成
nearme_tech
PRO
0
40
Hub Labeling による高速経路探索
nearme_tech
PRO
0
100
Build an AI agent with Mastra
nearme_tech
PRO
0
84
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Being A Developer After 40
akosma
90
590k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Into the Great Unknown - MozCon
thekraken
40
2k
Code Review Best Practice
trishagee
71
19k
Done Done
chrislema
185
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
820
Raft: Consensus for Rubyists
vanstee
140
7.1k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Thoughts on Productivity
jonyablonski
70
4.8k
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