Log dalam Azure Database for PostgreSQL - Server Tunggal
BERLAKU UNTUK: Azure Database for PostgreSQL - Server Tunggal
Penting
Azure Database for PostgreSQL - Server Tunggal berada di jalur penghentian. Kami sangat menyarankan Agar Anda meningkatkan ke Azure Database for PostgreSQL - Server Fleksibel. Untuk informasi selengkapnya tentang migrasi ke Azure Database for PostgreSQL - Server Fleksibel, lihat Apa yang terjadi pada Server Tunggal Azure Database for PostgreSQL?.
Azure Database for PostgreSQL memungkinkan Anda mengonfigurasi dan mengakses log standar Postgres. Log ini dapat digunakan untuk mengidentifikasi, memecahkan masalah, dan memperbaiki kesalahan konfigurasi dan performa yang kurang optimal. Informasi pengelogan yang dapat Anda konfigurasi dan akses meliputi kesalahan, informasi kueri, rekaman autovacuum, koneksi, dan titik pemeriksaan. (Akses ke log transaksi tidak tersedia).
Pengelogan audit tersedia melalui ekstensi PostgreSQL, pgaudit. Untuk mempelajari lebih lanjut, kunjungi artikel konsep audit.
Mengonfigurasi pengelogan
Anda dapat mengonfigurasi pengelogan standar Postgres di server Anda menggunakan parameter server pengelogan. Di setiap server Azure Database for PostgreSQL, log_checkpoints
dan log_connections
aktif secara default. Ada parameter tambahan yang dapat Anda sesuaikan dengan kebutuhan pencatatan Anda:
Untuk mempelajari selengkapnya tentang parameter log Postgres, kunjungi bagian Kapan Harus Log dan Apa yang Harus Dilog dalam dokumentasi Postgres. Sebagian besar, tetapi tidak semua, parameter pembuatan log Postgres tersedia untuk dikonfigurasi di Azure Database for PostgreSQL.
Untuk mempelajari cara mengonfigurasi parameter di Azure Database for PostgreSQL, lihat dokumentasi portal atau dokumentasi CLI.
Catatan
Mengonfigurasi log dalam volume tinggi, misalnya pencatatan pernyataan, dapat menambahkan biaya kinerja yang signifikan.
Mengakses file .log
Format log default dalam Azure Database for PostgreSQL adalah .log. Contoh baris dari log ini terlihat seperti:
2019-10-14 17:00:03 UTC-5d773cc3.3c-LOG: connection received: host=101.0.0.6 port=34331 pid=16216
Azure Database for PostgreSQL menyediakan lokasi penyimpanan jangka pendek untuk file .log. File baru dimulai setiap 1 jam atau 100 MB, mana saja yang lebih dulu dicapai. Log ditambahkan ke file saat ini saat dikeluarkan dari Postgres.
Anda dapat mengatur periode retensi untuk penyimpanan log jangka pendek ini menggunakan parameter log_retention_period
. Nilai default adalah 3 hari; nilai maksimum adalah 7 hari. Lokasi penyimpanan jangka pendek dapat menampung hingga 1 GB file log. Setelah 1 GB, file tertua, terlepas dari periode retensi, akan dihapus untuk memberi ruang bagi log baru.
Untuk penyimpanan log dan analisis log jangka panjang, Anda dapat mengunduh file .log dan memindahkannya ke layanan pihak ketiga. Anda dapat mengunduh file menggunakan portal Microsoft Azure, Azure CLI. Atau, Anda dapat mengonfigurasi pengaturan diagnostik Azure Monitor yang secara otomatis mengeluarkan log Anda (dalam format JSON) ke lokasi jangka panjang. Pelajari selengkapnya tentang opsi ini di bagian bawah ini.
Anda dapat berhenti membuat .log file dengan mengatur parameter logging_collector
ke OFF. Menonaktifkan pembuatan file .log disarankan jika Anda menggunakan pengaturan diagnostik Azure Monitor. Konfigurasi ini akan mengurangi dampak kinerja dari pencatatan tambahan.
Catatan
Hidupkan ulang server untuk menerapkan perubahan ini.
Log sumber daya
Azure Database for PostgreSQL terintegrasi dengan pengaturan diagnostik Azure Monitor. Pengaturan diagnostik memungkinkan Anda mengirim log Postgres dalam format JSON ke Azure Monitor Logs untuk analitik dan peringatan, Pusat Aktivitas untuk streaming, dan Azure Storage untuk pengarsipan.
Penting
Fitur diagnostik untuk ini hanya tersedia di tingkatan harga Tujuan Umum dan Pengoptimalan Memori.
Mengonfigurasi pengaturan diagnostik
Anda dapat mengaktifkan pengaturan diagnostik untuk server Postgres menggunakan portal Microsoft Azure, CLI, REST API, dan PowerShell. Kategori log yang akan dipilih adalah PostgreSQLLogs. (Ada log lain yang dapat Anda konfigurasi jika Anda menggunakan Query Store.)
Mengaktifkan log sumber daya menggunakan portal Azure:
- Pada portal, buka Pengaturan Diagnostik di bagian menu navigasi dari server Postgres Anda.
- Pilih Tambah Pengaturan Diagnostik.
- Beri nama setelan ini.
- Pilih titik akhir pilihan Anda (akun penyimpanan, pusat aktivitas, Log Analytics).
- Pilih jenis log Log Server PostgreSQL.
- Simpan pengaturan Anda.
Untuk mengaktifkan log sumber daya menggunakan PowerShell, CLI, atau REST API, kunjungi artikel pengaturan diagnostik.
Mengakses log sumber daya
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.
Berikut ini adalah kueri yang dapat Anda coba untuk memulai. Anda dapat mengonfigurasi peringatan berdasarkan kueri.
Cari semua log Postgres untuk server tertentu di hari terakhir
AzureDiagnostics
| where LogicalServerName_s == "myservername"
| where Category == "PostgreSQLLogs"
| where TimeGenerated > ago(1d)
Cari semua upaya koneksi non-localhost
AzureDiagnostics
| where Message contains "connection received" and Message !contains "host=127.0.0.1"
| where Category == "PostgreSQLLogs" and TimeGenerated > ago(6h)
Kueri di atas akan menampilkan hasil selama 6 jam terakhir untuk setiap log server Postgres di ruang kerja ini.
Format Log
Tabel berikut ini menjelaskan bidang untuk jenis PostgreSQLLogs . Tergantung titik akhir yang Anda pilih, bidang yang disertakan dan urutan munculnya yang kemungkinan bisa beragam.
Bidang | Keterangan |
---|---|
TenantId | ID penyewa Anda |
SourceSystem | Azure |
TimeGenerated [UTC] | Tanda waktu ketika log direkam di UTC |
Jenis | Jenis log. Selalu AzureDiagnostics |
SubscriptionId | GUID untuk langganan milik server |
ResourceGroup | Nama grup sumber daya milik server |
ResourceProvider | Nama penyedia sumber daya. Selalu MICROSOFT.DBFORPOSTGRESQL |
ResourceType | Servers |
ResourceId | URI Sumber Daya |
Sumber daya | Nama server |
Kategori | PostgreSQLLogs |
OperationName | LogEvent |
errorLevel | Tingkat pengelogan, contoh: LOG, ERROR, NOTICE |
Pesan | Pesan log utama |
Domain | Versi server, contoh: postgres-10 |
Detail | Pesan log sekunder (jika ada) |
ColumnName | Nama kolom (jika ada) |
Nama Skema | Nama skema (jika ada) |
DatatypeName | Nama jenis data (jika ada) |
LogicalServerName | Nama server |
_ResourceId | URI Sumber Daya |
Awalan | Prefiks baris log |
Langkah berikutnya
- Pelajari selengkapnya tentang mengakses log dari portal Microsoft Azure atau Azure CLI.
- Pelajari selengkapnya tentang Harga Azure Monitor.
- Pelajari selengkapnya tentang log audit
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk