slam / zend-log-extensions

此软件包已被废弃,不再维护。作者建议使用slam/laminas-log-extensions软件包。

zendframework/zend-log的Slam扩展

v1.0.1 2018-01-08 16:00 UTC

This package is auto-updated.

Last update: 2020-01-02 14:30:58 UTC


README

仓库于2019-12-31被废弃

此仓库已迁移至Slamdunk/laminas-log-extensions

Slam Zend\Log 扩展

Build Status Code Coverage Packagist

针对Zend\Log的扩展

安装

执行

composer require slam/zend-log-extensions

使用方法

此软件包的主要功能是RotateStream写入器。PHP无法处理大于2GB的文件,因此如果您记录了大量日志,当达到此限制时可能会丢失一些。

Slam\Zend\Log\Writer\RotateStream在达到约1.5GB时进行写入轮转。

use Slam\Zend\Log\Writer\RotateStream;
use Zend\Log\Formatter\Simple;
use Zend\Log\Logger;

$writer = new RotateStream(__DIR__ . '/log.txt');
$writer->setFormatter(new Simple());

// Do the check everytime, defaults to once every 100000 log entries
$writer->setCheckProbability(1);
// 10 bytes max file size, defaults to ~1.5 GB
$writer->setMaxFileSize(10);

$logger = new Logger();
$logger->addWriter($writer);

for ($i = 0; $i < 10; ++$i) {
    $logger->info($i);
    sleep(1);
}

您将在目录中找到以下内容

$ ls log.txt*
log.txt  log.txt.1  log.txt.2  log.txt.3  log.txt.4  log.txt.5  log.txt.6  log.txt.7  log.txt.8  log.txt.9

$ cat log.txt.9
2017-09-05T11:08:46+02:00 INFO (6): 8
2017-09-05T11:08:47+02:00 NOTICE (5): LOG ROTATE

$ cat log.txt
2017-09-05T11:08:47+02:00 INFO (6): 9