Mapování cest v Tracy – jak si ji nastavit pro větší pohodlí?

Tracy je výborně konfigurovatelná knihovna, a ve spojení s Nette to je znát ještě více. Pokud Tracy zachytí PHP chybu, vygeneruje známý výstup. Do tohoto místa to je určitě známá skutečnost pro všechny, kteří Tracy používají. Málo známé je však mapování cest.

Tracy Notice
Tracy Notice – Originál: https://files.nette.org/git/tracy/tracy-notice.png

Tracy vypíše v podstatě výborně zpracovaný stacktrace, kde jsou odkazy na jednotlivé soubory. Ve výchozím nastavení je využito protokolu editor://. O tom, jak vše nastavit psal Štěpán Svoboda už před 6 lety. Příliš se toho nezměnilo, i když, teď už to můžeme psát v NEONu.

V mém případě například takto, používám PhpStorm:

tracy:
  editor: 'phpstorm://open?file=%file&line=%line'

Co ale dělat v případě, že vše běží např. ve Vagrantu, a cesty k souborům jsou jiné? V Tracy je od verze 2.4 možné používat editorMapping – očekáváno je pole, pomocí kterého lze nahradit části cesty v proměnné %file% (vše pak zpracuje funkce strtr()).

U mě to vypadá např. takto:

tracy:
  editor: 'phpstorm://open?file=%file&line=%line'
  editorMapping:
    /var/www: '/www/vagrant/'

Měl jsem s tím trošku problémy, a musel jsem udělat drobnou úpravu, která čeká na merge. Kdo nechce čekat, tak stačí upravit composer.json:

"repositories": [
  {
    "type": "git",
    "url": "https://github.com/tomaskavalek/tracy"
  }
],

Díky tomuto je použití Tracy zcela geniální 🙂 Všechno funguje skvěle, pokud vše nechcípne na Fatalu, pak se použije výchozí nastavení Tracy – protokol editor:// a prázdné mapování.

  1. by _SPACER_
    Dub 11, 2020

    alert(tak ted podareno 😉 )

    Odpovědět
    • Tomáš
      Dub 13, 2020

      Zase nic! To musí být zklamání. 😀

      Odpovědět