I am coming into this a bit late, but maybe a method like this would work. For each of my LDAP hosts I have a check_ldaps service defined as:
$USER1$/check_ldaps -p 636 -H `$USER1$/ip2ldapCN $HOSTADDRESS$` $ARG1$ where ip2ldapCN is: for i in auth1.example.com auth2.example.com auth3.example.com auth4.example.com auth4.example.com do addr=`dig +short $i` if [ "$addr" = "$1" ]; then echo $i exit fi done echo "Incorrect_address of ip2ldapCN $1" This loops over all auth hosts and returns the auth host name corresponding to the host address passed in. However a similar mechanism could be used to represent any data. Imagine a shell script that takes two arguments: attribute_name and host this allows you to get any attribute value into a command. So I could write: $USER1$/check_ldaps -p 636 -H `$USER1$/attributes AUTHNAME $HOSTNAME$` $ARG1$ and then attributes runs: sed -ne "s/.*$2-$1=(.*)/\1/p" /etc/nagios/hosts/*.cfg to extract the attribute from the host config where the attribute looks like: # host1.example.com-AUTHNAME: auth1.example.com With some perl you could check the mtime of the *.cfg files (or the parent directory) and reparse the config files extracting all the keys and values into a dbm file for faster lookup. Yes, this is a hack but it might be a useful hack and can work for any plugin. -- rouilj John Rouillard =========================================================================== My employers don't acknowledge my existence much less my opinions. _______________________________________________ Nagios-users mailing list Nagios-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nagios-users ::: Please include Nagios version, plugin version (-v) and OS when reporting any issue. ::: Messages without supporting info will risk being sent to /dev/null