pgBadger para análise de registros
Execute pgBadger sobre os registros do PostgreSQL para gerar relatórios HTML de consultas lentas, esperas por bloqueios e padrões de conexão.
pgBadger para análise de registros é uma aula grátis de SQL Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de SQL Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de SQL Academy inclui 4 aulas no total.
O que é pgBadger
Um analisador de registros do PostgreSQL baseado em Perl que produz belos relatórios HTML sobre consultas lentas, esperas por bloqueios, erros e padrões de conexão. Execute-o periodicamente nos seus registros.
Configurar o registro
postgresql.conf:
log_destination = 'csvlog'
logging_collector = on
log_directory = 'pg_log'
log_min_duration_statement = '500ms'
log_lock_waits = on
log_temp_files = 0
log_checkpoints = on
log_connections = on
log_disconnections = on
log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h 'Executar pgBadger
Gere um relatório:
pgbadger /var/log/postgresql/postgresql-2024-03-15.csv \
-o report.html
# Multiple files:
pgbadger /var/log/postgresql/*.csv -o report.htmlO que há no relatório
- Consultas mais lentas, com exemplos
- Consultas mais frequentes
- Consultas que consomem mais tempo
- Esperas por bloqueios
- Erros
- Padrões de conexão ao longo do tempo
- Uso de arquivos temporários
- Atividade de checkpoints e vacuum
Modo incremental
Para análise contínua dos registros, gere relatórios diários:
pgbadger -I -O /var/www/pgbadger/ /var/log/postgresql/*.csv
# Updates an HTML dashboard incrementally.Execução automática via Cron
Tarefa noturna:
0 1 * * * pgbadger -I -O /var/www/pgbadger/ /var/log/postgresql/postgresql-`date +%F`.csvVersus pg_stat_statements
pg_stat_statements: métricas agregadas, dentro do banco de dados.
pgBadger: analisa registros brutos e encontra padrões que as agregações não identificam (esperas por bloqueios, erros e tempestades de conexões).
Obter padrões de espera por bloqueios
pgBadger resume as esperas por bloqueios — quais consultas bloquearam quais outras e por quanto tempo. É excelente para diagnosticar problemas de deadlock e contenção.
Seção de erros
Contagem de cada código de erro. "23505 unique_violation: 12,000 times" é um alerta — a aplicação está tentando novamente inserções duplicadas.
Arquivos temporários
Consultas que transferem dados para o disco (ordenação ou hash grandes demais para work_mem):
log_temp_files = 0 -- log all temp file usage
-- pgBadger summarises queries that created temp files.Alternativas na nuvem
RDS Performance Insights, Cloud SQL Query Insights e outros fazem análises semelhantes em ambientes gerenciados — geralmente com base nas mesmas fontes de estatísticas.
Resumo
pgBadger transforma os registros do Postgres em um painel.
- Defina log_min_duration_statement
- Gere relatórios HTML periódicos
- Encontre esperas por bloqueios, arquivos temporários e padrões de erros
- Complementa pg_stat_statements
Verificação rápida
Você observa que sua aplicação tenta novamente muitas inserções. Qual configuração de registro do Postgres ajuda a confirmar isso?
Aprenda SQL com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 46
- Aulas
- 183
Perguntas Frequentes
A aula “pgBadger para análise de registros” é grátis?
Sim — o texto completo de “pgBadger para análise de registros” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de SQL Academy, atualize para CoddyKit PRO. O curso de SQL Academy inclui 4 aulas no total.
O que vou aprender em “pgBadger para análise de registros”?
Execute pgBadger sobre os registros do PostgreSQL para gerar relatórios HTML de consultas lentas, esperas por bloqueios e padrões de conexão. Você pratica SQL Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar SQL Academy?
Nenhuma experiência prévia é necessária. SQL Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “pgBadger para análise de registros”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de SQL Academy?
Sim. Cada aula de SQL Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- pg_stat_statements: principais consultas
- pgBadger para análise de registros
- Agrupamento de conexões: PgBouncer
- Planejamento de capacidade e auditorias de fragmentação