LaravelPackages.net
Acme Inc.
Toggle sidebar
evonext/tracy

A EvoNext CMS Package to integrate Nette Tracy Debugger

9
0
1.1.2
About evonext/tracy

evonext/tracy is a Laravel package for a evonext cms package to integrate nette tracy debugger. It currently has 0 GitHub stars and 9 downloads on Packagist (latest version 1.1.2). Install it with composer require evonext/tracy. Discover more Laravel packages by evonext or browse all Laravel packages to compare alternatives.

Last updated

Integration Nette Tracy for EvoNext CMS

Better Exception Handler

Total Downloads Latest Stable Version Latest Unstable Version License Monthly Downloads Daily Downloads

Laravel Tracy

Features

  • Visualization of errors and exceptions
  • Debugger Bar (ajax support @v1.5.6)
  • Exception stack trace contains values of all method arguments.

Installation

To get the latest version of Laravel Exceptions, simply require the project using Composer:

composer require evonext/tracy --dev

Instead, you may of course manually update your require block and run composer update if you so choose:

{
    "require-dev": {
        "evonext/tracy": "^1.0"
    }
}

Include the service provider within config/app.php. The service provider is needed for the generator artisan command.

'providers' => [
    ...
    EvoNext\Tracy\TracyServiceProvider::class,
    ...
];

If you see Route tracy.bar not defined, please run artisan route:clear once

artisan route:clear

Config

Basic settings can be changed using environment variables:

TRACY_ENABLED=true        # true | false | 'manager' | 'web'
TRACY_SHOW_BAR=true       # true | false
TRACY_EXCEPTION=true      # true | false
TRACY_MGR_TOP_FRAME=false # true | false

Publish config

If you need to change other settings, publish the configuration:

php artisan vendor:publish --provider="EvoNext\Tracy\TracyServiceProvider"

The /config directory will contain the file tracy.php, which you can change as you see fit.

return [

    /* Activate tracy
    |--------------------------------------------------------------------------
    | Available values:
    | true      – Enable for any context
    | false     – Disable for any context
    | 'manager' – Enable only for manager context (admin area)
    | 'web'     – Enable only for web context (public area)
    |-------------------------------------------------------------------------- */

    'enabled' => env('TRACY_ENABLED', env('APP_DEBUG') === true),

    /* Show bar
    |-------------------------------------------------------------------------- */

    'showBar' => env('TRACY_SHOW_BAR', env('APP_ENV') !== 'production'),

    /* Show exceptions
    |-------------------------------------------------------------------------- */

    'showException' => env('TRACY_EXCEPTION', true),

    /* The URL prefix for the manager dashboard
    |-------------------------------------------------------------------------- */

    'managerPrefix' => 'admin',

    /* The URL prefix for a frame top level the manager dashboard
    |-------------------------------------------------------------------------- */

    'managerTopRoute' => 'main',

    /* If true tracy shown bar in a frame top level
    | instead pages frames in the manager context
    |-------------------------------------------------------------------------- */

    'enabledInTopFrame' => env('TRACY_MGR_TOP_FRAME', false),

    'route'         => [
        'prefix' => 'tracy',
        'as'     => 'tracy.',
    ],
    'accepts'       => [
        'text/html',
    ],
    'appendTo'      => 'body',
    'editor'        => 'editor://%action/?file=%file&line=%line&search=%search&replace=%replace',
    'maxDepth'      => 4,
    'maxLength'     => 1000,
    'scream'        => true,
    'showLocation'  => true,
    'strictMode'    => true,
    'editorMapping' => [],
    'panels'        => [
        'routing'        => true,
        'database'       => true,
        'view'           => true,
        'event'          => false,
        'session'        => true,
        'request'        => true,
        'auth'           => true,
        'html-validator' => false,
    ],
];

See https://tracy.nette.org/en/open-files-in-ide

Debugger Bar

Images clickable

@bdump Ajax SysInfo Route
View Session Request Login

Custom Auth

// app/Providers/AppServiceProvider.php

namespace App\Providers;

use Recca0120\LaravelTracy\BarManager;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function boot(BarManager $barManager)
    {
        $barManager->get('auth')->setUserResolver(function() {
            return [
                'id' => 'xxx',
                'username' => 'xxx',
                ...
            ];
        });
    }
}

Thanks

Comments