Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Building a ServiceMap with Service Graph Connector
Search
Ryo Nakamine
March 29, 2024
2.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Building a ServiceMap with Service Graph Connector
OpenTelemetry Casual Talk - コンセプトのおさらいと実践入門!
https://mackerelio.connpass.com/event/311216/
Ryo Nakamine
March 29, 2024
More Decks by Ryo Nakamine
See All by Ryo Nakamine
少人数SREで信頼性を配るためのセルフサービスとガードレール設計
rnakamine
3
860
Ruby on Rails におけるOpenTelemetry の活用
rnakamine
3
4k
10年動くアプリケーションに Embedded SRE を導入した話
rnakamine
4
700
EBILABを支えるクラウド・サーバーレス活用事例とこれから
rnakamine
1
110
Laravel NOVAを使ってみた
rnakamine
0
88
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Claude Code のすすめ
schroneko
67
230k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
550
Music & Morning Musume
bryan
48
7.4k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.1k
Bash Introduction
62gerente
615
220k
Ruling the World: When Life Gets Gamed
codingconduct
0
360
Transcript
1 Building a ServiceMap with Service Graph Connector 仲嶺 良
/ GMO Pepabo, inc. OpenTelemetry Casual Talk - コンセプトのおさらいと実践⼊⾨! 2024.03.25
2 ⾃⼰紹介 技術部 プラットフォームグループ 2021年 中途⼊社 仲嶺 良 Nakamine Ryo SRE
として minne の SLI / SLO の策定‧運⽤、それ に基づいたパフォーマンス改善や Kubernetes を⽤ いたコンテナプラットフォームの運⽤‧改善を担当 • naryo と呼ばれています • 沖縄県出⾝ • X : @r_nakamine
GMO ペパボについて 3 https://pepabo.com
各サービスに絶賛 OpenTelemetry 導⼊中 4 OpenTelemetry Meetup 2024-02 https://speakerdeck.com/pyama86/pepaboopentelemetryge-ming
5 • OpenTelemetry Collector の Service Graph Connector を⽤いてトレースからメトリクスを⽣成 •
Grafana Tempo の Service Graphs を⽤いてサービス 間の相互関係を描画する 今⽇話すこと
今⽇話すこと 6 • オブザーバビリティバックエンドに Grafana を使⽤ • OpenTelemetry Collector Contribを使⽤
◦ 本番環境では OpenTelemetry Collector Builder を使って、必要なプラグイン だけをまとめた Collector を使⽤することが推奨されています ※ Grafana Tempo の Metrics-Generator でも同様のメトリクスを⽣成することができます 前提
Service Graph Connector 7
Service Graph Connector 8 • レシーバーとエクスポーターの2つの役割を持つ • 異なるテレメトリーパイプラインを繋ぎ合わせる そもそも Connector
とは
Service Graph Connector 9 そもそも Connector とは ref: https://opentelemetry.io/docs/collector/building/connector
Service Graph Connector 10 • トレースデータを分析し、サービス間 の相互関係構築 するためのメトリクスを⽣成する ◦ OpenTelemetryのセマンティック規約を元にサービス間のリクエスト
を検出 • ⽣成されたメトリクスは Grafana で可視化できる Service Graph Connector
Service Graph Connector 11 OpenTelemetry Collector の設定(⼀部抜粋)
Service Graph Connector 12 Service Graph Connector によって⽣成されるメトリクス traces_service_graph_request_total 2
つのサービス間のリクエストの合計数 traces_service_graph_request_failed_total 2 つのサービス間で失敗したリクエストの合計数 traces_service_graph_request_server_seconds サーバーから⾒た 2 つのサービス間のリクエストの処理時間 traces_service_graph_request_client_seconds クライアントから⾒た 2 つのサービス間のリクエストの処理時間 traces_service_graph_unpaired_spans_total ペアになっていない span の合計数 traces_service_graph_dropped_spans_total ドロップされた span の合計数
• 取得した span から Request, Error and Duration (R.E.D) メトリクスを⽣成する
各 span ⾃体のメトリクスを⽣成する Service Graph Connector 13 “Span Metrics” Connector
Service Graphs in Grafana Tempo 14
Service Graphs in Grafana Tempo 15 • traces_service_graph_ なメトリクスを元にサービス間 の相互関係を可視化する
• 相互関係だけでなくシステムの健全性も可視化される ◦ レイテンシー、エラー率 Service Graphs ref: https://grafana.com/docs/tempo/latest/metrics-generator/service_graphs
Service Graphs in Grafana Tempo 16 Enable service graphs •
Grafana Tempo の Data Sources の設定から Service Map を有効 にする • データソースを⽣成したメトリク スが送信される Prometheus に 指定
Service Graphs in Grafana Tempo 17
Service Graphs in Grafana Tempo 18
Service Graphs in Grafana Tempo 19 • Service Graph Connector,
Span Metrics Connector か ら⽣成されるメトリクスは Grafana Tempo の Metrics-Generator というコンポーネントからも⽣成で きる ◦ OpenTelemetry Collecotor の Span Metrics Processer ミラーリングすること を⽬標に設計されている Metrics-Generator ref: https://grafana.com/docs/tempo/latest/metrics-generator/
20 ご清聴ありがとうございました