Extensão do Google Stackdriver Logging

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Versão 1.2.1

Gravar entradas nos registros do Stackdriver Logging.

Este conteúdo fornece referência para configurar e usar essa extensão.

Pré-requisitos

Antes de usar essa extensão de um proxy de API, você precisa:

  1. No IAM, atribua o Logging > Permissão de gravador de registros para o membro do projeto que representará sua extensão no sistema Stackdriver Logging. Para instruções sobre como conceder papéis, consulte Como conceder papéis a uma conta de serviço para recursos específicos. Para saber mais sobre papéis de geração de registros, consulte o Guia de controle de acesso.

  2. Use o Console do GCP para gerar uma chave para a conta de serviço.

  3. Use o conteúdo do arquivo JSON da chave resultante ao adicionar e configurar a extensão usando a referência de configuração.

Sobre o Stackdriver Logging

O Stackdriver Logging faz parte do pacote de produtos do Stackdriver no Google Cloud Platform (GCP). Ele inclui armazenamento para registros, uma interface do usuário chamada Visualizador de registros e uma API para gerenciar registros de maneira programática. Com o Stackdriver Logging, é possível ler e gravar entradas de registro, pesquisar e filtrar registros, exportá-los e criar métricas com base em registros.

Esta extensão atualmente grava entradas no registro.

Para mais informações, consulte os documentos do Stackdriver Logging.

Amostras

Os exemplos a seguir ilustram como configurar o suporte para ações de extensão do Stackdriver Logging usando a política Extension callout.

Registro global

A política a seguir escreve a mensagem "This is a test" em um registro chamado "example-log" no recurso global do Stackdriver. Em uso real, a mensagem provavelmente estaria contida em uma variável de fluxo cujo valor você definiu em outro lugar no proxy da 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>

Este conteúdo fornece referência para configurar e usar essa extensão. Para ver as etapas para configurar uma extensão usando o console da Apigee, consulte Como adicionar e configurar uma extensão.

Ações

log

Escreve uma mensagem no registro.

Esta ação grava uma entrada de registro do Stackdriver. As entradas de registro consistem em metadados e dados de entrada. Para saber mais sobre entradas de registro, consulte a Referência de entradas. Para informações sobre o conteúdo da propriedade metadata, consulte o objeto LogEntry na documentação do Stackdriver Logging.

Sintaxe

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

Exemplo: string

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

Exemplo: JSON

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

Parâmetros de solicitação

Parâmetro Descrição Tipo Padrão Obrigatório
logName O nome do registro a que esta entrada pertence. String Nenhum. Sim.
metadados Metadados sobre a entrada de registro.
Para mais informações e opções sobre a configuração de type e labels em metadata, consulte MonitoredResource.
JSON Nenhum. Não.
mensagem Dados a serem usados como o valor desta entrada de registro. Especifique uma string simples ou use JSON para registrar uma mensagem mais estruturada. String ou JSON Nenhum. Sim.

Resposta

Nenhum se a mensagem tiver sido gravada no registro. Caso contrário, a solicitação retornará um erro. Consulte também Como depurar uma extensão.

Referência de configuração

Use o seguinte ao configurar e implantar esta extensão para uso em proxies de API.

Propriedades de extensão comuns

As propriedades a seguir estão presentes para cada extensão.

Propriedade Descrição Padrão Obrigatório
name Nome que será dado a esta configuração da extensão. Nenhum Sim
packageName Nome do pacote de extensão fornecido pelo Apigee Edge. Nenhum Sim
version Número da versão do pacote de extensão a partir do qual você está configurando uma extensão. Nenhum Sim
configuration Valor de configuração específico da extensão que você está adicionando. Consulte Propriedades para este pacote de extensão. Nenhum Sim

Propriedades deste pacote de extensões

Especifique valores para as seguintes propriedades de configuração específicas desta extensão.

Propriedade Descrição Padrão Obrigatório
projectId O ID do projeto do GCP em que os registros devem ser criados. Nenhum. Sim.
credenciais Quando inserido no console do Apigee Edge, este é o conteúdo do arquivo de chave da conta de serviço. Quando enviado pela API de gerenciamento, é um valor codificado em base64 gerado a partir do arquivo de chave da conta de serviço. Nenhum. Sim.