Você está visualizando a documentação do Apigee Edge.
Acesse a
documentação da
Apigee X. info
Versão 2.0.0
Grave entradas nos registros do Cloud Logging.
Este conteúdo oferece 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 o papel Logging > Logs Writer ao membro do projeto que vai representar sua extensão no sistema do Cloud 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 mais informações sobre papéis de registro, consulte o Guia de controle de acesso.
Use o console do Google Cloud para gerar uma chave para a conta de serviço.
Use o conteúdo do arquivo JSON de 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 no 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.allowExtensionsInPostClientFlow
esteja definida comotrue
na sua organização.Se você for cliente do Apigee Edge para nuvem privada, use a API Atualizar propriedades da organização para definir a flag
features.allowExtensionsInPostClientFlow
comotrue
.
Sobre o Cloud Logging
O Cloud Logging faz parte do pacote de operações do Google Cloud. Estão incluídos o armazenamento para registros, uma interface do usuário chamada "Análise de registros" e uma API para gerenciar registros de maneira programática. Com o Cloud Logging, você pode ler e gravar entradas de registro, pesquisar e filtrar seus registros, exportar seus registros e criar métricas com base neles.
No momento, a extensão do Cloud Logging grava entradas no registro. Para mais informações, consulte a documentação do Cloud Logging.
Amostras
Os exemplos a seguir ilustram como configurar o suporte a ações de extensão do Cloud 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 Cloud. No uso real, provavelmente
a mensagem estará contida em uma variável de fluxo cujo valor é definido 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>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>
Este conteúdo oferece uma referência para configurar e usar essa extensão. Para saber como configurar uma extensão usando o console da Apigee, consulte Adicionar e configurar uma extensão.
Ações
log
Grava uma mensagem no registro.
Essa ação grava uma entrada de registro do Cloud Logging. As entradas de registro consistem em metadados
e nos dados de entrada. Para mais informações sobre entradas de registro, consulte a
Referência de entrada.
Para informações sobre o conteúdo da propriedade metadata
, consulte o objeto
LogEntry
na documentação do Cloud Logging.
Sintaxe
<Action>log</Action>
<Input><![CDATA[{
"logName" : "cloud-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 a entrada pertence. | String | Nenhum | Sim |
metadata |
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 |
message |
Dados a serem usados como o valor desta entrada de registro. É possível especificar uma string simples ou usar JSON para registrar uma mensagem mais estruturada. | String ou JSON | Nenhum | Sim |
Resposta
None
se a mensagem foi gravada no registro. Caso contrário, um erro será exibido. Consulte também Como depurar uma extensão.
Referência de configuração
Use as informações a seguir ao configurar e implantar essa 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ão
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 Google Cloud em que os registros serão criados. | Nenhum | Sim |
credentials |
Quando inserido no console do Apigee Edge, esse é 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 |