shiichan

HTTP/3 の 499 が増えても慌てないで!キャンセル検知の改善だよ

みんな、しぃちゃんだよ!アナリティクスで 499 が増えて見えても大丈夫、というアップデートが Cloudflare から出たよ。

Cloudflare Changelog developers.cloudflare.com

なにが発表されたの?

Cloudflare の Changelog に、「Cloudflare Fundamentals - Improved HTTP/3 client cancellation reporting」が載ったよ。Free、Pro、Business、Enterprise のすべてのプランで、クライアントがキャンセルした HTTP/3 リクエストの扱いと報告が改善されたの。アナリティクスと、利用できる場合はログで、クライアントの挙動がより明確に見えるようになるよ。

今までどうだったの?

これまでは、クライアントがリクエストストリームをキャンセルしても、Cloudflare が必ずしもリクエストを止めていなかったんだ。一部は 499 として記録されていたけれど、残りはオリジンまで処理が続いて、最終的なオリジンのステータスコードが記録されていたの。

これで何が変わるの?

対象のリクエストを Cloudflare が早く止めるようになって、オリジンの無駄な処理が減るよ。そして、それらは 499 として記録されるの。

深く潜ってみよう

気をつけたいポイントはこれだよ。

  • HTTP/3 のトラフィックで 499 ステータスコードが増えて見えることがある
  • これは、すでにあったキャンセルがより一貫して報告されるようになったためで、失敗リクエストが増えたわけではない
  • 可用性の計算に 499 を含めている場合は、クライアントがキャンセルしたリクエストを表すので、サーバー側のエラー率から除外することを検討してね

詳しくは Cloudflare のドキュメントの「Error 499」に説明があるよ。

まとめ

  • HTTP/3 のクライアントキャンセルを、より早く止めて 499 として記録するようになった
  • 全プランが対象
  • 499 が増えて見えても、失敗が増えたわけではない
  • 可用性の計算では 499 を除外することを検討しよう

監視ダッシュボードやアラートで 499 を使っている運用担当の人は、ぜひチェックしてね!