Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
Versão 1.6.1
Gravar entradas em registros do Cloud Logging.
Este conteúdo oferece referência para configurar e usar essa extensão.
Pré-requisitos
Antes de usar essa extensão de um proxy de API, você precisa:
No IAM, atribua o papel Logging > Gravador de registros ao membro do projeto que representará sua extensão para o 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 saber mais sobre as funções de geração de registros, consulte o Guia de controle de acesso.
Gere uma chave para a conta de serviço com o console do Google Cloud.
Use o conteúdo do arquivo JSON da chave resultante ao adicionar e configurar a extensão com a referência de configuração.
Esta extensão pode ser chamada por uma política Extension callout localizada no PostClientFlow.
Se você quiser usar a política ExtensionExtension para chamar essa extensão de um
PostClientFlow, verifique se a sinalização features.allowExtensionsInPostClientFlow
está definida como true
na sua organização.
Se você for cliente do Apigee Edge para nuvem pública, precisará entrar em contato com o suporte do Apigee Edge para garantir que a sinalização
features.allowExtensionsInPostClientFlow
esteja definida comotrue
em sua organização.Se você for um cliente do Apigee Edge para nuvem privada, use a API Atualizar propriedades da organização para definir a sinalização
features.allowExtensionsInPostClientFlow
comotrue
.
Sobre o Cloud Logging
O Cloud Logging faz parte do pacote de operações do Google Cloud. Ele inclui armazenamento para registros, uma interface do usuário chamada de Análise de registros e uma API para gerenciamento programático. Com o Cloud Logging, é possível ler e gravar entradas de registro, pesquisar, filtrar e exportar registros e criar métricas com base neles.
A extensão do Cloud Logging grava entradas no registro atualmente. Para mais informações, consulte os documentos do Cloud Logging.
Exemplos
Os exemplos a seguir ilustram como configurar o suporte para ações de extensão do Cloud Logging usando a política Extension callout.
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. Em uso real, você provavelmente
teria a mensagem contida em uma variável de fluxo com 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 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
Grava uma mensagem no registro.
Esta ação grava uma entrada de registro do Cloud Logging. 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 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 configurar type e labels em metadata , consulte MonitoredResource. |
JSON | Nenhum | Não |
message |
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
None
se a mensagem foi 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 código a seguir ao configurar e implantar a 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 propriedades de configuração a seguir 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 Management, ele é um valor codificado em base64 gerado no arquivo de chave da conta de serviço. | Nenhum | Sim |