I wanted to check if there are any potential adverse effects of using custom arguments in a queue declaration. Specifically I am looking at adding three arguments to our queues:

x-monitor: bit
x-monitor-warn: int
x-monitor-critical: int

I've tested this on a non-production box and didn't notice any adverse effects but wanted to make sure I wasn't missing something. Will this do anything bad under-the-covers in Rabbit?

I did notice that the values show up in the Parameters section in the Management plugin Web UI in an less than ideal fashion.

Also, Is there a way to update arguments without deleting/redefining the queue? I'm looking at how to best update our non-auto-delete queue definitions if we move forward on this.

Regards,

Gavin


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110415/2b117a95/attachment.htm>

Search Discussions

  • Simon MacMullen at Apr 15, 2011 at 3:45 pm

    On 15/04/11 15:44, Gavin M. Roy wrote:
    I wanted to check if there are any potential adverse effects of using
    custom arguments in a queue declaration. Specifically I am looking at
    adding three arguments to our queues:

    x-monitor: bit
    x-monitor-warn: int
    x-monitor-critical: int

    I've tested this on a non-production box and didn't notice any adverse
    effects but wanted to make sure I wasn't missing something. Will this do
    anything bad under-the-covers in Rabbit?
    No. Arguments that are not recognised are ignored.

    For the record, unrecognised arguments do not count towards exchange
    equivalence, so if you issue two otherwise identical queue.declares with
    arguments:

    x-monitor: true

    and

    x-monitor: false

    then the second will go through and return the first queue, whereas if
    you do the same thing with arguments:

    x-expires: 1000

    and

    x-expires: 2000

    then the second queue.declare will fail.

    Of course, you may not care about this.
    I did notice that the values show up in the Parameters section in the
    Management plugin Web UI in an less than ideal fashion.
    What don't you like about it? :) It does wrap a bit much in the listings
    I suppose.
    Also, Is there a way to update arguments without deleting/redefining the
    queue?
    No, afraid not.

    Cheers, Simon

    --
    Simon MacMullen
    Staff Engineer, RabbitMQ
    SpringSource, a division of VMware
  • Gavin M. Roy at Apr 15, 2011 at 3:51 pm

    On Friday, April 15, 2011 at 11:45 AM, Simon MacMullen wrote:
    On 15/04/11 15:44, Gavin M. Roy wrote:

    No. Arguments that are not recognised are ignored. Great :)
    For the record, unrecognised arguments do not count towards exchange
    equivalence, so if you issue two otherwise identical queue.declares with
    arguments:

    Of course, you may not care about this.
    Good to note, shouldn't impact my use case.
    What don't you like about it? :) It does wrap a bit much in the listings
    I suppose.
    Is good on the queue detail page... Adds a bit of vertical overhead on one of our brokers with lots of queues on the /mgmt/#/queues page. Was going to just hide it with some CSS.
    Also, Is there a way to update arguments without deleting/redefining the
    queue?
    No, afraid not.
    Figured but it couldn't hurt to ask. Is there a simple way to hack that in, modifying internal data, that other than being bad practice, would otherwise not cause an issue (since they're ignored by broker?). Not asking for a feature, just a point in the right direction if it's not a terrible way to go about things.

    Thanks,

    Gavin
    -------------- next part --------------
    An HTML attachment was scrubbed...
    URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110415/421ccc34/attachment.htm>
  • Simon MacMullen at Apr 15, 2011 at 3:54 pm

    On 15/04/11 16:51, Gavin M. Roy wrote:
    On Friday, April 15, 2011 at 11:45 AM, Simon MacMullen wrote:
    What don't you like about it? :) It does wrap a bit much in the listings
    I suppose.
    Is good on the queue detail page... Adds a bit of vertical overhead on
    one of our brokers with lots of queues on the /mgmt/#/queues page. Was
    going to just hide it with some CSS.
    Hmm, maybe it could collapse some more.
    Also, Is there a way to update arguments without deleting/redefining the
    queue?
    No, afraid not.
    Figured but it couldn't hurt to ask. Is there a simple way to hack that
    in, modifying internal data, that other than being bad practice, would
    otherwise not cause an issue (since they're ignored by broker?). Not
    asking for a feature, just a point in the right direction if it's not a
    terrible way to go about things.
    I think you should be able to just change the Mnesia table directly.
    (Although I haven't tested that!) Look at rabbit_queue and
    rabbit_durable_queue (the first one contains all queues, the second only
    durable ones, you probably want to modify both).

    Cheers, Simon
    --
    Simon MacMullen
    Staff Engineer, RabbitMQ
    SpringSource, a division of VMware

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouprabbitmq-discuss @
categoriesrabbitmq
postedApr 15, '11 at 2:44p
activeApr 15, '11 at 3:54p
posts4
users2
websiterabbitmq.com
irc#rabbitmq

2 users in discussion

Simon MacMullen: 2 posts Gavin M. Roy: 2 posts

People

Translate

site design / logo © 2021 Grokbase