felskrone / salt-eventsd

events-listener daemon for saltstack that writes data into a database
Other
52 stars 12 forks source link

2 Workers with same tag cause events to be duplicated in worker #44

Open Grokzen opened 9 years ago

Grokzen commented 9 years ago

So i was implementing a new worker that i was going to use to send some events based on what function was runned on the minion to a new backend service. What i noticed was that when i was using 2 workers with the same tag tag: salt/job/[0-9]*/ret/\w+ in this case, i noticed something really strange. For each event that eventsd got from salt eventbus, eventsd would send 2 events into the worker send_batch(self, events): method. Also the same set of 2 events would be sent to both workers. I would guess that this has something to do with how events is filtered out and matched against the config for each worker.

The expected result would be that for each event, it would be sent once to each worker no matter how many workers that is using the same tag config.

felskrone commented 9 years ago

Just fyi, if you NEED this fixed, i would suggest debugging it a little more yourself. Im getting ready for vacation soon and will be gone for a few weeks. Sorry!

Grokzen commented 9 years ago

There is no problems right now after i merged the 2 workers i had into 1 and used the filtering logic for the used event in there and now everything works. I wanted to have 2 workers to make it easier to understand the purpose of each worker but it really do not matter :p

I have been looking around in the code some and i think i can fix it and submit a PR for you to view later when you have time after your vacation :]