Closed6
7/10以降に発生しているAuth0 JP-1リージョンの5xxエラー増加調査
検知 2023.7.11
- 7/11 0:00 (UTC) 頃から5xxのエラーレートの増加を検知
- エラーレートは、CloudFrontの5xxErrorRate メトリクスを監視
- 本環境では自己管理証明書を利用しており、CloudFrontをReverseProxyとして利用
- ManagementAPIやUniversal Login画面の要求時に5xx
調査
- 5xxエラーの内訳は、
504
および521
- 504の原因は、タイムアウト
- cloudfront→Auth0のリクエストで30秒を超過し、
OriginCommError
- cloudfront→Auth0のリクエストで30秒を超過し、
- 521の原因は、オリジンにアクセスできなかったこと?
- ログ上では、
OriginError
であり、0.3secでレスポンスしている
- ログ上では、
521エラーについて
- Cloudfront経由以外にも、ManagementAPIでも521が発生していることを確認
- 原因はCloudFlareが521を返しているため
"originalError": { "status": 521, "response": { "header": { "date": "Tue, 25 Jul 2023 10:47:28 GMT", "content-type": "text/html; charset=UTF-8", "transfer-encoding": "chunked", "connection": "close", "cf-ray": "7ec3d330be80f597-NRT", "cache-control": "private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0", "expires": "Thu, 01 Jan 1970 00:00:01 GMT", "referrer-policy": "same-origin", "x-frame-options": "SAMEORIGIN", "report-to": "{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=gZKSiPPvUNftsYi9l1YPBt4DYLYyHdQDdCrku4ezt0r%2B%2Fp3obvWmQGkFPSL9uCXHNJIxtaNWgqMoISAKZF4152h1zL7uf2sCjnNj3HhUq3F6mxc4Q1Lpx3%2BQiV4YSy1a7bYBKVzD6QzAUQXl\"}],\"group\":\"cf-nel\",\"max_age\":604800}", "nel": "{\"success_fraction\":0.01,\"report_to\":\"cf-nel\",\"max_age\":604800}", "vary": "Accept-Encoding", "x-content-type-options": "nosniff", "server": "cloudflare", "alt-svc": "h3=\":443\"; ma=86400" }, "status": 521, "text": "<!DOCTYPE html> ..." } }
- cloudflareから返却されるhtml
発生している事象を整理
1. Auth0からレスポンスが30秒以上返ってこない
- CloudFrontやLambdaからAuth0リクエスト時に、30秒レスポンスが返ってこない
- Autehtication APIやUniversal Loginなど、複数のエンドポイントで発生
- 結果、CloudFrontがtimeoutして、クライアントへ504を返却する
- lambdaのリクエストはtimeout処理で回避できる
- CloudFrontは対策できない、困る
2. Auth0から521エラーが返却される
- APIやUniversal Loginなど、Auth0へのリクエスト時に521エラーが返却される
- Auth0が利用しているCloudFlareが521を返却している模様
- 困る
3. (追加)Management APIのレスポンスに15sかかる
- ActionsやサーバーサイドからManagementAPIをCallした際、Responseまで15秒かかる
- デフォルトドメインでリクエストしているため、CloudFrontは経由していない
- 時間がかかるだけなので、timeout処理の実装で回避可能
ManagementAPIをCallしているLambdaの実行時間メトリクス。
明らかに7/10以降おかしい
書き忘れていたので、追記。
9/14にAuth0サポートから連絡があり、521エラーに関して修正を行ったとのこと。
原因は、ネットワーク設定とエッジプロバイダー(恐らくCloudfront)の呼び出しとのこと。
The root cause of this issue was traced back to networking configurations and calls made from our Edge Provider.
確かに、その後エラーが発生していない。
このスクラップは2023/09/18にクローズされました