PHPackages                             andrerampanelli/runtracy - 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. [Templating &amp; Views](/categories/templating)
4. /
5. andrerampanelli/runtracy

ActiveLibrary[Templating &amp; Views](/categories/templating)

andrerampanelli/runtracy
========================

A fork of runcmf/runtracy

0.2.11(4y ago)029.4kApache-2.0PHPPHP &gt;=5.5.0

Since Dec 11Pushed 4y agoCompare

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

READMEChangelog (1)Dependencies (10)Versions (15)Used By (0)

[![Build Status](https://camo.githubusercontent.com/e5b1f58bbc48029955be8fb4654d0bdc718ea6d52c6391e782336dd565069ee6/68747470733a2f2f7472617669732d63692e6f72672f72756e636d662f72756e74726163792e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/runcmf/runtracy)[![Coverage Status](https://camo.githubusercontent.com/d06dd599592ae61af5c30c91f3bef3bfbe2286507b121bfaf3942baf348ddeb8/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f72756e636d662f72756e74726163792f62616467652e7376673f6272616e63683d6d6173746572)](https://coveralls.io/github/runcmf/runtracy?branch=master)[![Code Climate](https://camo.githubusercontent.com/b54563dc34f5f97fa30a5cc1d4214986548fc1d8fa1060421b159fd9761de34a/68747470733a2f2f636f6465636c696d6174652e636f6d2f6769746875622f72756e636d662f72756e74726163792f6261646765732f6770612e737667)](https://codeclimate.com/github/runcmf/runtracy)[![Latest Version on Packagist](https://camo.githubusercontent.com/136f97f8fedb9993f67f2fe58ce51dc2c10815238b357785f89bccbba109dd03/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f72756e636d662f72756e74726163792e737667)](https://packagist.org/packages/runcmf/runtracy)[![Total Downloads](https://camo.githubusercontent.com/dc2b43a74512e1a896b28319cb12af0f83ee0ee43ef2b5ba221d974a47a73fb0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f72756e636d662f72756e74726163792e737667)](https://github.com/runcmf/runtracy)[![Software License](https://camo.githubusercontent.com/16362940445248a57e58270cb65000a89bf09f42011347dcf0adc70cfa4b2f3b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322d677265656e2e737667)](http://www.apache.org/licenses/LICENSE-2.0)
[![SensioLabsInsight](https://camo.githubusercontent.com/5263c297d715c59de0efec47a298edac51c5c2ccbd56a9b128d8eeedc934c230/68747470733a2f2f696e73696768742e73656e73696f6c6162732e636f6d2f70726f6a656374732f32643038303732342d396531302d343737302d393232302d3036373833383165623334312f6269672e706e67)](https://insight.sensiolabs.com/projects/2d080724-9e10-4770-9220-0678381eb341)

Slim Framework Tracy Debugger Bar
=================================

[](#slim-framework-tracy-debugger-bar)

configure it by mouse
---------------------

[](#configure-it-by-mouse)

[![example](ss/tracy_panel.png "Tracy Panel")](ss/tracy_panel.png)

now in package:
---------------

[](#now-in-package)

PanelDescription**Slim Framework**-Slim EnvironmentRAW dataSlim ContainerRAW dataSlim RequestRAW dataSlim ResponseRAW dataSlim RouterRAW data**DB**-Doctrine [ORM](https://github.com/doctrine/doctrine2) or [DBAL](https://github.com/doctrine/dbal)time, sql, params, types. panel &amp; collector for both. see config example below[Idiorm](https://github.com/j4mie/idiorm)time, sql. panel &amp; collector. **Note:** Idiorm support only one collector and if you use own this will not work.[Illuminate Database](https://github.com/illuminate/database)sql, bindings**Template**-[Twig](https://github.com/twigphp/Twig)Twig\_Profiler\_Dumper\_Html()**Common**-PanelSelectoreasy configure (part of fork from [TracyDebugger](https://github.com/adrianbj/TracyDebugger))PhpInfofull phpinfo()ConsolePTY (pseudo TTY) console (fork from [web-console](https://github.com/nickola/web-console))Profilertime, mem usage, timeline (fork from [profiler](https://github.com/netpromotion/profiler))Included FilesIncluded Files listXDebugstart and stop a Xdebug session (fork from [Nette-XDebug-Helper](https://github.com/jsmitka/Nette-XDebug-Helper))VendorVersionsversion info from composer.json and composer.lock (fork from [vendor-versions](https://github.com/milo/vendor-versions))---

Install
=======

[](#install)

**1.**

```
$ composer require runcmf/runtracy
```

**2.** goto 3 or if need Twig, Doctrine DBAL, Doctrine ORM, Eloquent ORM then:

**2.1** install it

```
$ composer require doctrine/dbal
$ composer require doctrine/orm
$ composer require slim/twig-view
$ composer require illuminate/database
```

**2.2** add to your dependencies (Twig, Twig\_Profiler) and/or Eloquent ORM like:

```
// Twig
$c['twig_profile'] = function () {
    return new Twig_Profiler_Profile();
};

$c['view'] = function ($c) {
    $settings = $c->get('settings')['view'];
    $view = new \Slim\Views\Twig($settings['template_path'], $settings['twig']);
    // Add extensions
    $view->addExtension(new Slim\Views\TwigExtension($c->get('router'), $c->get('request')->getUri()));
    $view->addExtension(new Twig_Extension_Profiler($c['twig_profile']));
    $view->addExtension(new Twig_Extension_Debug());
    return $view;
};

// Register Eloquent single connection
$capsule = new \Illuminate\Database\Capsule\Manager;
$capsule->addConnection($cfg['settings']['db']['connections']['mysql']);
$capsule->setAsGlobal();
$capsule->bootEloquent();
$capsule::connection()->enableQueryLog();

// Doctrine DBAL
$c['dbal'] = function () {
    $conn = \Doctrine\DBAL\DriverManager::getConnection(
        [
            'driver' => 'pdo_mysql',
            'host' => '127.0.0.1',
            'user' => 'dbuser',
            'password' => '123',
            'dbname' => 'bookshelf',
            'port' => 3306,
            'charset' => 'utf8',
        ],
        new \Doctrine\DBAL\Configuration
    );
    // possible return or DBAL\Query\QueryBuilder or DBAL\Connection
    return $conn->createQueryBuilder();
};

// Doctrine ORM
// this example from https://github.com/vhchung/slim3-skeleton-mvc
// doctrine EntityManager
$c['em'] = function ($c) {
    $settings = $c->get('settings');
    $config = \Doctrine\ORM\Tools\Setup::createAnnotationMetadataConfiguration(
        $settings['doctrine']['meta']['entity_path'],
        $settings['doctrine']['meta']['auto_generate_proxies'],
        $settings['doctrine']['meta']['proxy_dir'],
        $settings['doctrine']['meta']['cache'],
        false
    );
    // possible return or ORM\EntityManager or ORM\QueryBuilder
    return \Doctrine\ORM\EntityManager::create($settings['doctrine']['connection'], $config);
};
```

**3.** register middleware

```
$app->add(new RunTracy\Middlewares\TracyMiddleware($app));
```

**4.** register route if you plan use PTY Console

```
$app->post('/console', 'RunTracy\Controllers\RunTracyConsole:index');
```

also copy you want `jquery.terminal.min.js` &amp; `jquery.terminal.min.css` from vendor/runcmf/runtracy/web and correct path in 'settings' below.
add from local or from CDN () or copy/paste

```

```

**5.** add to your settings Debugger initialisation and 'tracy' section.

```
use Tracy\Debugger;

defined('DS') || define('DS', DIRECTORY_SEPARATOR);
define('DIR', realpath(__DIR__ . '/../../') . DS);

Debugger::enable(Debugger::DEVELOPMENT, DIR . 'var/log');
//Debugger::enable(Debugger::PRODUCTION, DIR . 'var/log');

return [
    'settings' => [
        'addContentLengthHeader' => false// debugbar possible not working with true
    ... // ...
    ... // ...

        'tracy' => [
            'showPhpInfoPanel' => 0,
            'showSlimRouterPanel' => 0,
            'showSlimEnvironmentPanel' => 0,
            'showSlimRequestPanel' => 1,
            'showSlimResponsePanel' => 1,
            'showSlimContainer' => 0,
            'showEloquentORMPanel' => 0,
            'showTwigPanel' => 0,
            'showIdiormPanel' => 0,// > 0 mean you enable logging
            // but show or not panel you decide in browser in panel selector
            'showDoctrinePanel' => 'em',// here also enable logging and you must enter your Doctrine container name
            // and also as above show or not panel you decide in browser in panel selector
            'showProfilerPanel' => 0,
            'showVendorVersionsPanel' => 0,
            'showXDebugHelper' => 0,
            'showIncludedFiles' => 0,
            'showConsolePanel' => 0,
            'configs' => [
                // XDebugger IDE key
                'XDebugHelperIDEKey' => 'PHPSTORM',
                // Disable login (don't ask for credentials, be careful) values( 1 || 0 )
                'ConsoleNoLogin' => 0,
                // Multi-user credentials values( ['user1' => 'password1', 'user2' => 'password2'] )
                'ConsoleAccounts' => [
                    'dev' => '34c6fceca75e456f25e7e99531e2425c6c1de443'// = sha1('dev')
                ],
                // Password hash algorithm (password must be hashed) values('md5', 'sha256' ...)
                'ConsoleHashAlgorithm' => 'sha1',
                // Home directory (multi-user mode supported) values ( var || array )
                // '' || '/tmp' || ['user1' => '/home/user1', 'user2' => '/home/user2']
                'ConsoleHomeDirectory' => DIR,
                // terminal.js full URI
                'ConsoleTerminalJs' => '/assets/js/jquery.terminal.min.js',
                // terminal.css full URI
                'ConsoleTerminalCss' => '/assets/css/jquery.terminal.min.css',
                'ProfilerPanel' => [
                    // Memory usage 'primaryValue' set as Profiler::enable() or Profiler::enable(1)
//                    'primaryValue' =>                   'effective',    // or 'absolute'
                    'show' => [
                        'memoryUsageChart' => 1, // or false
                        'shortProfiles' => true, // or false
                        'timeLines' => true // or false
                    ]
                ]
            ]
        ]
```

see config examples in vendor/runcmf/runtracy/Example

[![example](ss/panel_selector.png "Panel Selector")](ss/panel_selector.png)

[![example](ss/twig.png "Twig panel")](ss/twig.png)

[![example](ss/eloquent.png "Eloquent ORM panel")](ss/eloquent.png)

[![example](ss/container.png "Slim Container panel")](ss/container.png)

[![example](ss/request.png "Slim Request panel")](ss/request.png)

[![example](ss/response.png "Slim Response panel ")](ss/response.png)

[![example](ss/router.png "Slim Router panel ")](ss/router.png)

[![example](ss/vendor_versions_panel.png "Vendor Versions Panel")](ss/vendor_versions_panel.png)

[![example](ss/included_files.png "Included Files Panel")](ss/included_files.png)

[![example](ss/phpinfo.png "phpinfo Panel")](ss/phpinfo.png)

[![example](ss/console_panel.png "PTY Console Panel")](ss/console_panel.png)

Profiler Example in new installed [slim-skeleton](https://packagist.org/packages/slim/slim-skeleton)
`public/index.php`

```
