Skip to content

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

GraphQL Analytics API

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

GraphQL Analytics API は、Cloudflare のネットワークを通過する HTTP リクエストのデータと、Firewall や Load Balancing など特定プロダクトのデータを提供します。Network Analytics の利用者は、パケットレベルのデータにもアクセスできます。GraphQL Analytics API では、対象のデータセットとメトリクスを選び、さまざまな軸で絞り込みや集計をし、結果をほかのアプリケーションと連携できます。

この API の基盤は、Facebook が作成してオープンソース化した GraphQL フレームワーク です。GraphQL には活発な開発者コミュニティと、クエリを実行できる強力なクライアントがあるため、すぐに始められます。GraphQL は可視化の構築に向いており、Cloudflare ダッシュボードの分析機能もこれで動いています。

GraphQL は、スキーマを使ってビジネス領域をグラフとしてモデル化します。スキーマには、ノードの種類と、ノード同士の接続(エッジ)の論理定義があります。これらのノードが、分析に使うデータセットです。GraphQL のクエリは SQL に近く、データセット(テーブル)、取得するメトリクス(リクエスト数やバイト数など)、絞り込みやグループ化の軸(期間など)を指定します。

従来の API と違い、GraphQL のエンドポイントは 1 つだけです。

https://api.cloudflare.com/client/v4/graphql

クエリのパラメーターは、このエンドポイントへの POST リクエストのペイロードに JSON オブジェクトとして渡します。

GraphQL Analytics API へのリクエストには curl を使えます。GraphQL クライアントでクエリを組み立てて、GraphQL Analytics API に送ることもできます。

クライアント

このドキュメントの GraphQL クエリ例では GraphiQL を使っています。ほかにも、AltairInsomnia など、よく使われるオープンソースのクライアントがあります。

制限事項

GraphQL API の目的は、各種 Cloudflare プロダクトの集計分析を提供することです。これらのデータセットを、Cloudflare の課金に使う利用量の指標にはしないでください。課金対象のトラフィックは DDoS トラフィックなどを除外します。一方 GraphQL は全体の消費量・利用量を測るため、計測できるトラフィックはすべて含まれます。

役に立ちましたか?