Creative Commons License
This work is licensed under a
Creative Commons
Attribution-Share Alike 3.0
Unported License.

Master Symfony2 fundamentals

Be trained by SensioLabs experts (2 to 6 day sessions -- French or English).
trainings.sensiolabs.com

Symfony hosting done right

ServerGrove, outstanding support at the right price for your Symfony hosting needs.
servergrove.com

Discover the SensioLabs Support

Access to the SensioLabs Competency Center for an exclusive and tailor-made support on Symfony
sensiolabs.com

Monolog Configuration Reference

Monolog Configuration Reference

  • YAML
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    monolog:
        handlers:
    
            # Examples:
            syslog:
                type:                stream
                path:                /var/log/symfony.log
                level:               ERROR
                bubble:              false
                formatter:           my_formatter
                processors:
                    - some_callable
            main:
                type:                fingers_crossed
                action_level:        WARNING
                buffer_size:         30
                handler:             custom
            custom:
                type:                service
                id:                  my_handler
    
            # Default options and values for some "my_custom_handler"
            my_custom_handler:
                type:                 ~ # Required
                id:                   ~
                priority:             0
                level:                DEBUG
                bubble:               true
                path:                 "%kernel.logs_dir%/%kernel.environment%.log"
                ident:                false
                facility:             user
                max_files:            0
                action_level:         WARNING
                activation_strategy:  ~
                stop_buffering:       true
                buffer_size:          0
                handler:              ~
                members:              []
                channels:
                    type:     ~
                    elements: ~
                from_email:           ~
                to_email:             ~
                subject:              ~
                email_prototype:
                    id:                   ~ # Required (when the email_prototype is used)
                    method:               ~
                channels:
                    type:                 ~
                    elements:             []
                formatter:            ~
    
  • XML
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <container xmlns="http://symfony.com/schema/dic/services"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:monolog="http://symfony.com/schema/dic/monolog"
        xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
                            http://symfony.com/schema/dic/monolog http://symfony.com/schema/dic/monolog/monolog-1.0.xsd">
    
        <monolog:config>
            <monolog:handler
                name="syslog"
                type="stream"
                path="/var/log/symfony.log"
                level="error"
                bubble="false"
                formatter="my_formatter"
            />
            <monolog:handler
                name="main"
                type="fingers_crossed"
                action-level="warning"
                handler="custom"
            />
            <monolog:handler
                name="custom"
                type="service"
                id="my_handler"
            />
        </monolog:config>
    </container>
    

Note

When the profiler is enabled, a handler is added to store the logs' messages in the profiler. The profiler uses the name "debug" so it is reserved and cannot be used in the configuration.