Skip to content

Executt/postgres_skill

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PostgreSQL SKILLs para Agente de IA

  • postgres-daily-check – SKILL de verificação diária de instâncias PostgreSQL
  • polardb-daily-check – SKILL de verificação diária de instâncias PolarDB
  • postgresql-bi-agent – SKILL de análise de dados de negócios para instâncias PostgreSQL

Desenvolvido com IA

Uso

Copie o diretório da SKILL desejada para o diretório especificado pelo Agente de IA para armazenamento de SKILLs.

Inicie uma solicitação de verificação, por exemplo, usando a SKILL postgres-daily-check:

Verifique completamente o banco de dados PostgreSQL:
host 127.0.0.1 port 1922 user digoal dbname postgres password 123456


Exemplo de saída da SKILL postgres-daily-check – Relatório de verificação do PostgreSQL

🔍 RELATÓRIO ABRANGENTE DE VERIFICAÇÃO DO POSTGRESQL

  • Verificação realizada em: 2026-02-05 14:00:00
  • Conexão: 127.0.0.1:1922/postgres
  • Status geral: 🟠 ATENÇÃO

1. Core Health & Disponibilidade

✅ Índices inválidos ✅ Risco de XID (transbordo) ✅ Risco de MultiXactId ✅ Bloqueios (locks) ✅ Deadlocks
Normal: nenhum índice inválido Normal: todos os bancos muito abaixo do limite (85%) Normal: sem risco de transbordo Normal Normal

Configurações críticas:

  • fsync: on ✅
  • synchronous_commit: on ✅
  • log_min_duration_statement: -1 (log de consultas lentas desabilitado)
  • log_lock_waits: off (log de espera de lock desabilitado)
  • track_io_timing: off (métrica de I/O desabilitada)

2. Sessões e Conexões

✅ Uso de conexões ✅ Consultas longas ✅ Transações ociosas ✅ Locks ✅ Eventos de espera
1/100 (1% normal) Nenhuma >5min ativa Nenhuma >1min ociosa Nenhum Nenhum ativo

🟠 Segurança das conexões:

  • Sem SSL
  • Sem GSSAPI
  • 0 conexões locais
  • ⚠️ 1 conexão sem criptografia (192.168.65.1)
    Sugestão: ativar SSL em produção

3. Desempenho e Atividades

Taxa de acerto do cache (grave): 56,44% (muito abaixo do recomendado >95%)

  • Possível causa: muitos full scans ou shared_buffers subdimensionado
  • Ação: aumentar shared_buffers, otimizar consultas, avaliar aumento de RAM

Taxa de rollback: normal (<5%)

🟡 Tabelas mais quentes (hot tables):

Schema Tabela DML Varreduras Tuplas mortas
public pgbench_accounts 22.902.438 25.804.866 1.490.265 ⚠️
public pgbench_tellers 12.903.420 12.902.424 0
public pgbench_branches 12.902.516 12.902.426 0
public pgbench_history 12.902.402 - 0

🟠 I/O: 7 arquivos temporários (956 MB), track_io_timing desabilitado

🟠 Background Writer: maxwritten_clean elevado (13.996) – precisa de ajuste

🟡 WAL: 144 GB gerados; WAL buffers full = 434.597

🟠 Checkpointer:

  • Média de escrita por checkpoint = 23.272 ms ⚠️ (alta)
  • Sugestão: verificar desempenho de armazenamento ou ajustar parâmetros de checkpoint

SLRU: taxa de acerto do transaction SLRU = 97,94% (normal)


4. Replicação e Arquivamento

✅ Status de replicação ✅ Replication slots 🟡 Arquivamento WAL
Modo standalone (sem réplica) Nenhum Desabilitado – sem backup PITR
  • Tamanho do diretório WAL: 1.024 MB
  • Sugestão: ativar archive_mode e archive_command se houver necessidade de recuperação point-in-time

5. Manutenção e Armazenamento

🟡 Tamanho dos bancos: postgres = 3.611 MB, gemini_test = 8 MB, outros pequenos

🟡 Maiores objetos:

  • Tabelas: pgbench_accounts (2.346 MB), pgbench_history (640 MB)
  • Índices: pgbench_accounts_pkey (428 MB), pgbench_tellers_pkey (32 MB)

Inchaço (bloat) de tabelas (grave):

Tabela Tamanho Inchaço Espaço desperdiçado
pgbench_accounts 2.345 MB 80,36% 1.977 MB ⚠️
pgbench_history 642 MB 46,34% 311 MB
pgbench_tellers 78 MB 99,97% 82 MB ⚠️
pgbench_branches 64 MB 100% 67 MB ⚠️
  • Total desperdiçado: ~2,4 GB

Inchaço de índices (grave):

Índice Tamanho Inchaço Espaço desperdiçado
pgbench_accounts_pkey 428 MB 55,43% 249 MB
pgbench_tellers_pkey 31,8 MB 99,94% 33 MB
pgbench_branches_pkey 6,4 MB 99,97% 6,5 MB

Autovacuum: sem processos ativos no momento
Índices grandes não utilizados: nenhum
Estatísticas desatualizadas: nenhuma
Risco de esgotamento de sequências: nenhum
Previsão de freeze: nenhuma tabela próxima do limite


6. Sumário de Problemas e Recomendações

🔴 Graves (ação imediata)

  1. Inchaço extremo de tabelas e índices

    • pgbench_tellers e pgbench_branches com ~100% de inchaço
    • pgbench_accounts desperdiça 1,9 GB
    • Ação: VACUUM FULL e REINDEX imediatos
  2. Taxa de acerto do cache muito baixa (56%)

    • Ação: aumentar shared_buffers (ex.: 25% da RAM física), otimizar consultas com full scans, considerar mais memória

🟠 Médios (recomenda-se correção)

  • Background Writer – ajustar parâmetros (bgwriter_lru_maxpages, bgwriter_lru_multiplier)
  • Checkpointer – verificar armazenamento, ajustar checkpoint_completion_target e max_wal_size
  • Conexões sem criptografia – ativar SSL em produção

🟡 Baixos (opcionais)

  • Arquivamento WAL desabilitado – ativar se precisar de PITR
  • Monitoração – definir log_min_duration_statement (ex.: 1s) e ativar track_io_timing

7. Conclusão da Verificação

Problemas encontrados:

  • 2 graves (inchaço + cache)
  • 3 médios (bgwriter, checkpointer, SSL)
  • 2 baixos (arquivamento WAL, monitoração)

Prioridades recomendadas:

  1. 🔴 Executar VACUUM FULL e REINDEX
  2. 🔴 Aumentar shared_buffers
  3. 🟠 Ajustar parâmetros de bgwriter e checkpointer
  4. 🟡 Ativar SSL e arquivamento WAL

Avaliação geral:
O banco de dados apresenta problemas significativos de inchaço de armazenamento e subdimensionamento de memória – manutenção corretiva é necessária com urgência.

About

PostgreSQL SKILLs for AI Agent

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 71.2%
  • Shell 28.8%