mirror of
https://github.com/stylersnico/librenms.git
synced 2026-07-12 08:02:23 +02:00
per-port SNMP polling. thanks to jonathan@studenteninternet.be
git-svn-id: http://www.observium.org/svn/observer/trunk@340 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
+10
-3
@@ -8,18 +8,25 @@ if($argv[1] && $argv[2] && $argv[3]) {
|
||||
$host = strtolower($argv[1]);
|
||||
$community = $argv[2];
|
||||
$snmpver = strtolower($argv[3]);
|
||||
if (is_numeric($argv[4]))
|
||||
$port = $argv[4];
|
||||
else
|
||||
$port = 161;
|
||||
|
||||
list($hostshort) = explode(".", $host);
|
||||
if ( isDomainResolves($argv[1])){
|
||||
if ( isPingable($argv[1])) {
|
||||
if ( mysql_result(mysql_query("SELECT COUNT(*) FROM `devices` WHERE `hostname` = '".mres($host)."'"), 0) == '0' ) {
|
||||
$snmphost = trim(`snmpget -Oqv -$snmpver -c $community $host sysName.0 | sed s/\"//g`);
|
||||
$snmphost = trim(`snmpget -Oqv -$snmpver -c $community $host:$port sysName.0 | sed s/\"//g`);
|
||||
var_dump($snmphost);
|
||||
if ($snmphost == $host || $hostshort = $host) {
|
||||
$return = createHost ($host, $community, $snmpver);
|
||||
$return = createHost ($host, $community, $snmpver, $port);
|
||||
var_dump($return);
|
||||
if($return) { echo($return . "\n"); } else { echo("Adding $host failed\n"); }
|
||||
} else { echo("Given hostname does not match SNMP-read hostname!\n"); }
|
||||
} else { echo("Already got host $host\n"); }
|
||||
} else { echo("Could not ping $host\n"); }
|
||||
} else { echo("Could not resolve $host\n"); }
|
||||
} else { echo("Add Host Tool\nUsage: ./addhost.php <hostname> <community> <snmpversion>\n"); }
|
||||
} else { echo("Add Host Tool\nUsage: ./addhost.php <hostname> <community> <snmpversion> <port>\n"); }
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user