Cloudflare Workers が送るリクエストを、Cloudflare analytics がどう集計するかを説明します。
特定のルートで no-op Worker(元のクライアントリクエストをオリジンへ渡し、レスポンスをプロキシするだけの Worker)が動いている場合、オリジンへのリクエストは、最初のクライアントからエッジへのリクエストとは別に「サブリクエスト」として数えられます。そのため、Worker が静的レスポンスだけを返し、オリジンへ到達しない場合を除き、クライアント → エッジのリクエストと、エッジ → オリジンのリクエストは、Analytics のリクエスト数や帯域にそれぞれ加算されます。サブリクエストは、Cloudflare Analytics アプリの Requests グラフや Bandwidth グラフには含まれません。
ダッシュボードのゾーン Analytics の数値は、訪問者トラフィックを表します。つまり、ゾーン Analytics(ダッシュボードの Analytics タブ)に表示されるリクエスト数は、クライアントへ返したリクエスト数です。
同様に、帯域はクライアントへ送った帯域で数え、ステータスコードはクライアントへ返したステータスコードです。サブリクエストが 500 を受け取っても、Worker が 200 を返す場合、ステータスコードの内訳には 200 が表示されます。
サブリクエストトラフィック(オリジン向きのトラフィック)の内訳を見るには、Cloudflare の Analytics アプリを開き、Workers タブを選びます。Workers タブの Service Workers パネルの下に、件数別の Subrequests、Bandwidth、Status Codes の内訳があります。オリジンのエラー(500 の急増など)の発見とデバッグ、キャッシュヒット率の把握、オリジンへ向かうトラフィックの理解に使えます。
Workers の Analytics が表示されないのはなぜですか?
- Workers を使っていない(どのルートやフィルターにも Workers をデプロイしていない)場合、表示できる情報はありません。
- Worker がオリジンへ
fetch()せず、静的レスポンスだけをクライアントへ返す場合、サブリクエストはありません。そのため、すべてのトラフィックはゾーン Analytics に表示されます。
課金に影響しますか?
いいえ。Workers の課金 は、Worker を通過したリクエストに基づきます。
キャッシュヒット率が高いのはなぜですか?
Worker が処理したリクエストは、常にキャッシュ済みとして表示されます。サブリクエストの正確なキャッシュヒット率は、Analytics アプリの Workers 分析タブにある Subrequests グラフを参照してください。