Estensione Google Cloud Logging

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Versione 1.6.1

di Gemini Advanced.

Scrivi voci nei log di Cloud Logging.

Questi contenuti forniscono un riferimento per la configurazione e l'utilizzo di questa estensione.

Prerequisiti

Prima di utilizzare questa estensione da un proxy API, devi:

  1. In IAM, assegna il ruolo Logging > Writer log al membro del progetto che rappresenterà l'estensione per il sistema Cloud Logging. Per istruzioni su come concedere i ruoli, consulta l'articolo Concessione di ruoli a un account di servizio per risorse specifiche. Per ulteriori informazioni sui ruoli di logging, consulta la Guida al controllo dell'accesso.

  2. Utilizzare la console Google Cloud per generare una chiave per l'account di servizio.

  3. Utilizza i contenuti del file JSON chiave risultante quando aggiungi e configuri l'estensione mediante il riferimento di configurazione.

Questa estensione supporta la chiamata da parte di un criterio ExtensionCallout situato in PostClientFlow. Se vuoi utilizzare le norme sulle estensioni callout per chiamare questa estensione da un PostClientFlow, assicurati che il flag features.allowExtensionsInPostClientFlow è impostato su true nella tua organizzazione.

  • Se sei un cliente Apigee Edge per il cloud pubblico, devi contattare l'assistenza di Apigee Edge per garantire che il Il flag features.allowExtensionsInPostClientFlow è impostato su true nella tua organizzazione.

  • Se sei un cliente Apigee Edge per il cloud privato, utilizza API Aggiorna le proprietà dell'organizzazione per impostare il flag features.allowExtensionsInPostClientFlow su true.

di Gemini Advanced.

Informazioni su Cloud Logging

Cloud Logging fa parte del programma suite operativa. Include l'archiviazione per i log, un'interfaccia utente chiamata Logs Explorer e un'API per la gestione dei log in modo programmatico. Con Cloud Logging puoi leggere e scrivere voci di log, cercare e filtrare i log, esportare i log e per creare metriche basate su log.

Attualmente l'estensione Cloud Logging scrive voci nel log. Per ulteriori informazioni, consulta la documentazione di Cloud Logging.

Esempi

I seguenti esempi illustrano come configurare il supporto per Cloud Logging le azioni delle estensioni utilizzando le norme sulle estensioni callout.

Log globale

Il criterio seguente scrive il messaggio This is a test in un log denominato example-log nella risorsa Cloud Global. In uso, probabilmente fare in modo che il messaggio sia contenuto in una variabile di flusso di cui imposti il valore altrove nel proxy 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>

Questi contenuti forniscono un riferimento per la configurazione e l'utilizzo di questa estensione. Per la procedura di configurazione di un'estensione utilizzando la console Apigee, vedi Aggiunta e configurazione di un'estensione.

Azioni

log

Scrive un messaggio nel log.

Questa azione scrive una voce di log di Cloud Logging. Le voci di log sono costituite da metadati e i dati di ingresso. Per ulteriori informazioni sulle voci di log, consulta Riferimento delle voci. Per informazioni sui contenuti della proprietà metadata, consulta LogEntry nella documentazione di Cloud Logging.

Sintassi

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

Esempio: stringa

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

Esempio: JSON

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

Parametri di richiesta

Parametro Descrizione Tipo Predefinito Obbligatorio
logName Il nome del log a cui appartiene questa voce. Stringa Nessuno
metadata Metadati sulla voce di log.
Per ulteriori informazioni e opzioni sull'impostazione di type e labels in metadata, consulta MonitoredResource.
JSON Nessuno No
message Dati da utilizzare come valore per questa voce di log. Puoi specificare una stringa semplice o utilizzare JSON per registrare un messaggio più strutturato. Stringa o JSON Nessuno

Risposta

None se il messaggio è stato scritto nel log. In caso contrario, la richiesta restituirà un errore. Vedi anche Debug di un'estensione.

Informazioni sulla configurazione

Quando configuri questa estensione e ne esegui il deployment da usare nei proxy API, usa quanto segue.

Proprietà comuni delle estensioni

Per ogni estensione sono presenti le seguenti proprietà.

Proprietà Descrizione Predefinito Obbligatorio
name Il nome che assegni a questa configurazione dell'estensione. Nessuno
packageName Nome del pacchetto dell'estensione fornito da Apigee Edge. Nessuno
version Numero di versione del pacchetto dell'estensione da cui stai configurando un'estensione. Nessuno
configuration Valore di configurazione specifico per l'estensione che stai aggiungendo. Vedi Proprietà per questo pacchetto di estensioni Nessuno

Proprietà per questo pacchetto di estensioni

Specifica i valori per le seguenti proprietà di configurazione specifiche per questa estensione.

Proprietà Descrizione Predefinito Obbligatorio
projectId L'ID progetto Google Cloud in cui devono essere creati i log. Nessuno
credentials Se inserito nella console Apigee Edge, si tratta del contenuto del file delle chiavi del tuo account di servizio. Se inviato tramite l'API di gestione, si tratta di un valore codificato in base64 generato dal file delle chiavi dell'account di servizio. Nessuno