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

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

Загрузите журналы мониторинга 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, и номер порта. Например, вы определяете виртуальный хост на Edge Router со следующими настройками:

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

На основании этих настроек запрос к API-прокси, связанному с этим виртуальным хостом, имеет форму:

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

Где:

  • proxy-base-path определяется при создании прокси-сервера API и уникален для каждого прокси-сервера API.
  • путь к ресурсу — это путь к ресурсу, доступному через прокси-сервер 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 журналов .