diff options
author | Kristian Lyngstol <kly@kly.no> | 2016-03-13 22:32:43 +0000 |
---|---|---|
committer | Kristian Lyngstol <kly@kly.no> | 2016-03-13 22:32:43 +0000 |
commit | fc4d300490d896124036c523ec731a56797ec844 (patch) | |
tree | dfdfc4dfc2f77a9c42c361f345f1213f665942fc | |
parent | fa904ae8efda6a72ac778a524e3d7045a3b3040c (diff) |
NMS: snmp prototype update
Looking interesting...
-rwxr-xr-x | nms/prototype/foo.pl | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/nms/prototype/foo.pl b/nms/prototype/foo.pl index 0dfd8ba..2ba0b1e 100755 --- a/nms/prototype/foo.pl +++ b/nms/prototype/foo.pl @@ -4,10 +4,13 @@ use strict; use warnings; use SNMP; use Data::Dumper; +use DBI; +use lib '/srv/tgmanage/include'; +use nms; SNMP::initMib(); SNMP::addMibDirs("/srv/tgmanage/mibs"); -#SNMP::addMibDirs("/tmp/tmp.X6Xt4LvFKn/v2"); +SNMP::addMibDirs("/tmp/tmp.esQYrkg9MW/v2"); SNMP::loadModules('SNMPv2-MIB'); SNMP::loadModules('ENTITY-MIB'); SNMP::loadModules('IF-MIB'); @@ -15,7 +18,10 @@ SNMP::loadModules('LLDP-MIB'); SNMP::loadModules('IP-MIB'); SNMP::loadModules('IP-FORWARD-MIB'); +our $row=7; my $sess = SNMP::Session->new(DestHost => 'localhost', Community => 'public', Version => 2, UseEnums => 1); +my $dbh = nms::db_connect(); +my $sth = $dbh->prepare("INSERT INTO snmp (switch,data) VALUES((select switch from switches where sysname=?), ?)"); my @getThese = [['ifTable'], ['ifXTable']]; @@ -24,6 +30,7 @@ while(1) { SNMP::MainLoop(10); } + sub callback{ my @top = $_[0]; my %tree; @@ -33,6 +40,9 @@ sub callback{ for my $var (@{$ret}) { for my $inner (@{$var}) { my ($tag,$type,$name,$iid, $val) = ( $inner->tag ,$inner->type , $inner->name, $inner->iid, $inner->val); + if ($tag eq "ifPhysAddress") { + next; + } $tree{$iid}{$tag} = $val; if ($tag eq "ifIndex") { push @nicids, $iid; @@ -44,5 +54,11 @@ sub callback{ for my $nic (@nicids) { $nics{$tree{$nic}{'ifName'}} = $tree{$nic}; } - print Dumper(\%nics); + print "row: " . $row . "\n"; + $sth->execute("e" . $row . "-1", JSON::XS::encode_json(\%nics)); + if ($row > 50) { + $row = 7; + } else { + $row += 2; + } } |