Monitor Services с $ в сервисе называет в Icinga / Nagios

Я думаю, что это - то, что Вы ищете.:D

Не забывайте Неразборчивый режим.

ifconfig eth0 promisc
ifconfig eth1 promisc

1
задан 20 June 2013 в 18:36
4 ответа

Вам нужно выйти из $ с другим $ ] и заключите имя в одинарные кавычки:

define service{
        use                     generic-service
        host_name               SERVERNAME
        service_description     MSSQL Service
        check_command           check_nt!SERVICESTATE!-d SHOWALL -l 'MSSQL$$PROD'
        }

в качестве альтернативы вы можете опустить одинарные кавычки, используя MSSQL \ $$ PROD . Мне первый звонок больше нравится;)

3
ответ дан 3 December 2019 в 17:49

У Крисси правильный ответ.

Я просто хочу упомянуть вариант, который, возможно, будет легче проанализировать: измените определение вашей команды, чтобы взять другое $ ARG $ , после чего сложность этого вида экранирования обрабатывается в определении вашей команды, а не в каждой службе. Итак, теперь ваша служба выглядит так:

check_command    check_nt!SERVICESTATE!-d SHOWALL -l MSSQL!PROD

и в вашем command.cfg:

command_line     /path/to/commmand --someopt value1 $ARG1$"$$"$ARG2$
1
ответ дан 3 December 2019 в 17:49

You need to "quote" it and double up the $ sign for some reason.

For example the service name for Windows Internal Database is "MSSQL$MICROSOFT##SSEE".

My check_command:

check_command           check_nt_srv!MSSQL"$$"MICROSOFT\#\#SSEE
0
ответ дан 3 December 2019 в 17:49

Я безрезультатно пробовал ответы на приведенные выше ответы, а также пытаюсь отслеживать экземпляры SQL Server. Теперь, в 2017 году, похоже, что НЕ удвоение $ работает, пока вы сохраняете кавычки:

check_nt -H xx.xx.xx.xx -s "" -p 12489 -v SERVICESTATE -l 'MSSQL $ BLAHBLAH '-d SHOWALL

0
ответ дан 3 December 2019 в 17:49

Теги

Похожие вопросы