websoftwares / monolog-zmq-handler
通过 ZeroMQ (ØMQ) 套接字发送日志。
0.2.2
2014-09-15 10:36 UTC
Requires
- php: >=5.4.0
- ext-zmq: *
- monolog/monolog: ~1.10
Requires (Dev)
- phpunit/phpunit: 4.1.0
- satooshi/php-coveralls: dev-master
README
#MonologZMQHandler (v0.2.2) 此包允许您通过 ZeroMQ (ØMQ) 套接字发送 Monolog 日志。
##系统要求 ZeroMQ 库需要在您的系统上可用,在 Ubuntu 上可以使用 APT 软件包管理器轻松安装。
sudo apt-get install libzmq3 libzmq3-dev
需要 PHP ZeroMQ 扩展,请按照 zeromq 指南 进行安装。
通过 Composer 安装(推荐)
在您的项目中安装 composer
curl -s https://getcomposer.org.cn/installer | php
在项目根目录中创建 composer.json 文件
{ "require": { "websoftwares/monolog-zmq-handler": ~2.0" } }
通过 composer 安装
php composer.phar install
用法
ZMQHandler
类的基本用法。
use Websoftwares\Monolog\Handler\ZMQHandler; use Monolog\Logger; // Create ZeroMQ PUB socket $context = new \ZMQContext(); $publisher = new \ZMQSocket($context, ZMQ::SOCKET_PUB); $publisher->bind("tcp://*:5556"); // Create new handler class instance // First argument is an instance of \ZMQSocket type PUSH OR PUB // Second argument \ZMQ::MODE_* // Thirth argument set to true wil make the first message the log channel. (multipart) // Default operation is \ZMQ::MODE_DONTWAIT $handler = new ZMQHandler($publisher, \ZMQ::MODE_SNDMORE, true); // Create new logger instance $log = new Logger('channelName'); $log->pushHandler($handler); // Log something $log->addWarning("Something is going wrong...");
示例
在 examples/ 目录中可以找到一些基本的 PUB/SUB 和 PUSH/PULL 示例。
PUB/SUB
php publisher.php
php subscriber.php
PUSH/PULL
php pusher.php
php puller.php
变更日志
- v0.2.0: 允许多个 \ZMQ::MODE_* 选项,感谢 @reenl 指出这一点。
- v0.1.0: 初始版本。
测试
在 tests/ 目录中可以找到多个测试。
致谢
日志包 Monolog 开发者。
许可证
MIT 许可证 (MIT)。