Просмотр журналов с помощью API

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

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

Примечание: По умолчанию вызовы API журналов возвращают результаты только с кодами состояния 4xx и 5xx, но не с кодом 2xx. Это сделано для ограничения количества результатов, поскольку большинство результатов имеют код состояния 2xx. Чтобы получить результаты с кодом состояния 2xx, добавьте status=2xx к запросу. Например: https://apimonitoring.enterprise.apigee.com/logs?status=2xx .

В следующих разделах описано, как управлять журналами с помощью API:

Дополнительную информацию об API для работы с логами см. в разделе «API для работы с логами».

Информацию об используемых в этих примерах параметрах cURL см. в разделе «Использование cURL» .

Загрузите журналы для организации и среды.

Загрузите журналы для конкретной организации и среды, используя API журналов :

https://apimonitoring.enterprise.apigee.com/logs

Необходимо передать название организации и среды, используя параметры запроса org и env .

По умолчанию API возвращает 10 последних записей журнала за предыдущий час. Например:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

Установите $ACCESS_TOKEN в значение вашего токена доступа OAuth 2.0, как описано в разделе «Получение токена доступа OAuth 2.0» .

В ответ приходит массив записей журнала в следующем формате:

[   
  {
"request":"GET /v1/o/myorg/z HTTP/1.1",
    "request_length":1349,
    "request_message_id":"rrt-0623eb157b650315c-c-ne-7785-16029140-1",
    "virtual_host":"api.enterprise.apigee.com",
    "response_size":144,
    "response_time":0.551,
    "response_status":"404",
    "timestamp":"2018-08-14T17:31:07Z",
    "fault_code":"messaging.adaptors.http.flow.ErrorResponseCode",
    "fault_flow":"-",
    "fault_policy":"null/null",
    "fault_proxy":
        "/organizations/myorg/environments/prod/apiproxies/myAPI/revisions/50",
    "fault_source":"target"
  },
  …
]

Используйте параметры запроса from и to чтобы указать временной диапазон в формате ISO. Формат даты может быть следующим:

  • yyyy-mm-dd T hh:mm:ss Z
  • yyyy-mm-dd T hh:mm:ss +00:00

Например:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&from=2018-08-13T14%3A04%3A00Z&to=2018-08-13T14%3A10%3A00Z" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

API имеет множество необязательных параметров запроса. Например, чтобы просмотреть логи прокси-сервера с именем myAPI , генерирующего HTTP-ответы 404:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

Чтобы получить более 10 записей в журнале, установите параметр запроса limit . Максимальное значение параметра — 1000.

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404&limit=200" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

Дополнительные параметры см. в API журналов .

Перечислите прокси-серверы, связанные с виртуальным хостом и базовым путем.

Виртуальный хост на пограничном маршрутизаторе позволяет указать доменное имя, протокол, например HTTP/HTTPS, и номер порта. Например, вы определяете виртуальный хост на пограничном маршрутизаторе со следующими настройками:

  • псевдоним хоста = apis.acme.com
  • порт = 443
  • TLS включен

Исходя из этих настроек, запрос к API-прокси, связанному с этим виртуальным хостом, имеет следующий вид:

https://apis.acme.com/proxy-base-path/resource-path

Где:

  • Параметр proxy-base-path задается при создании API-прокси и является уникальным для каждого API-прокси.
  • resource-path — это путь к ресурсу, доступному через API-прокси.

Дополнительную информацию о виртуальных хостах см. в разделе «О виртуальных хостах» .

Чтобы загрузить список API-прокси, связанных с конкретным виртуальным хостом и базовым путем, отправьте GET-запрос к следующему ресурсу API журналов :

https://apimonitoring.enterprise.apigee.com/logs/apiproxies

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

Например, следующий вызов API возвращает прокси-серверы, связанные с виртуальным хостом http://apis.acme.com и имеющим базовый путь /v1/perf :

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs/apiproxies?org=myorg&env=prod&select=http://apis.acme.com/v1/perf" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" 

Установите $ACCESS_TOKEN в значение вашего токена доступа OAuth 2.0, как описано в разделе «Получение токена доступа OAuth 2.0» .

Дополнительные параметры см. в API журналов .