Конфігурація Tracy
Усі приклади передбачають створений псевдонім:
use Tracy\Debugger;
Логування помилок
$logger = Debugger::getLogger();
// електронна пошта, на яку надсилаються сповіщення про помилку
$logger->email = 'dev@example.com'; // (string|string[]) за замовчуванням не встановлено
// відправник електронної пошти
$logger->fromEmail = 'me@example.com'; // (string) за замовчуванням не встановлено
// процедура, що забезпечує надсилання електронної пошти
$logger->mailer = /* ... */; // (callable) за замовчуванням надсилання функцією mail()
// через який найкоротший час надіслати наступний лист?
$logger->emailSnooze = /* ... */; // (string) за замовчуванням '2 days'
// для яких рівнів помилок також логується BlueScreen?
Debugger::$logSeverity = E_WARNING | E_NOTICE; // за замовчуванням 0 (немає рівнів помилок)
Поведінка dump()
// максимальна довжина рядка
Debugger::$maxLength = 150; // (int) за замовчуванням відповідно до версії Tracy
// максимальна глибина вкладеності
Debugger::$maxDepth = 10; // (int) за замовчуванням відповідно до версії Tracy
// приховати значення цих ключів (з Tracy 2.8)
Debugger::$keysToHide = ['password', /* ... */]; // (string[]) за замовчуванням []
// візуальна тема (з Tracy 2.8)
Debugger::$dumpTheme = 'dark'; // (light|dark) за замовчуванням 'light'
// показати місце, де була викликана функція dump()?
Debugger::$showLocation = /* ... */; // (bool) за замовчуванням відповідно до версії Tracy
Інше
// у режимі розробки відображає помилки типу notice або warning як 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) за замовчуванням не встановлено
// показувати Tracy Bar?
Debugger::$showBar = /* ... */; // (bool) за замовчуванням true
Debugger::$editorMapping = [
// оригінал => новий
'/var/www/html' => '/data/web',
'/home/web' => '/srv/html',
];
Nette Framework
Якщо ви використовуєте Nette Framework, ви можете налаштувати Tracy та додати нові панелі до Tracy Bar також за допомогою конфігураційного файлу. У конфігурації можна встановлювати параметри, а також додавати нові панелі до Tracy Bar. Ці налаштування застосовуються лише після створення DI-контейнера, тому помилки, що виникли до цього, не можуть їх відображати.
Конфігурація логування помилок:
tracy:
# електронна пошта, на яку надсилаються сповіщення про помилку
email: dev@example.com # (string|string[]) за замовчуванням не встановлено
# відправник електронної пошти
fromEmail: robot@example.com # (string) за замовчуванням не встановлено
# час відкладення надсилання електронних листів (з Tracy 2.8.8)
emailSnooze: ... # (string) за замовчуванням '2 days'
# використовувати для надсилання електронних листів Nette mailer? (з Tracy 2.5)
netteMailer: ... # (bool) за замовчуванням true
# для яких рівнів помилок також логується BlueScreen?
logSeverity: [E_WARNING, E_NOTICE] # за замовчуванням []
Конфігурація поведінки функції dump()
:
tracy:
# максимальна довжина рядка
maxLength: 150 # (int) за замовчуванням відповідно до версії Tracy
# максимальна глибина вкладеності
maxDepth: 10 # (int) за замовчуванням відповідно до версії Tracy
# приховати значення цих ключів (з Tracy 2.8)
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:
# у режимі розробки відображає помилки типу notice або warning як BlueScreen
strictMode: ... # за замовчуванням true
# показувати приглушені (@) повідомлення про помилки?
scream: ... # за замовчуванням false
# формат посилання для відкриття в редакторі
editor: ... # (string) за замовчуванням 'editor://open/?file=%file&line=%line'
# шлях до шаблону з власною сторінкою для помилки 500
errorTemplate: ... # (string) за замовчуванням не встановлено
# показувати Tracy Bar?
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 |