Конфигурация на Трейси
Следващите примери предполагат, че е дефиниран следният псевдоним на клас:
use Tracy\Debugger;
Регистриране на грешки
$logger = Debugger::getLogger();
// ако възникне грешка, на този имейл се изпраща известие.
$logger->email = 'dev@example.com'; // (string|string[]) по подразбиране е изключен
// изпращач на електронна поща
$logger->fromEmail = 'me@example.com'; // (string) по подразбиране не е зададен
// процедура за изпращане на имейл
$logger->mailer = /* ... */; // (извиква се) по подразбиране се изпраща mail()
// кое е най-краткото време за изпращане на друга поща?
$logger->emailSnooze = /* ... */; // (string) по подразбиране е "2 дни
// кои нива на грешки в BlueScreen също се регистрират?
Debugger::$logSeverity = E_WARNING | E_NOTICE; // по подразбиране 0 (няма ниво на грешка)
dump()
Поведение
// максимална дължина на низ
Debugger::$maxLength = 150; // (int) по подразбиране според Трейси
// колко дълбок ще бъде списъкът
Debugger::$maxDepth = 10; // (int) по подразбиране според Tracy
// скриване на тези ключови стойности (от Tracy 2.8)
Debugger::$keysToHide = ['password', /* ... */]; // (string[]) по подразбиране []
// визуална тема (от версия 2.8 на Tracy)
Debugger::$dumpTheme = 'dark'; // (light|dark) по подразбиране е 'light'
// показване на местоположението, където е извикана функцията dump()?
Debugger::$showLocation = /* ... */; // (bool) по подразбиране е Tracy
Други
// в режим на разработка ще виждате известия или предупреждения за грешки като BlueScreen
Debugger::$strictMode = /* ... */; // (bool|int) по подразбиране е false, можете да изберете само конкретни нива на грешка (напр. E_USER_DEPRECATED | E_DEPRECATED)
//показва беззвучни (@) съобщения за грешки
Debugger::$scream = /* ... */; // (bool|int) по подразбиране е false, тъй като във версия 2.9 могат да се избират само определени нива на грешки (напр. E_USER_DEPRECATED | E_DEPRECATED)
// формат на връзката, която ще се отваря в редактора
Debugger::$editor = /* ... */; // (string|null) по подразбиране е 'editor://open/?file=%file&line=%line'
//път към шаблона на потребителската страница за грешка 500
Debugger::$errorTemplate = /* ... */; // (string) не е зададен по подразбиране
// покажете лентата за проследяване?
Debugger::$showBar = /* ... */; // (bool) по подразбиране е true
Debugger::$editorMapping = [
// оригинален => нов
'/var/www/html' => '/data/web',
/home/web' => '/srv/html',
];
Рамка на Nette
Ако използвате Nette Framework, можете също така да конфигурирате Tracy и да добавяте нови панели в лентата Tracy, като използвате конфигурационния файл. В конфигурацията можете да зададете параметрите на Tracy и да добавите нови панели в лентата Tracy. Тези параметри се прилагат само след създаването на контейнера DI, така че грешки, възникнали по-рано, не могат да бъдат отразени.
Конфигурация за регистриране на грешки:
tracy:
# ако има грешка, на този имейл се изпраща известие
email: dev@example.com # (string|string[]) по подразбиране е неустановен
# изпращач на имейл
fromEmail: robot@example.com # (string) по подразбиране е неустановен
# период на таймаут за изпращане на имейли (от Tracy 2.8.8)
emailSnooze: ... # (string) по подразбиране е '2 дни'
# използвайте пощенски оператор, дефиниран в конфигурацията? (като се започне с Tracy 2.5)
netteMailer: ... # (bool) по подразбиране е true
# За кои нива на грешки се регистрира и BlueScreen?
logSeverity: [E_WARNING, E_NOTICE] # по подразбиране []
Конфигурация за функцията dump()
:
tracy:
# максимална дължина на низ
maxLength: 150 # (int) по подразбиране е Tracy
# колко дълбок ще бъде списъкът
maxDepth: 10 # (int) е стойността по подразбиране според Tracy
# за скриване на тези клавиши (от версия 2.8 на Tracy)
keysToHide: [password, pass] # (string[]) по подразбиране []
# визуална тема (от Tracy 2.8)
dumpTheme: dark # (light|dark) по подразбиране е 'light'
# покажете мястото, където е извикана функцията dump()?
showLocation: ... # (bool) по подразбиране е Tracy
За да инсталирате разширението Tracy:
tracy:
# добавя барове към Tracy Bar
bar:
- Nette\Bridges\DITracy\ContainerPanel
- IncludePanel
- XDebugHelper('myIdeKey')
- MyPanel(@MyService)
# добавяне на панели към BlueScreen
blueScreen:
- DoctrinePanel::renderException
Други опции:
tracy:
# в режим на разработка ще виждате известия или предупреждения за грешки като BlueScreen
strictMode: ... # по подразбиране е true
# извежда беззвучни (@) съобщения за грешки
scream: ... # по подразбиране е false
# формат на връзката, която ще се отваря в редактора
editor: ... # (string) по подразбиране е 'editor://open/?file=%file&line=%line'
# път до шаблона на потребителската страница за грешка 500
errorTemplate: ... # (string) не е зададено по подразбиране
# покажете лентата за проследяване?
showBar: ... # (bool) по подразбиране е true
editorMapping:
# оригинал: нов
/var/www/html: /data/web
/home/web: /srv/html
Стойностите на опциите logSeverity
, strictMode
и scream
могат
да бъдат записани като масив от нива на грешки (напр.
[E_WARNING, E_NOTICE]
) или като израз, използван в PHP (напр.
E_ALL & ~E_NOTICE
).
Услуги на DI
Тези услуги се добавят към контейнера DI:
Име | Тип | Описание |
---|---|---|
tracy.logger |
Tracy\ILogger | logger |
tracy.blueScreen |
Tracy\BlueScreen | BlueScreen |
tracy.bar |
Tracy\Bar | Tracy Bar |