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
2
1.5k
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
2024/08/19 PEK Recap | データで振り返るPEK2024
rynsuke
2
220
バッチ処理のSLOをどう設計するか
rynsuke
10
1.4k
スタートアップにおける、チーム拡大を見据えたコンポーネント分割の取り組み
rynsuke
3
3.4k
Notionではじめるライフハックのススメ
rynsuke
18
1.4k
「Datadog入れてみたらAWSの料金が爆発した話」@ゆるSRE勉強会 #1
rynsuke
12
11k
LLM Meetup Tokyo #2 手続きを記憶するコマンド型エージェントの実装
rynsuke
3
3k
Other Decks in Technology
See All in Technology
クラウド関連のインシデントケースを収集して見えてきたもの
lhazy
7
990
手を動かしてレベルアップしよう!
maruto
0
210
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
590
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
600
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
180
システム・ML活用を広げるdbtのデータモデリング / Expanding System & ML Use with dbt Modeling
i125
1
320
スキルだけでは満たせない、 “組織全体に”なじむオンボーディング/Onboarding that fits “throughout the organization” and cannot be satisfied by skills alone
bitkey
0
180
Pwned Labsのすゝめ
ken5scal
2
440
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
130
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
5k
AIエージェント入門
minorun365
PRO
31
18k
脳波を用いた嗜好マッチングシステム
hokkey621
0
290
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
336
57k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
KATA
mclloyd
29
14k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
We Have a Design System, Now What?
morganepeng
51
7.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Writing Fast Ruby
sferik
628
61k
How GitHub (no longer) Works
holman
314
140k
Building Applications with DynamoDB
mza
93
6.2k
Scaling GitHub
holman
459
140k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
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を活⽤することで以下を実現 ◦
エラーの⾃動グルーピングと発⽣状況の可視化 ◦ 新規パターンの通知 ◦ エラー調査のためのコンテキストの集約 • β版ではありますが、とても便利な機能なのでぜひ使ってみてください!
ク ラ ウ ド 運 ⽤ を 安 全 に