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
Error Tracking for Logsを用いたバッチ処理のエラー監視
Search
Ryunosuke Iwai
October 25, 2023
Technology
3
2.1k
Error Tracking for Logsを用いたバッチ処理のエラー監視
@Datadog Japan Meetup 2023 Fall
https://datadog.connpass.com/event/296998/
Ryunosuke Iwai
October 25, 2023
Tweet
Share
More Decks by Ryunosuke Iwai
See All by Ryunosuke Iwai
A2Aのクライアントを自作する
rynsuke
1
440
2024/08/19 PEK Recap | データで振り返るPEK2024
rynsuke
2
350
バッチ処理のSLOをどう設計するか
rynsuke
11
1.9k
スタートアップにおける、チーム拡大を見据えたコンポーネント分割の取り組み
rynsuke
3
4k
Notionではじめるライフハックのススメ
rynsuke
24
1.8k
「Datadog入れてみたらAWSの料金が爆発した話」@ゆるSRE勉強会 #1
rynsuke
12
12k
LLM Meetup Tokyo #2 手続きを記憶するコマンド型エージェントの実装
rynsuke
3
3.5k
Other Decks in Technology
See All in Technology
田舎で20年スクラム(後編):一個人が企業で長期戦アジャイルに挑む意味
chinmo
1
1.6k
GitHub Copilot CLI 現状確認会議
torumakabe
8
1.7k
AIと融ける人間の冒険
pujisi
0
120
サラリーマンソフトウェアエンジニアのキャリア
yuheinakasaka
41
19k
製造業から学んだ「本質を守り現場に合わせるアジャイル実践」
kamitokusari
0
750
SwiftDataを覗き見る
akidon0000
0
270
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
7
3.4k
さくらのクラウドでのシークレット管理を考える/tamachi.sre#2
fujiwara3
1
190
Eight Engineering Unit 紹介資料
sansan33
PRO
0
6.3k
コミュニティが持つ「学びと成長の場」としての作用 / RSGT2026
ama_ch
2
340
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
2k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
150
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Scaling GitHub
holman
464
140k
Un-Boring Meetings
codingconduct
0
180
ラッコキーワード サービス紹介資料
rakko
0
2M
Speed Design
sergeychernyshev
33
1.5k
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を活⽤することで以下を実現 ◦
エラーの⾃動グルーピングと発⽣状況の可視化 ◦ 新規パターンの通知 ◦ エラー調査のためのコンテキストの集約 • β版ではありますが、とても便利な機能なのでぜひ使ってみてください!
ク ラ ウ ド 運 ⽤ を 安 全 に