Extensión de Google Stackdriver Logging

Estás viendo la documentación de Apigee Edge.
Ve a la documentación de Apigee X.
info

Versión 1.2.0

Escribir entradas en los registros de Stackdriver Logging

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

Requisitos previos

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

  1. En IAM, asigna el permiso Logging > Logs Writer al miembro del proyecto que representará tu extensión en el sistema de Stackdriver Logging. Para obtener instrucciones sobre cómo otorgar roles, consulta Otorga funciones a una cuenta de servicio para recursos específicos. Para obtener más información sobre los roles de registro, consulta la Guía de control de acceso.

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

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

Información acerca de Stackdriver Logging

Stackdriver Logging forma parte del conjunto de productos de Stackdriver de Google Cloud Platform (GCP). Incluye almacenamiento para registros, una interfaz de usuario llamada Visor de registros y una API que se puede usar a fin de 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 la política ExtensionCallout.

Registro global

La siguiente política escribe el mensaje "This is a test" en un registro llamado example-log en el recurso global de Stackdriver. En el uso real, es probable que el mensaje se contenga en una variable de flujo cuyo valor establezcas en otro lugar 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 una referencia para configurar y usar esta extensión. Si deseas conocer los pasos para configurar una extensión con la consola de Apigee, consulta Cómo agregar y configurar 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 consisten en metadatos y datos de 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 Predeterminado Obligatorio
logName Es el nombre del registro al que pertenece esta entrada. String Ninguno Sí.
metadatos Son metadatos sobre la entrada de registro.
Para obtener más información y opciones sobre cómo configurar type y labels en metadata, consulta MonitoredResource.
JSON Ninguno No.
mensaje Datos que se usarán como valor para esta entrada de registro. String Ninguno Sí.

Respuesta

Ninguno 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 lo siguiente cuando configures y, luego, implementes esta extensión para usarla en proxies de API.

Propiedades comunes de la extensión

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 Obligatorio
ID de proyecto Es el ID del proyecto de GCP en el que se deben crear los registros. Ninguno 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 administración, es un valor codificado en base64 que se genera a partir del archivo de claves de la cuenta de servicio. Ninguno Sí.