[Hawkular-dev] A better mechanism to import events from Hawkular to MiQ?

Jay Shaughnessy jshaughn at redhat.com
Tue Apr 5 10:19:58 EDT 2016


Jkremser, and anyone,

So I've now got some code working that can move Hawkular events (events 
stored via H Alerts) into MiQ as MiQ Events. As a note, not every 
Hawkular event will be a MiQ event because MiQ requires that supported 
event types are predefined.  This mail is more about the mechanism used 
to move the events...

I've started with a primitive mechanism, it's a looping REST Get with an 
advancing time window, using the H Alerts rest api via the 
hawkular-ruby-client.  This has a variety of potential issues, for example:

  * Any Hawkular events generated when MiQ isn't running will likely be
    missed.
  * If the timestamps reported on the events are behind the MiQ polling
    window they will be missed. (late arrival, possibly a hawkular
    server time a bit behind MiQ server time).
  * Potentially excessive polling if the number of events is not large.

Certainly some of these issues could be softened with a little more 
provider-side smarts, like querying more into the past and protecting 
against duplicate event storage, etc.  But I'm wondering what thoughts 
people may have on a better mechanism.  I know other providers in MiQ 
use a variety of techniques to import data, from polling, to blocking 
HTTP requests, to queue listeners.  I should mention that the general 
approach of an MiQ provider is to provide an "Event Catcher", which runs 
in a handler process for each provider instance.  The catcher is 
basically told by MiQ to go get events and then queues them for MiQ 
consumption.   Let me know what you think.  Also, if anyone would like 
to see a short demo of what I have right now I'd be happy to run a short 
meeting.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20160405/568e01b4/attachment.html 


More information about the hawkular-dev mailing list