Pengelogan audit di Azure Database for PostgreSQL - Hyperscale (Citus)

BERLAKU UNTUK: Azure Database for PostgreSQL - Hyperscale (Citus)

Penting

Ekstensi pgAudit di Hyperscale (Citus) saat ini sedang dalam pratinjau. Versi pratinjau ini diberikan tanpa perjanjian tingkat layanan dan tidak disarankan untuk beban kerja produksi. Fitur tertentu mungkin tidak didukung atau mungkin memiliki kemampuan terbatas.

Anda dapat melihat daftar lengkap fitur baru lainnya dalam fitur pratinjau untuk Hyperscale (Citus).

Pengelogan audit aktivitas database di Azure Database for PostgreSQL - Hyperscale (Citus) tersedia melalui Ekstensi Audit PostgreSQL: pgAudit. pgAudit menyediakan sesi terperinci atau pengelogan audit objek.

Jika Anda menginginkan log tingkat sumber daya Azure untuk operasi seperti komputasi dan penskalaan penyimpanan, lihat Log Aktivitas Azure.

Pertimbangan penggunaan

Secara default, pernyataan log pgAudit dikeluarkan bersama dengan pernyataan log reguler Anda menggunakan fasilitas pengelogan standar Postgres. Di Azure Database for PostgreSQL - Hyperscale (Citus), Anda dapat mengonfigurasi semua log yang akan dikirim ke penyimpanan Log Azure Monitor untuk analitik di analitik berikutnya di Analitik Log. Jika Anda mengaktifkan pengelogan sumber daya Azure Monitor, log Anda akan dikirim secara otomatis (dalam format JSON) ke Azure Storage, Azure Event Hubs, atau log Azure Monitor, bergantung pada pilihan Anda.

Mengaktifkan pgAudit

Ekstensi pgAudit sudah diinstal sebelumnya dan diaktifkan pada sejumlah grup server Hyperscale (Citus) dalam jumlah terbatas saat ini. Ini mungkin atau tidak tersedia untuk pratinjau di grup server Anda.

Pengaturan pgAudit

pgAudit memungkinkan Anda mengonfigurasi pengelogan audit sesi atau objek. Pengelogan audit sesi mengeluarkan log terperinci dari pernyataan yang dijalankan. Pengelogan audit objek adalah audit yang tercakup dalam relasi tertentu. Anda dapat memilih untuk menyiapkan satu atau kedua jenis pengelogan.

Catatan

Pengaturan pgAudit ditentukan secara global dan tidak dapat ditentukan pada tingkat database atau peran.

Juga, pengaturan pgAudit ditentukan per-simpul dalam grup server. Untuk membuat perubahan pada semua simpul, Anda harus menerapkannya ke setiap simpul satu per satu.

Anda harus mengonfigurasi parameter pgAudit untuk memulai pengelogan. Dokumentasi pgAudit memberikan definisi masing-masing parameter. Uji parameter terlebih dahulu dan konfirmasikan bahwa Anda mendapatkan perilaku yang diharapkan.

Catatan

Mengatur pgaudit.log_client ke ON akan mengalihkan log ke proses klien (seperti psql) alih-alih ditulis ke file. Pengaturan ini umumnya harus dibiarkan nonaktif.

pgaudit.log_level hanya diaktifkan ketika pgaudit.log_client aktif.

Catatan

Di Azure Database for PostgreSQL - Hyperscale (Citus), pgaudit.log tidak dapat diatur menggunakan pintasan tanda (minus) - seperti yang dijelaskan dalam dokumentasi pgAudit. Semua kelas pernyataan yang diperlukan (READ, WRITE, dll) harus ditentukan secara individual.

Format log audit

Setiap entri audit ditunjukkan oleh AUDIT: di dekat awal baris log. Format sisa entri dirinci dalam dokumentasi pgAudit.

Memulai

Untuk memulai dengan cepat, atur pgaudit.log ke WRITE, dan buka log Anda untuk meninjau output.

Melihat log audit

Cara mengakses log tergantung pada titik akhir yang Anda pilih. Untuk Azure Storage, lihat artikel akun penyimpanan log. Untuk Azure Event Hubs, lihat artikel mengalirkan log Azure.

Untuk Log Azure Monitor, log dikirim ke ruang kerja yang Anda pilih. Log Postgres menggunakan mode pengumpulan AzureDiagnostics, sehingga dapat dikueri dari tabel AzureDiagnostics. Bidang dalam tabel dijelaskan di bawah ini. Pelajari selengkapnya tentang kueri dan pemberitahuan dalam ringkasan Kueri Log Azure Monitor.

Anda dapat menggunakan kueri ini untuk memulai. Anda dapat mengonfigurasi peringatan berdasarkan kueri.

Cari semua entri pgAudit di log Postgres untuk server tertentu di hari terakhir

AzureDiagnostics
| where LogicalServerName_s == "myservername"
| where TimeGenerated > ago(1d) 
| where Message contains "AUDIT:"

Langkah berikutnya