> For the complete documentation index, see [llms.txt](https://docs.strata.dev/frontend/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.strata.dev/frontend/templating/debugging.md).

# Debugging

## Symfony debugger

On your local development environment you will see the Symfony debug bar which displays:

![Symfony debugger](/files/QbQqXYkIwyubWC1a2TcS)

* HTTP status code
* Matching route
* Page generation time and memory usage
* Twig template generation time

### Inspecting template variables

The controller defines the variables to pass onto the view. Example controller code:

```php
return $this->render('news/article.html.twig', [
    'url' => sprintf('/news/%s', $slug),
    'page' => $page
]);
```

You can then inspect the variable via the `dump()` command.

When used in your template, this will output the variable directly to the page. E.g.

```
{{ dump(page) }}
```

![Inspecting a variable via debug (in a template)](/files/ewyJEg0KluW8SNmj2Zzb)

The above example shows the `page` object which represents, in this instance, a news post from WordPress.

The inspector shows the object types for each content field, you can find out more about these at [Content Fields](broken://pages/GpdqMd6lTLgZKB1W6GMM).

### Inspecting variables in PHP

You can also use the `dump()` function in PHP, this will output the variable to the Symfony debugger inspector. E.g.

```
dump($page);
```

Select the inspector icon ![Inspector icon](/files/XJVp0iYq64AHYwEtNt0n) to inspect the variable.

![Inspecting a variable via debug (in PHP)](/files/0Ygg02kq1YLr5TiopOm7)

The example above also shows the debug bar with an error, additional information such as the error details can be accessed from here.
