问题 symfony中有多个日志文件


我想在symfony中设置一个额外的日志文件,这样一些消息(在我的情况下是支付处理)将转到与symfony其余部分不同的文件。可能吗?

这是我当前的日志配置 factories.yml

all:
  logger:
    param:
      level: debug
      loggers:
        sf_file_debug:
          param:
            level: notice
            file: /var/log/symfony/%SF_ENVIRONMENT%/%SF_APP%.log

4336
2017-12-18 15:48


起源



答案:


daviweb的解决方案会将消息记录到两个日志文件中,

可以使用代码创建新的单独记录器:

$logPath = sfConfig::get('sf_log_dir').'/your-custom.log';
$custom_logger = new sfFileLogger(new sfEventDispatcher(), array('file' => $logPath));

$custom_logger->info("My log message!");

11
2018-06-18 09:18



这里重要的是创建一个新的Envent调度程序实例。如果您引用控制器的默认事件调度程序,则所有日志都将转到您的自定义日志文件。 - Dziamid


答案:


daviweb的解决方案会将消息记录到两个日志文件中,

可以使用代码创建新的单独记录器:

$logPath = sfConfig::get('sf_log_dir').'/your-custom.log';
$custom_logger = new sfFileLogger(new sfEventDispatcher(), array('file' => $logPath));

$custom_logger->info("My log message!");

11
2018-06-18 09:18



这里重要的是创建一个新的Envent调度程序实例。如果您引用控制器的默认事件调度程序,则所有日志都将转到您的自定义日志文件。 - Dziamid


all:
  logger:
    class:   sfAggregateLogger
    param:
      level:   debug
      loggers:
        sf_file_debug:
          class: sfFileLogger
          param:
            level: debug
            file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log
        sf_file_debug_additional:
          class: sfFileLogger
          param:
            level: debug
            file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%_additional.log

1
2018-01-27 11:45





检查插件: sfAdvancedLoggerPlugin。你可以用它做很多日志记录。

sfAdvancedLogger允许PHP错误等高级日志记录功能   记录,电子邮件警报和条件记录


0
2017-12-25 23:54