Я пытаюсь отслеживать конкретный сценарий, который работает на моем компьютере с помощью snmp. Скрипт запускается несколько раз с несколькими параметрами вроде этого
/usr/bin/perl /opt/data/script.pl -m test
или
/usr/bin/perl /opt/data/script.pl -d
Я пробовал использовать параметр --string с помощью check_snmp, но мне не повезло.
./check_snmp -H server01 -C public --string="/usr/bin/perl /opt/data/script.pl -m test"
Вот как выглядит сценарий, когда я выполняю snmpwalk:
HOST-RESOURCES-MIB::hrSWRunParameters.675 = STRING: "/opt/data/script.pl -m test"
Очевидно, я не могу контролировать OID, поскольку он специфичен для PID. Итак, в основном -o HOST-RESOURCES-MIB :: hrSWRunParameters.675 = PID из 675
Мы используем check_snmp_process.pl, который отлично справляется со своей задачей.
define command { command_name check_at_least_one_proc command_line $USER1$/check_snmp_process.pl -H $HOSTADDRESS$ -C your-community-here -n $ARG1$ -c 0 } define command { command_name check_only_one_proc command_line $USER1$/check_snmp_process.pl -H $HOSTADDRESS$ -C your-community-here -n $ARG1$ -c 0,2 } define command { command_name check_proc_range command_line $USER1$/check_snmp_process.pl -H $HOSTADDRESS$ -C your-community-here -n $ARG1$ -c $ARG2$,$ARG3 -w $ARG2$,$ARG3$ } define service { use generic-service hostgroup_name snmpenabled service_description NTP check_command check_at_least_one_proc!ntpd }