Untuk memantau aktivitas database dan membantu memenuhi persyaratan kepatuhan pemerintah, keuangan, dan ISO, Anda dapat melihat dan mengkueri log audit Akses Data yang dihasilkan oleh pgAudit untuk AlloyDB untuk PostgreSQL di Cloud Logging. Anda juga dapat memeriksa format entri log pgAudit dan memantau status pipeline logging audit di Cloud Monitoring. Untuk mengetahui informasi selengkapnya tentang pgAudit, lihat Tentang pgAudit.
Sebelum memulai
Untuk melihat log audit, Anda harus melakukan hal berikut:
Aktifkan log audit Akses Data untuk project AlloyDB Anda.
Minta administrator untuk memberi Anda peran Private Logs Viewer (
roles/logging.privateLogViewer).
Lihat log audit
Log pgAudit yang dibuat untuk instance tertentu dikirim ke Cloud Logging sebagai log audit Akses Data.
Anda dapat melihat log pgAudit yang dibuat menggunakan aplikasi Logs Explorer.
Untuk melihat log pgAudit, pilih filter log cloudaudit.googleapis.com/data_access
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/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access" protoPayload.request.@type="type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"
Ganti PROJECT_ID dengan ID project AlloyDB Anda.
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
parameterdanstatement. KolomchunkCountmenunjukkan jumlah total potongan. Lihat juga deskripsi kolomchunkIndex. - chunkIndex. Menentukan nomor indeks potongan data di kolom
parameterdanstatementdalam penampungrequestsaat ini. Angka awalnya adalah1. Lihat juga deskripsi kolomchunkCount. - perintah. Misalnya, ALTER TABLE atau SELECT.
- parameter. Kolom
chunkIndexdapat menentukan konten kolom ini; lihat deskripsi kolomchunkIndex. Jika nilai untuk flagpgaudit.log_parameterditetapkan, kolomparameterdapat berisi parameter pernyataan sebagai data CSV yang dikutip. Jika tidak ada parameter, kolom ini berisi[none]. Jika tidak, kolom ini berisi[not logged]. - pernyataan. Pernyataan yang dijalankan di backend.
Kolom
chunkIndexdapat menentukan konten kolomstatement; lihat deskripsi kolomchunkIndex. - 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.
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 Anda 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 pada node yang menunggu pemrosesan dan upload ke Cloud Logging. Nilai tinggi atau meningkat yang berkelanjutan menunjukkan adanya 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.