Wrangler 4.150.0 からソースマップが既定でアップロードされる(オプトアウトの書き方)
これまで upload_source_maps = true を書かないと Workers のスタックトレースはバンドル後のファイル名・行番号のままだった。Wrangler 4.150.0 から、何もしなくても元のファイル名と行番号で出るようになった。
何が変わったか
wrangler deploy・wrangler versions upload・wrangler previewが、ソースマップを生成してアップロードするのが既定になった- Cloudflare CLI の
cf deployも同じ。Cloudflare Vite plugin 1.64.0 以降はビルド時にソースマップを作り、cf deployがビルド出力内のマップを全部上げる - 元の位置に戻したスタックトレースは Workers Logs・リアルタイムログ・Tail Workers・Workers Issues に出る
- マップの適用は Worker の実行後なので、CPU 時間・バンドルサイズ・コールドスタートには影響しない
カスタムビルドの場合
外部ファイルのソースマップは自動で拾う。data: のインラインマップのように解決できないものは、失敗させずにスキップする。「マップが上がらないならデプロイを失敗させたい」ときは、あえて upload_source_maps = true を明示する。
オプトアウト
ソースコードの構造を外に出したくない、などの理由で止めたいとき。
toml
# wrangler.toml
upload_source_maps = falsejsonc
// wrangler.jsonc
{ "upload_source_maps": false }cf や Vite plugin を使う場合は、その Worker の Vite 環境で build.sourcemap を false にする。
注意点
- 既定が変わるので、CI の Wrangler を上げたタイミングでアップロードが始まる。ソースマップに含めたくないもの(コメント内の内部情報など)がないか一度見ておく
- 古い Wrangler に固定している場合は従来どおり明示が必要
関連
- Cloudflare Workers / Developer Platform 小技まとめ
- Cloudflare Workers / Durable Objects の本番オンデマンド CPU・メモリプロファイリング