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
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
Search
Nealle
March 06, 2025
Programming
2
1.4k
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
Japan Datadog User Group Meetup#8@札幌
https://datadog-jp.connpass.com/event/344084/
Nealle
March 06, 2025
Tweet
Share
More Decks by Nealle
See All by Nealle
モビリティSaaSにおけるデータ利活用の発展
nealle
0
530
Pythonに漸進的に型をつける
nealle
1
180
品質ワークショップをやってみた
nealle
0
1.2k
DevHRに全部賭けろ
nealle
0
190
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
1
2.3k
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
350
生成AI、実際どう? - ニーリーの場合
nealle
0
980
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
4
17k
ニーリーにおけるプロダクトエンジニア
nealle
0
1.3k
Other Decks in Programming
See All in Programming
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
1.6k
カンファレンス遠征を(安く)楽しむ技術
wp_daisuke
0
180
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
570
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
1k
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
4.5k
PyCon mini 東海 2025「個人ではじめるマルチAIエージェント入門 〜LangChain × LangGraphでアイデアを形にするステップ〜」
komofr
3
1.1k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.9k
詳細の決定を遅らせつつ実装を早くする
shimabox
1
1.3k
Flutterチームから作る組織の越境文化
findy_eventslides
0
470
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
270
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
6.6k
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.5k
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
330
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Fireside Chat
paigeccino
41
3.7k
Building Adaptive Systems
keathley
44
2.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
RailsConf 2023
tenderlove
30
1.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
The Language of Interfaces
destraynor
162
25k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Transcript
Lambdaの監視、できてますか? Datadogを用いてLambdaを見守ろう 株式会社ニーリー プラットフォーム開発部 SREチーム 大木建人 2025/03/06 Japan Datadog User
Group Meetup#8@ 札幌
2 自己紹介 氏名 所属 経歴 大木 建人 / Kento Ogi
株式会社ニーリー プロダクト統括本部 プラットフォーム開発G SREチーム 趣味 夏はボルダリング🧗 冬はスノーボード🏂 2018-2020 大学で強化学習の研究 & インターンでAWSにハマる 2020-2023 新卒で合同会社DMM.comへ AWSにハマってたらSRE部メンバーに 2023- 株式会社ニーリーへ入社 SREとして信頼性やリリースエンジニアリングに取り組む @2357gi @2357gi
3 プロダクト紹介
ニーリーがわかるコンテンツ 4 Recruit | 採用関連資料
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
5 本日のお品書き
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
6 本日のお品書き
7 Lambda関数がどのように発火し、 エラー時にどうするのか/通知されるのかが設定されていなかった ミッションクリティカルなLambdaも存在 (このLambdaが失敗するとサービスとしてヤバイ) 通知は個別で設定されていたが、 網羅的にカバーできていたわけではなかった 現状の問題と目指した世界線
8 エラーに気づかない、原因を追いきれないリスクが存在 → サービスの信頼性が脅かされている 現状の問題と目指した世界線
9 今回の対応のゴール ・ミッションクリティカルなLambdaを定義・洗い出す ・そのLambdaに問題が起きたら即座に検知できる仕組みを作る ・対応が必要かどうかを判断しやすくする 現状の問題と目指した世界線
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
10 本日のお品書き
11 アプリケーションコードを確認 呼び出されている関数をリストアップし整理 定義: 「正常に機能しない場合、契約率に影響しうる」と判断したLambda関数 ミッションクリティカルなLambdaとは
12 アプリケーションコードを確認 呼び出されている関数をリストアップし整理 クリティカルな関数の例: 契約申し込み時にiPhone用画像拡張子(heic)で アップロードされた画像をjpegに直すLambda関数 クリティカルでは無い関数の例: 検証用DBを夜間停止するLambda関数 定義: 「正常に機能しない場合、契約率に影響しうる」と判断したLambda関数
ミッションクリティカルなLambdaとは
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
13 本日のお品書き
14 Lambdaの監視と通知は2パターン存在 ・アプリケーション側のエラーや異常終了 具体的な監視ポイントと条件
15 Lambdaの監視と通知は2パターン存在 ・アプリケーション側のエラーや異常終了 ・Lambda関数のリソース上の問題 ・タイムアウト間際な関数やメモリ上限に近い関数 具体的な監視ポイントと条件
16 Lambdaの監視と通知は2パターン存在 ・アプリケーション側のエラーや異常終了 ・Lambda関数のリソース上の問題 ・タイムアウト間際な関数やメモリ上限に近い関数 前者はもちろん、後者も潜在的なリスクなので 問題が発生する前に検知・通知したい 具体的な監視ポイントと条件
17 Lambdaの監視と通知は2パターン存在 ・アプリケーション側のエラーや異常終了 ・Lambda関数のリソース上の問題 ・タイムアウト間際な関数やメモリ上限に近い関数 前者はもちろん、後者も潜在的なリスクなので 問題が発生する前に検知・通知したい Datadog Monitorsを用いてslackへの通知を実装 🎉
具体的な監視ポイントと条件
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
18 本日のお品書き
19 (ほぼ)全てのLambdaは一つのリポジトリでSAMにより管理 Datadog Extension LayerをLambdaに追加 実装方法について
20 ミッションクリティカルかどうかを判断するために 全てのLambdaにリソースタグを追加 実装方法について
21 該当タグの設定漏れを検知するために CDにバリデーションを追加 実装方法について
1. 現状の問題と目指した世界線 2. ミッションクリティカルなLambdaとは 3. 具体的な監視ポイントと条件 4. 実装方法について 5. 実際の運用
22 本日のお品書き
23 ・ミッションクリティカルなLambda 前述した条件での監視設定を追加 問題があるとマズいLambdaに 異常があると SREチームが気付けるように 🎉 実際の運用
24 ・ミッションクリティカルではないLambda ダッシュボードを新規作成するのではなく datadogのserverless画面にフィルターを適用 このコンソールが十分優秀🥳 memory不足や実行時間ピンチもいい感じにわかる 週次で見守り、問題があった時に 検知ができるように 🎉 実際の運用
25 Datadogを使えば網羅的にLambdaの監視ができます🥳 ミッションクリティカルなLambdaに対するアラーティングはもちろん、 そうでないLambdaに対しても質の良い監視ができるのでオススメ Layerを追加すればいいだけなので楽々✨ 余談: 明日のRoad to SRE NEXT@札幌でも登壇予定です
SREのタスク優先度について話します 💪 まとめ