PHPackages                             nowo-tech/performance-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. nowo-tech/performance-bundle

ActiveSymfony-bundle[Database &amp; ORM](/categories/database)

nowo-tech/performance-bundle
============================

Symfony bundle for tracking and analyzing route performance metrics. Records request time, database queries count, and query execution time for performance analysis.

v3.2.2(2w ago)02.8k—4.3%MITPHPPHP &gt;=8.2 &lt;8.6CI passing

Since Jan 26Pushed 1mo agoCompare

[ Source](https://github.com/nowo-tech/PerformanceBundle)[ Packagist](https://packagist.org/packages/nowo-tech/performance-bundle)[ Docs](https://github.com/nowo-tech/PerformanceBundle)[ GitHub Sponsors](https://github.com/HecFranco)[ RSS](/packages/nowo-tech-performance-bundle/feed)WikiDiscussions main Synced 2w ago

READMEChangelog (10)Dependencies (113)Versions (51)Used By (0)

Performance Bundle
==================

[](#performance-bundle)

[![CI](https://github.com/nowo-tech/PerformanceBundle/actions/workflows/ci.yml/badge.svg)](https://github.com/nowo-tech/PerformanceBundle/actions/workflows/ci.yml) [![Packagist Version](https://camo.githubusercontent.com/69742600421a199e8b43ae5aea03a4962698a39baae045bf6446906228eb6397/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6e6f776f2d746563682f706572666f726d616e63652d62756e646c652e7376673f7374796c653d666c6174)](https://packagist.org/packages/nowo-tech/performance-bundle) [![Packagist Downloads](https://camo.githubusercontent.com/aecc652c1579b13d46ab8384e2f79613379a70f53637a4173a6c8ff9adf6ec78/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e6f776f2d746563682f706572666f726d616e63652d62756e646c652e737667)](https://packagist.org/packages/nowo-tech/performance-bundle) [![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](LICENSE) [![PHP](https://camo.githubusercontent.com/3f99b197569aa2dcfbefff17ecc68d74098e7f929d8b52dc40f3a898f740eae1/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e322532422d3737374242343f6c6f676f3d706870)](https://php.net) [![Symfony](https://camo.githubusercontent.com/7d4e4aaeb2d34975bb7d4d31bd666f354efd01e011d1799c80335c7a7cd62e7a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f53796d666f6e792d372e30253242253230253743253230382e302532422d3030303030303f6c6f676f3d73796d666f6e79)](https://symfony.com)

> ⭐ **Found this useful?** Give it a star on GitHub! It helps us maintain and improve the project.

**Symfony bundle for tracking and analyzing route performance metrics.** Automatically records request time, database query count, and query execution time for performance analysis.

> 📋 **Compatible with Symfony 7.x and 8.x** - Requires PHP 8.2 or higher and Symfony 7.0 or higher.

[![FrankenPHP Friendly Worker Mode](docs/images/frankenphp-friendly.png)](docs/images/frankenphp-friendly.png)

This bundle is **FrankenPHP worker mode friendly**.

What is this?
-------------

[](#what-is-this)

This bundle helps you **track and analyze route performance** in your Symfony applications:

- 📊 **Automatic Performance Tracking** - Automatically tracks route performance metrics
- 🔍 **Query Analysis** - Counts and times database queries per route
- ⏱️ **Request Timing** - Measures request execution time
- 📈 **Performance Analysis** - Identifies slow routes and query-heavy endpoints
- 🎯 **Route Metrics** - Stores metrics per route and environment
- 🔧 **Manual Updates** - Command to manually set/update route metrics

Quick Search Terms
------------------

[](#quick-search-terms)

Looking for: **route performance**, **performance monitoring**, **query tracking**, **Symfony performance**, **route metrics**, **performance analysis**, **database query tracking**, **request timing**, **profiling**, **performance bundle**? You've found the right bundle!

Features
--------

[](#features)

- ✅ Automatic route performance tracking via event subscribers
- ✅ Database query counting and execution time tracking
- ✅ Request execution time measurement
- ✅ **Memory usage tracking** - Track peak memory consumption per route
- ✅ **Access frequency tracking** - Track how often routes are accessed
- ✅ **HTTP status code tracking** - Track and calculate ratios for HTTP status codes (200, 404, 500, etc.)
- ✅ **Sub-request tracking** - Optional tracking of sub-requests (ESI, fragments, includes) in addition to main requests
- ✅ **Performance notifications** - Email, Slack, Teams, and webhook notifications for performance alerts
- ✅ Route data persistence in database
- ✅ Environment-specific metrics (dev, test, prod)
- ✅ Configurable route ignore list
- ✅ Command to manually set/update route metrics
- ✅ Support for multiple Doctrine connections
- ✅ Performance dashboard with filtering and sorting
- ✅ **Data export** - CSV and JSON export functionality
- ✅ **Record management** - Delete individual records (optional)
- ✅ **Review system** - Mark and edit records as reviewed with improvement tracking (optional)
- ✅ **Bootstrap and Tailwind CSS support** - Choose your preferred CSS framework
- ✅ Role-based access control for dashboard
- ✅ WebProfiler integration with ranking information
- ✅ **Chart.js integration** - Interactive performance charts
- ✅ **Symfony UX Twig Components** - Optional modern component system
- ✅ Symfony 7.x and 8.x compatible
- ✅ **FrankenPHP** — Compatible with FrankenPHP; production Caddyfile can use worker mode, while **dev demos** use `APP_ENV=dev` so the image entrypoint swaps in `Caddyfile.dev` (no worker, comfortable local dev). See [docs/DEMO-FRANKENPHP.md](docs/DEMO-FRANKENPHP.md) and the demo READMEs.

Installation
------------

[](#installation)

```
composer require nowo-tech/performance-bundle
```

[![Install from Packagist](https://camo.githubusercontent.com/25ba1d8b573a14c09873ad1c973fe17a929432bcf6cf4ceca6fa0910e34c5d08/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5061636b61676973742d696e7374616c6c2d3737374242343f6c6f676f3d636f6d706f736572)](https://packagist.org/packages/nowo-tech/performance-bundle)

Then, register the bundle in your `config/bundles.php`:

```
