Расширение Google Stackdriver Logging

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

Версия 1.2.0

Записывать данные в журналы Stackdriver Logging.

В нем приведена информация о том, как настроить и использовать это расширение.

Требования

Прежде чем использовать это расширение в прокси-сервере API, необходимо:

  1. В IAM назначьте разрешение "Ведение журналов > Запись журналов" участнику проекта, который будет представлять ваше расширение в системе ведения журналов Stackdriver. Инструкции по предоставлению ролей приведены в статье Как предоставить сервисному аккаунту роли для определенных ресурсов. Подробнее о ролях для ведения журналов…

  2. Как создать ключ для сервисного аккаунта с помощью консоли GCP

  3. Используйте содержимое полученного JSON-файла ключа при добавлении и настройке расширения, следуя инструкциям по настройке.

О 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, сгенерированное на основе файла ключа сервисного аккаунта. Нет. Да.