Extensión de Google Stackdriver Logging

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Versión 1.3.7

Escribe entradas en los registros de Stackdriver Logging.

En este contenido, se proporciona referencia para configurar y usar la extensión.

Requisitos previos

Antes de usar esta extensión desde un proxy de API, debes hacer lo siguiente:

  1. En IAM, asigna el rol Logging > Escritor de registros y Logging > Visor de registros al miembro del proyecto que representará tu extensión en el sistema de Stackdriver Logging. Si quieres obtener instrucciones a fin de otorgar roles, consulta Otorga funciones a una cuenta de servicio para recursos específicos. Para obtener más información sobre las funciones de registro, consulta la Guía de control de acceso.

  2. Usa GCP Console a fin de generar una clave para la cuenta de servicio.

  3. Usa el contenido del archivo JSON de claves resultante cuando agregues y configures la extensión mediante la referencia de configuración.

Esta extensión admite la llamada de una política ExtensionExtension ubicada en PostClientFlow. Si deseas usar la política ExtensionExtension a fin de llamar a esta extensión desde un PostClientFlow, asegúrate de que la marca features.allowExtensionsInPostClientFlow esté configurada como true en tu organización.

  • Si eres cliente de Apigee Edge para la nube pública, debes comunicarte con el equipo de asistencia de Apigee Edge para asegurarte de que la marca features.allowExtensionsInPostClientFlow esté establecida como true en tu organización.

  • Si eres cliente de Apigee Edge para nube privada, usa la API de Actualizar propiedades de la organización para establecer la marca features.allowExtensionsInPostClientFlow en true.

Acerca de Stackdriver Logging

Stackdriver Logging es parte del conjunto de productos de Stackdriver en Google Cloud Platform (GCP). Incluye almacenamiento para registros, una interfaz de usuario denominada el visor de registros y una API con la que se pueden administrar los registros de manera programática. Con Stackdriver Logging, puedes leer y escribir entradas de registro, buscar y filtrar tus registros, exportarlos y crear métricas basadas en registros.

Actualmente, esta extensión escribe entradas en el registro. Para obtener más información, consulta los documentos de Stackdriver Logging.

Ejemplos

En los siguientes ejemplos, se muestra cómo configurar la compatibilidad con las acciones de extensión de Stackdriver Logging mediante el uso de la política ExtensionExtension.

Registro global

La siguiente política escribe el mensaje “This is a test” en un registro llamado example-log en el recurso Stackdriver Global. En un uso real, es probable que el mensaje esté contenido en una variable de flujo cuyo valor se establezca en otra parte del proxy de 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>

En este contenido, se proporciona referencia para configurar y usar la extensión. Si quieres conocer los pasos para configurar una extensión con la consola de Apigee, consulta Agrega y configura una extensión.

Acciones

log

Escribe un mensaje en el registro.

Esta acción escribe una entrada de registro de Stackdriver. Las entradas de registro constan de metadatos y los datos de la entrada. Para obtener más información sobre las entradas de registro, consulta la Referencia de entradas. Para obtener información sobre el contenido de la propiedad metadata, consulta el objeto LogEntry en la documentación de Stackdriver Logging.

Sintaxis

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

Ejemplo

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "stackdriver-log-name-to-use",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : "data-to-log-as-entry"
}]]></Input>

parámetros de solicitud

Parámetro Descripción Tipo Predeterminada Obligatorias
logName El nombre del registro al que pertenece esta entrada. Cadena Ningún contenido de este tipo Sí.
metadatos Metadatos sobre la entrada de registro.
Para obtener más información y opciones para configurar type y labels en metadata, consulta MonitoredResource.
JSON Ningún contenido de este tipo No.
mensaje Datos que se usarán como valor para esta entrada de registro. Cadena Ningún contenido de este tipo Sí.

Respuesta

None si el mensaje se escribió en el registro. De lo contrario, la solicitud mostrará un error. Consulta también Cómo depurar una extensión.

Referencia de configuración

Usa la siguiente información cuando configures e implementes esta extensión para usarla en proxies de API.

Propiedades comunes de las extensiones

Las siguientes propiedades están presentes para cada extensión.

Propiedad Descripción Predeterminado Obligatorio
name Nombre que asignas a esta configuración de la extensión. Ninguna
packageName Nombre del paquete de extensiones proporcionado por Apigee Edge. Ninguna
version El número de versión del paquete de extensiones desde el que quieres configurar la extensión. Ninguna
configuration Es un valor de configuración específico para la extensión que agregas. Consulta Propiedades para este paquete de extensiones Ninguna

Propiedades de este paquete de extensión

Especifica valores para las siguientes propiedades de configuración específicas de esta extensión.

Propiedad Descripción Predeterminada Obligatorias
projectId El ID del proyecto de GCP en el que se deben crear los registros. Ningún contenido de este tipo Sí.
credenciales Cuando se ingresa en la consola de Apigee Edge, este es el contenido del archivo de claves de tu cuenta de servicio. Cuando se envía a través de la API de Management, es un valor codificado en base64 que se genera a partir del archivo de claves de la cuenta de servicio. Ningún contenido de este tipo Sí.