背景
画面からS3にファイルをアップロードする仕組みを構築していました。
実装はできたのですが、1MBを超えるファイルをアップロードすることができないと申告がありました。それ以下ならアップロードできるのですが、、、。
ということで調査した内容です。
S3とALBじゃなかった
S3の問題ではないかと考えて、S3の設定を確認しました。
しかし、アップロードサイズを制限するような設定はありません。
また、ALBも疑いましたが、ALBもサイズ制限をするような設定はありません。
Springだった
そこで、コンテナで動いているJavaアプリを疑いました。
で、ここでCloudWatchLogsを確認します。(先にログを見るべきですね)
以下のようにログが出力されているのを確認しました。
2025-03-xxT11:06:33.025+09:00
org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.
fallback
ファイルアップロードの上限にかかっていることがわりました。
spring.servlet.multipart.max-file-size
の設定です。この設定をいれてないと、デフォルトで1MBが上限になっているのです。
対応
application.yml
に追加しました。