Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
В этой статье приведены справочные сведения о показателях, параметрах и фильтрах Аналитики. Дополнительную информацию об использовании этих инструментов можно найти в обзоре API Аналитики.
В этой статье приведены названия показателей и параметров, которые используются в интерфейсе и при вызовах API.
- Названия элементов интерфейса будут показываться при создании специальных отчетов.
- Используйте названия API, когда получаете показатели, создаете определение отчета или обновляете определение отчета.
Показатели
Ниже перечислены показатели API, которые можно получить в специальных отчетах и с помощью вызовов API управления.
| Название специального отчета | Название, которое будет использоваться в Management API | Функции | Описание |
|---|---|---|---|
| Среднее количество транзакций в секунду | tps | Нет |
Среднее количество транзакций (запросов прокси-сервера API) в секунду. Обратите внимание, что если за выбранный период времени было совершено относительно мало транзакций, то среднее количество транзакций в секунду может быть равно нулю в пользовательских отчетах интерфейса, если оно меньше двух знаков после запятой. Синтаксис API: |
| Совпадение в кеше | cache_hit | сумма |
Количество успешных запросов к API, в которых используется кеш ответов вместо ответа целевого сервиса. Синтаксис API: |
| Количество элементов кеша L1 | ax_cache_l1_count | среднее, минимальное и максимальное значения; |
Возвращает количество элементов в кеше L1 (в памяти) на транзакцию за заданный период времени. Например, если вы выбрали Синтаксис API: |
| Ошибки, связанные с правилами | policy_error | сумма |
Общее количество нарушений правил за указанный период времени. Ошибки в правилах обычно возникают намеренно. Например, правило "Проверка ключа API" выдает ошибку, если в запросе передан недействительный ключ API, а правило "Защита от пиковых нагрузок" – если количество вызовов API превышает лимит, заданный в правиле. Поэтому этот показатель помогает выявлять потенциальные проблемы в ваших API. Например, показатели policy_error, сгруппированные по параметру developer_app, могут помочь вам обнаружить, что срок действия ключа API или токена OAuth для определенного приложения истек. Также вы можете обнаружить, что определенный прокси-сервер API выдает много ошибок Spike Arrest, и понять, что ограничение на скачки трафика для этого прокси-сервера не учитывает увеличение трафика в праздничные дни. Ошибка правила регистрируется в аналитике только в том случае, если она приводит к сбою прокси API.
Например, если атрибут Параметр "Название правила при ошибке" (ax_execution_fault_policy_name) позволяет группировать ошибки правил по названию правила. Ошибка целевой страницы (например, 404 или 503) не считается нарушением правил. Они считаются ошибками прокси-сервера API (is_error). Синтаксис API: |
| Ошибки прокси-сервера | is_error | сумма |
Общее количество сбоев прокси API за указанный период времени. Сбой прокси-сервера может произойти, если не соблюдаются правила или возникает ошибка во время выполнения, например ошибка 404 или 503 от целевого сервиса. Параметр "Прокси-сервер" (apiproxy) позволяет группировать ошибки прокси-серверов API по прокси-серверу. Синтаксис API: |
| Задержка обработки запроса | request_processing_latency | среднее, минимальное и максимальное значения; |
Время (среднее, минимальное или максимальное), в миллисекундах, которое требуется Edge для обработки входящих запросов. Отсчет начинается, когда запрос достигает Edge, и заканчивается, когда Edge пересылает запрос целевому сервису. Используя разные измерения, вы можете анализировать задержки обработки запросов по прокси-серверу API, приложению разработчика, региону и т. д. Синтаксис API: |
| Размер запроса | request_size | sum, avg, min, max |
Размер полезной нагрузки запроса, полученной Edge, в байтах. Синтаксис API: |
| Выполнен кеш ответов | ax_cache_executed | сумма |
Общее количество случаев выполнения правил кеширования ответов за определенный период времени. Поскольку правило Response Cache прикреплено к двум местам в прокси-сервере API (один раз в запросе и один раз в ответе), оно обычно выполняется дважды при вызове API. Каждая операция получения или сохранения в кеше считается одним выполнением. Однако выполнение кеша ответов равно 0, если элемент В инструменте трассировки можно нажать на значок кеша ответов в выполненном вызове API и посмотреть Синтаксис API: |
| Задержка обработки ответа | response_processing_latency | среднее, минимальное и максимальное значения; |
Время (среднее, минимальное или максимальное), в миллисекундах, которое требуется Edge для обработки ответов API. Отсчет начинается, когда прокси-сервер API получает ответ целевого сервиса, и заканчивается, когда Apigee пересылает ответ исходному вызывающему объекту. Используя разные параметры, вы можете изучать задержки обработки ответов по прокси-серверу API, региону и т. д. Синтаксис API: |
| Размер ответа | response_size | sum, avg, min, max |
Размер полезной нагрузки ответа, возвращенного клиенту, в байтах. Синтаксис API: |
| Ошибки целевых значений | target_error | сумма |
Общее количество ответов 5xx от целевого сервиса. Это ошибки целевого сервиса, не связанные с Apigee. Синтаксис API: |
| Целевое время ответа | target_response_time | sum, avg, min, max |
Время (сумма, среднее, минимальное или максимальное значение), в течение которого целевой сервер отвечает на вызов, в миллисекундах. Этот показатель позволяет узнать, насколько эффективно работают целевые серверы. Отсчет начинается, когда Edge пересылает запрос целевому сервису, и заканчивается, когда Edge получает ответ. Обратите внимание, что если вызов API возвращает ответ из кеша (например, с помощью правила кеширования ответов), вызов никогда не достигнет целевого сервиса, и никакие показатели времени ответа целевого сервиса не будут зарегистрированы. Синтаксис API: |
| Общее время ответа | total_response_time | sum, avg, min, max |
Время (сумма, среднее, минимальное или максимальное значение) в миллисекундах с момента, когда Edge получает запрос от клиента, до момента, когда Edge отправляет ответ клиенту. Время включает сетевые издержки (например, время, необходимое балансировщикам нагрузки и маршрутизаторам для выполнения своей работы), задержку обработки запроса, задержку обработки ответа и целевое время ответа (если ответ получен от целевого сервиса, а не из кеша). Используя разные измерения, вы можете изучать задержки обработки по прокси-серверу API, приложениям разработчиков, регионам и т. д. Синтаксис API: |
| дорожное движение; | message_count | сумма |
Общее количество вызовов API, обработанных Edge за указанный период времени. Параметры позволяют группировать данные о трафике так, как вам удобно. Синтаксис API: |
Размеры
Параметры позволяют просматривать показатели в значимых группах. Например, данные об общем трафике будут гораздо полезнее, если вы сможете просматривать их для каждого приложения разработчика или прокси-сервера API.
Ниже перечислены параметры, которые Apigee предоставляет по умолчанию. Вы также можете создавать собственные параметры, как описано в разделе Как анализировать контент сообщений API с помощью специальных инструментов аналитики.
| Название специальных отчетов | Название, которое будет использоваться в Management API | Описание |
|---|---|---|
| Объекты Apigee | ||
| Токен доступа | access_token | Токен доступа OAuth конечного пользователя приложения. |
| Продукт API | api_product |
Название продукта API, содержащего вызываемые прокси API. Чтобы получить этот параметр, приложения разработчиков, выполняющие вызовы, должны быть связаны с одним или несколькими продуктами API, содержащими прокси API, а вызываемые прокси должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен связан с продуктом API. Подробнее о том, как получать полные данные аналитики… Если указанные выше критерии не соблюдены, вы увидите значение "(not set)". Также ознакомьтесь со статьей Что означает значение "(not set)" в объекте Аналитики. |
| Ключ кеша | ax_cache_key |
Ключ, содержащий значение кеша ответов, к которому был получен доступ. Подробнее о том, как создается ключ для кеша ответов, рассказывается в правилах в отношении кеша ответов. В инструменте трассировки, когда вы выбираете правило кеширования ответов, которое считывает данные из кеша или записывает их в него, это значение можно увидеть в |
| Название кеша | ax_cache_name |
Название кеша, содержащего ключи и значения, которые используются правилом кеширования ответов, с префиксом orgName__envName__. Например, если организация называется foo, среда – test, а кеш – myCache, то ax_cache_name будет foo__test__myCache. В инструменте трассировки при выборе правила кеширования ответов это значение можно посмотреть в |
| Источник кеша | ax_cache_source |
Уровень кеша ("L1" в памяти или база данных "L2"), из которого был получен кеш ответов. Этот параметр также показывает значение "CACHE_MISS", когда ответ был получен от целевого ресурса, а не из кеша (и кеш ответов был обновлен целевым ответом) или когда ключ кеша в запросе недействителен. Размер ключей кеша не должен превышать 2 КБ. В инструменте трассировки при выборе правила "Кэш ответов" это значение можно посмотреть в Подробнее о уровнях кеша… |
| Идентификатор клиента | client_id |
Идентификатор клиента (ключ API) приложения разработчика, выполняющего вызовы API, переданный в запросе в виде ключей API или включенный в токены OAuth. Чтобы получить этот параметр, прокси-серверы, принимающие звонки, должны быть настроены на проверку действительного ключа API или токена OAuth. При регистрации приложений разработчика в Edge им присваиваются ключи API, которые можно использовать для создания токенов OAuth. Подробнее о том, как получать полные данные аналитики… Если указанные выше критерии не соблюдены, вы увидите значение "(not set)". Также ознакомьтесь со статьей Что означает значение "(not set)" в объекте Аналитики. |
| Приложение для разработчиков | developer_app |
Приложение разработчика, зарегистрированное в Edge, которое выполняет вызовы API. Чтобы получить этот параметр, приложения должны быть связаны с одним или несколькими продуктами API, содержащими вызываемые прокси API, а прокси должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен идентифицирует приложение разработчика. Подробнее о том, как генерировать полные данные аналитики… Если указанные выше критерии не соблюдены, вы увидите значение "(not set)". Также ознакомьтесь со статьей Что означает значение "(not set)" в объекте Аналитики. |
| Адрес электронной почты разработчика | developer_email |
Адрес электронной почты разработчика, зарегистрированного в Edge, чье приложение выполнило вызовы API. Чтобы получить этот параметр, разработчики должны связать приложения с одним или несколькими продуктами API, содержащими вызываемые прокси API. Кроме того, прокси должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен идентифицирует приложение разработчика. Подробнее о том, как генерировать полные данные аналитики… Если указанные выше критерии не соблюдены, вы увидите значение "(not set)". Также ознакомьтесь со статьей Что означает значение "(not set)" в объекте Аналитики. |
| Идентификатор разработчика | разработчик |
Уникальный идентификатор разработчика, созданный Edge, в формате org_name@@@unique_id. Чтобы получить этот параметр, разработчики должны связать приложения с одним или несколькими продуктами API, содержащими вызываемые прокси API. При этом прокси должны проверять ключ API или токен OAuth, отправленный с вызовами API. Ключ или токен идентифицирует разработчика. Подробнее о том, как получать полные данные аналитики… Если указанные выше критерии не соблюдены, вы увидите значение "(not set)". Также ознакомьтесь со статьей Что означает значение "(not set)" в объекте Аналитики. |
| Среда | окружающая среда | Среда Edge, в которой развернуты прокси API. Примеры: "test" или "prod". |
| Код ошибки | ax_edge_execution_fault_code |
Код ошибки. Пример:
|
| Название процесса при ошибке | ax_execution_fault _flow_name |
Именованный поток в прокси-сервере API, который вызвал ошибку. Например, "PreFlow", "PostFlow" или название созданного вами условного потока. Обратите внимание, что полное название, которое нужно использовать в API управления, – ax_execution_fault_flow_name (без переноса строки). Если ошибок не было, вы увидите значение "(не задано)". |
| Ресурс Flow | flow_resource | Только для использования в Apigee. Подробнее можно узнать в записи на форуме. |
| Состояние потока при ошибке | ax_execution_fault _flow_state |
Название потока прокси-сервера API, в котором возникли ошибки, например "PROXY_REQ_FLOW" или "TARGET_RESP_FLOW". Обратите внимание, что полное название, которое нужно использовать в API управления, – ax_execution_fault_flow_state (без переноса строки). |
| Идентификатор потока шлюза | gateway_flow_id | Когда вызовы API проходят через Edge, каждому из них присваивается собственный идентификатор потока шлюза. Пример: rrt329ea-12575-114653952-1. Идентификатор потока шлюза позволяет различать показатели в ситуациях с высокой пропускной способностью транзакций, когда другие параметры, такие как организация, среда и временная метка, одинаковы для всех вызовов. |
| Организация | организация | Организация Edge, в которой развернуты прокси API. |
| Название правила в сообщении об ошибке | ax_execution_fault _policy_name |
Название правила, из-за которого произошла ошибка и не удалось выполнить вызов API. Обратите внимание, что полное название, которое нужно использовать в API управления, – ax_execution_fault_policy_name без переноса строки. Если правило возвращает ошибку, но корневой атрибут правила |
| Прокси-сервер | apiproxy | Название компьютера (не отображаемое название) прокси-сервера API. |
| Базовый путь прокси-сервера | proxy_basepath |
Путь BasePath, настроенный в ProxyEndpoint прокси-сервера API. Базовый путь не включает домен и порт URL прокси API. Например, если базовый URL прокси API – https://apigeedocs-test.apigee.net/releasenotes/, то базовый путь – /releasenotes. Значение также сохраняется в |
| Суффикс пути прокси-сервера | proxy_pathsuffix |
Путь к ресурсу, добавленный к базовому пути прокси API. Например, если основной URL прокси API – Если суффикс пути не используется, значение будет пустым. Значение также сохраняется в |
| Ревизия прокси-сервера | apiproxy_revision | Номер ревизии прокси-сервера API, который обработал вызовы API. Это не обязательно означает последнюю версию прокси-сервера API. Если у прокси-сервера API 10 версий, то в данный момент может быть развернута восьмая. Кроме того, API может иметь несколько версий, развернутых при условии, что у них разные базовые пути, как описано в разделе Развертывание прокси в интерфейсе. |
| Разрешенный IP-адрес клиента | ax_resolved_client_ip |
Содержит исходный IP-адрес клиента. Значение параметра Обратите внимание, что при использовании продуктов маршрутизации, таких как Akamai, для сбора подлинных IP-адресов клиентов, IP-адрес клиента передается в Edge в HTTP-заголовке Значение параметра
|
| Код статуса ответа | response_status_code | Код статуса HTTP-ответа, переданный из Apigee клиенту, например 200, 404, 503 и т. д. В Edge код статуса ответа от целевого сервиса можно переопределить с помощью правил, например Назначить сообщение и Вызвать ошибку. Поэтому этот параметр может отличаться от параметра Код ответа целевого сервиса (target_response_code). |
| Виртуальный хост | virtual_host | Название виртуального хоста, на который был отправлен вызов API. Например, у организаций по умолчанию есть два виртуальных хоста: default (http) и secure (https). |
| Входящий/клиент | ||
| IP-адрес клиента | client_ip | IP-адрес системы, которая обращается к маршрутизатору, например исходного клиента (proxy_client_ip) или балансировщика нагрузки. Если в заголовке X-Forwarded-For указано несколько IP-адресов, это последний из них. |
| Категория устройств | ax_ua_device_category | Тип устройства, с которого был выполнен вызов API, например "Планшет" или "Смартфон". |
| Семейство ОС | ax_ua_os_family | Семейство операционной системы устройства, с которого выполняется вызов, например Android или iOS. |
| Версия ОС | ax_ua_os_version |
Версия ОС устройства, с которого совершен звонок. Этот параметр удобно использовать в качестве второго параметра детализации вместе с параметром "Семейство ОС" (ax_ua_os_family), чтобы просматривать версии операционных систем. |
| IP-адрес клиента прокси-сервера | proxy_client_ip |
IP-адрес вызывающего клиента, хранящийся в |
| IP-адрес клиента, перешедшего по ссылке | ax_true_client_ip | При использовании продуктов для маршрутизации, например Akamai, для получения подлинных IP-адресов клиентов, IP-адреса клиентов передаются в Edge в HTTP-заголовке Чтобы определить исходный IP-адрес клиента, доступный через параметр |
| Путь запроса | request_path |
Путь к ресурсу (без домена) целевого сервиса, исключая параметры запроса. Например, в целевом объекте Apigee |
| URI запроса | request_uri |
Путь к ресурсу (без домена) целевого сервиса, включая параметры запроса. Например, в целевом объекте |
| Глагол запроса | request_verb | Глагол HTTP-запроса в запросах API, например GET, POST, PUT, DELETE. |
| Агент пользователя | useragent |
Название агента пользователя или программного агента, который использовался для вызова API. Примеры:
|
| Семейство агентов пользователя | ax_ua_agent_family | Семейство агента пользователя, например "Chrome Mobile" или "cURL". |
| Тип агента пользователя | ax_ua_agent_type | Тип агента пользователя, например "Браузер", "Мобильный браузер", "Библиотека" и т. д. |
| Версия агента пользователя | ax_ua_agent_version |
Версия агента пользователя. Этот параметр можно использовать в качестве дополнительного параметра детализации вместе с параметром "Семейство агентов пользователя" (ax_ua_agent_family), чтобы получить версию семейства агентов. |
| Исходящий/целевой | ||
| Целевой базовый путь | target_basepath |
Путь к ресурсу (без домена) целевого сервиса, исключая параметры запроса, который определен в файле Предположим, что прокси-сервер API вызывает следующий целевой сервис: <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net/user?user=Dude</URL> </HTTPTargetConnection> В нашем примере target_basepath – Если бы целевой показатель был таким: <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net</URL> </HTTPTargetConnection> target_basepath будет иметь значение null. В инструменте трассировки, когда вы выбираете значок AX в конце блок-схемы, |
| Целевой хост | target_host | Хост целевого сервиса. Например, если прокси-сервер API вызывает http://mocktarget.apigee.net/help, то target_host будет mocktarget.apigee.net. |
| Целевой IP-адрес | target_ip | IP-адрес целевого сервиса, возвращающего ответ прокси-серверу API. |
| Код ответа целевого сервера | target_response_code |
Код статуса HTTP-ответа, возвращенный целевым сервисом прокси-сервера API, например 200, 404, 503 и т. д. Значение "null" означает, что запрос не был отправлен в целевой сервис. Это происходит, когда ответ предоставляется в соответствии с правилами кеширования ответов или когда при обработке запроса возникает ошибка. Это не то же самое, что параметр Код статуса ответа (response_status_code). |
| Целевой URL | target_url |
Полный URL целевого сервиса, определенного в TargetEndpoint прокси API. <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net/user?user=Dude</URL> </HTTPTargetConnection> В нашем примере target_url – это Обратите внимание, что URL также можно переопределить во время обработки прокси API с помощью При последовательном использовании прокси и при использовании целевых объектов script (Node.js) целевой URL в вызывающем прокси имеет значение null. |
| X-Forwarded-For | x_forwarded_for_ip | Список IP-адресов в заголовке Чтобы определить исходный IP-адрес клиента, доступный через параметр |
| Время | ||
| День недели | ax_day_of_week | Трехбуквенное сокращение дня недели, в который были сделаны вызовы API. Например, "пн, вт, ср". |
| Месяц | ax_month_of_year | Месяц, в котором были выполнены вызовы API. Например, "03" для марта. |
| Время суток | ax_hour_of_day |
Двузначное значение часа, в течение которого были выполнены вызовы API (по 24-часовому формату). Например, если вызовы API были выполнены в период с 22:00 до 23:00, значение параметра ax_hour_of_day будет равно 22. Время указано в формате UTC. |
| Часовой пояс | ax_geo_timezone | Общепринятые названия часовых поясов, из которых были сделаны вызовы API, например America/New_York и Europe/Dublin. |
| Неделя месяца | ax_week_of_month | Неделя месяца (числовое значение). Например, для вызовов API, выполненных на третьей неделе месяца, значение ax_week_of_month будет равно 3. |
| Местоположение | ||
| Город | ax_geo_city | Город, из которого были выполнены вызовы API. |
| Континент | ax_geo_continent | Двухбуквенный код континента, с которого были выполнены вызовы API. Например, NA для Северной Америки. |
| Страна | ax_geo_country | Двухбуквенный код страны, из которой были сделаны вызовы API. Например, US для США. |
| Географический регион | ax_geo_region | Код географического региона, например STATE-COUNTRY. Например, WA-US для штата Вашингтон в США. |
| Регион | ax_dn_region | Название центра обработки данных Apigee, в котором развернуты прокси API, например us-east-1. |
| Монетизация | ||
| Сообщение об игнорировании транзакции Mint | x_apigee_mint_tx_ignoreMessage | Флаг, указывающий, следует ли игнорировать сообщения, связанные с монетизацией. Для всех организаций, занимающихся монетизацией, задано значение false. |
| Статус транзакции при создании NFT | x_apigee_mint_tx_status | Статус запроса на монетизацию, например "Успешно", "Не удалось", "Недействительный" или "Нет". |
Фильтры
Фильтры позволяют ограничить результаты поиска показателями с определенными характеристиками. Ниже приведены примеры фильтров. При определении фильтров используйте названия показателей и параметров в стиле API.
Возвращает показатели для прокси API с названиями books или music:
filter=(apiproxy in 'books','music')
Возвращает показатели для прокси API, названия которых начинаются с буквы "m":
filter=(apiproxy like 'm%')
Возвращает показатели для прокси API, названия которых не начинаются с буквы "m":
filter=(apiproxy not like 'm%')
Возвращает показатели для вызовов API с кодами статуса ответа от 400 до 599:
filter=(response_status_code ge 400 and response_status_code le 599)
Возвращает показатели для вызовов API с кодом статуса ответа 200 и целевым кодом ответа 404:
filter=(response_status_code eq 200 and target_response_code eq 404)
Возвращает показатели для вызовов API с кодом статуса ответа 500:
filter=(response_status_code eq 500)
Возвращает показатели для вызовов API, которые не привели к ошибкам:
filter=(is_error eq 0)
Ниже перечислены операторы, которые можно использовать для создания фильтров отчетов.
| Оператор | Описание |
|---|---|
in |
Включить в список |
notin |
Исключить из списка |
eq |
Равно, == |
ne |
Не равно, != |
gt |
Больше, чем > |
lt |
Меньше, < |
ge |
Больше или равно, >= |
le |
Меньше или равно, <= |
like |
Возвращает значение true, если строка соответствует заданному шаблону. |
not like |
Возвращает значение false, если строка соответствует заданному шаблону. |
similar to |
Возвращает значение true или false в зависимости от того, соответствует ли шаблон заданной строке. Она похожа на функцию like, но интерпретирует шаблон, используя определение регулярного выражения из стандарта SQL. |
not similar to |
Возвращает значение false или true в зависимости от того, соответствует ли шаблон заданной строке. Она похожа на функцию not like, но интерпретирует шаблон, используя определение регулярного выражения из стандарта SQL. |
and |
Позволяет использовать логический оператор "И", чтобы включить несколько выражений фильтра. Фильтр включает данные, соответствующие всем условиям. |
or |
Позволяет использовать логику "или" для оценки различных возможных выражений фильтра. Фильтр включает данные, соответствующие хотя бы одному из условий. |