PHPackages                             onigoetz/profiler - 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. [Debugging &amp; Profiling](/categories/debugging)
4. /
5. onigoetz/profiler

Abandoned → [barryvdh/laravel-debugbar](/?search=barryvdh%2Flaravel-debugbar)ArchivedLibrary[Debugging &amp; Profiling](/categories/debugging)

onigoetz/profiler
=================

Next Generation PHP Profiler for Laravel

1.0.0-beta(12y ago)351.6k5PHPPHP &gt;=5.3.0

Since Jun 8Pushed 11y ago2 watchersCompare

[ Source](https://github.com/onigoetz/profiler)[ Packagist](https://packagist.org/packages/onigoetz/profiler)[ RSS](/packages/onigoetz-profiler/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (3)Used By (0)

Laravel Profiler
================

[](#laravel-profiler)

> ## **DISCONTINUED**
>
> [](#discontinued)
>
> This project is no longer maintained and I won't provide support for it.
>
> I recommend to use [Laravel Debugbar](https://github.com/barryvdh/laravel-debugbar) or [PHP Debugbar](http://phpdebugbar.com/)

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

[](#installation)

Add this dependency to `composer.json` with this command: `composer require-dev onigoetz/profiler:dev-master`

And add this in your `configuration/app.php` file. This will allow the Profiler to only load locally and will not clutter your production build.

```
    'providers' => array(
        'Onigoetz\Profiler\Support\Laravel\ProfilerServiceProvider',
        ...
    ),
    'aliases' => array(
        ...
        'Stopwatch' => 'Onigoetz\Profiler\Stopwatch'
        ...
    )
```

Then do `./artisan asset:publish onigoetz/profiler` to publish the javascript/css files

## Configuration
By default, the profiler will run only in environment that are not "production"

You can override all default values by doing `./artisan config:publish onigoetz/profiler` and editing the `profiler.php` file.

### Options

- `environments` An array of environments on which the profiler may be shown
- `assets_auto` If set to true (default) it will include its assets itself, you can disable this to add the assets to your own build process
- `panels` An array of classes that extend `Onigoetz\Profiler\Panel` you can add your own panels and reorder them.
- `slow_query` Threshold in milliseconds after which it is considered slow

## Panels
All panels are work in progress for the moment, many changes may happen

### Time
This panel provides a way to watch for events in a graphical way.

You can profile anything anywhere in your code by using the `Stopwatch` facade.

It's a facade for a stopwatch heavily inspired from [Stopwatch Symfony component](http://symfony.com/doc/current/components/stopwatch.html), the difference is that mine doesn't support sections
As any Laravel Facade you don't have to initialize it, just use it

__Example:__

```php
Stopwatch::start('stuff to benchmark');

//do your stuff

Stopwatch::stop('stuff to benchmark');
```

### Database
Provide a list of executed queries and their bindings.
Also checks for duplicated queries, based on raw SQL without bindings, small but useful tool to track down which query could be improved

### Router
List of declared routes with some more informations ( route name, filter, hostname, action …)
Also highlights the current route.

(The same informations as the `./artisan routes` + highlighted current route)

### Variables
Dump of `$_GET`, `$_POST`, `$_FILES`, `$_COOKIE`, Session, `$_SERVER` and `$_ENV` variables

### Log
Registers a new log handler to output the logs from the current run

### Files
List of loaded files and their size

### Bookmarklets
A list of useful bookmarklets + loaded scripts on the current page

## How it works
Each panel is a class that has some methods to do it's stuff

* `$data` 	All data must be stored here, so we can serialize the class easily
* `register()` called on `App::before()` here you can register some classes or events
* `getData()` retrieve the data and store in `$this->data`
* `getName()` return a string with the name, will be used as an id and class in HTML
* `render()` return a `View` with the rendered panel
* `renderTitle()` return a `PanelTitle` object with the title properties
```

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity27

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~21 days

Total

2

Last Release

4697d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7766264b40bb3a40b9b2ac847b67135c59e774807a6d1e313758efcd8203603f?d=identicon)[onigoetz](/maintainers/onigoetz)

---

Top Contributors

[![onigoetz](https://avatars.githubusercontent.com/u/309594?v=4)](https://github.com/onigoetz "onigoetz (48 commits)")[![Weeblewonder](https://avatars.githubusercontent.com/u/865295?v=4)](https://github.com/Weeblewonder "Weeblewonder (1 commits)")

---

Tags

profilerLaravel 4

### Embed Badge

![Health badge](/badges/onigoetz-profiler/health.svg)

```
[![Health](https://phpackages.com/badges/onigoetz-profiler/health.svg)](https://phpackages.com/packages/onigoetz-profiler)
```

###  Alternatives

[barryvdh/laravel-debugbar

PHP Debugbar integration for Laravel

19.1k124.3M621](/packages/barryvdh-laravel-debugbar)[fruitcake/laravel-debugbar

PHP Debugbar integration for Laravel

19.1k662.9k28](/packages/fruitcake-laravel-debugbar)[php-debugbar/php-debugbar

Debug bar in the browser for php application

4.4k21.3M39](/packages/php-debugbar-php-debugbar)[spatie/laravel-ray

Easily debug Laravel apps

31538.4M2.8k](/packages/spatie-laravel-ray)[tracy/tracy

😎 Tracy: the addictive tool to ease debugging PHP code for cool developers. Friendly design, logging, profiler, advanced features like debugging AJAX calls or CLI support. You will love it.

1.8k24.4M1.3k](/packages/tracy-tracy)[recca0120/laravel-tracy

A Laravel Package to integrate Nette Tracy Debugger

388283.0k3](/packages/recca0120-laravel-tracy)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
