patrick-maynard/twig-stack-trace-dumper

A Twig extension that allows the user to get a stack trace from within a template

v1.0.12 2025-01-21 08:02 UTC

This package is auto-updated.

Last update: 2025-07-21 16:38:51 UTC


README

This Twig extension adds the trace() function to Twig.

It will output a string containing a stack trace.

I recommend only using it as a dev dependency. Using it in a production environment is probably not a good idea.

I created this tool for use in an environment where neither the Symfony toolbar nor XDebug was available.

Assuming you are able to use those better tools, I would urge you to do so.

Installation

To install this tool as a dev dependency:

composer require --dev patrick-maynard/twig-stack-trace-dumper

Configuration and usage

You'll then need to configure your app to have access to the extension.

Assuming you're using Symfony, you can do that using the instructions here: https://symfony.com/doc/current/templating/twig_extension.html#register-an-extension-as-a-service

Once that's done, you can use the new function in Twig files like this:

{{ trace()|raw }}

UPDATE: As of 2025, the Symfony documentation is pretty flippant about what you need to do to register your extension, essentially saying that it will be registered via magic. This is not always reliable, so you may or may not need to add something like the following to your services.yaml file:

    PatrickMaynard\TwigExtensions\Trace\StackTraceDumperExtension:
        tags: ['twig.extension']

If you want a little more detail than {{ trace()|raw }} provides, you could also try using {{ trace_via_debug_backtrace()|raw }} to get different formatting and some extra information. I have only done a smoke test on this. If you get a chance to write an integration test for this function, please open a pull request. Thank you.

Happy debugging!