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
Dynalyst流Datadog活用法 (公開用)
Search
Kurochan
July 10, 2017
Technology
1
36k
Dynalyst流Datadog活用法 (公開用)
CyberAgent x Datadog勉強会で発表した資料です。(公開用に一部編集しています)
Kurochan
July 10, 2017
Tweet
Share
More Decks by Kurochan
See All by Kurochan
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
8
4.1k
GoでTCP Proxyを実装してみよう
kurochan
1
420
サイバーエージェントの広告配信におけるIPoEトラフィックの概況
kurochan
0
200
スケールするというのはどういうことなのか
kurochan
14
4.1k
サイバーエージェントのGitHub Copilot導入と 開発生産性
kurochan
38
37k
Cloudflare Zero Trustを利用したセキュアな開発環境へのアクセス手法の確立
kurochan
10
2.3k
セキュキャンを卒業してその後
kurochan
0
1.1k
サイバーエージェントの実践×実験Snowflake 導入の経緯から最新機能のトライアルまで / How Snowflake Is Used In CyberAgent - Go To the Future
kurochan
0
800
入門Open Policy Agent: Policy as Codeを目指して / introduction-to-open-policy-agent
kurochan
0
470
Other Decks in Technology
See All in Technology
[PlatformCon 24] Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
danielbryantuk
0
160
Tebiki株式会社 エンジニア採用資料
tebiki
0
4k
Databricks におけるデータエンジニアリング
databricksjapan
0
340
入社後初めてのタスクでk8sアップグレードした話.pdf
kkato1
0
370
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
940
Podmanで推す OpenShift Kubernetes入門/Introduction to OpenShift and K8s by Podman
tnk4on
0
180
Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetesto Achieve Both Frequent Updates and Stability
hhiroshell
10
2.9k
人間の尊厳、幸福、アクセシビリティ / 第116回「WEB TOUCH MEETING」アクセシビリティSP
nulabinc
PRO
2
160
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
170
Introduction to GKE x LLM
soma00333
0
140
0→1開発における技術選定において一番大切なこと
bicstone
1
310
Amplify Gen2を 拡張してみよう JAWS-UG北陸新幹線 ( 福井開催 ) 2024-04-06/Let's extend Amplify Gen2
fossamagna
0
280
Featured
See All Featured
Building Effective Engineering Teams - LeadDev
addyosmani
26
1.8k
Raft: Consensus for Rubyists
vanstee
130
6.2k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
Robots, Beer and Maslow
schacon
PRO
154
7.9k
[RailsConf 2023] Rails as a piece of cake
palkan
21
3.9k
Learning to Love Humans: Emotional Interface Design
aarron
266
39k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
185
16k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
124
32k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
13
1.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
35
2.5k
It's Worth the Effort
3n
180
27k
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ͷϝτϦΫεͷөִ͕͍ؒͱ خ͍͠ͳ͊… • ϩάͷϚωδϝϯτͰ͖Δͱ͍͍ͳ͊…