Closed tmcnag closed 6 years ago
I'm tentatively scheduling this for release 2.2.0.
I think this is a good idea. We'll talk about it at our next internal open source development meeting.
As we've retired the tracker (even internally) I don't have access to this patch any longer.
Also, if I would have known more about it then, I would have mentioned a simple solution: use NERD (Nagios Event Radio Dispatch) as I believe it solves this problem.
With Core 4.4.0 and above, it is a compile flag to enable it (no longer enabled by default) --enable-nerd
.
We are using ndomod (standalone mode, no ndo2db involved) sinking data to a tcp socket which is manipulated by a remote Java application. We found out that our application was receiving many events from ndomod that we would have liked to be filtered at the source (to prevent our application to go deep in its stack (objects creation from input, mapping to Hibernate and so on.) to find out it doesn't need it)
1- skip_periodic_ok (default: 0/false) NEB host/service status events are sent periodically by Nagios to ndomod. This skips sinking events for status that are known to be OK and are still OK. This eliminates unneeded work by our remote application.
2- skip_duplicates (default: 0) Filters out back to back events that happens within a period range (mentionned in seconds) if fields hostname, status and plugin output are the same.
I believe this can be useful for other people so I'm sharing that patch.
Code is within conditional statements so if configuration parameters are not enabled there should be no noticeable changes/performance impacts to ndomod and its current behavior.