It would be awesome if a RebusBus had some kind of diagnostics endpoint that could possibly be accessed at localhost/inputQueueName where information about available handlers etc could be accessed
Having thought a little bit about this, I think it's clear that HTTP stuff should never enter the Rebus core.
It could be nifty though, if MEF entered the core, allowing bundles to be picked up. This would allow for e.g. a HTTP diagnostics endpoint to be activated, allowing for interrogating an endpoint with a webbrowser.
Other stuff could be picked up as well :)
What kind of information do you imagine would be available to the plugin? I would be interested in implementing this functionality with MEF including a selfhosting http-server which would be able to supply whatever information would be available through the API offered by Rebus.
Off the top of my head cool functionality could be:
Or am I misunderstanding what the purpose of the plugins would be?
I've been thinking about exactly this for some time now, but have not had time to do anything about it. It would be very cool (and useful and improve transparency in production and ease operation) to have something like this.
A few random thoughts on features in no particular order, not thought through and possibly overreaching :)
I hope that wasn't too random.
Well.... start out by thinking of that one single feature that you would like the most when you're doing your work with Rebus ... there's an awfull lot being mentioned here! :)
One thing that sounded extremely interesting to be though, was if Rebus endpoints could do something like this:
which would cause the Rebus endpoint to e.g. use ZeroMQ UDP to make a central service aware of its existence, which in turn would cause that central service to start watching that Rebus endpoint, periodically asking it for statistics and stuff like that.
This would allow for creating a cool control panel where all of your Rebus services could be watched.
Just a thought :)
Some of the most relevant pieces of info would be:
errorQueueMessageCount > 0
Another thing I though about was stuff like a historized graph of input queue length, average message-time-in-queue, stuff like that, but these things are probably much better expressed with WIndows performance counters...
Yep, just wanted to unload some ideas to enable some focus :)
Such a facility that makes Rebus shout out about it's existence, do yout think it should be baked in or come in the form of MEF extensibility?
It would probably be best if the existing hooks and extensibility points could be used...
@ssboisen and @mookid8000 are you showing up for the next hackernight? :)
"It would probably be best if the existing hooks and extensibility points could be used..."
I think so too...
I won't since it was moved to the 5. of september which is the day my girlfriend hands in er master thesis - unfortunately :)
I will be hacking in the night, yes
This task is rendered redundant and uninteresting by the sheer awesomeness of the FleetKeeper (described in #140)
Aw - and here I was awaiting the glory of BusDriver to report back to the FleetKeeper.