Melihat log audit yang dihasilkan oleh pgAudit untuk AlloyDB untuk PostgreSQL

Halaman ini menjelaskan cara melihat log audit yang dihasilkan oleh pgAudit, yang membantu Anda mengonfigurasi log yang sering kali diperlukan untuk mematuhi sertifikasi pemerintah, keuangan, dan ISO. Halaman ini juga menjelaskan format log untuk pgAudit. Untuk mengetahui informasi selengkapnya tentang pgAudit, lihat Tentang pgAudit.

Sebelum memulai

Untuk melihat log audit, Anda harus melakukan hal berikut:

Melihat log audit

Log pgAudit yang dibuat untuk instance tertentu dikirim ke Cloud Logging sebagai log audit Akses Data.

Anda dapat melihat log pgAudit yang dihasilkan menggunakan aplikasi Logs Explorer.

Untuk melihat log pgAudit, pilih cloudaudit.googleapis.com/data_access filter log di aplikasi Logs Explorer.

Untuk melihat semua log pgAudit untuk project AlloyDB, jalankan kueri berikut menggunakan antarmuka Filter Lanjutan:

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"

Format log untuk pgAudit

Setiap entri log pgAudit di log audit Akses Data berisi kolom yang mewakili informasi yang dikumpulkan untuk kueri. Untuk mengetahui informasi selengkapnya tentang kolom entri log ini, lihat dokumentasi pgAudit.

Contoh entri log 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"
    }
  }
}

Berikut adalah deskripsi kolom di log audit Akses Data:

  • auditClass. Jenis pernyataan yang dicatat dalam log. Nilai yang mungkin adalah READ, WRITE, FUNCTION, ROLE, DDL, MISC, dan MISC_SET.
  • auditType. SESSION atau OBJECT.
  • chunkCount. Chunking dapat terjadi pada data yang tersedia di kolom parameter dan statement. Kolom chunkCount menunjukkan jumlah total bagian. Lihat juga deskripsi kolom chunkIndex
  • chunkIndex. Menentukan nomor indeks bagian data di parameter dan statement kolom dalam request penampung saat ini. Angka awalnya adalah 1. Lihat juga deskripsi kolom chunkCount.
  • command. Misalnya, ALTER TABLE atau SELECT.
  • parameter. Kolom chunkIndex dapat menentukan konten kolom ini; lihat deskripsi kolom chunkIndex. Jika nilai untuk `pgaudit.log_parameter` ditetapkan, kolom parameter dapat berisi parameter pernyataan sebagai data CSV kutipan. Jika tidak ada parameter, kolom ini berisi [none]. Jika tidak, kolom ini berisi [not logged].
  • statement. Pernyataan yang dijalankan di backend. Kolom chunkIndex dapat menentukan konten kolom statement ; lihat deskripsi kolom chunkIndex.
  • statementId. ID pernyataan unik untuk sesi ini. Setiap ID pernyataan mewakili panggilan backend. ID pernyataan bersifat berurutan, meskipun beberapa pernyataan tidak dicatat dalam log.
  • substatementId. ID berurutan untuk setiap sub-pernyataan dalam pernyataan utama pernyataan.

Memantau status pipeline log audit

AlloyDB memproses log audit yang dibuat pengguna secara asinkron sebelum meneruskannya dengan aman ke Cloud Logging. Anda dapat memantau status, throughput, dan backlog pipeline logging audit untuk instance dan node menggunakan Cloud Monitoring.

Metrik berikut tersedia di resource yang dimonitor alloydb.googleapis.com/InstanceNode di Metrics Explorer:

Nama metrik Nama tampilan Jenis metrik / Jenis nilai Unit Deskripsi
alloydb.googleapis.com/node/database/logging/audit/backlog_bytes_count Ukuran backlog log audit GAUGE / INT64 Byte (By) Ukuran, dalam byte, backlog log audit di node yang menunggu pemrosesan dan upload ke Cloud Logging. Nilai yang terus-menerus tinggi atau meningkat menunjukkan tekanan balik dalam pipeline penerusan log audit.
alloydb.googleapis.com/node/database/logging/audit/processed_bytes_count Byte log audit yang diproses DELTA / INT64 Byte (By) Jumlah total byte data log audit yang berhasil diproses dan diteruskan ke Cloud Logging dari node.
alloydb.googleapis.com/node/database/logging/audit/processed_entries_count Entri log audit yang diproses DELTA / INT64 Jumlah (1) Jumlah total entri log audit yang berhasil diproses dan diteruskan ke Cloud Logging dari node.

Untuk mengetahui informasi selengkapnya, lihat Referensi metrik insight sistem.

Langkah berikutnya