cboden / binky
一个用于监视RabbitMQ交换的简单命令行实用程序
Requires
- php: >=5.4.2
- bunny/bunny: ^0.2.2
- react/event-loop: ^0.4.0
- react/stream: ^0.4.3
- symfony/console: ^3.0
This package is auto-updated.
Last update: 2024-09-14 04:22:41 UTC
README
Binky是一个命令行应用程序,用于通过stdin和stdout发布或消费RabbitMQ交换
安装
composer global require cboden/binky
用法
binky --help
从主题或fanout交换消费所有消息
binky -b amq.topic
通过路由键error+warning从RabbitMQ的日志交换中消费所有错误和警告
binky -b amq.rabbitmq.log:error -b amq.rabbitmq.log:warning
从具有键"header"和值"value"的header交换中消费所有消息
binky -b amq.headers:header:value
从所有键/值属性都必须匹配的header交换中消费所有消息
binky -b "amq.headers:header1:value1&header2:value2"
从任何键/值属性都可以匹配的header交换中消费所有消息
binky -b "amq.headers:header1:value1|header2:value2"
从现有的队列中消费所有消息(不会重新入队)
binky -c "my-queue" -c "another-queue"
当文件被追加时,发布带有路由键的交换
tail -0f /var/log/nginx/error.log | binky -w amq.topic:errors.nginx
将文件的全部内容发布到交换,然后断开连接(消息以换行符分隔)
cat myScaffoldingFile | binky -w amq.topic:myKey
哎呀
如果您看到错误 Broken pipe or closed connection
,Binky在显示次优错误报告时难以连接到代理。如果您尝试在没有参数的情况下运行Binky,则默认的访客用户可能已被禁用或默认值不匹配;尝试再次使用一些认证
binky -u admin -p admin
为什么是Binky?
我在RabbitMQ上进行了大量的调试,以至于我使用的方法变得过于耗时。管理面板很繁琐,通过WebSocket进行消费很好,但浏览器控制台变得单调乏味,最后制作和编辑小脚本变得繁琐。
我决定在网上寻找一个二进制文件,但在搜索了20分钟后没有找到我想要的东西:一个简单的CLI脚本,可以将消息绑定到交换并从交换中消费消息,然后将它们写入STDOUT。
其次,我想尝试Bunny,这是C扩展和更受欢迎的php-amqplib的替代品,因为它提供了同步和异步实现,具有相同的接口。
一个小时的工作后,Binky诞生了。 Bunny非常出色!
什么是Binky?
兔子表达快乐的一种方式。当兔子binkies时,它会跳到空中,经常扭曲和摆动它的脚和头。
它们是奇怪的生物...