Conferir os registros de auditoria gerados pelo pgAudit para o AlloyDB para PostgreSQL

Esta página descreve como acessar os registros de auditoria gerados pelo pgAudit, que ajuda a configurar registros geralmente necessários para atender às certificações governamentais, financeiras e ISO. Esta página também descreve o formato de registro do pgAudit. Para mais informações sobre o pgAudit, consulte Sobre o pgAudit.

Antes de começar

Para acessar os registros de auditoria, faça o seguinte:

Acessar registros de auditoria

Os registros pgAudit gerados para uma determinada instância são enviados para o Cloud Logging como registros de auditoria de acesso a dados.

É possível acessar os registros pgAudit gerados usando o aplicativo Análise de registros.

Para acessar os registros pgAudit, selecione o cloudaudit.googleapis.com/data_access filtro de registro no aplicativo Análise de registros.

Para acessar todos os registros pgAudit de um projeto do AlloyDB, execute a consulta a seguir usando a interface Filtro avançado:

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 de registro de pgAudit

Cada entrada de registro pgAudit nos registros de auditoria de acesso a dados contém campos que representam as informações coletadas para uma consulta. Para mais informações sobre esses campos de entrada de registro, consulte a documentação do pgAudit.

Exemplo de entrada de registro pgAudit:

{
  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"
    }
  }
}

Veja a seguir as descrições dos campos nos registros de auditoria de acesso a dados:

  • auditClass. O tipo da instrução que é registrada. Os valores possíveis são READ, WRITE, FUNCTION, ROLE, DDL, MISC e MISC_SET.
  • auditType. SESSION ou OBJECT.
  • chunkCount. O fragmentação pode ocorrer nos dados fornecidos nos parameter e statement campos. O campo chunkCount indica o número total de partes. Consulte também a descrição do chunkIndex campo.
  • chunkIndex. Especifica o número de índice dos blocos de dados nos parameter e statement campos no request contêiner atual. O número inicial é 1. Consulte também a descrição do campo chunkCount.
  • mklink. Por exemplo, ALTER TABLE ou SELECT.
  • parameter. O campo chunkIndex determina o conteúdo desse campo. Consulte a descrição do campo chunkIndex Se o valor de `pgaudit.log_parameter` estiver definido, o parameter campo conterá os parâmetros de instrução como dados CSV entre aspas. Se não houver parâmetros, este campo conterá [none]. Caso contrário, este campo conterá [not logged].
  • instrução. Instrução executada no back-end. O campo chunkIndex determina o conteúdo do campo statement. Consulte a descrição do campo chunkIndex.
  • statementId. ID de instrução exclusivo para esta sessão. Cada ID de instrução representa uma chamada de back-end. Os IDs de instruções são sequenciais, mesmo que algumas instruções não sejam registradas.
  • substatementId. ID sequencial para cada instrução dentro da instrução principal.

Monitorar o status do pipeline de registro de auditoria

O AlloyDB processa registros de auditoria gerados pelo usuário de forma assíncrona antes de encaminhá-los com segurança para o Cloud Logging. É possível monitorar o status, a capacidade de processamento e o backlog do pipeline de registro de auditoria das instâncias e nós usando o Cloud Monitoring.

As seguintes métricas estão disponíveis no alloydb.googleapis.com/InstanceNode recurso monitorado no Metrics Explorer:

Nome da métrica Nome de exibição Tipo de métrica / Tipo de valor Unidade Descrição
alloydb.googleapis.com/node/database/logging/audit/backlog_bytes_count Tamanho do backlog de registro de auditoria GAUGE / INT64 Bytes (By) O tamanho, em bytes, do backlog de registro de auditoria no nó aguardando processamento e upload para o Cloud Logging. Um valor alto ou crescente indica contrapressão no pipeline de encaminhamento de registro de auditoria.
alloydb.googleapis.com/node/database/logging/audit/processed_bytes_count Bytes de registro de auditoria processados DELTA / INT64 Bytes (By) O número total de bytes de dados de registro de auditoria processados e encaminhados para o Cloud Logging do nó.
alloydb.googleapis.com/node/database/logging/audit/processed_entries_count Entradas de registro de auditoria processadas DELTA / INT64 Contagem (1) O número total de entradas de registro de auditoria processadas e encaminhadas para o Cloud Logging do nó.

Para mais informações, consulte a Referência de métricas de insights do sistema.

A seguir