Nette Documentation Preview

syntax
Конфигурация на Трейси
**********************

Следващите примери предполагат, че е дефиниран следният псевдоним на клас:

```php
use Tracy\Debugger;
```


Регистриране на грешки .[#toc-error-logging]
--------------------------------------------

```php
$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()` Поведение .[#toc-dump-behavior]
----------------------------------------

```php
// максимална дължина на низ
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
```


Други .[#toc-others]
--------------------

```php
// в режим на разработка ще виждате известия или предупреждения за грешки като 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 .[#toc-nette-framework]
--------------------------------------

Ако използвате Nette Framework, можете също така да конфигурирате Tracy и да добавяте нови панели в лентата Tracy, като използвате конфигурационния файл.
В конфигурацията можете да зададете параметрите на Tracy и да добавите нови панели в лентата Tracy. Тези параметри се прилагат само след създаването на контейнера DI, така че грешки, възникнали по-рано, не могат да бъдат отразени.

Конфигурация за регистриране на грешки:

```neon
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()`:

```neon
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:

```neon
tracy:
	# добавя барове към Tracy Bar
	bar:
		- Nette\Bridges\DITracy\ContainerPanel
		- IncludePanel
		- XDebugHelper('myIdeKey')
		- MyPanel(@MyService)

	# добавяне на панели към BlueScreen
	blueScreen:
		- DoctrinePanel::renderException
```

Други опции:

```neon
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 .[#toc-di-services]
--------------------------------

Тези услуги се добавят към контейнера DI:

| Име | Тип | Описание
|----------------------------------------------------------
| `tracy.logger` | [api:Tracy\ILogger] | logger
| `tracy.blueScreen` | [api:Tracy\BlueScreen] | BlueScreen
| `tracy.bar` | [api:Tracy\Bar] | Tracy Bar

Конфигурация на Трейси

Следващите примери предполагат, че е дефиниран следният псевдоним на клас:

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