Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dynalyst流Datadog活用法 (公開用)
Search
Kurochan
July 10, 2017
Technology
1
38k
Dynalyst流Datadog活用法 (公開用)
CyberAgent x Datadog勉強会で発表した資料です。(公開用に一部編集しています)
Kurochan
July 10, 2017
Tweet
Share
More Decks by Kurochan
See All by Kurochan
つなぐ、届ける、変える- コンテンツ配信の最前線ト——ク
kurochan
0
93
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
2.8k
AWS Elemental MediaPackageと格闘🤼
kurochan
2
74
サイバーエージェントでのSlack活用事例 @ 2025
kurochan
5
160
15年入社者に聞く! これまでのCAのキャリアとこれから
kurochan
1
320
入門 電気通信事業者
kurochan
13
5.7k
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
9
6k
GoでTCP Proxyを実装してみよう
kurochan
1
1.2k
サイバーエージェントの広告配信におけるIPoEトラフィックの概況
kurochan
0
520
Other Decks in Technology
See All in Technology
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
490
Capture Checking / Separation Checking 入門
tanishiking
0
110
MAP-7thplaceSolution
yukichi0403
2
250
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
490
Microsoft Agent 365 を 30 分でなんとなく理解する
skmkzyk
1
290
M5UnifiedとPicoRubyで楽しむM5シリーズ
kishima
0
110
形式手法特論:CEGAR を用いたモデル検査の状態空間削減 #kernelvm / Kernel VM Study Hokuriku Part 8
ytaka23
1
140
私も懇親会は苦手でした ~苦手だからこそ懇親会を楽しむ方法~ / 20251127 Masaki Okuda
shift_evolve
PRO
4
550
ECMAScript仕様の最新動向: プロセスの変化と仕様のトレンド
uhyo
2
490
Databricksによるエージェント構築
taka_aki
1
120
A Compass of Thought: Guiding the Future of Test Automation ( #jassttokai25 , #jassttokai )
teyamagu
PRO
1
190
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
9
1.9k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Done Done
chrislema
186
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing for humans not robots
tammielis
254
26k
BBQ
matthewcrist
89
9.9k
RailsConf 2023
tenderlove
30
1.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Code Reviewing Like a Champion
maltzj
527
40k
Speed Design
sergeychernyshev
33
1.4k
Transcript
Dynalyst流 Datadog活用法 株式会社サイバーエージェント アドテクスタジオ Dynalyst 黒崎 優太 @kuro_m88
誰 • ࠇ࡚ ༏ଠ (@kuro_m88) • ৽ଔ3 • Dynalyst ΤϯδχΞ
• ࣾྺ = Datadogྺ • झຯͰαʔόӡ༻(ཧ)͡Ί·ͨ͠
Dynalystについて
• Dynamic Retargeting for Games • Dynamic Personalized Ads
• AWS (ap-northeast-1, us-east-1) • EC2, ECS, Lambda • DynamoDB,
Aurora, S3, ElastiCache, CloudFront • EMR, Redshift, DataPipeline, CloudWatch • xxxx K req/s (Tokyo), xxxx K req/s (US) • xxxx VMs • xxTB / day logs System
本日お話すること • ͪΐͬͱมΘ͍ͬͨํ • ࢹϧʔϧͷཧ • োରԠ • ͜Ε͔Β
ちょっと変わった使い方
Time is money • ࠂεϐʔυ໋͕ • ৴ঢ়گΛ͙͢ʹͰѲ͍ͨ͠ • ඦͷࠂओ •
ଟͷγεςϜ࿈ܞ
fluent-plugin-dogstatsd • https://github.com/ryotarai/fluent-plugin-dogstatsd • ৴ϩά͔ΒϝτϦΫεΛੜ(CSV, LTSV, JSONͳͲ) • ࿈ܞઌ͝ͱ •
ࠂओ͝ͱ • ΞϓϦέʔγϣϯϩάͷΤϥʔΧϯτ • DataDogʹྲྀ͠ࠐΜͰଈ࣌ूܭͯ͠Β͏
配信状況の可視化の例 • ࠂओ͝ͱͷ৴ϘϦϡʔϜͳͲ
⛏監視ルールの管理⛏
⛏監視ルールの管理⛏ • ࢹϧʔϧɺखͰཧͯ͠Δਓʁ • ͭΒ͘ͳ͍ʁ • ࣗಈੜͨ͘͠ͳ͍ʁ
⛏Terraform Datadog Provider⛏ • monitor, downtime, timeboard, user resource "datadog_monitor"
"dynamodb_user_error_count" { name = "DynamoDB UserError count is above the Threshold !!" type = "metric alert" message = <<EOF @slack-metric-alert DynamoDB UserError count is above the Threshold !! EOF query = "sum(last_5m):sum:aws.dynamodb.user_errors{*} > 10" thresholds { warning = 5.0 critical = 10.0 } notify_no_data = false no_data_timeframe = 2 renotify_interval = 0 timeout_h = 0 require_full_window = true notify_audit = false tags = [terraform, dynamodb] }
クエリを手で書くのは難しい… • Datadog→TerraformͷimportεΫϦϓτ࡞Γ·ͨ͠ • Datadogͷࢹઃఆ͔ΒTerraformͷresourceΛੜ͢Δ • http://kurochan-note.hatenablog.jp/entry/2017/07/09/161444 $ ruby ./monitor-import.rb
dynamodb_user_error_count 112233 resource "datadog_monitor" "dynamodb_user_error_count" { name = "DynamoDB UserError count is above the Threshold !!" type = "metric alert" message = <<EOF @slack-metric-alert DynamoDB UserError count is above the Threshold !! EOF query = "sum(last_5m):sum:aws.dynamodb.user_errors{*} > 10" thresholds { warning = 5.0 critical = 10.0 } notify_no_data = false no_data_timeframe = 2 renotify_interval = 0
障害対応
障害対応 • োରԠ࣌ʹ͓͍ͯɺDatadog͕Ͳ͏ʹཱͭͷ͔ • ࢹ͍ͯ͠ͳ͔ͬͨ/Dashboardʹ͍ͯ͠ͳ͔ͬͨΛ Ͳ͏ͬͯ୳͢ͷ͔
障害を把握する • Metrics Explorer • ׳ΕΔͱؾ͍͍࣋ͪ
状況を共有する • Notebook
メトリクスを貯めておくことで分かること • ஷΊ͓ͯ͘ࣄ͕େ • ঢ়ଶͷѲ • ͍͔ͭΒ͓͔͍͠ͷ͔ • ฏৗ࣌Ͳ͏ͩͬͨͷ͔ •
DatadogͷMetric retention15ϲ݄ʂ • σʔλͷૹ৴ִ͕ؒ͗͢ΔͱܹॏʹͳΔͷͰҙ
障害でなくとも • ࣄલࠂ͞Εͨ τϥϑΟοΫ૿Ճ • ҟৗݕͰՄࢹԽ
注視すべき箇所を共有する • read-onlyϢʔβ͕࡞Ͱ͖ΔͷͰඇΤϯδχΞ ʹؾܰʹڞ༗Ͱ͖Δ • Ϗδωε৬ͷਓʹΘ͔Γ͍͢ใ͕ఏڙͰ ͖Δ
これから
これから • αʔό/AWSͷϝτϦΫε͕औΕΔʂ • ৴ϝτϦΫε͕औΕΔʂ
これから • αʔό/AWSͷϝτϦΫε͕औΕΔʂ • ৴ϝτϦΫε͕औΕΔʂ
…何かが足らない
(おねがい( • APMͷJVMݴޠରԠ͍ͬͯ·͢ʂ • Cloud WatchͷϝτϦΫεͷөִ͕͍ؒͱ خ͍͠ͳ͊… • ϩάͷϚωδϝϯτͰ͖Δͱ͍͍ͳ͊…