Configuração de Tracy

Os exemplos a seguir assumem que a seguinte classe está definida:

use Tracy\Debugger;

Registro de erros

$logger = Debugger::getLogger();

// se tiver ocorrido erro, a notificação é enviada para este e-mail
$logger->email = 'dev@example.com'; // (string|string[]) não é definido por padrão

// remetente de e-mail
$logger->fromEmail = 'me@example.com'; // (string) default to unset

// rotina para envio de e-mail
$logger->mailer = /* ... */; // (chamável) padrão de envio por correio()

// depois de que tempo mais curto para enviar outro e-mail?
$logger->emailSnooze = /* ... */; // (string) padrão é '2 dias'.

// para quais níveis de erro o BlueScreen também está logado?
Debugger::$logSeverity = E_WARNING | E_NOTICE; // o padrão é 0 (sem nível de erro)

dump() Comportamento

// comprimento máximo do fio
Debugger::$maxLength = 150; // (int) padrão de acordo com Tracy

// que profundidade irá listar
Debugger::$maxDepth = 10; // (int) padrão de acordo com Tracy

// ocultar valores destas chaves (desde Tracy 2.8)
Debugger::$keysToHide = ['password', /* ... */]; // (string[]) padrão para []

// tema visual (desde Tracy 2.8)
Debugger::$dumpTheme = 'escuro'; // (claro|escuro) tem como padrão 'luz'.

// mostra o local onde dump() foi chamado?
Debugger::$showLocation = /* ... */; // (bool) padrão de acordo com Tracy

Outros

// no modo Desenvolvimento, você verá avisos ou avisos de erro como BlueScreen
Debugger::$strictMode = /* ... */; // (bool|int) por padrão, você pode selecionar apenas níveis de erro específicos (por exemplo, E_USER_DEPRECATED | E_DEPRECATED)

// exibe mensagens de erro silenciosas (@)
Debugger::$scream = /* ... */; // (bool|int) por padrão a falso, desde a versão 2.9 é possível selecionar apenas níveis de erro específicos (por exemplo E_USER_DEPRECATED | E_DEPRECATED)

// formato do link para abrir no editor
Debugger::$editor = /* ... */; // (string|null) padrão de 'editor://open/?file=%file&line=%line'

// caminho para o modelo com página personalizada para erro 500
Debugger::$errorTemplate = /* ... */; // (string) default to unset

// mostra Tracy Bar?
Debugger::$showBar = /* ... */; // (bool) por omissão

Debugger::$editorMapping = [
	// original => new
	'/var/www/html' => '/data/web',
	'/home/web' => '/srv/html',
];

Estrutura da Nette

Se você estiver usando o Nette Framework, você também pode configurar o Tracy e adicionar novos painéis à Barra Tracy usando o arquivo de configuração. Você pode definir os parâmetros Tracy na configuração e também adicionar novos painéis à Tracy Bar. Estas configurações são aplicadas somente após o recipiente DI ter sido criado, de modo que erros que ocorreram anteriormente não podem refleti-los.

Configuração de registro de erros:

tracy:
	# Se tiver ocorrido erro, a notificação é enviada para este e-mail
	email: dev@example.com           # (string|string[]) não é definido por padrão

	# remetente de e-mail
	fromEmail: robot@example.com     # (string) defaults to unset

	# período de adiamento do envio de e-mails (desde Tracy 2.8.8)
	emailSnooze: ...                 # (string) padrão para '2 dias'.

	# para usar um mailer definido na configuração? (desde Tracy 2.5)
	netteMailer: ...                 # (bool) padrão a verdadeiro

	# para quais níveis de erro o BlueScreen também está logado?
	logSeverity: [E_WARNING, E_NOTICE] # padrão de []

Configuração para a função dump():

tracy:
	# comprimento máximo do fio
	maxLength: 150               # (int) padrão de acordo com Tracy

	# quão profundo será listado
	maxDepth: 10                 # (int) padrão de acordo com Tracy

	# ocultar valores destas chaves (desde Tracy 2.8)
	keysToHide: [senha, passe]   # (string[]) padrão para []

	# tema visual (desde Tracy 2.8)
	dumpTheme: dark              # (claro|escuro) por padrão de 'luz'.

	# mostra o local onde dump() foi chamado?
	showLocation: ...            # (bool) padrão de acordo com Tracy

Para instalar a extensão Tracy:

tracy:
	# anexa barras ao Tracy Bar
	bar:
		- Nette\Bridges\DITracy\ContainerPanel
		- IncludePanel
		- XDebugHelper('myIdeKey')
		- MyPanel(@MyService)

	# anexar painéis à BlueScreen
	blueScreen:
		- DoctrinePanel::renderException

Outras opções:

tracy:
	# no modo Desenvolvimento, você verá avisos ou avisos de erro como BlueScreen
	strictMode: ...           # defaults to true

	# exibe mensagens de erro silenciosas (@)
	scream: ...               # ... Falso

	# formato do link para abrir no editor
	editor: ...               # (string) padrão para 'editor://open/?file=%file&line=%line'.

	# caminho para o modelo com página personalizada para erro 500
	errorTemplate: ...        # (string) defaults to unset

	# mostra Tracy Bar?
	showBar: ...              # (bool) por omissão

	editorMapping:
		# original: new
		/var/www/html: /data/web
		/home/web: /srv/html

Os valores das opções logSeverity, strictMode e scream podem ser escritos como uma matriz de níveis de erro (por exemplo [E_WARNING, E_NOTICE]) ou como uma expressão usada em PHP (p. ex. E_ALL & ~E_NOTICE).

Serviços DI

Esses serviços são adicionados ao contêiner DI:

Nome Tipo Descrição
tracy.logger Tracy\ILogger logger
tracy.blueScreen Tracy\BlueScreen BlueScreen
tracy.bar Tracy\Bar Tracy Bar