INTEGRITY Документация

Наборы данных (таблицы)

Cloudflare Analytics предлагает множество наборов данных: как общие, так и специфичные для отдельных продуктов. Названия наборов данных подчиняются единой схеме, которая явно указывает на тип возвращаемых данных:

Дополнительные сведения о наборах данных, их доступности, статусах бета-версии и устаревания см. в документации GraphQL discovery функции.

Работа с наборами данных

Агрегированные поля

В этом примере показана структура для Groups:

type WhateverGroup {
    count # No subfields, it is just the group size. Not available for roll-up tables.
    sum {
        # fields that support summing (numbers, maps of numbers)
    }
    avg {
        # fields that support averaging (numbers)
    }
    uniq {
        # fields that support uniqueing (numbers, strings, enums, IPs, dates, etc.)
    }
}

Уникальные значения недоступны в качестве измерения, но их можно запросить, как показано в этом примере:

{
  # Get number of bytes and unique IPs in each minute.
  httpRequests1mGroups {
    sum {
      bytes
    }
    uniq {
      uniques # unique IPs
    }
    dimensions {
      datetimeMinute
    }
  }

  # Count the number of events in each hour.
  firewallEventsAdaptiveGroups {
    count
    dimensions {
      datetimeHour
    }
  }
}

Определения типов схемы

Каждая доступная таблица имеет определение типа GraphQL. Определения типов подчиняются следующим правилам:

Пример определения типа для ContentTypeMapElem:

type ContentTypeMapElem {
    edgeResponseContentType: UInt32!
    requests: UInt64!
    bytes: UInt64!
}

# An array of httpRequestsGroup is the result of httpRequests1hGroups or
# httpRequests1mGroups query.
type httpRequestsGroup {
    date: Date!
    timeslot: DateTime!
    requests: UInt64!
    contentTypeMap: [ContentTypeMapElem!]!
    # ... other fields
}

enum TrustedClientCategory {
    UNKNOWN
    REAL_BROWSER
    HONEST_BOT
}

# An array of Request is the result of httpRequests query.
type Request {
    trustedClientCategory: TrustedClientCategory!
    # ... other fields
}