1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CloudFront Logging v2 で S3 に保存する場合、バケット名に制約がある

Posted at

はじめに

2024年11月に CloudFront のアクセスログ出力機能が v2 に改善された。

この新しい機能を使うことで、ログファイルの出力をデフォルトで年月日などのレベルでパーティショニングができるため、ログファイルの検索やAthenaなどの機能を利用しようとするときに非常に便利になる。

そこでこの機能を利用するために S3 への保存を選んだのだが、以下のようなエラーが発生してしまう。

SnapCrab_NoName_2025-1-31_18-44-50_No-00.png

1 validation error detected: Value '*********************************' at 'name' failed to satisfy constraint: Member must satisfy regular expression pattern: [\w-]

ここでは、この問題の解消法についてをまとめる。

結論

エラーメッセージの name が何のことかがわからなかったが、これはバケット名である。

問題を解消するには、正規表現 [/w-]* に一致する、つまり、アルファベット (a-zA-Z), アンダースコア (_)、半角整数 (0-9) およびハイフンのみの名前で作成された S3 バケットを指定する必要がある ようだ。

バケット命名規則では . を含むことができる(実際、今回テストに指定したバケット名は www.t-kigi.net であり . を含んだバケット名である)が、これを含むと指定の正規表現に一致しないため注意する必要がある。

なお、この機能が登場するまでの S3 への保存機能(レガシー)ではバケット名に . があってもログ保存ができる。
そのため、将来的にはこの制限はもしかするとバグとして解消されるかもしれない。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?