cboden/binky

一个用于监视RabbitMQ交换的简单命令行实用程序

v0.3 2019-12-13 16:29 UTC

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时,它会跳到空中,经常扭曲和摆动它的脚和头。

它们是奇怪的生物...