AWSのlambdaが上手く動かない時のトラブルシュート(備忘録)
概要
lambdaをjavaで実装中に陥った多様な問題とその解決法を備忘録として記していく(都度追記する予定)
CloudwatchLogsにログが残らない場合
メモリ不足の可能性
- 現象
- Internal server error になる
- CloudWatch Logs を確認すると、開始と終了のログしか残っていない状態
- try-catchしているのにcatchに入らない場合
- 可能性
- メモリ不足やタイムアウトで落ちている可能性がある
- 対応
- 使用可能なメモリを上げる
- タイムアウト時間を延ばす
- メモ
- ログには使用したメモリが表示されておりMAXを超えていないように見えたとしても、どうやら実行中に瞬発的に消費して落ちるケースがあるみたい
CloudwatchLogsにログが残る場合(例外が捕捉できる場合)
権限不足の可能性
- 試行
- まずはtry-catchして例外のメッセージを確認する
- 可能性
- 権限不足でアクセスできていない可能性がある
- 対応
- 必要な権限をlambdaの実行ロールに付ける
タイムアウトになっている場合
単純に処理時間が長い可能性
- 対応
- lambdaのタイムアウト設定を変更する