PHP Monolog可以通过使用RotatingFileHandler来实现日志轮换。RotatingFileHandler可以按照指定的条件(如日志文件大小、日志文件数量等)来自动进行日志轮换。
以下是一个使用RotatingFileHandler实现日志轮换的示例代码:
use Monolog\Logger;use Monolog\Handler\RotatingFileHandler;// 创建一个Monolog实例$log = new Logger('name');// 创建一个RotatingFileHandler,设置日志文件路径和最大文件数量$handler = new RotatingFileHandler('path/to/logfile.log', 3);// 设置日志等级$handler->setLevel(Logger::DEBUG);// 添加handler到Monolog实例$log->pushHandler($handler);// 记录日志$log->info('This is a log message');在上面的示例中,我们创建了一个Monolog实例,并使用RotatingFileHandler设置了日志文件路径为’path/to/logfile.log’,最大文件数量为3。当日志文件大小达到一定阈值时,RotatingFileHandler会自动将日志写入到下一个文件,并最终循环覆盖之前的文件。
通过使用RotatingFileHandler,可以很方便地实现日志轮换功能,保持日志文件的大小和数量在可控范围内。


