Конфигурация Tracy
Все примеры предполагают созданный псевдоним (alias):
use Tracy\Debugger;
Логирование ошибок
$logger = Debugger::getLogger();
// e-mail, на который отправляются уведомления о возникновении ошибки
$logger->email = 'dev@example.com'; // (string|string[]) по умолчанию не установлено
// отправитель e-mail
$logger->fromEmail = 'me@example.com'; // (string) по умолчанию не установлено
// процедура, обеспечивающая отправку email
$logger->mailer = /* ... */; // (callable) по умолчанию отправка функцией mail()
// через какое минимальное время отправить следующий email?
$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:
# e-mail, на который отправляются уведомления о возникновении ошибки
email: dev@example.com # (string|string[]) по умолчанию не установлено
# отправитель e-mail
fromEmail: robot@example.com # (string) по умолчанию не установлено
# время отсрочки отправки e-mail (с Tracy 2.8.8)
emailSnooze: ... # (string) по умолчанию '2 days'
# использовать для отправки e-mail 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 | логгер |
tracy.blueScreen |
Tracy\BlueScreen | BlueScreen |
tracy.bar |
Tracy\Bar | Tracy Bar |