Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
Версия 1.3.7
Записывать данные в журналы Stackdriver Logging.
В нем приведена информация о том, как настроить и использовать это расширение.
Требования
Прежде чем использовать это расширение в прокси-сервере API, необходимо:
В IAM назначьте роль Logging > Logs Writer (Ведение журналов > Запись журналов) и Logging > Logs Viewer (Ведение журналов > Просмотр журналов) участнику проекта, который будет представлять ваше расширение в системе Stackdriver Logging. Инструкции по предоставлению ролей приведены в статье Как предоставить сервисному аккаунту роли для определенных ресурсов. Подробнее о ролях для ведения журналов…
Как создать ключ для сервисного аккаунта с помощью консоли GCP
Используйте содержимое полученного JSON-файла ключа при добавлении и настройке расширения, следуя инструкциям по настройке.
Это расширение можно вызвать с помощью правила ExtensionCallout, расположенного в PostClientFlow.
Если вы хотите использовать правило ExtensionCallout, чтобы вызывать это расширение из PostClientFlow, убедитесь, что флаг features.allowExtensionsInPostClientFlow имеет значение true в вашей организации.
Если вы используете Apigee Edge для общедоступного облака, обратитесь в службу поддержки Apigee Edge, чтобы убедиться, что флаг
features.allowExtensionsInPostClientFlowимеет значениеtrueв вашей организации.Если вы используете Apigee Edge для частного облака, воспользуйтесь API Update organization properties (Обновление свойств организации), чтобы задать для флага
features.allowExtensionsInPostClientFlowзначениеtrue.
О Stackdriver Logging
Stackdriver Logging – это часть набора продуктов Stackdriver на платформе Google Cloud Platform (GCP). Он включает хранилище для журналов, пользовательский интерфейс под названием "Просмотр журналов" и API для программного управления журналами. Stackdriver Logging позволяет читать и записывать записи журнала, искать и фильтровать журналы, экспортировать их и создавать показатели на основе журналов.
Сейчас это расширение записывает данные в журнал. Подробнее о ведении журналов Stackdriver…
Примеры
В примерах ниже показано, как настроить поддержку действий расширения Stackdriver Logging с помощью правила ExtensionCallout.
Глобальный журнал
Следующее правило записывает сообщение "Это тест" в журнал example-log в глобальном ресурсе Stackdriver. В реальном использовании сообщение, скорее всего, будет содержаться в переменной потока, значение которой задается в другом месте прокси-сервера API.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
<DisplayName>Logging Connector</DisplayName>
<Connector>stackdriver-extension-sample</Connector>
<Action>log</Action>
<Input><![CDATA[{
"logName": "example-log",
"metadata": {
"resource": {
"type": "global",
"labels": {
"project_id": "my-test"
}
}
},
"message": "This is a test"
}]]></Input>
</ConnectorCallout>
В нем приведена информация о том, как настроить и использовать это расширение. Инструкции по настройке расширения с помощью консоли Apigee приведены в разделе Добавление и настройка расширения.
Действия
log
Записывает сообщение в журнал.
Это действие записывает запись в журнале Stackdriver. Записи журнала состоят из метаданных и данных записи. Подробнее о записях журнала… Информацию о содержимом свойства metadata можно найти в описании объекта LogEntry в документации по Stackdriver Logging.
Синтаксис
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : JSON-structured-metadata,
"message" : "data-to-log-as-entry"
}]]></Input>
Пример
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : { "resource" : { "type" : "global" } },
"message" : "data-to-log-as-entry"
}]]></Input>
Параметры запроса
| Параметр | Описание | Тип | По умолчанию | Обязательно |
|---|---|---|---|---|
| logName | Название журнала, к которому относится запись. | Строка | Нет. | Да. |
| метаданные | Метаданные записи журнала. Дополнительную информацию и варианты настройки type и labels в metadata можно найти в разделе MonitoredResource. |
JSON | Нет. | Нет. |
| Сообщение | Данные, которые будут использоваться в качестве значения для этой записи в журнале. | Строка | Нет. | Да. |
Ответ
Нет, если сообщение было записано в журнал. В противном случае запрос вернет ошибку. Также ознакомьтесь с информацией о том, как отлаживать расширения.
Справочник по конфигурации
При настройке и развертывании этого расширения для использования в прокси API следуйте приведенным ниже инструкциям.
Общие свойства расширений
Следующие свойства присутствуют для каждого расширения.
| Свойство | Описание | По умолчанию | Необходимый |
|---|---|---|---|
name | Имя, которое вы даете этой конфигурации расширения. | Никто | Да |
packageName | Имя пакета расширения, предоставленное Apigee Edge. | Никто | Да |
version | Номер версии пакета расширения, из которого вы настраиваете расширение. | Никто | Да |
configuration | Значение конфигурации, относящееся к добавляемому расширению. См. Свойства этого пакета расширения. | Никто | Да |
Свойства пакета расширения
Укажите значения для следующих свойств конфигурации, относящихся к этому расширению.
| Свойство | Описание | По умолчанию | Обязательно |
|---|---|---|---|
| Идентификатор проекта | Идентификатор проекта GCP, в котором должны создаваться журналы. | Нет. | Да. |
| учетные данные | При вводе в консоли Apigee Edge это содержимое файла ключа сервисного аккаунта. При отправке через Management API это значение в кодировке base64, сгенерированное на основе файла ключа сервисного аккаунта. | Нет. | Да. |