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
Error Tracking for Logsを用いたバッチ処理のエラー監視
Search
Ryunosuke Iwai
October 25, 2023
Technology
2.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Error Tracking for Logsを用いたバッチ処理のエラー監視
@Datadog Japan Meetup 2023 Fall
https://datadog.connpass.com/event/296998/
Ryunosuke Iwai
October 25, 2023
More Decks by Ryunosuke Iwai
See All by Ryunosuke Iwai
A2Aのクライアントを自作する
rynsuke
1
590
2024/08/19 PEK Recap | データで振り返るPEK2024
rynsuke
2
450
バッチ処理のSLOをどう設計するか
rynsuke
11
2.2k
スタートアップにおける、チーム拡大を見据えたコンポーネント分割の取り組み
rynsuke
3
4.4k
Notionではじめるライフハックのススメ
rynsuke
24
2.2k
「Datadog入れてみたらAWSの料金が爆発した話」@ゆるSRE勉強会 #1
rynsuke
12
12k
LLM Meetup Tokyo #2 手続きを記憶するコマンド型エージェントの実装
rynsuke
3
3.8k
Other Decks in Technology
See All in Technology
導入から定着へ ~コーディングエージェントを日常業務に組み込む実践知~
yukisakai1225
0
200
野良MCPサーバーを排除せよ!MCPサーバーのガバナンス
yukiogawa
1
160
Claude for Google Workspaces ポン出し/claude-for-google-workspace-slide-conversion
emiki
0
170
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
780
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
1.1k
局所最適は悪ではない。壊れているのは指標です。量と質を同時に見る先行指標の設計
recruitengineers
PRO
2
300
AI駆動開発におけるハーネスエンジニアリングの勘所
tsukuboshi
1
510
CSS2026:OWS研究会・招待講演「世界観を、実装する」
atsush1_sada
2
220
Optunaの最新リリースv5.0について
pfn
PRO
0
140
CTO Night|NotionのAIエージェントとFDE
kzkhykw1991
0
300
Metadata - Section 2: Simple Metadata & Meta Tags
mohab1
0
120
Claude Code on Bedrock で統制をかける小ネタ集/claude-code-bedrock-governance-tips
emiki
1
270
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
400
Speed Design
sergeychernyshev
33
2.2k
RailsConf 2023
tenderlove
30
1.6k
Mind Mapping
helmedeiros
1
400
Building AI with AI
inesmontani
PRO
1
1.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Agile that works and the tools we love
rasmusluckow
331
22k
The Language of Interfaces
destraynor
162
27k
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Building the Perfect Custom Keyboard
takai
2
910
A Tale of Four Properties
chriscoyier
163
24k
Transcript
Error Tracking for Logsを⽤いた バッチ処理のエラー監視 @Datadog Japan Meetup 2023 Fall
Cloudbase 株式会社 @ryuke
2022年4月 株式会社メルカリ Microservice Platform CI/CD Kubernetes / Github Actions 2023年1月
Cloudbase株式会社 Platform / SRE チーム Go / terraform / Datadog SNS https://twitter.com/i_ryuke Pokemon Sleep 6645-5328-5408 スイカを転がすゲーム ブーム 現職 前職 @ryuke 岩井 ⿓之介
None
システム構成
システム構成
スキャンワークフローをStep Functionsで実現 +
None
Datadog導⼊により達成できたこと • インテグレーションによりサービスの状態が⼀⽬でわかるように
Datadog導⼊により達成できたこと • CloudWatch Logsを使っていたが、ロググループごとにしかログを確認で きなかった → ログを横断的に確認できるように
⼀⽅で、⼤量のデータを処理するバッチジョブに対する監視の課題 • ⼤量のデータを処理する中で、どうしても⼀部のケースでエラーは発⽣する ◦ APIのレートリミットや権限不⾜、想定していないパターンのデータ、避けられ ないヌルポ • 個々のエラーは要対応ではあるが、寝ている⼈を毎回叩き起こすほどのものではない • 既存のソリューションはうまくフィットしない
◦ Step Functions インテグレーション: ジョブ単位の死活監視のみ ◦ APM: 処理がリクエストごとに分割されていることが前提
監視要件 1. 各エラーが何件、どんな頻度で発⽣しているのかを可視化したい 2. 新しいパターンのエラーが発⽣したときに通知したい 3. 各エラーを調査するのに⼗分なコンテキストが得られること
監視要件 1. 各エラーが何件、どんな頻度で発⽣しているのかを可視化したい 2. 新しいパターンのエラーが発⽣したときに通知したい 3. 各エラーを調査するのに⼗分なコンテキストが得られること → Error Tracking
for Logs がうまくハマった
Error Tracking for Logs
Datadog Error Tracking for Logs • APM / RUM にもError
Trackingはあったが、そのLogs版 • Datadog Logsを活⽤していれば、最⼩限のセットアップで使い始めること が可能 • 2022/11リリース • 2023/10時点でβ機能
セットアップ • 構造化ログのフィールドにエラースタックとメッセージを追加するだけ
1. 各エラーが何件、どんな頻度で発⽣しているのかを可視化したい • コンテキスト情報を元に⾃動でグルーピングしてくれる • それぞれの発⽣件数や頻度を可視化 • ステータスのトラッキング • regressionの検知
2. 新しいパターンのエラーが発⽣したときに通知したい • 新規に発⽣したイシューに対してのみ通知を発⾏することが可能 ◦ アラート疲れの防⽌ • もちろん、既存のものを通知することもできる
3. 各エラーを調査するのに⼗分なコンテキストが得られること • ログのフィールドとして好きな情報を⼊れられる • 該当のログに対してフィルタリングやグルーピングを⾏なってドリルダウンしながら調査し ていく体験が最⾼
達成できたこと ✅ 1. 各エラーが何件、どんな頻度で発⽣しているのかを可視化したい ✅ 2. 新しいパターンのエラーが発⽣したときに通知したい ✅ 3. 各エラーを調査するのに⼗分なコンテキストが得られること
まとめ • バッチ処理の監視に関して、全体に影響を与えないエラーの発⽣状況をう まくトラッキングしたいという課題があった • Error Tracking For Logsを活⽤することで以下を実現 ◦
エラーの⾃動グルーピングと発⽣状況の可視化 ◦ 新規パターンの通知 ◦ エラー調査のためのコンテキストの集約 • β版ではありますが、とても便利な機能なのでぜひ使ってみてください!
ク ラ ウ ド 運 ⽤ を 安 全 に