Você está lendo a documentação do Apigee Edge.
Acesse a documentação da
Apigee X. info
Versão 1.3.7
Gravar entradas nos registros do Stackdriver Logging.
Este conteúdo fornece uma referência para configurar e usar essa extensão.
Pré-requisitos
Antes de usar essa extensão em um proxy de API, você precisa:
No IAM, atribua a função Logging > Gravador de registros e Logging > Leitor de registros ao membro do projeto que vai representar sua extensão no sistema do Stackdriver Logging. Para instruções sobre como conceder papéis, consulte Conceder papéis a uma conta de serviço para recursos específicos. Para mais informações sobre papéis de geração de registros, consulte o Guia de controle de acesso.
Use o Console do GCP para gerar uma chave para a conta de serviço.
Use o conteúdo do arquivo JSON da chave resultante ao adicionar e configurar a extensão usando a referência de configuração.
Essa extensão pode ser chamada por uma política ExtensionCallout localizada em PostClientFlow.
Se você quiser usar a política ExtensionCallout para chamar essa extensão de um
PostClientFlow, verifique se a flag features.allowExtensionsInPostClientFlow
está definida como true na sua organização.
Se você for cliente do Apigee Edge para nuvem pública, entre em contato com o suporte do Apigee Edge para garantir que a flag
features.allowExtensionsInPostClientFlowesteja definida comotruena sua organização.Se você é cliente do Apigee Edge para nuvem privada, use a API Atualizar propriedades da organização para definir a flag
features.allowExtensionsInPostClientFlowcomotrue.
Sobre o Stackdriver Logging
O Stackdriver Logging faz parte do pacote de produtos do Stackdriver no Google Cloud Platform (GCP). Estão incluídos o 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, exportar registros e criar métricas com base neles.
No momento, essa extensão grava entradas no registro. Para mais informações, consulte a documentação 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 ExtensionCallout.
Registro global
A política a seguir grava a mensagem "This is a test" em um registro chamado example-log no recurso global do Stackdriver. No uso real, provavelmente a mensagem estaria contida em uma variável de fluxo cujo valor você define em outro lugar no 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>
Este conteúdo fornece uma referência para configurar e usar essa extensão. Para saber como configurar uma extensão usando o console do Apigee, consulte Adicionar e configurar uma extensão.
Ações
log
Escreve uma mensagem no registro.
Essa ação grava uma entrada de registro do Stackdriver. As entradas de registro consistem em metadados e dados de entrada. Para mais informações 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
<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 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 como definir type e labels em metadata, consulte MonitoredResource. |
JSON | Nenhum. | Não. |
| mensagem | Dados a serem usados como o valor desta entrada de registro. | String | Nenhum. | Sim. |
Resposta
Nenhum, se a mensagem foi gravada no registro. Caso contrário, a solicitação vai retornar um erro. Consulte também Como depurar uma extensão.
Referência de configuração
Use o seguinte ao configurar e implantar essa extensão para uso em proxies de API.
Propriedades comuns de extensão
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ão
Especifique valores para as seguintes propriedades de configuração específicas dessa extensão.
| Propriedade | Descrição | Padrão | Obrigatório |
|---|---|---|---|
| projectId | O ID do projeto do GCP em que os registros serão criados. | Nenhum. | Sim. |
| credenciais | Quando inserido no console do Apigee Edge, esse é o conteúdo do arquivo de chave da sua conta de serviço. Quando enviado pela API Management, é um valor codificado em base64 gerado do arquivo de chave da conta de serviço. | Nenhum. | Sim. |