Tracy konfigurációja

Minden példa feltételezi a következő alias létrehozását:

use Tracy\Debugger;

Hibanaplózás

$logger = Debugger::getLogger();

// e-mail cím(ek), amely(ek)re értesítést küldünk hiba esetén
$logger->email = 'dev@example.com';      // (string|string[]) alapértelmezett: nincs beállítva

// az e-mail feladója
$logger->fromEmail = 'me@example.com';   // (string) alapértelmezett: nincs beállítva

// az e-mail küldését biztosító rutin
$logger->mailer = /* ... */;             // (callable) alapértelmezett: küldés a mail() függvénnyel

// mennyi a legrövidebb idő a következő e-mail küldése előtt?
$logger->emailSnooze = /* ... */;        // (string) alapértelmezett: '2 days'

// mely hibaszintek esetén naplózódik a BlueScreen is?
Debugger::$logSeverity = E_WARNING | E_NOTICE;  // alapértelmezett: 0 (nincs hibaszint)

A dump() viselkedése

// a string maximális hossza
Debugger::$maxLength = 150;              // (int) alapértelmezett a Tracy verziója szerint

// maximális beágyazási mélység
Debugger::$maxDepth = 10;                // (int) alapértelmezett a Tracy verziója szerint

// ezen kulcsok értékeinek elrejtése (Tracy 2.8-tól)
Debugger::$keysToHide = ['password', /* ... */];  // (string[]) alapértelmezett: []

// vizuális téma (Tracy 2.8-tól)
Debugger::$dumpTheme = 'dark';           // (light|dark) alapértelmezett: 'light'

// megjelenítse a helyet, ahol a dump() függvényt hívták?
Debugger::$showLocation = /* ... */;     // (bool) alapértelmezett a Tracy verziója szerint

Egyéb

// fejlesztői módban a notice vagy warning típusú hibákat BlueScreenként jeleníti meg
Debugger::$strictMode = /* ... */;       // (bool|int) alapértelmezett: false, lehetőség van csak néhány hibaszint kiválasztására (pl. E_USER_DEPRECATED | E_DEPRECATED)

// megjelenítse az elnémított (@) hibaüzeneteket?
Debugger::$scream = /* ... */;           // (bool|int) alapértelmezett: false, a 2.9-es verziótól lehetőség van csak néhány hibaszint kiválasztására (pl. E_USER_DEPRECATED | E_DEPRECATED)

// a szerkesztőben való megnyitáshoz használt link formátuma
Debugger::$editor = /* ... */;           // (string|null) alapértelmezett: 'editor://open/?file=%file&line=%line'

// az egyéni 500-as hibaoldal sablonjának elérési útja
Debugger::$errorTemplate = /* ... */;    // (string) alapértelmezett: nincs beállítva

// megjelenítse a Tracy Bart?
Debugger::$showBar = /* ... */;          // (bool) alapértelmezett: true

Debugger::$editorMapping = [
	// eredeti => új
	'/var/www/html' => '/data/web',
	'/home/web' => '/srv/html',
];

Nette Framework

Ha a Nette Frameworköt használja, a Tracy-t konfigurálhatja és új paneleket adhat hozzá a Tracy Barhoz a konfigurációs fájl segítségével is. A konfigurációban beállíthatók a paraméterek, és új panelek is hozzáadhatók a Tracy Barhoz. Ezek a beállítások csak a DI konténer létrehozása után lépnek érvénybe, így a korábban keletkezett hibák nem tükrözhetik őket.

Hibanaplózás konfigurációja:

tracy:
	# e-mail cím(ek), amely(ek)re értesítést küldünk hiba esetén
	email: dev@example.com           # (string|string[]) alapértelmezett: nincs beállítva

	# az e-mail feladója
	fromEmail: robot@example.com     # (string) alapértelmezett: nincs beállítva

	# az e-mailek küldésének halasztási ideje (Tracy 2.8.8-tól)
	emailSnooze: ...                 # (string) alapértelmezett: '2 days'

	# használja a Nette mailert az e-mailek küldéséhez? (Tracy 2.5-től)
	netteMailer: ...                 # (bool) alapértelmezett: true

	# mely hibaszintek esetén naplózódik a BlueScreen is?
	logSeverity: [E_WARNING, E_NOTICE]  # alapértelmezett: []

A dump() függvény viselkedésének konfigurációja:

tracy:
	# a string maximális hossza
	maxLength: 150                # (int) alapértelmezett a Tracy verziója szerint

	# maximális beágyazási mélység
	maxDepth: 10                  # (int) alapértelmezett a Tracy verziója szerint

	# ezen kulcsok értékeinek elrejtése (Tracy 2.8-tól)
	keysToHide: [password, pass]  # (string[]) alapértelmezett: []

	# vizuális téma (Tracy 2.8-tól)
	dumpTheme: dark               # (light|dark) alapértelmezett: 'light'

	# megjelenítse a helyet, ahol a dump() függvényt hívták?
	showLocation: ...             # (bool) alapértelmezett a Tracy verziója szerint

Tracy kiterjesztések telepítése:

tracy:
	# paneleket ad hozzá a Tracy Barhoz
	bar:
		- Nette\Bridges\DITracy\ContainerPanel
		- IncludePanel
		- XDebugHelper('myIdeKey')
		- MyPanel(@MyService)

	# paneleket ad hozzá a BlueScreenhez
	blueScreen:
		- DoctrinePanel::renderException

Egyéb opciók:

tracy:
	# fejlesztői módban a notice vagy warning típusú hibákat BlueScreenként jeleníti meg
	strictMode: ...           # alapértelmezett: true

	# megjelenítse az elnémított (@) hibaüzeneteket?
	scream: ...               # alapértelmezett: false

	# a szerkesztőben való megnyitáshoz használt link formátuma
	editor: ...               # (string) alapértelmezett: 'editor://open/?file=%file&line=%line'

	# az egyéni 500-as hibaoldal sablonjának elérési útja
	errorTemplate: ...        # (string) alapértelmezett: nincs beállítva

	# megjelenítse a Tracy Bart?
	showBar: ...              # (bool) alapértelmezett: true

	editorMapping:
		# eredeti: új
		/var/www/html: /data/web
		/home/web: /srv/html

A logSeverity, strictMode és scream opciók értékei hibaszintek tömbjeként (pl. [E_WARNING, E_NOTICE]) vagy a PHP nyelvben használt kifejezésként (pl. E_ALL & ~E_NOTICE) is megadhatók.

DI Szolgáltatások

Ezek a szolgáltatások kerülnek hozzáadásra a DI konténerhez:

Név Típus Leírás
tracy.logger Tracy\ILogger logger
tracy.blueScreen Tracy\BlueScreen BlueScreen
tracy.bar Tracy\Bar Tracy Bar