Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Этот раздел представляет собой справочник по метрикам, параметрам и фильтрам аналитики. Дополнительную информацию об их использовании см. в разделе Обзор API Analytics .
В этом разделе показаны имена метрик и измерений в том виде, в котором они появляются в пользовательском интерфейсе, и то, как их необходимо использовать в вызовах API.
- Вы увидите имена пользовательского интерфейса при создании пользовательских отчетов .
- Используйте имена, специфичные для API, при получении метрик , создании определения отчета или обновлении определения отчета .
Метрики
Ниже приведены показатели API, которые вы можете получить в пользовательских отчетах и вызовах API управления.
Название специального отчета | Имя для использования в API управления | Функции | Описание |
---|---|---|---|
Среднее число транзакций в секунду | тпс | Никто | Среднее количество транзакций, то есть запросов прокси-сервера API, в секунду. Обратите внимание: если у вас относительно небольшое количество транзакций за период времени, среднее количество транзакций в секунду может оказаться равным нулю в пользовательских отчетах пользовательского интерфейса, если это число меньше двух десятичных знаков. Синтаксис API: |
Попадание в кэш | кэш_хит | сумма | Число успешных запросов API, использующих кэш ответов вместо ответа от целевой службы. Синтаксис API: |
Количество элементов кэша L1 | ax_cache_l1_count | среднее, мин, макс | Возвращает количество элементов в кэше L1 (в памяти) на одну транзакцию за заданный период времени. Например, если вы выберете Синтаксис API: |
Ошибки политики | политика_ошибка | сумма | Общее количество ошибок политики за указанный период времени. Ошибки политики обычно возникают намеренно. Например, политика проверки ключа API выдает ошибку, когда в запросе передается недопустимый ключ API, а политика Spike Arrest выдает ошибку, если количество вызовов 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 | сумма, среднее, мин, макс | Размер полезных данных запроса, полученных Edge, в байтах . Синтаксис API: |
Кэш ответов выполнен | ax_cache_executed | сумма | Общее количество применений политики кэша ответов за заданный период времени. Поскольку политика кэширования ответов прикрепляется к прокси API в двух местах (один раз в запросе и один раз в ответе), она обычно выполняется дважды при вызове API. Кеш-получение и кэш-помещение считаются за одно выполнение. Однако выполнение кэша ответов равно 0, если элемент В инструменте «Трассировка» вы можете щелкнуть значок «Кэш ответов» в выполняемом вызове API и просмотреть переменную потока Синтаксис API: |
Задержка обработки ответа | response_processing_latency | среднее, мин, макс | Время (среднее, минимальное или максимальное) в миллисекундах , которое требуется Edge для обработки ответов API. Отсчет времени начинается, когда прокси-сервер API получает ответ целевой службы, и заканчивается, когда Apigee пересылает ответ исходному вызывающему абоненту. Используя различные измерения, вы можете изучить задержки обработки ответов по прокси-серверу API, региону и т. д. Синтаксис API: |
Размер ответа | размер_ответа | сумма, среднее, мин, макс | Размер полезных данных ответа, возвращаемых клиенту, в байтах . Синтаксис API: |
Целевые ошибки | целевая_ошибка | сумма | Общее количество ответов 5xx от целевой службы. Это ошибки целевой службы, не вызванные Apigee. Синтаксис API: |
Целевое время отклика | target_response_time | сумма, среднее, мин, макс | Время (сумма, среднее, минимальное или максимальное) в миллисекундах , в течение которого целевой сервер отвечает на вызов. Этот показатель показывает, как работают целевые серверы. Отсчет времени начинается, когда Edge пересылает запрос целевой службе, и заканчивается, когда Edge получает ответ. Обратите внимание: если вызов API возвращает ответ из кэша (например, с использованием политики кэша ответов), вызов никогда не достигнет целевой службы, и никакие показатели целевого времени ответа не регистрируются. Синтаксис API: |
Общее время ответа | total_response_time | сумма, среднее, мин, макс | Количество времени (сумма, среднее, минимальное или максимальное) в миллисекундах с момента, когда Edge получает запрос от клиента, до момента, когда Edge отправляет ответ обратно клиенту. Время включает в себя сетевые издержки (например, время, необходимое балансировщикам нагрузки и маршрутизаторам для выполнения своей работы), задержку обработки запроса, задержку обработки ответа и целевое время ответа (если ответ подается из целевой службы вместо кэша). Используя различные измерения, вы можете изучить задержки обработки по прокси-серверу API, приложению разработчика, региону и т. д. Синтаксис API: |
Трафик | message_count | сумма | Общее количество вызовов API, обработанных Edge за указанный период времени. Используйте параметры, чтобы группировать показатели трафика наиболее значимыми для вас способами. Синтаксис API: |
Размеры
Измерения позволяют просматривать показатели в значимых группах. Например, просмотр общего количества трафика становится гораздо более полезным, если вы просматриваете его для каждого приложения разработчика или прокси-сервера API.
Ниже приведены размеры, которые Apigee предоставляет «из коробки». Кроме того, вы можете создавать собственные измерения, как описано в разделе Анализ содержимого сообщений API с помощью пользовательской аналитики .
Название специального отчета | Имя для использования в API управления | Описание |
---|---|---|
Апигейские сущности | ||
Токен доступа | access_token | Токен доступа OAuth конечного пользователя приложения. |
API-продукт | api_product | Имя продукта API, содержащего вызываемые прокси-серверы API. Чтобы получить это измерение, приложения разработчиков, совершающие вызовы, должны быть связаны с одним или несколькими продуктами API, содержащими прокси-серверы API, а вызываемые прокси-серверы должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен связан с продуктом API. Дополнительные сведения см. в разделе Прежде всего: как создать полные аналитические данные . Если вышеуказанные критерии не выполняются, вы увидите значение «(не установлено)». См. также Что означает значение аналитической сущности «(не установлено)»? . |
Ключ кэша | 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 КБ. В инструменте Trace при выборе политики Response Cache вы можете увидеть это значение в переменной потока Дополнительные сведения об уровнях кэша см. в разделе Внутреннее устройство кэша . |
Идентификатор клиента | client_id | Потребительский ключ (ключ API) приложения разработчика, выполняющего вызовы API, независимо от того, передается ли он в запросе как ключи API или включен в токены OAuth. Чтобы получить это измерение, прокси-серверы, принимающие вызовы, должны быть настроены на проверку действительного ключа API или токена OAuth. Приложения разработчика получают ключи API, которые можно использовать для создания токенов OAuth, когда приложения регистрируются в Edge. Дополнительные сведения см. в разделе «Перво-наперво: как создать полные аналитические данные» . Если вышеуказанные критерии не выполняются, вы увидите значение «(не установлено)». См. также Что означает значение аналитической сущности «(не установлено)»? . |
Приложение для разработчиков | Developer_app | Приложение разработчика, зарегистрированное в Edge, совершающее вызовы API. Чтобы получить это измерение, приложения должны быть связаны с одним или несколькими продуктами API, которые содержат вызываемые прокси-серверы API, а прокси-серверы должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен идентифицирует приложение разработчика. Дополнительные сведения см. в разделе «Перво-наперво: как создать полные аналитические данные» . Если вышеуказанные критерии не выполняются, вы увидите значение «(не установлено)». См. также Что означает значение аналитической сущности «(не установлено)»? . |
Электронная почта разработчика | Developer_email | Электронная почта зарегистрированных в Edge разработчиков, чье приложение выполнило вызовы API. Чтобы получить это измерение, у разработчиков должны быть приложения, связанные с одним или несколькими продуктами API, которые содержат вызываемые прокси-серверы API, и прокси-серверы должны проверять ключ API или токен OAuth, отправленный с вызовом API. Ключ или токен идентифицирует приложение разработчика. Дополнительные сведения см. в разделе Прежде всего: как создать полные аналитические данные . Если вышеуказанные критерии не выполняются, вы увидите значение «(не установлено)». См. также Что означает значение аналитической сущности «(не установлено)»? . |
Идентификатор разработчика | разработчик | Уникальный идентификатор разработчика, сгенерированный Edge, в форме org_name @@@ unique_id . Чтобы получить это измерение, у разработчиков должны быть приложения, связанные с одним или несколькими продуктами API, содержащими вызываемые прокси-серверы API, а прокси-серверы должны проверять ключ API или токен OAuth, отправленный с вызовами API. Ключ или токен идентифицирует разработчика. Дополнительные сведения см. в разделе Прежде всего: как создать полные аналитические данные . Если вышеуказанные критерии не выполняются, вы увидите значение «(не установлено)». См. также Что означает значение аналитической сущности «(не установлено)»? . |
Среда | среда | Среда Edge, в которой развертываются прокси API. Например, «тест» или «прод». |
Код неисправности при ошибке | ax_edge_execution_fault_code | Код неисправности . Например: |
Имя потока при ошибке | ax_execution_fault _flow_name | Именованный поток в прокси-сервере API, вызвавший ошибку. Например, «PreFlow», «PostFlow» или имя созданного вами условного потока. Обратите внимание, что полное имя, которое будет использоваться в API управления, — ax_execution_fault_flow_name, без разрыва строки. Если ошибок не произошло, вы увидите значение «(не установлено)». |
Ресурс потока | поток_ресурс | Используйте только Apigee. Если вам интересно, посмотрите этот пост в сообществе . |
Состояние потока при ошибке | ax_execution_fault _flow_state | В названии потока прокси-сервера API указано, что возникли ошибки, например «PROXY_REQ_FLOW» или «TARGET_RESP_FLOW». Обратите внимание, что полное имя, которое будет использоваться в API управления, — ax_execution_fault_flow_state, без разрыва строки. |
Идентификатор потока шлюза | шлюз_flow_id | Когда вызовы API проходят через Edge, каждый вызов получает свой собственный идентификатор потока шлюза. Пример: rrt329ea-12575-114653952-1. Идентификатор потока шлюза полезен для различения метрик в ситуациях с высоким TPS, когда другие параметры, такие как организация, среда и метка времени, идентичны для всех вызовов. |
Организация | организация | Пограничная организация, в которой развернуты прокси-серверы API. |
Имя политики при ошибке | ax_execution_fault _policy_name | Имя политики, которая вызвала ошибку и привела к сбою вызова API. Обратите внимание, что полное имя, которое будет использоваться в API управления, — ax_execution_fault_policy_name, без разрыва строки. Если политика выдает ошибку, но корневому атрибуту политики |
Прокси | апипрокси | Имя компьютера (не отображаемое имя) прокси-сервера API. |
Базовый путь прокси-сервера | proxy_basepath | BasePath, настроенный на прокси-сервере API ProxyEndpoint. Базовый путь не включает домен и порт URL-адреса прокси-сервера API. Например, если базовый URL-адрес прокси-сервера API — https://apigeedocs-test.apigee.net/releasenotes/, базовый путь — /releasenotes. Значение также сохраняется в переменной потока |
Суффикс пути прокси | proxy_pathsuffix | Путь к ресурсу добавлен к базовому пути прокси-сервера API. Например, если базовый URL-адрес прокси-сервера API — Если суффикс пути не используется, значение пустое. Значение также сохраняется в переменной потока |
Версия прокси | apiproxy_revision | Номер версии прокси-сервера API, обрабатывавшего вызовы API. Это не обязательно означает последнюю версию прокси-сервера API. Если прокси-сервер API имеет 10 версий, в настоящее время может быть развернута 8-я версия. Кроме того, API может иметь несколько развернутых редакций, если они имеют разные базовые пути, как описано в разделе «Развертывание прокси в пользовательском интерфейсе» . |
Разрешенный IP-адрес клиента | ax_resolved_client_ip | Содержит IP-адрес исходного клиента. Значение измерения Обратите внимание, что при использовании продуктов маршрутизации, таких как Akamai, для захвата истинных IP-адресов клиентов, IP-адрес клиента передается Edge в HTTP-заголовке Значение измерения
|
Код состояния ответа | код_статуса_ответа | Код состояния ответа HTTP, пересылаемый от Apigee клиенту, например 200, 404, 503 и т. д. В Edge код состояния ответа от цели может быть перезаписан с помощью таких политик, как Assign Message и Raise Fault , поэтому это измерение может отличаться от Target Response Code (target_response_code) . |
Виртуальный хост | виртуальный_хост | Имя виртуального хоста, к которому был сделан вызов API. Например, в организациях по умолчанию есть два виртуальных хоста: default (http) и secure (https). |
Входящий/Клиент | ||
IP-адрес клиента | client_ip | IP-адрес системы, которая подключается к маршрутизатору, например исходного клиента (proxy_client_ip) или балансировщика нагрузки. Если в заголовке X-Forwarded-For указано несколько IP-адресов, это последний 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-адрес клиента, доступ к которому осуществляется через измерение |
Путь запроса | путь_запроса | Путь ресурса (не включая домен) к целевой службе, исключая параметры запроса. Например, пример цели Apigee |
Запрос URI | request_uri | Путь ресурса (не включая домен) к целевой службе, включая параметры запроса. Например, пример цели Apigee |
Запросить глагол | запрос_глагол | Глагол HTTP-запроса в запросах API, таких как GET, POST, PUT, DELETE. |
Пользовательский агент | пользовательский агент | Имя пользовательского агента или программного агента, используемого для вызова API. Примеры:
|
Семейство пользовательских агентов | ax_ua_agent_family | Семейство пользовательского агента, например Chrome Mobile или cURL. |
Тип пользовательского агента | ax_ua_agent_type | Тип пользовательского агента, например «Браузер», «Мобильный браузер», «Библиотека» и т. д. |
Версия пользовательского агента | ax_ua_agent_version | Версия пользовательского агента. Полезно использовать это в качестве второго «детализированного» измерения с семейством пользовательских агентов (ax_ua_agent_family), чтобы получить версию семейства агентов. |
Исходящие/целевые | ||
Целевой базовый путь | целевой_базовый путь | Путь ресурса (не включая домен) к целевой службе, за исключением параметров запроса, который определен в Например, скажем, прокси-сервер API вызывает следующую цель: <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net/user?user=Dude</URL> </HTTPTargetConnection> В этом примере целевой_базовый путь — Если бы цель была такой: <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net</URL> </HTTPTargetConnection> target_basepath будет нулевым. В инструменте «Трассировка» при выборе значка AX в конце блок-схемы переменная потока |
Целевой хост | целевой_хост | Хост целевой службы. Например, если прокси-сервер API вызывает http://mocktarget.apigee.net/help , target_host — mocktarget.apigee.net . |
Целевой IP-адрес | целевой_ip | IP-адрес целевой службы, возвращающей ответ прокси-серверу API. |
Целевой код ответа | target_response_code | Код состояния ответа HTTP, возвращаемый целевой службой прокси-серверу API, например 200, 404, 503 и т. д. Значение «null» означает, что запрос никогда не достиг целевой службы. Это происходит, когда ответ обслуживается политикой кэша ответов или в случае сбоя при обработке запроса. Это отличается от измерения «Код состояния ответа» (response_status_code) . |
Целевой URL | целевой_url | Полный URL-адрес целевой службы, определенный в TargetEndpoint прокси-сервера API. <TargetEndpoint name="default"> ... <HTTPTargetConnection> <URL>http://mocktarget.apigee.net/user?user=Dude</URL> </HTTPTargetConnection> В этом примере target_url — Обратите внимание, что URL-адрес также можно переопределить во время обработки прокси-сервера API с помощью переменной потока При цепочке прокси и при использовании целевых объектов сценария (Node.js) target_url в вызывающем прокси имеет значение null. |
X перенаправлено на | x_forwarded_for_ip | Список IP-адресов в заголовке Чтобы определить исходный IP-адрес клиента, доступный через измерение |
Время | ||
День недели | ax_day_of_week | Трехбуквенное сокращение дня недели, в который были выполнены вызовы API. Например, понедельник, вторник, среда. |
Месяц | ax_month_of_year | Числовой месяц, в котором были сделаны вызовы API. Например, «03» для марта. |
Время суток | ax_hour_of_day | Основано на 24-часовом формате, двузначном часе, в течение которого были сделаны вызовы API. Например, для вызовов 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_континент | Двухбуквенный код континента, с которого осуществлялись вызовы API. Например, NA для Северной Америки. |
Страна | ax_geo_country | Двухбуквенный код страны, из которой осуществлялись вызовы API. Например, США для США. |
Географический регион | ax_geo_region | Код географического региона через дефис, например ШТАТ-СТРАНА. Например, WA-US для Вашингтона-США. |
Область | ax_dn_region | Имя центра обработки данных Apigee, в котором развернуты прокси-серверы API, например us-east-1. |
Монетизация | ||
Сообщение об игнорировании транзакции Mint | x_apigee_mint_tx_ignoreMessage | Флаг, указывающий, следует ли игнорировать сообщения, связанные с монетизацией. Установите значение false для всех организаций, занимающихся монетизацией. |
Статус новой транзакции | x_apigee_mint_tx_status | Статус запроса на монетизацию, например успешный, неудачный, недействительный или нет. |
Фильтры
Фильтры позволяют ограничить результаты метриками с определенными характеристиками. Ниже приведены некоторые примеры фильтров. При определении фильтров используйте имена метрик и измерений в стиле API.
Возвращает метрики для API-прокси с именами или музыкой:
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 | Позволяет использовать логику «или» для оценки различных возможных выражений фильтра. Фильтр включает данные, соответствующие хотя бы одному из условий. |