Skip to content
This repository has been archived by the owner on Nov 9, 2022. It is now read-only.

Latest commit

 

History

History
86 lines (60 loc) · 2.78 KB

README.md

File metadata and controls

86 lines (60 loc) · 2.78 KB

Tracy PHP debugger bundle for Symfony

This bundle adds the powerful Tracy debug tool to the Symfony2 framework.

Nette Tracy screenshot

Why is Tracy better than the Symfony build-in debugger?

  • Exception stack trace contains values of all method arguments.
  • Request & Response & Server environment information is displayed on the error page.
  • The whole error page with full stack trace can be easily stored to some directory as HTML file (useful on production mode).
  • Webmaster can be notified by email about errors that occured on the site.

See full Tracy docs and sample error page.

Tracy is a part of the Nette Framework.

Installation

  1. Install via composer:
composer require kutny/tracy-bundle
  1. Add KutnyTracyBundle to your application kernel. For This bundle to catch as many errors as possible it should be the first bundle in the bundles array.
// app/AppKernel.php
public function registerBundles()
{
    return array(
        new Kutny\TracyBundle\KutnyTracyBundle(),
        // ...
    );
}

Configuration

1) app.php / app_dev.php

Open web/app.php and web/app_dev.php files and add the following code before the AppKernel class is instantiated:

\Tracy\Debugger::enable();

Or force the production mode where only general server error page will be displayed to the user (read more):

\Tracy\Debugger::enable(\Tracy\Debugger::PRODUCTION);

I also recommend you to enable Tracy in a strict mode so it can handle errors of type E_NOTICE and E_WARNING too.

\Tracy\Debugger::$strictMode = true;

2) config.yml

kutny_tracy:
    emails: ['[email protected]'] # error notification recipients
    exceptions_directory: <directory> # optional, default directory set to %kernel.logs_dir%/exceptions
    store_username_in_server_variable: true|false # optional, default value = false; stores username of logged user in $_SERVER['SYMFONY_USERNAME'] - helps you to find out which user encountered the error
    ignored_exceptions:
        - Symfony\Component\HttpKernel\Exception\BadRequestHttpException
        - RuntimeException
        - UnexpectedValueException

License

This bundle license: https://github.com/kutny/tracy-bundle/blob/master/LICENSE

Tracy debugger license: https://github.com/nette/tracy/blob/master/license.md