Skip to content

Add Query Profiler Core: Config, Storage, Events, and Tests#5

Merged
kettasoft merged 2 commits into2.0.0from
feature/profiler
Aug 17, 2025
Merged

Add Query Profiler Core: Config, Storage, Events, and Tests#5
kettasoft merged 2 commits into2.0.0from
feature/profiler

Conversation

@kettasoft
Copy link
Owner

This pull request introduces a comprehensive query profiler system to the Filterable package. Key highlights:

  1. Adds a configurable profiler to monitor and analyze queries executed via the Filterable layer.
  2. New configuration options in filterable.php for enabling/disabling, storage method (log/database), thresholds, and sampling.
  3. Implements the Profiler class, event dispatcher, and storage contracts for both file and database.
  4. Registers profiler services and storage bindings in FilterableServiceProvider.
  5. Includes a migration for the profiler database table.
  6. Provides documentation (profiler.md) for setup and usage.
  7. Adds feature tests to verify profiler events for slow and duplicate queries.
  8. Updates the Invoker to trigger the profiler when enabled.

This feature helps developers monitor query performance, detect slow or duplicate queries, and store profiling data for further analysis.

Abdalrhman Emad Saad and others added 2 commits August 17, 2025 20:31
- Introduced a configurable query profiler to the Filterable package.
- Added profiler configuration options to `config/filterable.php`.
- Implemented `Profiler`, event dispatcher, and storage contracts (file/database).
- Registered profiler services in `FilterableServiceProvider`.
- Added migration for profiler database table.
- Created documentation and feature tests for profiler events (slow/duplicate queries).
- Updated Invoker to trigger profiler when enabled.
@kettasoft kettasoft merged commit e772365 into 2.0.0 Aug 17, 2025
@kettasoft kettasoft deleted the feature/profiler branch August 17, 2025 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant