Я написал Perl-скрипт для возврата некоторых значений SNMP, который отлично работает. Теперь я написал скрипт на удаленном сервере и использовал функцию расширения в SNMP , чтобы поместить значение из скрипта в SNMP.
Если я бегу:
snmpget -v2c -c public 10.0.0.10 'NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."cc_power"'
Я получаю результат:
NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."cc_power" = STRING: 544
Но когда я пытаюсь использовать свой сценарий для получения информации, он не получает ее. Вот сценарий:
#!/usr/bin/perl
use strict;
use SNMP;
use RRDs;
my $rrd_db = "/storage/db/rrd/cc_power.rrd";
my $sess;
my $val;
my $error;
$sess = new SNMP::Session(DestHost => "10.0.0.10", Community => "public", Version => 2);
my $power = $sess->get('NET-SNMP-EXTEND-MIB::nsExtendOutput1Line.\"cc_power\"');
$error=RRDs::error;
die "ERROR while updating RRD: $error\n" if $error;
my $date=time;
print "Data Script has been run - Output: ${date}:${power}\n";
но ничего не возвращается, и я понятия не имею, почему ... нет ошибок или чего-то еще, я что-то упустил глупый?
Надеюсь, кто-то может помочь, так как это сводит меня с ума:)