cat、tail -f、less、grep等命令查看日志文件,如tail -f /var/log/postgresql/postgresql-{版本號}-main.log可實時監控日志。postgresql.conf,關鍵參數包括:
logging_collector:啟用日志收集(建議設為on)。log_directory:指定日志存儲目錄(如pg_log)。log_filename:定義命名規則(如含時間戳postgresql-%Y-%m-%d_%H%M%S.log)。log_statement:控制記錄SQL語句類型(如ddl記錄結構變更)。log_min_duration_statement:記錄慢查詢閾值(單位:毫秒)。logrotate配置輪轉規則,例如每天輪轉并保留7天日志:# /etc/logrotate.d/postgresql 配置示例
/var/log/postgresql/*.log {
daily
rotate 7
compress
missingok
create 0640 postgres adm
}
log_rotation_age(按時間輪轉,如1d)和log_rotation_size(按大小輪轉,如100MB)設置。pgBadger:生成HTML報告,分析查詢性能、錯誤等。log_line_prefix和參數控制不記錄或脫敏。