Tracyの設定
すべての例は、エイリアスが作成されていることを前提としています:
use Tracy\Debugger;
エラーロギング
$logger = Debugger::getLogger();
// エラー発生時に通知が送信されるEメールアドレス
$logger->email = 'dev@example.com'; // (string|string[]) デフォルトは未設定
// Eメールの送信者
$logger->fromEmail = 'me@example.com'; // (string) デフォルトは未設定
// Eメール送信を保証するルーチン
$logger->mailer = /* ... */; // (callable) デフォルトは mail() 関数による送信
// 次のEメールを送信するまでの最短時間は?
$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メールアドレス
email: dev@example.com # (string|string[]) デフォルトは未設定
# Eメールの送信者
fromEmail: robot@example.com # (string) デフォルトは未設定
# Eメール送信の遅延時間 (Tracy 2.8.8以降)
emailSnooze: ... # (string) デフォルトは '2 days'
# Eメール送信にNetteメーラーを使用しますか? (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 |