Open ITCockpit und das $ bei Servicenamen
Die netten Softwareschmiede haben doch immer wieder witzige Einfälle …. zB ein Dollarzeichen $ im Servicenamen / Dienstnamen … zB.: MSSQL$BLACKBERRY …. so ein Sonderzeichen kann einen schonmal den Tag versauen.
Wie diesen Dienst mit Open ITCockpit nun überwachen ?
Ob man nun zB. MSSQL$BLACKBERRY oder „MSSQL$BLACKBERRY“ oder „MSSQL“$“BLACKBERRY“ oder „MSSQL““$““BLACKBERRY“ oder MSSQL\$BLACKBERRY oder „MSSQL“\$“BLACKBERRY“ oder …….. eingibt, es kommt immer wieder zu einem Fehler.
In der Shell klappt der Check ohne Probleme zB. wie folgt (es gibt auch noch andere Möglichkeiten):
./check_nt -H 165.1.1.10 -p 12489 -v SERVICESTATE -l MSSQL\$BLACKBERRY
OK: All services are in their appropriate state.
Wie bekommt man dies jedoch via Open ITCockpit hin ?
Man kann den … ich sage mal „Umstand“ umgehen, indem man sich ein Benutzerdefiniertes Makro anlegt, welches das $ an den Command übermittelt.
Als erstes unter Konfiguration / Nagios-Konfiguration / Benutzerdefinierte Makros einen Eintrag hinterlegen mit folgendem Inhalt: \$
Den Namen des Makros merken. zB $USER8$
Nun unter Konfiguration / Systemkonfiguration / Services den entsprechenden Host und das Service auswählen, und bearbeiten.
Unter Argumente für Prüfbefehl wird nun aus dem zu prüfenden Servicenamen MSSQL$BLACKBERRY folgendes: MSSQL$USER8$BLACKBERRY
Das Makro ersetzt parktisch das $ …. und der Prüfbefehl klappt einwandfrei. (Export nicht vergessen)
Danke an dziegler von #openitcockpit für die Hilfestellung 🙂