SymfonyWorld 2022 Summer Edition
100% Online
+20 talks and workshops
Starts in 19 days

How to Define a Custom Logging Formatter

Edit this page

Warning: You are browsing the documentation for Symfony 5.0, which is no longer maintained.

Read the updated version of this page for Symfony 6.1 (the current stable version).

How to Define a Custom Logging Formatter

Each logging handler uses a Formatter to format the record before logging it. All Monolog handlers use an instance of Monolog\Formatter\LineFormatter by default but you can replace it. Your formatter must implement Monolog\Formatter\FormatterInterface.

For example, to use the built-in JsonFormatter, register it as a service then configure your handler to use it:

  • YAML
  • XML
  • PHP
1
2
3
4
5
6
7
# config/packages/prod/monolog.yaml (and/or config/packages/dev/monolog.yaml)
monolog:
    handlers:
        file:
            type: stream
            level: debug
            formatter: 'monolog.formatter.json'
This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.