Отчеты, доступные на платформе Google Карт

Отчеты на платформе Google Карт – это набор стандартных отчетов с визуализацией данных, который позволяет легко отслеживать использование API, а также квоты и платежи непосредственно в Google Cloud Console. Вы можете быстро посмотреть количество вызовов API, израсходованную долю квот на использование API и платежную информацию за минувшие периоды.

Доступны следующие типы отчетов:

  • Отчеты об использовании показывают количество запросов из вашего проекта в Google Maps Platform API (т. е. запросов, в которых использовались учетные данные, связанные с вашим проектом).
  • Отчеты о квотах показывают статистику использования в виде графиков, которые можно группировать по числу запросов в минуту. Текущие квоты для выбранных API отображаются в таблицах, которые находятся под графиками с данными об использовании квот.
  • Отчеты о платежах показывают ваши расходы за выбранный период времени. Данные представляются в виде графика с накоплением. Показывается статистика использования квот за текущий месяц, включая кредиты, и приводится прогноз стоимости за весь этот месяц.

В разделе Статус ответов и отчеты приводится полный список статусов и кодов ответа, от которых зависит, появится ли запрос в отчетах об использовании, квотах или платежах.

Посмотреть отчеты Платформы Google Карт об использовании, квотах и платежах можно с помощью Cloud Console.

Отчеты об использовании

Показатели использования — это информация о том, сколько запросов было передано в API платформы Google Карт с учетными данными вашего проекта. Указываются как успешно выполненные запросы, так и запросы, которые приводят к ошибкам на стороне сервера или клиента. Учетные данные состоят из ключей API и идентификаторов клиента (для проектов пользователей, которые подписаны на план Premium или перешли на него).

Показатели использования представлены в таблицах ("Запросы", "Ошибки" и "Задержка") и на графиках ("Трафик", "Ошибки" и "Задержка"). Эти данные можно отфильтровать.

  • Показатели использования для всех API можно отфильтровать по периоду времени и API. Вы также можете отследить трафик, ошибки и задержку, сгруппированные по коду ответа, API и учетным данным.
  • Показатели использования для конкретного API можно отфильтровать по периоду времени, учетным данным, версиям и методам API. Кроме того, вы можете отследить трафик, ошибки и задержку, сгруппированные по коду ответа, методу и версии API, а также учетным данным.

Панель управления в разделе "API и сервисы"

На Панели управления в разделе "API и сервисы" можно найти общие сведения о показателях использования для всех API, включенных для проекта (API платформы Google Карт и других API и сервисов).

На странице "Панель управления" расположены три графика и таблица. Вы можете отфильтровать показатели использования, отображаемые в них, по периоду времени (от 1 часа до последних 30 дней).

В графике "Трафик" показано количество запросов в секунду (запросов/сек) для каждого API, в графике "Ошибки" отображается процент запросов, которые привели к ошибкам, для каждого API, а в графике "Задержка" вы увидите средние показатели задержки относительно запросов для каждого API.

Под графиками расположена таблица, в которой перечислены включенные API и сервисы. В столбце "Запросы" указано количество запросов (за выбранный период времени), а в столбце "Ошибки" – число запросов, которые привели к ошибкам. В столбце Latency (Задержка) (средняя задержка и процентиль) отображаются показатели задержки для этих запросов.

Мониторинг API

Чтобы открыть панель управления API и сервисами, выполните следующие действия:

  1. Перейдите на страницу выбора проекта в Cloud Console.

    Страница выбора проекта

  2. Выберите проект. Появится панель управления API и сервисами.

    Если страница не открывается, нажмите кнопку меню Меню и выберите APIs & Services (API и сервисы).

Подробная информация доступна на странице Мониторинг данных об использовании API.

Страница "Общая информация" в разделе "Google Карты"

На странице Общая информация в разделе "Google Карты" представлена таблица со списком включенных API и количеством запросов за последние 30 дней. Запросы по API также отображаются в виде графика. На странице есть график с текущими расходами и общей суммой за последние 3 месяца.

Скриншот диаграммы на странице "Обзор" и таблицы, где перечислены включенные API и приведены данные о запросах API за последние 30 дней

Чтобы перейти на страницу Overview (Обзор) в Платформе Google Карт, выполните следующие действия:

  1. Откройте страницу "Платформа Google Карт" в Cloud Console.

    Перейти на страницу "Платформа Google Карт"

  2. В меню слева нажмите Обзор.

Страница "API" в разделе "Платформа Google Карт"

На странице API в разделе "Google Карты" доступны две таблицы. В таблице Включенные API отображается количество запросов и ошибок, а также средняя задержка для каждого включенного API за последние 30 дней. В таблице Дополнительные API перечислены API, которые не были включены.

API

Чтобы перейти на страницу API в Платформе Google Карт, выполните следующие действия:

  1. Откройте страницу "Платформа Google Карт" в Cloud Console.

    Перейти на страницу "Платформа Google Карт"

  2. В меню слева нажмите на API.

Страница "Показатели" в разделе "Google Карты"

На странице Показатели в разделе "Google Карты" отображаются три графика: "Трафик", "Ошибки" и "Медианная задержка". Данные об использовании, показанные в этих графиках, можно сгруппировать по параметру "Код ответа", "API", "Способ вызова API" или "Учетные данные".

На странице Metrics (Показатели) под графиками находится таблица с данными об API, в которой отображаются запросы, ошибки и задержка для выбранных API.

С помощью раскрывающегося списка API в верхней части экрана и параметров фильтра на панели справа можно посмотреть показатели для одного или нескольких API, наборов учетных данных, кодов ответа и/или платформ. Также можно выбрать период времени (от одного часа до последних 30 дней) и уровень детализации (за секунду или за день).

Показатели

Чтобы перейти на страницу Metrics (Показатели) в Платформе Google Карт, выполните следующие действия:

  1. Откройте страницу "Платформа Google Карт" в Cloud Console.

    Перейти на страницу "Платформа Google Карт"

  2. В меню слева нажмите на Показатели.

Графики с данными, отфильтрованными по коду ответа

Сведения в графиках Трафик по кодам ответа и Ошибки по кодам ответа распределяются на основе класса кода ответа. В таблице ниже описаны статусы ответа и соответствующие классы кода ответа для API, доступных на платформе Google Карт.

Статус ответа Класс кода ответа
(2xx, 3xx, 4xx, 5xx)
Примечания
OK 2xx Успешный ответ.

Это платный запрос, который будет учитываться в выделенной вам квоте.
OK 3xx Успешный ответ.

Это платный запрос, который будет учитываться в выделенной вам квоте.

Например, успешные запросы фотографии места возвращают код ответа 302 и перенаправляют на соответствующее изображение.
DATA_NOT_AVAILABLE 2xx Успешный ответ. Он означает, что для указанных местоположений нет данных.

Это платный запрос, который будет учитываться в выделенной вам квоте.
ZERO_RESULTS 2xx Успешный ответ не вернул результат.

Это платный запрос, который будет учитываться в выделенной вам квоте.
NOT_FOUND 2xx При использовании Directions API это означает, что не удалось найти геокод как минимум для одного местоположения, указанного в параметрах запроса, таких как пункт отправления, пункт назначения или путевая точка.

Для Places API это означает, что указанное местоположение (place_id) отсутствует в базе данных Places.

Это платный запрос, который будет учитываться в выделенной вам квоте.
INVALID_REQUEST (недопустимое значение параметра),
MAX_WAYPOINTS_EXCEEDED,
MAX_ROUTE_LENGTH_EXCEEDED и т. д.
2xx Ошибка, вызванная недопустимым значением параметра, слишком большим количеством значений и т. д. Проверьте ответ API, чтобы получить больше информации.

Это платный запрос, который будет учитываться в выделенной вам квоте.
REQUEST_DENIED 4xx Ошибка клиента, вызванная ошибкой аутентификации, ошибкой доступа и т. д. Проверьте ответ API, чтобы получить больше информации.
OVER_DAILY_LIMIT,
OVER_QUERY_LIMIT,
RESOURCE_EXHAUSTED,
rateLimitExceeded,
dailyLimitExceeded,
userRateLimitExceeded
4xx Ошибка клиента, вызванная тем, что в разрешенный период времени отправлено слишком много запросов. Отправьте запрос повторно позже. Дополнительную информацию см. в ответе API.
INVALID_REQUEST (недопустимый параметр, отсутствующий параметр, ошибка анализа запроса) 4xx Ошибка клиента, вызванная недопустимым запросом. Дополнительную информацию см. в ответе API.
NOT_FOUND (404) 4xx При использовании Geolocation API это означает, что указанных данных недостаточно, чтобы определить местоположение.

Для Roads API это означает, что не удалось привязать указанные данные к Roads.

Это платный запрос, который будет учитываться в выделенной вам квоте.
UNKNOWN_ERROR 5xx Ошибка сервера, указывающая на то, что запрос невозможно обработать. Это может быть внутренняя ошибка, ошибка из-за перегрузки или недоступности сервиса, ошибка из-за превышения времени ожидания и т. д.

Дополнительные сведения о кодах статусов и сообщениях об ошибках см. в документации для конкретных API (например, Ответы на запросы к Geocoding API или Ответы на запросы к Directions API).

Параметры решений платформы Google Карт

Чтобы вам было проще разобраться с кодом, мы подготовили различные образцы. Например, вы можете использовать инструмент Quick Builder в Cloud Console, изучать руководства по реализации специализированных решений и выполнять практические работы.

Мы стремимся улучшать наши решения и хотим понимать, как они работают в среде клиентов. Поэтому мы добавили в вызовы API параметр запроса solution_channel. С его помощью мы можем собирать информацию об использовании образца кода.

  • Параметр solution_channel используется в образце кода по умолчанию.
  • Он передает в Google обезличенные данные об адаптации решения. Мы используем эту информацию для улучшения качества наших продуктов.
  • Вы можете отказаться от передачи этих данных. Для этого удалите из образца кода параметр запроса solution_channel и его значение.
  • Вам не обязательно использовать этот параметр. Его удаление не повлияет на производительность.
  • Он используется только для передачи информации об использовании образца кода.
  • Параметр запроса не связан с функциями аналитики и отчетов API. Его удаление из образца кода решения не приведет к отключению внутренних отчетов Maps JavaScript API.

Отчеты о квотах

Квоты устанавливают ограничения на количество запросов, которые ваш проект может отправлять к API платформы Google Карт. Можно указать, сколько запросов будет передано в день, в минуту и для одного пользователя в минуту. В квоте учитываются только успешно выполненные запросы и запросы, вызывающие ошибки сервера. Запросы, не прошедшие аутентификацию, в нее не входят.

Данные об использовании квоты отображаются в виде графиков на странице Квоты в Cloud Console и могут быть сгруппированы по запросам за минуту. Текущие квоты для выбранных API представлены в таблицах, которые находятся под графиками с данными об использовании квот.

Используйте этот калькулятор, чтобы получить значение вашей поминутной квоты для любого продукта GMP API.

Страница "Квоты" в разделе "Google Карты"

На странице Квоты в разделе "Google Карты" представлена информация о том, сколько запросов можно отправить к выбранным API и какое количество уже было передано.

Диаграмма использования квот в Google Cloud Console показывает общий трафик, созданный вашими ключами API и идентификаторами клиента. Данные о трафике, связанном с передачей идентификаторов клиента, также отображаются на диаграмме "Показатели" в консоли Google Cloud Console.

На этой странице предоставляются сведения только о запросах, использующих квоту. Это успешные запросы (OK, ZERO_RESULTS, DATA_NOT_AVAILABLE) и запросы, вызывающие ошибки сервера (NOT_FOUND, INVALID_REQUEST/INVALID_VALUE – недопустимое значение параметра, UNKNOWN_ERROR).

Квота не распространяется на запросы, которые приводят к ошибкам клиента, например ошибкам аутентификации, авторизации, передачи недопустимого аргумента (REQUEST_DENIED, OVER_QUERY_LIMIT, INVALID_REQUEST – недопустимое значение параметра или ошибка синтаксического анализа запроса). Поэтому данные о таких запросах здесь не отображаются.

Для большинства API платформы Google Карт (Maps Static API, Street View Static API, Geocoding API, Directions API, Places API, Time Zone API, Geolocation API и Elevation API) единицей квоты является запрос. Однако есть несколько исключений.

  • Для Distance Matrix API единица квоты – это элемент, представленный двумя параметрами: пунктом отправления и пунктом назначения.
  • Для Maps JavaScript API единицей квоты является загрузка карты.
  • Для Maps SDK для Android и Maps SDK для iOS единица квоты – это запрос функции Просмотра улиц или загрузка панорамы. Загрузки карт предоставляются бесплатно и не учитываются в квоте.

Скриншот страницы Quotas (Квоты) для Карт в Google Cloud Console. На ней показаны квоты для разных API, которые можно выбрать в раскрывающемся списке, а также данные о загрузках карт в сравнении с заданными квотами для выбранного API.

Чтобы перейти на страницу Quotas (Квоты) в Платформе Google Карт, выполните следующие действия:

  1. Откройте страницу "Платформа Google Карт" в Cloud Console.

    Перейти на страницу "Платформа Google Карт"

  2. В меню слева выберите Квоты.
  3. Выберите API в раскрывающемся списке.

Единицы квот

В таблице ниже указаны единицы квот для API платформы Google Карт.

API платформы Google Карт Единица квоты
Карты
Maps SDK для Android 1 панорама
Maps SDK для iOS 1 панорама
Maps Static API 1 запрос
Maps JavaScript API 1 загрузка карты
Street View Static API 1 запрос
Maps Embed API 1 загрузка карты
Routes
Directions API 1 запрос
Distance Matrix API 1 элемент (пара: пункты отправления и назначения)
Roads API 1 запрос
Places
Places API 1 запрос
Geocoding API 1 запрос
Geolocation API 1 запрос
Time Zone API 1 запрос

Отчеты о платежах

Как посмотреть отчеты о платежах

Отчеты о платежах для продуктов платформы Google Карт доступны в Google Cloud Console (см. раздел Оплата).

Чтобы перейти к отчетам о платежах, выполните следующие действия:

  1. Перейдите на страницу выбора проекта в Cloud Console.

    Страница выбора проекта

  2. Выберите проект.
  3. Нажмите кнопку меню Меню и выберите Оплата.
  4. Если у вас несколько платежных аккаунтов, нажмите Открыть этот аккаунт. Появится страница Обзор связанного платежного аккаунта.
  5. В меню слева выберите Отчеты. Появится страница Отчеты связанного платежного аккаунта.

Как анализировать данные в графике отчетов о платежах

В отчетах о платежах расходы показываются за определенный период времени в виде графика с накоплением. По умолчанию мы видим ежедневные затраты за текущий месяц, сгруппированные по проектам (для всех продуктов), включая все примененные кредиты, а также общую прогнозируемую сумму на весь текущий месяц. Каждая линия на графике (и строка в сводной таблице) соответствует одному проекту, и проекты упорядочиваются от наиболее до наименее затратных. Подробнее о том, как анализировать данные из графика отчетов о платежах

График и таблица с отчетом о платежах, вид по умолчанию
Рисунок 1. График и таблица с отчетом о платежах, вид по умолчанию

Совет. Анализируйте использование сервисов и расходы по коду продукта

Чтобы разобраться, как работает модель оплаты по мере использования и как это влияет на ваш рабочий процесс, проанализируйте свою статистику использования и расходов по коду продукта.

Отчет о платежах, сгруппированный по коду продукта
Рисунок 2. Таблица с данными об использовании и оплате сервисов, отсортированными по коду продукта
Скриншот настроек фильтра в отчете о платежах
Рисунок 3. Фильтры в отчете о платежах
Как отсортировать строки отчета по коду продукта
  1. На панели справа от графика разверните фильтр Группировать по.
  2. Выберите Код товара.

В отчетах о платежах доступны следующие фильтры: Период, Проекты, Продукты и Код товара, а также фильтр Местоположения, позволяющий просматривать данные о запросах API из определенных городов и стран.

Чтобы категоризировать источник использования в дополнение к продукту, группируйте отчеты о платежах по одному из перечисленных значений. К API платформы Google Карт относятся три ключа: goog-maps-api-key-suffix (последние четыре символа ключа API), goog-maps-platform-type (платформа: Android, iOS, JavaScript или веб-сервис), и goog-maps-channel (заданное числовое значение канала из запроса API). Подробнее о фильтрах и группах

Вы можете изменить внешний вид графика и убрать из отчета данные о кредитах, сняв флажок в поле Включать кредиты в стоимость на панели справа.

Как отслеживать и ограничивать использование API

Чтобы вам было проще планировать бюджет и не расходовать лишнего, примите следующие меры:

  • Настройте оповещения о достижении определенной суммы затрат. Они не ограничивают использование API, а просто предупреждают вас, когда расходы приближаются к определенной величине.
  • Ограничьте ежедневное использование API, чтобы не тратить лишнего на платные сервисы. Для этого установите лимит на количество запросов в день. Воспользуйтесь простой формулой, чтобы определить дневное предельное значение в зависимости от того, сколько вы готовы потратить. Пример: (расходы за месяц / цена за каждый продукт) / 30 = ограничение на количество запросов в день (для одного API). Если вы используете несколько платных API, формулу необходимо скорректировать с учетом этих данных. Также не забывайте, что каждый месяц на использование платформы Google Карт предоставляется кредит в размере 200 долларов США.

Как отслеживать использование по каналам

Чтобы отслеживать использование по числовым каналам, добавьте параметр channel в запросы API. Единственно допустимые значения для этого параметра – это числа от 0 до 999. Ниже приведены примеры.

  • Geocoding Web Service API
    https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY&channel=1
  • Maps JavaScript API
    <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&channel=2&callback=initMap"
    async defer></script>

Данные об использовании каналов доступны в отчете о платежах. Чтобы отфильтровать данные по каналу, в разделе Ярлыки задайте ключ goog-maps-channel с нужным значением.

Фильтр для сортировки данных по ярлыкам
Рисунок 4. Фильтр для сортировки данных по коду продукта и каналам
Как отфильтровать отчет о платежах по коду продукта и каналу
  1. Примените фильтр Группировать по для сортировки по коду продукта.
  2. Выберите раздел Ярлыки.
  3. В раскрывающемся меню Ключ выберите goog-maps-channel.
  4. В раскрывающемся меню Значение выберите числовые каналы, по которым нужно отфильтровать данные.

Сгруппируйте данные по ключу "Ярлык" со значением goog-maps-channel, чтобы получить сведения о расходах для каждого канала.

После того как вы добавите в запросы необходимый параметр для сбора данных об использовании по каналу, может пройти до 24 часов, прежде чем эти сведения появятся в отчете о платежах.

Экспорт данных о платежах в BigQuery

Вы также можете экспортировать данные о платежах в BigQuery.

BigQuery Export позволяет в течение дня автоматически экспортировать подробные сведения Cloud Billing (например, информацию об использовании и расчете стоимости) в указанный вами набор данных BigQuery. Затем вы можете брать эту информацию из BigQuery для анализа. Это обеспечит дополнительный уровень детализации, чтобы лучше понимать, какие проекты и сервисы платформы Google Карт потребляют наибольшее количество ресурсов.

Если вы решите использовать BigQuery Export, ознакомьтесь с примером ниже, чтобы корректно запрашивать данные. Прежде чем выполнить этот запрос, нужно:

  • Включить возможность оплаты и разрешить экспорт платежных данных в BigQuery для вашего аккаунта.
  • Указать таблицу данных в формате PROJECT_ID.DATASET_NAME.gcp_billing_exportv1BILLING_ACCOUNT_ID, где:
    • PROJECT_ID – это идентификатор проекта (например, "my-project-123456");
    • DATASET_NAME – это название созданного вами набора данных (например, SampleDataSet).
    • BILLING_ACCOUNT_ID – это значение, состоящее из идентификатора платежного аккаунта и префикса gcp_billing_exportv1 с заменой дефисов (-) на символы подчеркивания (_). Например, для идентификатора платежного аккаунта 123456-7890AB-CDEF01 будет использоваться следующее значение: gcp_billing_export_v1_123456_789AB_CDEF01.

  #standardSQL
  SELECT   Date(usage_start_time, "America/Los_Angeles") AS billing_day,
           invoice.month                                 AS invoice_month,
           service.description                           AS service,
           sku.description                               AS sku,
           (
                  SELECT l.value
                  FROM   Unnest(labels) AS l
                  WHERE  l.KEY = 'goog-maps-channel' ) AS goog_maps_channel,
           Round(Sum(usage.amount), 2)                 AS usage_amount,
           usage.unit                                  AS usage_unit,
           Round(Sum(cost), 2)                         AS cost,
           cost_type,
           currency
  FROM     PROJECT_ID.DATASET_NAME.gcp_billing_export_v1_BILLING_ACCOUNT_ID
  WHERE    invoice.month = '202002' -- Change the invoice month with the same format as the example.
  GROUP BY billing_day,
           invoice_month,
           service,
           sku,
           goog_maps_channel,
           usage_unit,
           cost_type,
           currency
  ORDER BY billing_day,
           service,
           sku
  

Cloud Billing:

Платформа Google Карт:

Статус ответов и отчеты

В таблице ниже перечислены статусы ответа и классы кода ответа, а также указаны связанные с ними запросы, которые могут отображаться в отчетах об использовании, о квоте и/или о платежах.

Статус ответа Класс кода ответа
(2xx, 3xx, 4xx, 5xx)
Отчет об использовании Отчет о квоте Отчет о платежах
OK 2xx,
3xx
Да Да Да
ZERO_RESULTS,
DATA_NOT_AVAILABLE,
NOT_FOUND
2xx Да Да Да
INVALID_REQUEST (недопустимое значение параметра),
MAX_WAYPOINTS_EXCEEDED,
MAX_ROUTE_LENGTH_EXCEEDED,
и т. д.
2xx Да Да Да
REQUEST_DENIED 4xx Да Нет Нет
OVER_DAILY_LIMIT,
OVER_QUERY_LIMIT,
RESOURCE_EXHAUSTED,
dailyLimitExceeded,
rateLimitExceeded,
userRateLimitExceeded
4xx Да Нет Нет
INVALID_REQUEST (недопустимый параметр, ошибка анализа запроса) 4xx Да Нет Нет
NOT_FOUND (Geolocation API и Roads API) 4xx Да Да Да
UNKNOWN_ERROR 5xx Да Да Нет