Обзор API-аналитики

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

В этом разделе представлена ​​аналитика Edge API.

Видео. Посмотрите короткое видео с обзором служб Edge API Analytics.

Улучшите свой API с помощью аналитики

Edge API Analytics собирает и рассчитывает огромное количество информации, передаваемой через прокси-серверы API. Вы можете визуализировать эти данные с помощью графиков и диаграмм в пользовательском интерфейсе Edge или загрузить необработанные данные для автономного анализа с помощью API управления Edge.

Аналитика поможет вам ответить на распространенные вопросы, такие как:

  • Как меняется трафик моего API с течением времени?
  • Какие методы API наиболее популярны?
  • Кто мои лучшие разработчики?
  • Когда время ответа API самое быстрое? Самый медленный?
  • Географически, где я вижу больше всего трафика API?

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

API Analytics помогает каждому совершенствоваться

Благодаря непрерывному процессу сбора, анализа и визуализации данных Edge API Analytics помогает вашей команде API улучшать свои API, а разработчикам приложений — улучшать свои приложения:

alt_text
  • Команда API . Команда API использует внутренние системы для создания интересных API. Команда API хочет знать, как работает программа API в целом, как работают отдельные API и как улучшить их API.
  • Разработчики приложений . Делясь аналитической информацией с разработчиками приложений , вы получаете более качественные приложения. Эти разработчики внедряют инновации в ваш API и создают креативные приложения, которые помогают увеличить доход вашего предприятия. Аналитика помогает разработчикам приложений знать, как работают их приложения и какой вклад они вносят в прибыль вашего предприятия. Разработчики приложений хотят знать, как они могут улучшить свои приложения.
  • Операционная группа . Операционная группа хочет понять структуру трафика и предугадать, когда добавить серверные ресурсы или внести другие важные изменения.
  • Владелец бизнеса . Владелец бизнеса хочет увидеть, как окупаются его инвестиции в API и куда инвестировать доллары API в будущем.

Какие данные собираются и анализируются?

Edge API Analytics собирает и анализирует широкий спектр данных, передаваемых через прокси API, таких как:

  • Время ответа
  • Задержка запроса
  • Размер запроса
  • Целевые ошибки
  • Название продукта API
  • Адрес электронной почты разработчика
  • Название приложения
  • Многие другие

Полный список данных, собранных API Analytics, см. в справочнике по метрикам, параметрам и фильтрам Analytics .

Как собирать данные пользовательской аналитики?

Edge изначально собирает огромное количество данных. Возможно, вы также захотите собрать пользовательские аналитические данные, относящиеся к вашим прокси-серверам API, приложениям, продуктам или разработчикам. Например, вы можете захотеть собрать аналитические данные из параметров запроса, заголовков запросов, тел запросов и ответов или переменных, которые вы определяете в своих API.

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

Различия между данными Analytics и данными мониторинга API

В этом разделе описаны некоторые незначительные различия между данными, собранными Edge Analytics, и данными мониторинга API. Поскольку API Monitoring и Analytics используют разные конвейеры данных, вы можете увидеть незначительные различия между пользовательскими отчетами, созданными Monitoring, и отчетами, созданными Analytics. Например, вы можете увидеть расхождения в сообщаемых результатах для ошибок тайм-аута — как тайм-аутов серверной части (код состояния HTTP 504 в запросе), так и тайм-аутов клиента (код состояния HTTP 499). Они могут отображаться с кодом состояния 200 в пользовательских отчетах Analytics, но будут отображаться с кодом состояния 504 или 499 в пользовательских отчетах мониторинга.

Когда и как долго будут доступны мои аналитические данные?

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

  • Интервал задержки данных . После вызова прокси-сервера API может пройти до 10 минут, прежде чем данные станут доступны для отображения или посредством вызовов API управления.
  • Хранение данных . Продолжительность хранения аналитических данных в Edge зависит от плана . В зависимости от вашего плана аналитические данные могут быть доступны за последние 30, 60, 90 или 365 дней.

Как мне получить доступ к своим аналитическим данным?

Edge API Analytics предоставляет инструменты визуализации данных, встроенные в пользовательский интерфейс Edge. Эти инструменты включают в себя предопределенные аналитические панели и настраиваемые отчеты, которые отображают данные в виде графиков и диаграмм и позволяют детализировать данные, сгруппированные по различным измерениям (например, по прокси-серверу API, IP-адресу или коду состояния HTTP).

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

Панели аналитики

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

Эта панель мониторинга включает диаграммы для:

  • Общий трафик — общее количество запросов API, полученных Edge для среды API в организации.
  • Успех трафика — общее количество запросов, на которые был получен успешный ответ. Ответы об ошибках не учитываются.
  • Ошибки трафика — общее количество всех неудачных запросов API; то есть запрос не дает ответа. В число входят как ошибки прокси-сервера (сторона Apigee), так и ошибки цели (внутренние службы).
  • Средний TPS — среднее количество запросов API и полученных ответов в секунду.

Дополнительные предопределенные информационные панели включают в себя:

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

Пользовательские отчеты

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

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

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

  • Столбец. Каждый прокси-сервер API представлен отдельным столбцом:

    Пользовательская столбчатая диаграмма

  • Строка — каждый прокси-сервер API представлен отдельной строкой:

    Пользовательский линейный график

Дополнительные сведения см. в разделе Создание пользовательских отчетов и управление ими .

Аналитический API

Используйте API управления Edge для загрузки аналитических данных. Например, вы можете использовать API для создания собственных инструментов визуализации, которые можно встроить в порталы или пользовательские приложения.

Вот пример вызова API для получения аналитических данных для прокси-серверов API:

curl  https://api.enterprise.apigee.com/v1/o/org_name/environments/test/stats/apiproxy?"select=sum(message_count)&timeRange=6/24/2018%2000:00~6/24/2018%2023:59&timeUnit=hour" \
-u email:password

Этот вызов возвращает:

  • Сумма запросов (количество сообщений) на один прокси API
  • В течение 24 часов
  • Сгруппировано по часам

Параметр запроса timeRange указывает период времени в форме:

?timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM

Обратите внимание на %20 перед HH:MM . Параметр timeRange требует, чтобы перед HH:MM был указан пробел в кодировке URL-адреса или символ + , например: MM/DD/YYYY+HH:MM~MM/DD/YYYY+HH:MM .

Дополнительные сведения см. в разделе Использование API метрик для измерения производительности программ API.

Экспортируйте аналитические данные в Google Cloud

Вы можете использовать API управления Edge для экспорта всех аналитических данных за целый день из Edge в свой собственный репозиторий данных, например Google Cloud Storage или BigQuery . Затем вы можете воспользоваться мощными возможностями запросов и машинного обучения, предлагаемыми Google Cloud BigQuery и TensorFlow, для выполнения собственного анализа данных.

Дополнительные сведения см. в разделе Экспорт данных из аналитики .

Как поделиться данными с разработчиками приложений?

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

alt_text

Разработчики приложений не только обеспокоены качеством своих приложений, они очень заинтересованы в ваших API. Порталы разработчиков на базе Drupal включают дополнительную страницу «Производительность приложений» , предназначенную для предоставления разработчикам приложений доступа к важным показателям для их приложений. На этой странице разработчикам представлена ​​информация о:

  • Ошибки: какие ошибки API видит мое приложение?
  • Производительность: API сейчас медленный? Какие методы API обычно работают медленно или медленно в данный момент?
  • Доступность: API сейчас работает или не работает?
  • Квота. Есть ли у вашего API квота? А как у меня, как у разработчика приложения, дела с квотой?

Подробнее см.:

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

Как мне получить полные аналитические данные?

Что мы подразумеваем под полной аналитикой? Например, вы можете создать прокси-сервер API, и Edge будет собирать аналитические данные об этом прокси-сервере. А как насчет показателей разработчика или приложения, вызывающего прокси-сервер API? Если Edge не знает, кто сделал вызов API, он не сможет собрать эти данные.

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

  1. Создайте один или несколько продуктов API , которые представляют собой группу прокси API вместе с планом обслуживания. См. раздел «Управление продуктами API» .
  2. Зарегистрируйте разработчиков приложений в Edge. См. раздел Регистрация разработчиков приложений .
  3. Регистрируйте приложения и создавайте ключи API для своих разработчиков. См. раздел Регистрация приложений и управление ключами API .
  4. Добавьте политики безопасности к своим прокси-серверам API , которые проверяют ключи API и/или токены безопасности. См. следующие темы: Проверка политики ключа API , политика OAuthV2 и проверка политики JWT .
  5. Если вы используете Edge Microgateway , убедитесь, что вы включили плагин аналитики (который включен по умолчанию). Если подключаемый модуль аналитики отключен, Edge Microgateway не будет отправлять аналитические данные в Edge Analytics.

Следующие руководства проведут вас через необходимые шаги, которые позволят вам увидеть аналитику для разработчиков и приложений: Защитите API, потребовав ключи API , и Защитите API с помощью OAuth .

Сравните аналитику API с мониторингом API

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

Одним из основных различий между мониторингом API и аналитикой API является механизм оповещений, встроенный в мониторинг API. С помощью оповещений вы указываете код состояния HTTP (2xx/4xx/5xx), задержку или пороговое значение кода ошибки, при превышении которого вашей команде эксплуатации будет отправлено оповещение. Уведомления о предупреждениях можно отправлять по различным каналам, таким как электронная почта, Slack, пейджеры или веб-перехватчики, что позволяет вам немедленно реагировать на проблемы.

См. раздел «Сравнение мониторинга API с Edge API Analytics» для более подробного сравнения этих сервисов.

Дополнительная информация