Registrar atividades do autovacuum e do vacuum em log - Amazon Relational Database Service

Registrar atividades do autovacuum e do vacuum em log

Informações sobre atividades de autovacuum são enviadas para postgresql.log com base no nível especificado no parâmetro rds.force_autovacuum_logging_level. A seguir estão os valores permitidos para esse parâmetro e as versões do PostgreSQL para as quais esse valor é a configuração padrão:

  • disabled (PostgreSQL 10, PostgreSQL 9.6)

  • debug5, debug4, debug3, debug2, debug1

  • info (PostgreSQL 12, PostgreSQL 11)

  • notice

  • warning (PostgreSQL 13 e superior)

  • error, log, fatal, panic

A configuração rds.force_autovacuum_logging_level funciona com o parâmetro log_autovacuum_min_duration. O valor do parâmetro log_autovacuum_min_duration é o limite (em milissegundos) acima do qual as ações autovacuum são registradas em log. Uma configuração -1 não registra nada em log, enquanto uma configuração 0 registra todas as ações em log. Como ocorre com rds.force_autovacuum_logging_level, os valores padrão de log_autovacuum_min_duration são dependentes da versão, da seguinte maneira:

  • 10000 ms: PostgreSQL 14, PostgreSQL 13, PostgreSQL 12 e PostgreSQL 11

  • (empty): nenhum valor padrão para PostgreSQL 10 e PostgreSQL 9.6

Recomendamos que você defina rds.force_autovacuum_logging_level como WARNING. Também recomendamos definir log_autovacuum_min_duration para um valor entre 1000 e 5000. Uma configuração 5000 registra em log a atividade que leva mais de 5.000 milissegundos. Qualquer configuração diferente de -1 também registrará mensagens se a ação autovacuum for ignorada devido a um bloqueio conflitante ou relações descartadas simultaneamente. Para ter mais informações, consulte Automatic Vacuuming (Aplicação automática do vacuum) na documentação do PostgreSQL.

Para solucionar problemas, você pode alterar o parâmetro rds.force_autovacuum_logging_level para um dos níveis de depuração, de debug1 a debug5, para obter informações mais detalhadas. Recomendamos que você use as configurações de depuração por curtos períodos e apenas para fins de solução de problemas. Para saber mais, consulte When to log (Quando registrar em log) na documentação do PostgreSQL.

nota

O PostgreSQL permite que a conta rds_superuser visualize sessões de autovacuum em pg_stat_activity. Por exemplo, você pode identificar e encerrar uma sessão de autovacuum que esteja bloqueando a execução de um comando, ou executando de forma mais lenta do que um comando de vacuum emitido manualmente.