【问题标题】:Cakelog is writing to multiple files, but I want it to write to only the one I specifyCakelog 正在写入多个文件,但我希望它只写入我指定的文件
【发布时间】:2012-08-27 21:49:09
【问题描述】:

我想在payment.log 中记录支付网关错误。所以把这个添加到bootstrap:

CakeLog::config('payment', array(
    'engine' => 'FileLog',
    'file' => 'payment',
));

当出现问题时:

CakeLog::write('payment', 'The is a problem!');

但是,上面的命令将在payment.logerror.log 中记录This is a problem!,而登录到第一个文件就足够了。

此外,如果其他控制器(如users)发生任何其他问题,它将登录到这两个文件。虽然它应该只登录error.log

(我的意思是付款错误应该登录payment.log,任何其他问题应该写入error.log

哪里出错了?

谢谢。

【问题讨论】:

    标签: cakephp logging cakephp-2.2


    【解决方案1】:

    您似乎缺少config 中的范围选项?

    CakeLog::config('payments', array(
        'engine' => 'File',
        'scopes' => array('payment', 'order')
    ));
    

    然后你需要指定你要写入的范围:

    CakeLog::write('warning', 'Stuff is broken here', 'payment');
    

    可能需要一些小技巧才能让它恰到好处,但这应该会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多