Debugování s "ddd" ještě jednodušeji

Společně s instalací nové verze Laravelu 6 přibyl i balíček Ignition, trackující chybová služba, která pomáhá při debugování chyb v aplikaci. Ta nově nabízí globální helper ddd, který staví na již klasické funkci dd (dump & die) a k tomu přidává vše, co Ignition poskytuje.

Mějme například uživatele, které si chceme "vydumpovat". Bežně bychom to udělali třeba takto:

$user = User::first();
dd($user);

Co když si ale poté uvědomíme, že chceme společně s tímto vydumpovat i celý request? Nebo uživatele či query dotaz, který tomu předcházel? Pak většinou dumpujeme část za částí, což může být občas zdlouhavé a otravující. Tento problém končí s možností využít helper ddd (dump & die & debug), který je přímo upraven na míru Laravelu. Pokud tedy zavoláme funkci:

ddd('dumping this one', $user);

Dostaneme tento výsledek: https://res.cloudinary.com/jaroslavklimcik/image/upload/v1571075692/ddd_1.png

Na jedné stránce tak získáme všechny informace, které potřebujeme. Svým způsobem je tak velmi podobný jako služba Bugsnag, nicméně funguje ihned bez potřeby dalšího nastavení a přímo v naší aplikaci. Služba navíc umožňuje celou chybovou stránku sdílet, takže je možné detailní popis chyby jednoduše přeposlat jinému programátorovi, který okamžitě získá všechny potřebné údaje pro debugování problému.

Jak celý helper ddd funguje a vypadá si můžete přímo prohlédnout na tomto oficiálním odkazu společnosti Flare, která za balíčkem stojí.