Active Discovery and instance deletion
I keep waffling on whether this is a bug, feature request or I'm just thinking about it wrong.
Currently, if you configure instances to delete automatically it will prevent any alarms (the instance doesn't exist any more). At first, support told me to 'delete after 30 days', which makes sense at a quick glance, but doesn't actually work; the instance doesn't exist, so there is no incoming data and hence no alerts to trigger. The 30 days is just a way to preserve data in case the instance comes back (failed hardware, or intermittent service, etc).
This means that you cannot enable automatic deletion for any instance where you need to alert on a change that would result in it being filtered from active discovery.
Initially I had enabled automatic deletion for network interfaces, in order to automatically keep things clean if modules are added or removed, or interfaces change status. However, we found that this meant we would never get an alert for an interface being down (since those are filtered from AD). I disabled automatic deletion, but that leaves 2 problems:
1) We have to manually clean things (at the very least when changing hardware, modules, etc)
2) Even though the instance still exists, since it isn't picked up by AD none of the properties are updated. We use an 'alert_enable' string, but the description never gets updated by AD so it continues to alert (even though it's changed on the device)
Options:
1) Stop filtering in AD (expands instance count, collector resources, etc)
2) Have LM alarm on removal of an instance (possibly overload the 'no data' rules, or add a different flag, possibly related to whether instance deletion is immediate or after 30 days)
3) If not deleting instances, possibly have AD update any properties or other values that exist before doing the filtering. This would let AD update descriptions, admin status, etc on an interface (allowing it to clear things like description, operational status, etc) - it's possible that is undesirable if people want to see the properties and values as the existed when the instance was 'live'.
I'm just not that happy with any of the current solutions, but not convinced whether these possible features would be any better or more desirable.