有没有办法在使用EasyNetQ.Hosepipe时指定不同的错误队列?

时间:2015-02-26 09:30:03

标签: c# .net rabbitmq message-queue easynetq

我最近发布了以下问题......

Custom Error Queue Name when using EasyNetQ for RabbitMQ?

...并且在使用EasyNetQ时提供了如何使用不同的,特定于应用程序的错误队列名称的解决方案,而不是让所有未处理的异常进入默认错误队列(EasyNetQ_Default_Error_Queue)。

我现在想要的是能够使用EasyNetQ.Hosepipe.exe从我指定的任何错误队列中转储所有错误消息,作为执行以下操作时的默认行为,根据文档...

EasyNetQ.Hosepipe.exe err s:localhost o:C:\temp\messages

...是将EasyNetQ_Default_Error_Queue中的任何消息转储到一个文件夹中,在我的情况下,这个默认错误队列现在总是为空。

以前,当使用默认错误队列时,我可以使用上面的软管错误方法,然后使用软管重试......

EasyNetQ.Hosepipe.exe retry s:localhost u:guest p:guest o:C:\temp\messages

...它会将所有转储的错误消息放回各自的队列中进行重新处理。

1 个答案:

答案 0 :(得分:2)

您是否尝试过指定q:参数?

EasyNetQ.Hosepipe.exe dump s:localhost u:guest p:guest q:my_queue o:C:\temp\messages

我还没有使用过软管,但这是来自软管项目中的usage.txt:

https://github.com/EasyNetQ/EasyNetQ/blob/master/Source/EasyNetQ.Hosepipe/Usage.txt

更新: HosePipe现在支持' q'用于从不使用标准命名约定的错误队列中读取的参数:

https://github.com/nvmlabs/EasyNetQ/commit/7945ff0f2c9d2e17088f109a542219fb5b11c3ab