Visualizzare i log di controllo generati da pgAudit per AlloyDB per PostgreSQL

Questa pagina descrive come visualizzare gli audit log generati da pgAudit, che ti aiuta a configurare i log spesso richiesti per rispettare le certificazioni governative, finanziarie e ISO. Questa pagina descrive anche il formato dei log per pgAudit. Per saperne di più su pgAudit, consulta Informazioni su pgAudit.

Prima di iniziare

Per visualizzare gli audit log, devi:

Visualizzare gli audit log

I log pgAudit generati per una determinata istanza vengono inviati a Cloud Logging come audit log di accesso ai dati.

Puoi visualizzare i log pgAudit generati utilizzando l'applicazione Esplora log.

Per visualizzare i log pgAudit, seleziona il cloudaudit.googleapis.com/data_access filtro dei log nell'applicazione Esplora log.

Per visualizzare tutti i log pgAudit per un progetto AlloyDB, esegui la seguente query utilizzando l'interfaccia Filtro avanzato:

resource.type="alloydb.googleapis.com/Instance"
logName="projects/your-project-name/logs/cloudaudit.googleapis.com%2Fdata_access"
protoPayload.request.@type="type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"

Formato dei log per pgAudit

Ogni voce di log pgAudit negli audit log di accesso ai dati contiene campi che rappresentano le informazioni raccolte per una query. Per saperne di più su questi campi voce di log, consulta la documentazione di pgAudit.

Voce di log pgAudit di esempio:

{
  protoPayload: {
    @type: "type.googleapis.com/google.cloud.audit.AuditLog"
    methodName: "alloydb.instances.query"
    request: {
      @type: "type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"
      auditClass: "READ"
      auditType: "SESSION"
      chunkCount: "1"
      chunkIndex: "1"
      command: "SELECT"
      database: "finance"
      databaseSessionId: 2209692
      parameter: "[not logged]"
      statement: "SELECT * FROM revenue"
      statementId: 2
      substatementId: 1
      user: "alice"
    }
  }
}

Di seguito sono riportate le descrizioni dei campi negli audit log di accesso ai dati:

  • auditClass. Il tipo di istruzione registrata. I valori possibili sono READ, WRITE, FUNCTION, ROLE, DDL, MISC e MISC_SET.
  • auditType. SESSION o OBJECT.
  • chunkCount. La suddivisione in blocchi può verificarsi sui dati forniti nei campi parameter e statement. Il campo chunkCount indica il numero totale di blocchi. Consulta anche la descrizione del chunkIndex campo.
  • chunkIndex. Specifica il numero di indice dei blocchi di dati nei parameter e statement campi nel corrente request container. Il numero iniziale è 1. Consulta anche la descrizione del campo chunkCount.
  • command. Ad esempio, ALTER TABLE o SELECT.
  • parameter. Il campo chunkIndex può determinare i contenuti di questo campo; consulta la descrizione del campo chunkIndex field. Se il valore di `pgaudit.log_parameter` è impostato, il parameter campo può contenere i parametri dell'istruzione come dati CSV tra virgolette. Se non sono presenti parametri, questo campo contiene [none]. In caso contrario, questo campo contiene [not logged].
  • statement. Istruzione eseguita sul backend. Il campo chunkIndex può determinare i contenuti del campo statement; consulta la descrizione del chunkIndex campo.
  • statementId. ID istruzione univoco per questa sessione. Ogni ID istruzione rappresenta una chiamata backend. Gli ID istruzione sono sequenziali, anche se alcune istruzioni non vengono registrate.
  • substatementId. ID sequenziale per ogni sottoistruzione all'interno dell'istruzione principale.

Monitorare lo stato della pipeline degli audit log

AlloyDB elabora gli audit log generati dall'utente in modo asincrono prima di inoltrarli in modo sicuro a Cloud Logging. Puoi monitorare lo stato, il throughput e il backlog della pipeline di audit logging per le tue istanze e i tuoi nodi utilizzando Cloud Monitoring.

Le seguenti metriche sono disponibili nella risorsa monitorata alloydb.googleapis.com/InstanceNode in Esplora metriche:

Nome metrica Nome visualizzato Tipo di metrica / tipo di valore Unità Descrizione
alloydb.googleapis.com/node/database/logging/audit/backlog_bytes_count Dimensione del backlog degli audit log GAUGE / INT64 Byte (By) La dimensione, in byte, del backlog degli audit log sul nodo in attesa di elaborazione e caricamento in Cloud Logging. Un valore elevato o in aumento indica una contropressione nella pipeline di inoltro degli audit log.
alloydb.googleapis.com/node/database/logging/audit/processed_bytes_count Byte degli audit log elaborati DELTA / INT64 Byte (By) Il numero totale di byte di dati degli audit log elaborati e inoltrati correttamente a Cloud Logging dal nodo.
alloydb.googleapis.com/node/database/logging/audit/processed_entries_count Voci degli audit log elaborate DELTA / INT64 Conteggio (1) Il numero totale di voci degli audit log elaborate e inoltrate correttamente a Cloud Logging dal nodo.

Per saperne di più, consulta il riferimento alle metriche degli insight di sistema.

Passaggi successivi