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
Amazon Bedrock のコスト内訳を気合でトラッキングする
Search
Hayato Kawai
February 18, 2026
84
0
Share
Amazon Bedrock のコスト内訳を気合でトラッキングする
Japan Datadog User Group Meetup#15@東京 で話した資料です。
https://datadog-jp.connpass.com/event/378380/
Hayato Kawai
February 18, 2026
More Decks by Hayato Kawai
See All by Hayato Kawai
Bedrock のコスト監視設計
fohte
2
620
Data Access Control で実現するより細かい権限制御
fohte
0
410
Datadog が支える Wantedly のシステム運用
fohte
0
140
Devin や Cursor などの生成 AI ツール導入に向けて何を取り組んだのか
fohte
2
370
Datadog Network Monitoring を活用して NAT Gateway 課金を 80 % 削減した話
fohte
2
800
Trace Metrics と Istio Metrics でサービス健全性を監視する
fohte
0
560
段階的リリースを実現する kube canary
fohte
1
250
巨大 tfstate に立ち向かう技術
fohte
1
1.3k
RubyKaigi で LT 初登壇したきっかけと感想
fohte
1
1.4k
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
120
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Google's AI Overviews - The New Search
badams
0
960
Navigating Team Friction
lara
192
16k
Scaling GitHub
holman
464
140k
It's Worth the Effort
3n
188
29k
Design in an AI World
tapps
0
190
4 Signs Your Business is Dying
shpigford
187
22k
Building Adaptive Systems
keathley
44
3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
Designing for Timeless Needs
cassininazir
0
190
Transcript
Japan Datadog User Group Meetup #15 Amazon Bedrock の コスト内訳を気合で
トラッキングする Feb.18 2026 - Hayato Kawai (@fohte) © 2026 Wantedly, Inc.
自己紹介 名前 Fohte ( ふぉーて) 川井 颯人 (Hayato Kawai) 所属
• ウォンテッドリー株式会社 / Infra Squad • Japan Datadog User Group アカウント • @fohte • @fohte © 2026 Wantedly, Inc.
持ち帰ってほしいこと • Bedrock のコスト内訳は Datadog APM の手動計装 + Trace Metrics
で追える ◦ ingestion も sampling される点に注意 • 正確性が必要なら Inference Profile と併用しよう © 2026 Wantedly, Inc.
CONTENTS 01 Bedrock コスト監視のつらさ 02 Datadog APM で解決する 03 ハマりどころ:
span の sampling 04 Inference Profile との使い分け © 2026 Wantedly, Inc.
01 Bedrock コスト監視のつらさ © 2026 Wantedly, Inc.
Bedrock のコスト監視のつらさ • ウォンテッドリーでは生成 AI をプロダクトに組み込む事例が増加し ている 昨年 11 月に採用候補者を探すための生成
AI エージェントをリリース https://www.nikkei.com/nkd/company/article/?DisplayType=1&ng=DGKKZO92778390T21C25A1TB1000&scode=3991&ba=1 © 2026 Wantedly, Inc.
コスト監視でやりたいこと • どのアプリケーションが • どの環境で • どのモデルを • どのくらい使っているか を見たい
© 2026 Wantedly, Inc.
解決策: Inference Profile による分離 詳細は JAWS-UG 東京 ランチタイム LT 会
#29 のスライドにて https://speakerdeck.com/fohte/bedrock-nokosutojian-shi-she-ji © 2026 Wantedly, Inc.
Inference Profile による分離 • 用途ごとに Application Inference Profile を作成 ◦
この inference profile に env , application のようなタグをつける • Cost Explorer 上でタグごとに分類する © 2026 Wantedly, Inc.
Inference Profile の課題 • 作成するのがまあまあ大変 ◦ Terraform module を作ったものの、module は複雑怪奇に…
• ひとつのアプリケーションの中でも機能ごとに inference profile を 作りたい ◦ 欲を言えば、どのメソッドから呼ばれているのかも知りたい • Cost Explorer はリアルタイム性がない ( 当日は反映されない) © 2026 Wantedly, Inc.
02 Datadog APM で解決する © 2026 Wantedly, Inc.
アプローチ: Bedrock 呼び出しを全部計装する • Datadog::Tracing.trace で Bedrock API 呼び出しを計装 •
span tag に必要な情報を詰め込む ◦ どの機能から呼び出されたか ( 例: feature:sourcing_ai ) ◦ input/output トークン数 ◦ モデル • ( 余談) dd-trace-rb に自動計装がなかった (Python はある) © 2026 Wantedly, Inc.
計装のイメージ (Ruby / dd-trace-rb) • Bedrock API 呼び出しを #trace で囲み、レスポンスから
usage を 取得して tag に詰める Datadog::Tracing.trace("bedrock.converse") do |span| bedrock_client.converse(params).tap do |res| span.set_tag("feature", "sourcing_ai") span.set_tag("input_tokens", res.usage.input_tokens) span.set_tag("output_tokens", res.usage.output_tokens) end end © 2026 Wantedly, Inc.
span から metrics 化 • Datadog APM は span から
custom metrics を生成できる ◦ コスト分析に必要な情報は span tag から tag を設定 namespace / env / model / feature ごとに閲覧可能に © 2026 Wantedly, Inc.
03 ハマりどころ: span の sampling © 2026 Wantedly, Inc.
前提: APM の trace pipeline • App → Agent →
Datadog backend の流れで 2 段階ある ◦ Ingestion: Agent から backend への送信 ◦ Indexing: Retention Filter による保持 ( 検索・閲覧用) • 今回使った Span-based Metrics は Ingested Spans から生成され る ◦ → Ingestion で落ちた span からは metrics が作れない ( 詳細) https://docs.datadoghq.com/tracing/trace_pipeline/ © 2026 Wantedly, Inc.
Span-based Metrics が実態と大きく乖離していた • Cost Explorer の実態と比較したところ、約 5% しか捕捉できていな かった
◦ 残りの 95% は Datadog に届く前に drop されていた • 原因: Datadog Agent の head-based sampling ◦ Datadog Agent のデフォルト: 10 traces/sec/Agent ◦ 手動計装した大部分が ingest 前に drop ◦ Span-based Metrics は Ingested Spans のみから生成される © 2026 Wantedly, Inc.
解決策: Single Span Sampling • head-based sampling で落とされた trace の中から、特定の
span だけを個別に ingest する仕組み ◦ trace 全体ではなく span 単位で保持判定できる • → bedrock.converse だけを 100% ingest 可能 ◦ root span は保持されず、trace 全体の可視化はできない 実際のトレースの例 © 2026 Wantedly, Inc.
04 Inference Profile との使い分け © 2026 Wantedly, Inc.
正確性 vs 柔軟性 Inference Profile Datadog APM (span) コストの正確性 100%
~90% ( ネットワーク不調等で欠損しうる) 粒度 Inference Profile 単位 ( 管理コストと粒度のトレードオフ) 機能・アクション単位 リアルタイム性 最大 24h 遅延 ほぼリアルタイム 運用コスト 作成・管理が大変 アプリ側で完結 © 2026 Wantedly, Inc.
どう使い分けるか • 正確なコスト把握 → Inference Profile + Cost Explorer •
機能単位の傾向分析・リアルタイム監視 → Datadog APM • 併用がベスト © 2026 Wantedly, Inc.
まとめ • Bedrock のコスト内訳は Datadog APM の手動計装 + Trace Metrics
で追える ◦ ingestion も sampling される点に注意 • 正確性が必要なら Inference Profile と併用しよう © 2026 Wantedly, Inc.