Skip to content

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

補足情報

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

1 日あたりのデータ量を見積もる

ゾーンの 1 日あたりのデータ量(ログ行数と、そのバイト数)を見積もるには、1 時間分のデータの 1% または 10% サンプルをリクエストします(量が少ない場合は 10% を使います)。start=2018-12-15T00:00:00Zend=2018-12-15T01:00:00Z は 1 時間の範囲で、sample=0.1 です。

curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received?start=2018-12-15T00:00:00Z&end=2018-12-15T01:00:00Z&sample=0.1" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
> sample.log
wc -l sample.log
83 sample.log
ls -lh sample.log
-rw-r--r-- 1 mik mik 25K Dec 17 15:49 sample.log

この情報から、1 日あたりのメッセージ数はおよそ 19,920 件(83 × 10 × 24)、バイトサイズは 6MB(25K × 10 × 24)です。サイズの見積もりは、デフォルトのレスポンスフィールドセットに基づきます。レスポンスフィールドセットを変えると(フィールド を参照)、レスポンスサイズも変わります。

1 日のトラフィックを適切に見積もるには、1 時間のサンプルで少なくとも 30 行のログを取るのがよいです。レスポンスが小さすぎる(または大きすぎる)場合は、時間範囲ではなく sample の値を調整します。

圧縮

レスポンスはデフォルトで圧縮されます(gzip)。cURL はレスポンスを透過的に展開します。次を指定した場合を除きます。

--header "Accept-Encoding: gzip"

この場合、出力は gzip のままです。圧縮後のデータは、非圧縮時のおよそ 5〜10% です。つまり、非圧縮 1GB のレスポンスは 50〜100MB に圧縮されます。

サービスの前提

成功したリクエスト

レスポンスまたはタイムアウトの上限を超えた場合、またはレスポンスの取得に問題があった場合は、ステータス 200 が返り、レスポンス末尾に JSON ではないテキスト行 “Error streaming data.” が付きます。レスポンスはストリームされるため、エラーを事前に知る方法はありません。末尾に “Error streaming data" のテキスト行がなければ、そのレスポンスは成功です。

あるゾーンと時間範囲で成功したレスポンスを受け取ったあと、以降の同じリクエストでは次が成り立ちます。

  • 返されるレコードの件数と内容は同じです。
  • レコードの順序は異なることがあります(異なる可能性が高いです)。

レスポンスフィールド

fields パラメーターの指定について:

  • リクエスト URL にフィールドを明示した場合、返されるフィールドは変わりません。
  • URL に指定しない場合は、デフォルトフィールドが返されます。
  • デフォルトフィールドはいつでも変わることがあります。

制限

次の利用制限があります。

  • レート制限: この上限を超えると 429 エラーレスポンスになります。
    • ゾーンあたり 15 リクエスト/分。
    • ユーザー(メールアドレス)あたり 180 リクエスト/分。
  • 時間範囲: startend パラメーターの差は最大 1 時間です。
  • レスポンスサイズ: 1 リクエストあたりの最大レスポンスサイズは 10GiB です。約 55 フィールドを選んだ場合、およそ 1,500 万レコードに相当します(選ぶフィールドが少ないほどレコードあたりのサイズが小さくなり、より多くのレコードを取得できます)。
  • タイムアウト: 10 分後に接続が切断され、レスポンスは失敗します。
  • ストリームタイムアウト: 接続が 30 秒アイドルになると、リクエストは 408 エラーレスポンスで終了します。このタイムアウトは、リクエストが重すぎることが多いです(1 時間あたり 12 回を超える頻繁なタイムアウトがあると、以降のクエリは 1 時間、ステータスコード 429 でブロックされます)。そのため、次を試してください。
    • より少ないフィールドでレコードをリクエストします。
    • startend の範囲を狭くします。

役に立ちましたか?