I'm trying to monitor a few SQL Server performance monitor objects using check_nrpe. I've got a service checking using check_NRPE with the following command:
-H $HOSTADDRESS$ -c nsc_checkcounter -a 'MaxCrit=25 MaxWarn=15 "Counter=\MSSQL$%SQL_INSTANCE%:General Statistics\Processes blocked"'
This works fine with the "Test Service Check" function, but when the check runs on schedule it returns an error:
CRIT: Counter not found: \MSSQL$MYINSTANCE:General Statistics\Processes blocked"$: The specified counter could not be found. (C0000BB9)
Note the $ at the end.
I've tried every thing I can think of to escape the $ in the counter name - double $$, quotes around $$, etc. Nothing seems to work. Like I said this works fine from the command line and "Test service check".
This appears to be a bug. Let me know what other information you might need.