Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

メトリクス

最終更新 Markdown で表示Agent セットアップ

Functions メトリクスは、Functions のパフォーマンスと使用状況を示します。問題の切り分けとワークロードの把握に使えます。

Functions メトリクス

Functions メトリクスは、Pages プロジェクト単位でリクエストデータを集計します。表示する手順は次のとおりです。

  1. Cloudflare ダッシュボードで Workers & Pages ページを開きます。

    Workers & Pages を開く ↗
  2. Pages プロジェクトを選びます。

  3. Pages プロジェクトで Functions Metrics を選びます。

Function の健全性を把握するには、次の 3 つのメトリクスが役立ちます。

  1. 成功したリクエスト
  2. エラーになったリクエスト
  3. 呼び出しステータス

リクエスト

Functions metrics では、合計、成功、エラーに分けた過去のリクエスト件数を確認できます。サブリクエストの情報は Subrequests を選ぶと表示されます。

  • Total: Function が受け取ったすべての受信リクエストです。Web Application Firewall (WAF) などのセキュリティ機能でブロックされたリクエストは数えません。
  • Success: Success または Client Disconnected呼び出しステータス を返したリクエストです。
  • Errors: Script Threw ExceptionExceeded Resources、または Internal Error呼び出しステータス を返したリクエストです。
  • Subrequests: Function 内から fetch を呼び出して発生したリクエストです。Function が静的アセットを取得すると、サブリクエストとして数えます。キャッチされないエラーを投げたサブリクエストは数えません。

時間範囲が 6 時間未満の場合、グラフの末尾付近でトラフィックが下がって見えることがあります。実際のトラフィック低下ではなく、集計とメトリクス配信のわずかな遅延です。

呼び出しステータス

Function の呼び出しステータスは、Workers ランタイムで Function が正常に実行されたか、レスポンスを返せなかったかを示します。HTTP ステータスコードとは異なります。Function の呼び出し自体は成功しても、Workers ランタイム外の別エラーで、成功の HTTP ステータスにならない場合があります。一部の呼び出しステータスでは、クライアントに Workers エラーコードが返ります。

呼び出しステータス 定義 Workers エラーコード GraphQL フィールド
Success Worker スクリプトが正常に実行されました success
Client disconnected リクエスト完了前に HTTP クライアントが切断しました clientDisconnected
Script threw exception Worker スクリプトが未処理の JavaScript 例外を投げました 1101 scriptThrewException
Exceeded resources^1 Worker スクリプトがランタイム上限を超えました 1102, 1027 exceededResources
Internal error^2 Workers ランタイムでエラーが発生しました internalError
  1. Exceeded Resources は、Worker が ランタイム上限 を超えたときに表示されることがあります。もっとも多い原因は CPU 時間の超過です。スタートアップ時間や Free プランの上限超過でも発生します。
  2. Internal Error は、システム内部の障害で Workers ランタイムがリクエストを処理できなかったときに表示されることがあります。Function のコードやリソース上限が原因ではありません。Internal Error のリクエストは稀ですが、通常運用でも発生することがあります。これらのリクエストは課金対象の使用量に数えません。Internal Error の割合が高い場合は www.cloudflarestatus.com を確認してください。

例外をさらに調べるには、デバッグとログ を参照してください。

実行あたりの CPU 時間

実行あたりの CPU 時間チャートは、reservoir sampling で求めた分位数ごとに、過去の CPU 時間を示します。分位数の見方 も参照してください。

高い分位数が CPU 時間の上限 を超えて見えることがあっても、呼び出しエラーにならない場合があります。Workers ランタイムには、CPU 上限未満のリクエストの CPU 時間を繰り越す仕組みがあるためです。

実行あたりの Duration

Functions metrics ダッシュボードの Median CPU time の下にある Duration チャートは、Function 実行あたりの過去の Duration を示します。CPU 時間チャートと同様に、関連する分位数に分けて表示します。

Function 本体で多くの計算を行う予定がある場合、Duration の把握は重要です。CPU 時間を最大 30 秒まで使える Standard または Unbound の使用モデルが必要になることがあるためです。

Bundled Usage Model の Workers は、CPU 時間上限が 50 ms でも Duration が高くなることがあります。fetch リクエストなど、ネットワーク待ちの処理が多い場合です。

メトリクスの保持期間

Functions メトリクスは、最大 1 週間単位で、過去 3 か月まで確認できます。Pages プロジェクトの Functions metrics ダッシュボードには、上記のチャートと情報が含まれます。

役に立ちましたか?