For obvious reasons, the first checks that we developed primarily monitored volumes and aggregates. The overall method took the approach of sending an UNKOWN alarm if no volumes or aggregates could be found – since it is very unusual to find a filer without any aggregates or volumes.

The same overall library was then used for other objects such as LUNs, Interfaces or SnapMirror relations. In these cases, another approach in which none of the instances are allowed to be OK would be more suitable.

In order to achieve a generic but equally flexible solution, we added a switch to the overall check library:

--no_instances=OK|WARNING|CRITICAL|UNKNOWN

The default value for this switch (if the switch hasn’t been set) is UNKOWN. Therefore, if no changes have been made to the configuration, the plugins have the same behavior as before.