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
micrometerでDatadogにカスタムメトリクスを送信する
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kurochan
August 27, 2019
Technology
0
5.9k
micrometerでDatadogにカスタムメトリクスを送信する
夏のDatadogまつりで発表した資料です
https://datadog.connpass.com/event/141951/
Kurochan
August 27, 2019
Tweet
Share
More Decks by Kurochan
See All by Kurochan
2026年の個人的テーマ: 「計算機を燃やせ🔥」
kurochan
1
88
つなぐ、届ける、変える- コンテンツ配信の最前線ト——ク
kurochan
0
110
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
3k
AWS Elemental MediaPackageと格闘🤼
kurochan
2
88
サイバーエージェントでのSlack活用事例 @ 2025
kurochan
5
200
15年入社者に聞く! これまでのCAのキャリアとこれから
kurochan
1
340
入門 電気通信事業者
kurochan
13
5.8k
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
9
6k
GoでTCP Proxyを実装してみよう
kurochan
1
1.3k
Other Decks in Technology
See All in Technology
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
160
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
1
150
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
120
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
130
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
550
Databricks Free Edition講座 データサイエンス編
taka_aki
0
290
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
120
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
230
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.5k
Amusing Abliteration
ianozsvald
0
92
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
430
Into the Great Unknown - MozCon
thekraken
40
2.2k
Deep Space Network (abreviated)
tonyrice
0
44
HDC tutorial
michielstock
1
340
Large-scale JavaScript Application Architecture
addyosmani
515
110k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
110
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Transcript
micrometerでカスタムメトリクスを送信する Yuta Kurosaki ( @kuro_m ) AdTech Studio / CyberAgent,
Inc.
Yuta Kurosaki • Backend engineer at CyberAgent, Inc. • Scala
/ AWS +years • AdTech • developing DSP (Demand Side Platform) • over K reqs / sec (bid request) • AWSのAZ(アベイラビリティーゾーン)とは? AZ障害が起きたときどうすればよいのか • 昨⽇公開しました • https://developers.cyberagent.co.jp/blog/archives/ / @kuro_m @kurochan
Datadogに関する今までの発表 • 約2年ぶりに発表します https://speakerdeck.com/kurochan
Contents • カスタムメトリクスの活⽤⽅法 • 今までのカスタムメトリクスの送信⽅法 • micrometerによるカスタムメトリクスの送信
カスタムメトリクスの活⽤⽅法
運⽤しているシステム概況 • ⼊札リクエスト量: 数⼗万リクエスト / 秒 • ⼊札トラフィック: 約8Gbps •
レスポンスタイム: 100ms以内 • ログの量: 数TB / Day(圧縮状態) ຊͷೖࡳϦΫΤετඵ ຊΞϝϦΧͷϨεϙϯελΠϜ NTFD
最近⾒ていて楽しい画⾯ • オートスケーリング系のメトリクス
いろんなサービスを組み合わせています • ALL AWS 主要コンポーネント
広告はスピードが命 • 配信状況をすぐにでも確認したい • 数百社の広告主 • 多数のシステム連携 • おもにSSPや計測ツール
広告の配信状況をカスタムメトリクスに • 配信状況の可視化の例: 広告主ごとの配信量を可視化する
広告の配信状況をカスタムメトリクスに • 配信状況の可視化の例: SSP(メディアサイド)の接続先ごとに配信量を可視化 • 実際には数⼗社ある
広告の配信状況をカスタムメトリクスに • 配信状況の可視化の例: 広告の⼊札回りのメトリクスを可視化 • 広告⼊札候補の状況等 • ⼊札の機械学習モデルの挙動の異変に対してもすぐアラートが上げられる
今までのカスタムメトリクスの 送信⽅法
fluent-plugin-dogstatsd • 配信ログからメトリクスを⽣成 (CSV, LTSV, JSONなど) • 連携先ごと • 広告主ごと
• アプリケーションログのエラーカウント • Datadogに流し込んで簡易的な即時集計 ができるように • アラートも設定可能 https://github.com/ryotarai/fluent-plugin-dogstatsd
dogstatsdを使うことの⽋点 • アプリケーションとセットでfluentdやdatadog agentが必要になる • app(file) => fluentd => datadog-agent
=> datadog • ECSなどの場合はdatadog-agent等がサイドカーコンテナとして必要になる • AWS Lambdaの場合はカスタムメトリクスが送信できない…
アプリケーションからDatadog APIを直接叩く • インフラ的にはシンプルになるが、メトリクスの計測が発⽣する度に通信が 発⽣したり、APIのレイテンシの分アプリケーション内の処理時間が遅延し たりしないように考慮しなければならない • アプリケーション内でメトリクスのバッファリングをよしなにやってくれ て、直接Datadog APIを叩けるライブラリがほしい…
micrometerによる カスタムメトリクスの送信
micrometer • Pivotalが公開しているアプリケーションメトリクスの収集ライブラリ • Spring Boot向けに作られたがSpring Bootに関係なく汎⽤的に使える https://micrometer.io/
特徴 • 統⼀されたインターフェイスの上で各種サービスへメトリクスを転送できる • Datadog, Dynatrace, Elasic, NewRelic, Prometheus, Ganglia,
Influx ... etc • メトリクスのバッファリング機能もあるので安⼼ https://micrometer.io/
micrometer-registry-datadog • Scalaで少しラップしました
micrometer-registry-datadog • Scalaで少しラップしました • まだcounterしか実装していませんが、各種メトリクスがタグ付きでアプリ ケーション内から簡単に送信できます。
困っていること • registryをstop直前にバッファリングされているメトリクスがタイミングに よってはflushされず、アプリケーションのシャットダウン時にメトリクスが ⽋損する可能性がある • チームメンバによりIssue報告済み https://github.com/micrometer-metrics/micrometer/issues/
怪談 • 会場でのみ公開1
怪談 • 会場でのみ公開2
怪談 • 会場でのみ公開3
怪談 • 会場でのみ公開4
怪談 • Datadogのカスタムメトリクスの使⽤量をカスタムメトリクスで投げる • チームメンバが作成しOSS化しました • AWS Serverless Application Repositoryにも公開されています。
ボタンクリックで今すぐデプロイ!! https://github.com/phucnh/check-datadog-custom-metrics-usage