Symfony3 поправка к соглашению регистратора

Добро пожаловать,

Моя задача состоит в том, чтобы изменить соглашение регистраторов в приложении. В настоящее время регистраторы настроены как выделенные сервисы. Я хотел бы определить регистраторы в соглашении Symfony и обеспечить обратную совместимость путем определения DI, направляющего старые имена сервисов регистратора на новые в соглашении monolog.logger.channel. У меня регистраторы в Symfony делают вещи в первый раз, или кто-нибудь может дать мне пример того, как это сделать? Заранее благодарю и приветствую вас ниже с моей текущей конфигурацией:

приложение / Config/config_dev.yml:

monolog:
    handlers:
        main:
            type:   stream
            path:   "%kernel.logs_dir%/%kernel.environment%.log"
            level:  debug
            channels: ['!my_channel']
        my_handler:
            type:     stream
            path:     "%kernel.logs_dir%/%kernel.environment%.my_handler.log"
            level:    debug
            channels: ['my_channel']
        console:
            type:   console
            bubble: false

приложение / Config/config_prod.yml:

monolog:
    handlers:
        main:
            type:         fingers_crossed
            action_level: error
            handler:      nested
            channels: ['!my_channel']
        nested:
            type:  stream
            path:  "%kernel.logs_dir%/%kernel.environment%.log"
            level: debug
        console:
            type:  console
        my_channel:
            type:         fingers_crossed
            action_level: error
            handler:      my_channel_stream
        my_channel_stream:
            type:     stream
            path:     "%kernel.logs_dir%/%kernel.environment%.my_channel.log"
            level:    debug
            channels: ['my_channel']

ЦСИ / пакет / Ресурсы / конфигурации /logger.yml:

services:
  logger:
    class: Symfony\Bridge\Monolog\Logger
    arguments: [logger]
    calls:
      - [pushHandler, ['@monolog.handler.console']]
      - [pushHandler, ['@logger_handler']]

  logger_handler:
    class: Monolog\Handler\StreamHandler
    arguments: ["%kernel.logs_dir%/%kernel.environment%.cof.log", 200]

ЦСИ / пакет / Ресурсы / конфигурации /config.yml:

monolog:
    channels: ['my_channel']

0 ответов

Другие вопросы по тегам