0

通过更改/Cake/Log/Engine/Filelog.php的写入功能,我可以更改“error.log”和“debug.log”文件名。

有没有办法在不破解 CakePHP 2 核心文件的情况下更改这些文件名。

4

5 回答 5

2

从 CakePHP 2.4.0 开始,添加了此功能:http: //bakery.cakephp.org/articles/markstory/2013/08/30/cakephp_2_4_0_is_ready

FileLogs 现在可以配置最大大小和简单的旋转。

Filelog类具有文件大小限制和要旋转的文件数。

于 2013-09-12T19:39:52.343 回答
1

在您上面的评论中,您说您想要更改这些日志文件的名称的原因是因为有问题的文件没有大小限制。问题是:如果你有一个 2MB 大小的错误日志,那么你显然有更大的鱼要炸。据我所知,如果不破解内核,就无法更改这些文件名。如果您真的担心这两个日志文件的大小,那么您可以设置一个 cronjob 每 24 小时检查这两个文件的大小。如果日志文件大小大于您设置的预定限制,您可以向自己发送警报电子邮件。老实说:最好的方法是事先对您的应用程序进行广泛的测试,以便这两个文件中的任何条目都成为一个惊喜而不是例行公事。

于 2012-12-23T22:23:54.210 回答
0

没有内置配置可以得到你想要的。但是您可以轻松地制作扩展FileLog和覆盖相关函数并使用它的自定义记录器类。

于 2012-12-25T12:31:02.230 回答
0

在 cake 3 中,您可以在 /config/app.php 中轻松设置旋转配置

'Log' => [
     'error' => [
          'className' => 'Cake\Log\Engine\FileLog',
          'rotate'=>2,
           //other config
于 2018-06-16T11:52:57.483 回答
0

在 CakePHP 2 中,您可以在 /app/config/bootstrap.php 中更改相同的配置:

CakeLog::config('debug', array(
    'engine' => 'File',
    'types' => array('notice', 'info', 'debug'),
    'file' => 'debug',
));
CakeLog::config('error', array(
    'engine' => 'File',`enter code here`
    'types' => array('warning', 'error', 'critical', 'alert', 'emergency'),
    'file' => 'error',
));
于 2018-07-20T05:43:23.007 回答