如何使用Laravel和Monolog创建旋转日志文件

时间:2015-02-04 07:02:13

标签: php laravel-4 monolog

我试图使用Monolog在Laravel中创建我自己的旋转日志文件,但是,文件轮换不起作用,我不知道原因。

我创建了一个每天运行一次的工匠命令,并记录它的活动记录。我希望在2天后删除此文件的旧版本。换句话说,只有今天运行的日志以及昨天的运行应该存在。

在我的工匠命令开始时,我有以下代码:

$log = new Logger('MyCustomLog');
$log->pushHandler(new RotatingFileHandler(storage_path().'/logs/mycustomlog.log'), 2);

然后,在整个命令中,我将信息记录到它:

$log->addInfo('Info to log');

对我来说这似乎很简单,但它根本不起作用。正确生成日志文件,但永远不会删除它们。我在app/storage/logs文件夹中看到以下内容:

mycustomlog-2015-01-30.log
mycustomlog-2015-01-31.log
mycustomlog-2015-02-01.log
mycustomlog-2015-02-02.log
mycustomlog-2015-02-03.log

我希望只能看到最后两个文件。我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

你的一个支架确实有点不合适。您必须将日志文件的数量传递给RotatingFileHandler的构造函数,而不是pushHandler()的第二个参数:

$log->pushHandler(new RotatingFileHandler(storage_path().'/logs/mycustomlog.log', 2));
//                                                                                ^
相关问题