nikolaposa/monolog-factory
最新稳定版本:3.1.1
Composer 安装命令:
composer require nikolaposa/monolog-factory
包简介
Configuration-based Monolog factory
README 文档
README
Monolog Factory that allows configuration-based creation of Logger objects.
In addition to the generic factory, this package features one to be used with PSR-11 dependency injection containers.
Installation
The preferred method of installation is via Composer. Run the following command to install
the latest version of a package and add it to your project's composer.json:
composer require nikolaposa/monolog-factory
Usage
Generic factory
use Monolog\Formatter\HtmlFormatter; use Monolog\Handler\NativeMailerHandler; use Monolog\Logger; use Monolog\Processor\PsrLogMessageProcessor; use MonologFactory\LoggerFactory; $loggerFactory = new LoggerFactory(); $logger = $loggerFactory->create('my_logger', [ 'handlers' => [ [ 'name' => NativeMailerHandler::class, 'params' => [ 'to' => 'test@example.com', 'subject' => 'Test', 'from' => 'noreply@example.com', 'level' => Logger::ALERT, ], 'formatter' => [ 'name' => HtmlFormatter::class, ], ], ], 'processors' => [ [ 'name' => PsrLogMessageProcessor::class, ], ], ]);
DI container factory configuration
use Monolog\Formatter\HtmlFormatter; use Monolog\Handler\BufferHandler; use Monolog\Handler\NativeMailerHandler; use Monolog\Logger; use Monolog\Processor\PsrLogMessageProcessor; use MonologFactory\DiContainerLoggerFactory; return [ 'logger' => [ 'logger1' => [ 'name' => 'logger1', 'handlers' => [ [ 'name' => NativeMailerHandler::class, 'params' => [ 'to' => 'test@example.com', 'subject' => 'Test', 'from' => 'noreply@example.com', 'level' => Logger::ALERT, ], 'formatter' => [ 'name' => HtmlFormatter::class, ], ], ], 'processors' => [ [ 'name' => PsrLogMessageProcessor::class, ], ], ], 'logger2' => [ 'name' => 'logger2', 'handlers' => [ [ 'name' => BufferHandler::class, 'params' => [ 'handler' => [ '__class__' => NativeMailerHandler::class, 'to' => 'test@example.com', 'subject' => 'Test', 'from' => 'noreply@example.com', ], 'buffer_limit' => 5, ], 'processors' => [ [ 'name' => MemoryUsageProcessor::class, ], ], ], ], 'processors' => [ [ 'name' => PsrLogMessageProcessor::class, ], ], ], ], 'di' => [ 'factories' => [ 'Logger1' => new DiContainerLoggerFactory('logger1'), //... or more preferred/optimal way: 'Logger2' => [DiContainerLoggerFactory::class, 'logger2'], ], ], ];
See more examples.
Credits
License
Released under MIT License - see the License File for details.
统计信息
- 总下载量: 211.07k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 25
- 点击次数: 1
- 依赖项目数: 4
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-06-11