sensorario / yaphlo
此包最新版本(v1.0.6)没有可用的许可证信息。
又一个 PHP 日志记录器
v1.0.6
2022-01-02 02:33 UTC
Requires
- phpstan/phpstan: ^1.2
Requires (Dev)
- phpunit/phpunit: ^9.5
README
又一个 PHP 日志记录器
使用类配置的示例
<?php require __DIR__ . '/../vendor/autoload.php'; use Sensorario\Yaphlo\Logger; use Sensorario\Yaphlo\Message; use Sensorario\Yaphlo\Writer; use Sensorario\Yaphlo\WriterAdapter; use Sensorario\Yaphlo\Config; use Sensorario\Yaphlo\ArrayConfig; use Sensorario\Yaphlo\CustomConfig; $logger = new Logger( new Message, new Writer( new CustomConfig( Message::LEVEL_INFO, ['channel A'], ), new WriterAdapter( __DIR__ . '/logger.log', ) ) ); $logger->info(['write' => 'this']); $logger->error(['write' => 'this']); $logger->info(['write' => 'this'], 'channel A'); $logger->info(['write' => 'this'], 'channel B');
使用数组配置的示例
我更喜欢这种方式,因为配置可以放入配置文件中,等等。
<?php require __DIR__ . '/../vendor/autoload.php'; use Sensorario\Yaphlo\Logger; use Sensorario\Yaphlo\Message; use Sensorario\Yaphlo\Writer; use Sensorario\Yaphlo\WriterAdapter; $config = [ 'logger' => [ 'level' => 'INFO', 'enabledChannels' => [ 'channel A', ], ], ]; $logger = new Logger( new Message, new Writer( new ArrayConfig($config), new WriterAdapter( __DIR__ . '/logger.log', ) ) ); $logger->info(['write' => 'this']); $logger->error(['write' => 'this'], 'channel A');
这两个脚本将在日志中写入什么,...
[2021-12-13 00:21:08] [INFO] [channel A] {
[2021-12-13 00:21:08] [INFO] [channel A] "write": "this"
[2021-12-13 00:21:08] [INFO] [channel A] }