Repository navigation
PulsePHP v1.0.0-beta.1
Pre-release
Pre-release
Primeira versão Beta pública. As funcionalidades centrais estão completas e a API é considerada estável o suficiente para uso em testes, sujeita a ajustes até o lançamento 1.0.0 estável.
Adicionado
- Núcleo standalone para PHP 8.1+ com inicialização via
Pulse::init(). - Buffer em memória com gravação em lote (flush) no encerramento do processo.
- Normalização e catalogação de SQL, agrupando consultas equivalentes.
- Timers para medir duração e variação de memória de operações (
pulse_start/pulse_end). - Captura automática de requisições web e exceções via coletores.
- Contexto de serviço e rota em cada requisição registrada.
- Chamadas SQL explícitas via
Pulse::getInstance()->recordQuery(). - Dashboard ao vivo em HTML + JS com filtros por período, serviço e rota.
- Gráficos e sparklines de throughput e latência por serviço e rota.
- Widgets de slow queries, slow spans e chamadas externas (outbound).
- Cartões de saúde por rota, sinalizando degradação.
- Painel de erros e exceções com classe, rota e serviço.
- Armazenamento local em SQLite (arquivo único, sem infraestrutura externa).
Integração com Laravel 9+
- Service provider com auto-discovery via Composer.
- Captura automática do cliente
Illuminate\Support\Facades\Httpcomo spanhttp.outbound:{host}e como chamada externa. - Remoção de credenciais e query string das URLs persistidas por segurança.
- Migração automática de bancos SQLite v1 existentes, sem apagar dados.
Segurança
- Dashboard negado por padrão: exige configuração de política de acesso (Gate
viewPulse, Basic Auth e/ou whitelist de IPs).
Documentação e Qualidade
- README completo com demonstração, instalação, uso e integração com Laravel.
- Suíte de testes com PHPUnit executada em PHP 8.1, 8.2 e 8.3 no GitHub Actions.
- Templates de issue, Pull Request e
CONTRIBUTING.md.
Observações
- Versão de pré-lançamento: a API pode sofrer pequenos ajustes antes de
1.0.0. - Para instalá-la com o Composer, é necessário permitir versões instáveis:
composer require jgcansi/pulse-php:^1.0@beta