Visualizzazione dei log delle istanze

Questa pagina descrive come trovare e utilizzare Cloud Logging per visualizzare ed eseguire query sui log per la tua istanza Cloud SQL.

Cloud SQL utilizza Cloud Logging. Consulta la documentazione di Cloud Logging per informazioni complete e consulta le query di esempio di Cloud SQL.

Visualizza i log

Per visualizzare i log per le voci di log dell'istanza Cloud SQL:

Console

  1. Nella console Google Cloud, vai alla pagina Cloud Logging.

    Vai a Cloud Logging

  2. Seleziona un progetto Cloud SQL esistente nella parte superiore della pagina.
  3. In Query Builder, aggiungi quanto segue:
    • Risorsa: seleziona Database Cloud SQL. Nella finestra di dialogo, seleziona un di Cloud SQL.
    • Nomi dei log: scorri fino alla sezione Cloud SQL e seleziona i file di log appropriati per l'istanza. Ad esempio:
      • cloudsql.googleapis.com/postgres.log
    • Gravità: seleziona un livello di log.
    • Intervallo di tempo: seleziona un valore preimpostato o creane uno personalizzato.

gcloud

Utilizza il comando gcloud logging per visualizzare le voci di log. Nell'esempio riportato di seguito, sostituisci PROJECT_ID. La limit è un parametro facoltativo che indica il numero massimo di voci da per tornare indietro.

gcloud logging read "resource.type=cloudsql_database" \
--project=PROJECT-ID \
--limit=10 \
--format=json

Visualizza il log delle operazioni dell'istanza

Puoi visualizzare i log di un'istanza nel riquadro Operazioni. Il riquadro Operazioni registra ogni operazione eseguita sul con le seguenti informazioni:

  • L'ora di completamento dell'operazione, indicata nel fuso orario locale.
  • Il tipo di operazione.
  • Lo stato dell'operazione.
  • Un messaggio che descrive l'esito dell'operazione.

Se l'operazione non va a buon fine, puoi utilizzare il messaggio per risolvere il problema.

Per visualizzare un log delle operazioni dell'istanza:

  1. Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
  3. Fai clic su Operazioni per passare al riquadro che mostra delle operazioni eseguite nel log delle operazioni.
Nota: il log delle operazioni non include le operazioni eseguite utilizzando strumenti di gestione esterni, come il client psql. Nel log delle operazioni vengono visualizzate solo le operazioni di gestione degli utenti e di modifica della password eseguite utilizzando la console Google Cloud, lo strumento a riga di comando gcloud o l'API Cloud SQL Admin.

Visualizza log applicazione

Le applicazioni che si connettono a Cloud SQL archiviano i log in posizioni diverse.

App Engine (ambiente flessibile)

In Computing > App Engine > Servizi:

  • Individua il tuo servizio nell'elenco dei servizi.
  • Fai clic sul menu a discesa Strumenti.
  • Seleziona log.

Nella sezione Operazioni > Logging > Sezione Esplora log della console Google Cloud, utilizza la seguente query:

resource.type="gae_app"
resource.labels.module_id="default"

Cloud Run

Visualizza i log nella sezione Esplora log di Cloud Run del nella console Google Cloud. Tieni presente che Cloud Run segnala solo i messaggi di errore del proxy di autenticazione Cloud SQL. Utilizza una query come la seguente:

resource.type="cloud_run_revision"
resource.labels.service_name="$SERVICE_NAME"
resource.labels.revision_name="$REVISION_NAME"

Proxy di autenticazione Cloud SQL

In Operazioni > Logging > Esplora log, utilizza la seguente query:

log_id("appengine.googleapis.com/cloud-sql-proxy")

Visualizza audit log

Puoi visualizzare i seguenti tipi di audit log per le tue istanze Cloud SQL:

  • Attività di amministrazione: include le operazioni di amministrazione che scrivono metadati o informazioni di configurazione. Non puoi disattivare questi log.
  • Accesso ai dati: include le operazioni di amministratore che leggono i metadati o le informazioni di configurazione. Questi log includono anche le operazioni che leggono o scrivono i dati forniti dall'utente. Per ricevere gli audit log di accesso ai dati, devi abilitarli esplicitamente.
  • Evento di sistema: identifica le azioni automatiche in Google Cloud che modificano la configurazione delle risorse. Non puoi disattivare questi log.

Per ulteriori informazioni sulla visualizzazione degli audit log per le attività di amministrazione, l'accesso ai dati e gli eventi di sistema, vedi Visualizzare i log.

Prezzi

Per ulteriori informazioni sui prezzi di Cloud Logging, consulta Riepilogo dei prezzi di Cloud Logging.

Risoluzione dei problemi

Problema Risoluzione dei problemi
Il logging utilizza molta CPU e memoria nell'istanza Cloud SQL. La registrazione deve essere ottimizzata.

Il flag log_statement può essere impostato su none e il logging_collector su off. Se la registrazione avviene ancora, potrebbero essere disponibili altri flag relativi ai log che possono essere ottimizzati. Puoi modifica l'istanza per modificare questi flag.

Gli audit log non sono stati trovati. I log di accesso ai dati vengono scritti solo se l'operazione è autenticata chiamata API basata sull'utente che crea, modifica o legge i dati creati dall'utente. o se l'operazione accede ai file di configurazione o ai metadati delle risorse.
Le informazioni sulle operazioni non sono presenti nei log. Vuoi trovare ulteriori informazioni su un'operazione.

Ad esempio, se un utente è stato eliminato, ma non riesci a scoprire chi lo ha fatto. I log mostrano che l'operazione è stata avviata, ma non forniscono ulteriori informazioni. Per consentire la registrazione di informazioni dettagliate e che consentono l'identificazione personale (PII) come queste, devi attivare la registrazione dei controlli.

I file di log sono difficili da leggere. Preferisci visualizzare i log come file JSON o di testo. Puoi utilizzare il gcloud logging read comando insieme ai comandi di post-elaborazione di Linux per scaricare i log.

Per scaricare i log in formato JSON:

gcloud logging read \
"resource.type=cloudsql_database \
AND logName=projects/PROJECT_ID \
/logs/cloudsql.googleapis.com%2FLOG_NAME" \
--format json \
--project=PROJECT_ID \
--freshness="1d" \
> downloaded-log.json
    

Per scaricare i log in formato TESTO:

gcloud logging read \
"resource.type=cloudsql_database \
AND logName=projects/PROJECT_ID \
/logs/cloudsql.googleapis.com%2FLOG_NAME" \
--format json \
--project=PROJECT_ID \
--freshness="1d"| jq -rnc --stream 'fromstream(1|truncate_stream(inputs)) \
| .textPayload' \
--order=asc
> downloaded-log.txt
   
I log delle query non vengono trovati nei log di PostgreSQL. Devi attivare i flag pgaudit.
  1. Da un terminale, connettiti al tuo database:
    gcloud sql connect INSTANCE_NAME
          
  2. Esegui questo comando per creare l'estensione:
    CREATE EXTENSION pgaudit;
          
  3. Esci dal database ed esegui il seguente comando da un terminale:
    gcloud sql instances patch INSTANCE_NAME \
    --database-flags=cloudsql.enable_pgaudit=on,pgaudit.log=all