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
micrometerでDatadogにカスタムメトリクスを送信する
Search
Kurochan
August 27, 2019
Technology
5.9k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
micrometerでDatadogにカスタムメトリクスを送信する
夏のDatadogまつりで発表した資料です
https://datadog.connpass.com/event/141951/
Kurochan
August 27, 2019
More Decks by Kurochan
See All by Kurochan
ABEMAのバグバウンティの取り組み
kurochan
1
1.2k
2026年の個人的テーマ: 「計算機を燃やせ🔥」
kurochan
1
210
つなぐ、届ける、変える- コンテンツ配信の最前線ト——ク
kurochan
0
180
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
3.3k
AWS Elemental MediaPackageと格闘🤼
kurochan
2
150
サイバーエージェントでのSlack活用事例 @ 2025
kurochan
5
290
15年入社者に聞く! これまでのCAのキャリアとこれから
kurochan
1
410
入門 電気通信事業者
kurochan
13
5.9k
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
9
6.4k
Other Decks in Technology
See All in Technology
リアーキテクチャ後の障害ゼロを目指したShadow Testingの取り組み
nihonbuson
PRO
1
160
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
9
4.6k
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
cscengineer
PRO
0
120
AI de Idea
kawaguti
PRO
2
130
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
470
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
200
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
160
`t*(42&t>>10)`だけで音楽が鳴る、Swiftで実装するBytebeat / iOSDC Japan 2026
yutailang0119
0
110
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
3
1.8k
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
3
750
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
250
AIは推し活である。
kurazuuuuuu
1
790
Featured
See All Featured
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
A Modern Web Designer's Workflow
chriscoyier
699
190k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
700
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
How to Ace a Technical Interview
jacobian
281
24k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Fireside Chat
paigeccino
43
4k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
GitHub's CSS Performance
jonrohan
1033
470k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
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