本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
記錄清理和自動資料清理活動
有關自動資料清理活動的資訊將根據 rds.force_autovacuum_logging_level
參數中指定的層級傳送到 postgresql.log
。以下是此參數和 PostgreSQL 版本允許的值,該值為預設設定:
-
disabled
(PostgreSQL 10、PostgreSQL 9.6) -
debug5
,debug4
,debug3
,debug2
,debug1
-
info
(PostgreSQL 12,PostgreSQL 11) -
notice
-
warning
(13 號及以上)SQL -
error
、日誌、fatal
、panic
rds.force_autovacuum_logging_level
使用 log_autovacuum_min_duration
參數。log_autovacuum_min_duration
參數的值是記錄自動資料清理動作的閾值 (以毫秒為單位)。設定為 -1
,表示不會記錄任何內容;設定為 0,則會記錄所有動作。如同 rds.force_autovacuum_logging_level
,log_autovacuum_min_duration
的預設值取決於版本,如下所示:
-
10000 ms
– PostgreSQL 14、PostgreSQL 13、PostgreSQL 12 和 PostgreSQL 11 -
(empty)
– PostgreSQL 10 和 PostgreSQL 9.6 沒有預設值
建議您將 rds.force_autovacuum_logging_level
設定為 WARNING
。我們也建議您將 log_autovacuum_min_duration
設定為 1000 到 5000 之間的值。設定為 5000,表示會記錄時間超過 5,000 毫秒的活動。如果鎖定衝突或同時刪除關係導致跳過自動資料清理動作,-1 以外的任何設定也會記錄訊息。如需詳細資訊,請參閱 PostgreSQL 文件中的自動吸塵
若要解決問題,您可以將 rds.force_autovacuum_logging_level
參數變更為其中一個除錯等級 (從 debug1
至 debug5
),以取得詳盡資訊。我們建議您在短時間內使用除錯設定,並且僅用於疑難排解目的。若要進一步了解,請參閱何時登入
注意
PostgreSQL 允許rds_superuser
帳戶在 中檢視自動清空工作階段pg_stat_activity
。例如,您可以找出並終止會阻擋命令執行的自動資料清理工作階段,或是執行速度比手動發出的清理命令還要慢的自動資料清理工作階段。