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

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

Версия 2.0.2

Запись записей в журналы Cloud Logging .

Данный материал содержит справочную информацию по настройке и использованию этого расширения.

Предварительные требования

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

  1. В IAM назначьте роль « Ведение журналов > Запись журналов» участнику проекта, который будет представлять ваше расширение для системы облачного ведения журналов. Инструкции по предоставлению ролей см. в разделе «Предоставление ролей учетной записи службы для определенных ресурсов ». Дополнительную информацию о ролях в системе ведения журналов см. в Руководстве по контролю доступа .

  2. Используйте консоль Google Cloud для генерации ключа для учетной записи службы .

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

Это расширение поддерживает вызов через политику ExtensionCallout, расположенную в PostClientFlow . Если вы хотите использовать политику ExtensionCallout для вызова этого расширения из PostClientFlow, убедитесь, что флаг features.allowExtensionsInPostClientFlow установлен в true в вашей организации.

  • Если вы являетесь клиентом Apigee Edge для публичного облака, вам необходимо связаться со службой поддержки Apigee Edge , чтобы убедиться, что флаг features.allowExtensionsInPostClientFlow установлен в true в вашей организации.

  • Если вы являетесь клиентом Apigee Edge for Private Cloud, используйте API обновления свойств организации , чтобы установить флаг features.allowExtensionsInPostClientFlow в true .

О облачном логировании

Cloud Logging — это часть пакета инструментов для управления операциями Google Cloud. Он включает в себя хранилище для журналов, пользовательский интерфейс под названием Logs Explorer и API для программного управления журналами. С помощью Cloud Logging вы можете читать и записывать записи журналов, искать и фильтровать журналы, экспортировать журналы и создавать метрики на основе журналов.

Расширение Cloud Logging записывает записи в журнал. Подробнее см. в документации Cloud Logging .

Образцы

Следующие примеры иллюстрируют, как настроить поддержку действий расширения Cloud Logging с помощью политики ExtensionCallout .

Глобальный журнал

Следующая политика записывает сообщение This is a test в журнал с именем example-log в ресурсе Cloud Global. На практике же это сообщение, вероятно, будет содержаться в переменной потока, значение которой вы зададите в другом месте в 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>cloud-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 см. в разделе «Добавление и настройка расширения» .

Действия

бревно

Записывает сообщение в журнал.

Это действие записывает запись в журнал Cloud Logging. Записи журнала состоят из метаданных и самих данных записи. Дополнительную информацию о записях журнала см. в справочнике по записям . Информацию о содержимом свойства metadata см. в описании объекта LogEntry в документации Cloud Logging.

Синтаксис

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "cloud-log-name-to-use",
  "metadata" : JSON-structured-metadata,
  "message" : "data-to-log-as-entry"
}]]></Input>

Пример: Строка

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message": "This is a test."
}]]></Input>

Пример: JSON

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : { "info" :  "This is a test." }
}]]></Input>

Параметры запроса

Параметр Описание Тип По умолчанию Необходимый
logName Название журнала, к которому относится эта запись. Нить Никто Да
metadata Метаданные записи в журнале.
Для получения дополнительной информации и параметров настройки type и labels в metadata см. раздел MonitoredResource .
JSON Никто Нет
message Данные, которые будут использоваться в качестве значения для этой записи в журнале. Вы можете указать строку или использовать JSON для записи более структурированного сообщения. Строка или JSON Никто Да

Ответ

Если сообщение было записано в журнал, None будет отображаться. В противном случае запрос вернет ошибку. См. также раздел «Отладка расширения» .

Справочник по конфигурации

При настройке и развертывании этого расширения для использования в API-прокси используйте следующие параметры.

Общие свойства расширения

Следующие свойства присутствуют для каждого расширения.

Свойство Описание По умолчанию Необходимый
name Имя, которое вы даете этой конфигурации расширения. Никто Да
packageName Имя пакета расширения, предоставленное Apigee Edge. Никто Да
version Номер версии пакета расширения, из которого вы настраиваете расширение. Никто Да
configuration Значение конфигурации, относящееся к добавляемому расширению. См. Свойства этого пакета расширения. Никто Да

Свойства для этого пакета расширений

Укажите значения для следующих параметров конфигурации, специфичных для данного расширения.

Свойство Описание По умолчанию Необходимый
projectId Идентификатор проекта Google Cloud, в котором должны создаваться журналы. Никто Да
credentials При вводе в консоль Apigee Edge это содержимое файла ключа вашей учетной записи службы. При отправке через API управления это значение в кодировке Base64, сгенерированное из файла ключа учетной записи службы. Никто Да