jsonscraper

CloudflareがSQL APIのイントロスペクションを更新:JSONフィールドを推測なしで検出

include_attributesパラメーターで、過去7日間に確認されたattributesのキーと値の型を表示。分析データへのクエリを確認し、連携を更新する方法を解説します。

編集方針 誤りを報告する

分析データセットのスキーマにJSON列attributesがあっても、そのキーがアカウントのデータによって異なる場合、Cloudflareのイントロスペクションでキーを検出できるようになりました。2026年10月27日の更新でinclude_attributes=trueパラメーターが追加され、過去7日間のアカウントデータで見つかったキーと型がレスポンスに列挙されます。

記事:CloudflareがSQL APIのイントロスペクションを更新:JSONフィールドを推測なしで検出
概要:2026年10月27日、CloudflareはSQL APIのイントロスペクションにinclude_attributesを追加しました。この更新により、アカウントデータで利用可能なJSON属性を見つけやすくなり、従来の列挙方法を置き換えます。
画像の役割:カバー — 中心的な考え方
セクション:
ビジュアルの内容:Cloudflare分析用SQLスキーマの検出。半透明のJSONデータ列が、ラベル付きのキーと型へ枝分かれするクローズアップ
© jsonscraper · AI生成イラスト

開発者にとって、これは具体的な課題を解決します。フィルターを作成する前に、選択したデータセットに実際に存在するフィールドを確認できます。以前の名称であるinclude_custom_attributesとcustom_attributesも引き続き動作しますが、Cloudflareは非推奨としています。新しい連携では更新されたSQL APIイントロスペクションを利用してください。

イントロスペクションで返される情報

Cloudflare Analyticsの一部のデータセットでは、追加のキーと値のペアがattributes列に格納されています。新しいパラメーターを使ったイントロスペクションは、過去7日間のデータをもとにキーと型を判定し、データセットオブジェクトのattributesフィールドに情報を返します。これはアカウントの最近のレコードから導出したスキーマで、SQLクエリの準備に役立ちます。

Cloudflareの公式例では、/client/v4/analytics/sql/introspectionエンドポイントにアカウントIDとデータセット名events.httpRequestsを渡し、属性の検出を有効にしています。

curl --get "https://api.cloudflare.com/client/v4/analytics/sql/introspection" \
  --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
  --data-urlencode "account_tag=$CLOUDFLARE_ACCOUNT_TAG" \
  --data-urlencode "dataset_name=events.httpRequests" \
  --data-urlencode "include_attributes=true"

実行前に、環境変数CLOUDFLARE_API_TOKENとCLOUDFLARE_ACCOUNT_TAGを設定してください。トークンはBearer認証情報として渡します。例にある変数名はコマンドのローカル設定であり、Cloudflareの個別パラメーターではありません。

検出したキーをクエリに使う

イントロスペクション後、対象データセットの説明にあるattributesフィールドを確認し、実際に列挙されたキーを選択します。CloudflareはJSON列のキーを正確に指定する例としてattributes['http.method']を示しています。イベント名から推測せず、検出された名前をフィルターに使ってください。

実務では、次の手順で進めます。

  1. 対象のデータセットに対し、include_attributes=trueを指定してイントロスペクションを実行します。
  2. 返されたattributesフィールドのキーと型を、確認日とともに保存します。
  3. attributes['http.method']のように、キーの正確な名前を使ってクエリを組み立てます。
  4. アカウントのデータでクエリを検証し、スキーマや受信イベントの傾向が変わったら、再度検出します。

確認日を記録すると再現性が高まります。Cloudflareが属性を導出するのは7日間のウィンドウ内のデータであり、検出されたキーは不変のスキーマではなく最近のデータを反映するためです。必要なキーがその期間に現れなかった場合、結果にないことだけを根拠に、そのキーが常に利用できないとは判断できません。

旧名称からの移行方法

既存コードでは、クエリパラメーターinclude_custom_attributesをinclude_attributesに、レスポンスフィールドcustom_attributesの処理をattributesの読み取りに変更します。Cloudflareによると従来の名称も引き続き動作するため、連携の緊急復旧とは切り分けて移行できます。

安全に移行するには、送信するクエリパラメーターとレスポンス内のフィールドパスの両方を確認してください。その後、同じデータセットに対してクエリを実行し、キーの一覧を比較します。このテストで、新しいパラメーター名を使っているのに、コードが古いレスポンスフィールドを待ち受けているという典型的な移行ミスを検出できます。

分析パイプラインへの影響

include_attributes=trueにより、動的なJSONフィールドを公式のイントロスペクション機能で検出でき、キー名とともに型も取得できます。新しいクエリとパーサーをinclude_attributesおよびレスポンスのattributesフィールドに対応させ、検出日を記録し、実際に見つかったキーに基づいてフィルターを作成してください。

People

No people listed for this article yet.

Keep readingCloudflare D1の削除済みデータベースを復元できる期間は7日間
Read the next article

読んだ内容を実用的な連携へ

jsonscraperのソーシャルデータAPIを調べ、リクエストを試し、次のワークフローを構築しましょう。

APIを探す