Este repositório contém a versão PostgreSQL dos scripts de alertas e monitoria inspirados no projeto original para SQL Server. A solução foi adaptada para PL/pgSQL e utiliza as funções de catálogo do PostgreSQL, além da extensão pg_cron para agendamento. O objetivo é disponibilizar uma base completa de monitoria para DBAs e analistas de dados em ambientes PostgreSQL.
- Todos os objetos são criados em um esquema dedicado (
monitoring) para facilitar a manutenção. - O script
scripts/2.0_cria_tabelas_alertas.sqlcria as tabelas de configuração, parâmetros e logs. - O script
scripts/2.1_cria_procedures_e_jobs_postgresql.sqldefine as funções de alerta e agenda sua execução via pg_cron (quando disponível). Caso não utilize pg_cron, é possível agendar via cron do sistema. - O script
scripts/4.0_checklist_procedures_postgresql.sqlimplementa uma checklist diária com métricas de uso e performance.
- PostgreSQL versão 12 ou superior.
- Usuário superusuário ou com privilégios para criar schema, funções e acessar as views
pg_stat_*. - Extensão pg_cron instalada para agendamento interno (opcional). Se não disponível, utilize agendador externo (cron do SO) para chamar as funções.
- Ferramenta externa ou script (ex.: Python, Shell) para envio de e‑mails, pois o PostgreSQL não possui mecanismo nativo de SMTP. Exemplos podem ser encontrados em
tools/scripts_envio_email.
- Crie o schema de monitoria e conceda privilégios:
CREATE SCHEMA IF NOT EXISTS monitoring; GRANT USAGE ON SCHEMA monitoring TO public;
- Execute
scripts/2.0_cria_tabelas_alertas.sqlpara criar as tabelas e parâmetros padrão. - Execute
scripts/2.1_cria_procedures_e_jobs_postgresql.sqlpara criar as funções de alerta e agendar jobs via pg_cron. - (Opcional) Execute
scripts/3.0_verifica_corrupcao.sqlpara adicionar rotina de verificação de integridade através depg_checksumsoupg_dump. - Execute
scripts/4.0_checklist_procedures_postgresql.sqlpara implementar a checklist diária. - Ajuste os parâmetros de thresholds na tabela
monitoring.parametros_alertaconforme a realidade do seu ambiente.
postgresql-alertas/
├── README.md
├── doc/
│ ├── guia_instalacao.md
│ ├── guia_configuracao.md
│ └── guia_troubleshooting.md
├── scripts/
│ ├── 1.0_step_by_step_postgresql.sql
│ ├── 2.0_cria_tabelas_alertas.sql
│ ├── 2.1_cria_procedures_e_jobs_postgresql.sql
│ ├── 3.0_verifica_corrupcao.sql
│ └── 4.0_checklist_procedures_postgresql.sql
└── tools/
└── scripts_envio_email/ # Exemplos de scripts externos para enviar e‑mail
Este projeto é uma adaptação do repositório Script_SQLServer_Alerts para PostgreSQL. Todos os scripts foram reescritos em PL/pgSQL e podem ser utilizados livremente mediante observância da licença definida.