Configuration de Tracy
Tous les exemples supposent qu'un alias a été créé :
use Tracy\Debugger;
Logging des erreurs
$logger = Debugger::getLogger();
// e-mail auquel les notifications d'erreur sont envoyées
$logger->email = 'dev@example.com'; // (string|string[]) par défaut non défini
// expéditeur de l'e-mail
$logger->fromEmail = 'me@example.com'; // (string) par défaut non défini
// routine assurant l'envoi de l'e-mail
$logger->mailer = /* ... */; // (callable) par défaut l'envoi via la fonction mail()
// après quel délai minimum envoyer le prochain e-mail ?
$logger->emailSnooze = /* ... */; // (string) par défaut '2 days'
// pour quels niveaux d'erreur le BlueScreen est-il également journalisé ?
Debugger::$logSeverity = E_WARNING | E_NOTICE; // par défaut 0 (aucun niveau d'erreur)
Comportement de dump()
// longueur maximale de la chaîne de caractères
Debugger::$maxLength = 150; // (int) par défaut selon la version de Tracy
// profondeur maximale d'imbrication
Debugger::$maxDepth = 10; // (int) par défaut selon la version de Tracy
// masquer les valeurs de ces clés (depuis Tracy 2.8)
Debugger::$keysToHide = ['password', /* ... */]; // (string[]) par défaut []
// thème visuel (depuis Tracy 2.8)
Debugger::$dumpTheme = 'dark'; // (light|dark) par défaut 'light'
// afficher l'endroit où la fonction dump() a été appelée ?
Debugger::$showLocation = /* ... */; // (bool) par défaut selon la version de Tracy
Autres
// en mode développement, affiche les erreurs de type notice ou warning comme BlueScreen
Debugger::$strictMode = /* ... */; // (bool|int) par défaut false, il est possible de sélectionner seulement certains niveaux d'erreur (par ex. E_USER_DEPRECATED | E_DEPRECATED)
// afficher les messages d'erreur masqués (@) ?
Debugger::$scream = /* ... */; // (bool|int) par défaut false, depuis la version 2.9 il est possible de sélectionner seulement certains niveaux d'erreur (par ex. E_USER_DEPRECATED | E_DEPRECATED)
// format du lien pour l'ouverture dans l'éditeur
Debugger::$editor = /* ... */; // (string|null) par défaut 'editor://open/?file=%file&line=%line'
// chemin vers le template avec une page personnalisée pour l'erreur 500
Debugger::$errorTemplate = /* ... */; // (string) par défaut non défini
// afficher la barre Tracy ?
Debugger::$showBar = /* ... */; // (bool) par défaut true
Debugger::$editorMapping = [
// original => nouveau
'/var/www/html' => '/data/web',
'/home/web' => '/srv/html',
];
Nette Framework
Si vous utilisez Nette Framework, vous pouvez configurer Tracy et ajouter de nouveaux panneaux à la barre Tracy également via le fichier de configuration. Dans la configuration, vous pouvez définir des paramètres et ajouter de nouveaux panneaux à la barre Tracy. Ces paramètres ne sont appliqués qu'après la création du conteneur DI, les erreurs survenues avant ne peuvent donc pas les refléter.
Configuration du logging des erreurs :
tracy:
# e-mail auquel les notifications d'erreur sont envoyées
email: dev@example.com # (string|string[]) par défaut non défini
# expéditeur de l'e-mail
fromEmail: robot@example.com # (string) par défaut non défini
# durée de report de l'envoi des e-mails (depuis Tracy 2.8.8)
emailSnooze: ... # (string) par défaut '2 days'
# utiliser Nette mailer pour l'envoi des e-mails ? (depuis Tracy 2.5)
netteMailer: ... # (bool) par défaut true
# pour quels niveaux d'erreur le BlueScreen est-il également journalisé ?
logSeverity: [E_WARNING, E_NOTICE] # par défaut []
Configuration du comportement de la fonction dump()
:
tracy:
# longueur maximale de la chaîne de caractères
maxLength: 150 # (int) par défaut selon la version de Tracy
# profondeur maximale d'imbrication
maxDepth: 10 # (int) par défaut selon la version de Tracy
# masquer les valeurs de ces clés (depuis Tracy 2.8)
keysToHide: [password, pass] # (string[]) par défaut []
# thème visuel (depuis Tracy 2.8)
dumpTheme: dark # (light|dark) par défaut 'light'
# afficher l'endroit où la fonction dump() a été appelée ?
showLocation: ... # (bool) par défaut selon la version de Tracy
Installation des extensions Tracy :
tracy:
# ajoute des panneaux à la barre Tracy
bar:
- Nette\Bridges\DITracy\ContainerPanel
- IncludePanel
- XDebugHelper('myIdeKey')
- MyPanel(@MyService)
# ajoute des panneaux au BlueScreen
blueScreen:
- DoctrinePanel::renderException
Autres options :
tracy:
# en mode développement, affiche les erreurs de type notice ou warning comme BlueScreen
strictMode: ... # par défaut true
# afficher les messages d'erreur masqués (@) ?
scream: ... # par défaut false
# format du lien pour l'ouverture dans l'éditeur
editor: ... # (string) par défaut 'editor://open/?file=%file&line=%line'
# chemin vers le template avec une page personnalisée pour l'erreur 500
errorTemplate: ... # (string) par défaut non défini
# afficher la barre Tracy ?
showBar: ... # (bool) par défaut true
editorMapping:
# original: nouveau
/var/www/html: /data/web
/home/web: /srv/html
Les valeurs des options logSeverity
, strictMode
et scream
peuvent être écrites comme
un tableau de niveaux d'erreur (par ex. [E_WARNING, E_NOTICE]
), ou comme une expression utilisée dans le langage PHP
(par ex. E_ALL & ~E_NOTICE
).
Services DI
Ces services sont ajoutés au conteneur DI :
Nom | Type | Description |
---|---|---|
tracy.logger |
Tracy\ILogger | logger |
tracy.blueScreen |
Tracy\BlueScreen | BlueScreen |
tracy.bar |
Tracy\Bar | Barre Tracy |