Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
При разработке прокси-сервера API вы можете добавить поддержку расширения, добавив в прокси-сервер правило ExtensionCallout. (Если вам нужна помощь в создании простого прокси-сервера, ознакомьтесь со статьей Как создать первый прокси-сервер.)
Когда вы добавляете поддержку расширения, вы связываете правило ExtensionCallout с настроенным расширением. Настройки конфигурации расширения определяют, как оно взаимодействует с ресурсом на сервере, к которому подключается. Именно это специально настроенное расширение правило ExtensionCallout интегрирует в прокси-сервер API.
Чтобы добавить расширение в прокси-сервер API:
- Откройте прокси-сервер API в консоли Apigee Edge в режиме Разработка.
Для создания расширения требуются права администратора организации, но добавить расширение в прокси-сервер API может пользователь с любой ролью.
- На панели Навигатор выберите PreFlow.
- В правом верхнем углу нажмите кнопку + Шаг, чтобы добавить правило.
- В диалоговом окне Добавить шаг в списке правил слева нажмите Выноска расширения.
Если правила ExtensionCallout нет в списке, убедитесь, что вы используете новый интерфейс Edge. Кроме того, расширения Apigee в настоящее время доступны только клиентам Apigee Edge Cloud Enterprise.
- На панели справа выберите параметры для настройки правила:
Поле Описание Отображаемое название Введите отображаемое название правила. Название Введите название, которое будет использоваться для правила программным способом. Он должен быть уникальным в прокси. Расширение Выберите расширение. Это расширение, которое вы настроили ранее. Действия Выберите действие "Запись в журнал". - Нажмите Добавить.
- В представлении потока нажмите на правило, чтобы посмотреть его XML-конфигурацию.
После установки расширения вы получите пример XML-файла с правилами. Обратите внимание, что в нем есть схема, описывающая, как структурировать конфигурацию для элемента
<Input>. (Вы можете игнорировать схему элемента<Output>, поскольку действие расширения "log" не возвращает тело ответа.) - Измените XML-файл правил, чтобы он выглядел следующим образом:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-Beta-1"> <DisplayName>Logging Extension</DisplayName> <Connector>my-logging-extension</Connector> <Action>log</Action> <Input>{ "logName": "example-log", "metadata": { "resource": { "type": "global", "labels": { "project_id": "my-gcp-project" } } }, "message": "This is a test" }</Input> </ConnectorCallout><!-- Input JSON Schema for package=gcp-stackdriver-logging version=0.0.4 {"type":"object","properties":{"logName":{"type":"string"},"metadata":{"type":"string"},"message":{"type":"string"}},"required":["logName","message"]} --> <!-- Output JSON Schema for package=gcp-stackdriver-logging version=0.0.4 {"type":"object","properties":{"content":{"type":"string"}},"required":[]} -->
<Input>определяет следующее:logName– название журнала, в который нужно записать данные. Если его нет, расширение создаст его.metadata– информация, которую можно использовать для поиска журнала в консоли Stackdriver.message– это сообщение в журнале, которое вы хотите записать.
- Нажмите кнопку Сохранить.