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
Datadog APM におけるトレース収集の流れ及び Retention Filters の...
Search
逆井(さかさい)
February 11, 2025
Technology
0
760
Datadog APM におけるトレース収集の流れ及び Retention Filters のはなし / datadog-apm-trace-retention-filters
「システムの可視化と最適化をDatadogと学ぶ」@ROSCAFE の登壇スライドです。
https://rosca.connpass.com/event/344126/
逆井(さかさい)
February 11, 2025
Tweet
Share
More Decks by 逆井(さかさい)
See All by 逆井(さかさい)
Main Session からの続編: OpenTelemetry のトピックいろいろ / opentelemetry-zero-code-go-opamp
k6s4i53rx
1
260
Kubernetes における OpenTelemetry 活用 ~ OTel Operator と otel-go-instrumentation をふんわり理解する編 ~ / getting-started-opentelemetry-operator-on-kubernetes
k6s4i53rx
1
700
大規模システムへの OpenTelemetry Collector 導入の勘所と OpAMP に見る未来 / getting-started-opentelemetry-collector-with-opamp
k6s4i53rx
3
1.4k
開発フェーズでのオブザーバビリティ活用やプロファイルのススメ / getting-started-profile-o11y
k6s4i53rx
3
1.1k
エンジニアによるコミュニティ活動のススメ / community-and-carrier-and-me
k6s4i53rx
0
230
OpenTelemetry を使ったトレースエグザンプラーの活用 / otel-trace-exemplar
k6s4i53rx
5
2k
サービスメッシュ環境における OpenTelemetry 活用 / OpenTelemetry in Service Mesh
k6s4i53rx
5
3.1k
計測の手間を省きたい!OpenTelemetry に見る”自動計装”のイマ / Getting started auto instrumentation with OpenTelemetry
k6s4i53rx
14
18k
Kubernetesアップデートのツラミから学んだデプロイ手順のユガミ / Challenges Learned from Kubernetes Update
k6s4i53rx
0
750
Other Decks in Technology
See All in Technology
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.5k
Introduction to Bill One Development Engineer
sansan33
PRO
0
250
Create a Rails8 responsive app with Gemini and RubyLLM
palladius
0
110
Whats_new_in_Podman_and_CRI-O_2025-06
orimanabu
3
170
Snowflake Intelligenceで実現できるノーコードAI活用
takumimukaiyama
1
210
"SaaS is Dead" は本当か!? 生成AI時代の医療 Vertical SaaS のリアル
kakehashi
PRO
3
190
基調講演: 生成AIを活用したアプリケーションの開発手法とは?
asei
1
130
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
770
活きてなかったデータを活かしてみた話 / Shirokane Kougyou vol 19
sansan_randd
1
260
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
170
“プロダクトを好きになれるか“も QAエンジニア転職の大事な判断基準だと思ったの
tomodakengo
0
130
堅牢な認証基盤の実現 TypeScriptで代数的データ型を活用する
kakehashi
PRO
2
220
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Building Applications with DynamoDB
mza
95
6.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
Scaling GitHub
holman
459
140k
Producing Creativity
orderedlist
PRO
346
40k
Transcript
ROSCAFE Datadog APM におけるトレース収集の流れ および Retention Filters のはなし #ROSCAFE 逆井(さかさい)
@ k6s4i53rx
逆 井 啓 佑 さかさい • 所属:Datadog Japan • コミュニティ: ◦
OpenTelemetry Meetup ◦ Google Cloud Champion Innovators • クラウドネイティブ界隈に生息しています 自己紹介 CNDT2022 CNDT2023 CNDW2024 ー 2025-02-12 #ROSCAFE ☕ ー
Datadog もイベント開催頑張っています...! ー 2025-02-12 #ROSCAFE ☕ ー
Datadog APM 使ってますか?
APM Service Map Traces Profiles Database Monitoring Data Streams Monitoring
Dynamic Instrumentation ※ APM の一部機能を掲載
APM Service Map Traces Profiles Database Monitoring Data Streams Monitoring
Dynamic Instrumentation ※ APM の一部機能を掲載 ※ 以降、トレースと表記
トレースとは ー 2025-02-12 #ROSCAFE ☕ ー トレース • アプリケーションがリクエストを処理する一連の流れ •
スパン(処理単位)から構成される ◦ HTTP 処理、DB クエリ処理・・・ ※ 分散トレース:複数のサービスにまたがって、トレースを収集、可視化
トレースとは ー 2025-02-12 #ROSCAFE ☕ ー トレース • アプリケーションがリクエストを処理する一連の流れ •
スパン(処理単位)から構成される ◦ HTTP 処理、DB クエリ処理・・・ ※ 分散トレース :複数のサービスにまたがって、トレースを収集、可視化 リクエスト応答が 遅い ときの ボトルネック特定 など 分散サービスに おける エラー 箇所の特定 など
トレースのデータは全部必要か 🧐?
トレースのデータは全部必要か 🧐? 遅いトレース とか、エラーを含むトレース は 関心事である可能性が高そう。
SREcon24 Americas のセッション ー 2025-02-12 #ROSCAFE ☕ ー https://www.usenix.org/conference/srecon24americas/presentation/cruz
SREcon24 Americas のセッション ー 2025-02-12 #ROSCAFE ☕ ー https://www.usenix.org/conference/srecon24americas/presentation/cruz
SREcon24 Americas のセッション ー 2025-02-12 #ROSCAFE ☕ ー https://www.usenix.org/conference/srecon24americas/presentation/cruz サンプリングによる、データとコストの価値への影響
「大切なトレースを取り込み、保持する」 ー 2025-02-12 #ROSCAFE ☕ ー https://docs.datadoghq.com/ja/tracing/guide/leveraging_diversity_sampling/#diversity-sampling-algorithm-intelligent-retention-filter
「大切なトレースを取り込み、保持する」 ー 2025-02-12 #ROSCAFE ☕ ー https://docs.datadoghq.com/ja/tracing/guide/leveraging_diversity_sampling/#diversity-sampling-algorithm-intelligent-retention-filter
「大切なトレースを取り込み、保持する」 ー 2025-02-12 #ROSCAFE ☕ ー https://docs.datadoghq.com/ja/tracing/guide/leveraging_diversity_sampling/#diversity-sampling-algorithm-intelligent-retention-filter 確実に欲し い 確実に欲し
い /healthcheck やら、 なんの変哲もない正常リクエストのトレースも含まれてるカモ
Datadog APM には 高機能な トレースパイプライン があります
Datadog APM のトレースパイプライン ー 2025-02-12 #ROSCAFE ☕ ー 1 2
3 4 5 6 • トレーサー使ってアプリケーションを計装 • トレーサーから(Datadog Agent を経由して)送られた、 スパンを Datadog に取り込む(Ingest) ◦ ヘッドサンプリング • 取り込んだスパンは 15 分間 Live Search 可能 • 取り込んだスパンから必要に応じてメトリクスを作成 • Datadog にスパンを保存する(Index) ◦ Retention Filters による保存条件の設定 ◦ 「遅い」や「エラー」のあるスパン条件 • トレース情報を活用する 1 2 3 4 5 6
Datadog APM のトレースパイプライン ー 2025-02-12 #ROSCAFE ☕ ー 1 2
3 4 • トレーサー使ってアプリケーションを計装 • トレーサーから(Datadog Agent を経由して)送られた、 スパンを Datadog に取り込む(Ingest) ◦ ヘッドサンプリング • 取り込んだスパンは 15 分間 Live Search 可能 • 取り込んだスパンから必要に応じてメトリクスを作成 • Datadog にスパンを保存する(Index) ◦ Retention Filters による保存条件の設定 ◦ 「遅い」や「エラー」のあるスパン条件 • トレース情報を活用する 1 2 3 4 5 6 5 6
Retention Filters(保持フィルター)について ー 2025-02-12 #ROSCAFE ☕ ー Retention Filters(保持フィルター) スパンが取り込まれたあと、Retention
Filters で処理されて Datadog 内に保持される ❶ デフォルトで有効化されている Retention Filters ❷ カスタムタグベースの Retention Filters https://docs.datadoghq.com/ja/tracing/trace_pipeline/trace_retention/
Retention Filters(保持フィルター)について ー 2025-02-12 #ROSCAFE ☕ ー Retention Filters(保持フィルター) ❶
デフォルトで有効化されている Retention Filters • インテリジェント Retention Filters • Error Default Retention Filters • e.t.c...(Synthetics、ASM、Dynamic Instrumentation) https://docs.datadoghq.com/ja/tracing/trace_pipeline/trace_retention/
Retention Filters(保持フィルター)について ー 2025-02-12 #ROSCAFE ☕ ー Retention Filters(保持フィルター) ❶
デフォルトで有効化されている Retention Filters • インテリジェント Retention Filters : デフォルトで必ず有効化されるフィルター。 多様性サンプリング (env、service、resource や p75、p90、p95 の組み合わせや高レイテンシーなスパンを保 持)と、1% フラットサンプリング( 取り込んだ全てのスパンを均一に 1% の割合で保持)を行う • Error Default Retention Filters : エラーが含まれている場合は、100% サンプリング (保持する)を行う • e.t.c...(Synthetics、ASM、Dynamic Instrumentation) https://docs.datadoghq.com/ja/tracing/trace_pipeline/trace_retention/
Retention Filters(保持フィルター)について ー 2025-02-12 #ROSCAFE ☕ ー Retention Filters(保持フィルター) ❷
カスタムタグベースの Retention Filters タグ(env、service、status、…)に基づく追加のカスタマイズ可能なフィルター • 「$100 以上の決済処理」のトレースは 100 % 保持する • 「SaaS サービスの、プレミアム会員ユーザー」のトレースは 100 % 保持する • 「特定のサービス」のトレースは 0 % 保持する(= 保持しない) https://docs.datadoghq.com/ja/tracing/trace_pipeline/trace_retention/
Retention Filters(保持フィルター)について ー 2025-02-12 #ROSCAFE ☕ ー ❶ ❷
Datadog の画面 ー 2025-02-12 #ROSCAFE ☕ ー
まとめ ー 2025-02-12 #ROSCAFE ☕ ー • Datadog APM のトレース収集についての全体像と、
Retention Filter(保持フィルター) についてのはなしをしました • ヘッドサンプリングが関連する Ingestion フェーズ も大切 ◦ Resource-based Sampling / Adaptive Sampling(Preview) • オブザーバビリティ SaaS のつよみである、 監視バックエンド側のリッチなサンプリング機能を使い、良いコストマネジメントを!
宣伝 ❶ ー 2025-02-12 #ROSCAFE ☕ ー 2/26(水)19:00〜 Japan Datadog
User Group Meetup#7 があります @ Datadog オフィス
宣伝 ❷ ー 2025-02-12 #ROSCAFE ☕ ー 3/6(木)19:00〜 Japan Datadog
User Group Meetup#8 があります @札幌
記載されている会社名、商品名、 またはサービス名は、各社の商標登録または商標です。