diff --git a/includes/definitions/apc-mgeups.yaml b/includes/definitions/apc-mgeups.yaml new file mode 100644 index 0000000000..0e777f2b78 --- /dev/null +++ b/includes/definitions/apc-mgeups.yaml @@ -0,0 +1,19 @@ +os: apc-mgeups +text: 'APC MGE UPS' +group: ups +type: power +icon: apc +rfc1628_compat: 1 +mib_dir: + - mge +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectId: + - .1.3.6.1.4.1.705.1 + sysDescr_regex: + - '/^Galaxy/' + # Upsilon too (no data) diff --git a/includes/definitions/powerware.yaml b/includes/definitions/eaton-mgeups.yaml similarity index 52% rename from includes/definitions/powerware.yaml rename to includes/definitions/eaton-mgeups.yaml index e9f80dd13b..051d70cede 100644 --- a/includes/definitions/powerware.yaml +++ b/includes/definitions/eaton-mgeups.yaml @@ -1,13 +1,15 @@ -os: powerware -text: 'Powerware UPS' +os: eaton-mgeups +text: 'Eaton MGE UPS' +group: ups type: power icon: eaton -over: - - { graph: device_voltage, text: Voltage } - - { graph: device_current, text: Current } - - { graph: device_frequency, text: Frequencies } +rfc1628_compat: 1 mib_dir: - - ups + - mge +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } discovery: - sysObjectId: - - .1.3.6.1.4.1.534 + - .1.3.6.1.4.1.705.1 diff --git a/includes/definitions/eatonpdu.yaml b/includes/definitions/eatonpdu.yaml index 2a031d80fe..5a1cbdf0e6 100644 --- a/includes/definitions/eatonpdu.yaml +++ b/includes/definitions/eatonpdu.yaml @@ -7,4 +7,4 @@ mib_dir: over: - { graph: device_current, text: Current } discovery: - - sysObjectId: .1.3.6.1.4.1.534.6.6.7 + - sysObjectId: .1.3.6.1.4.1.534.6. diff --git a/includes/definitions/eatonups.yaml b/includes/definitions/eatonups.yaml index fcc5db8f65..9ffb3746bc 100644 --- a/includes/definitions/eatonups.yaml +++ b/includes/definitions/eatonups.yaml @@ -9,5 +9,5 @@ over: mib_dir: - ups discovery: - - sysObjectId: .1.3.6.1.4.1.534. - - sysDescr: 'Eaton 5P' + - sysObjectId: .1.3.6.1.4.1.534.1 + - sysObjectId: .1.3.6.1.4.1.534.2 diff --git a/includes/definitions/mgepdu.yaml b/includes/definitions/mgepdu.yaml index 98e6a85446..43a5e78833 100644 --- a/includes/definitions/mgepdu.yaml +++ b/includes/definitions/mgepdu.yaml @@ -1,9 +1,11 @@ os: mgepdu -text: 'MGE PDU' +text: 'Eaton MGE PDU' type: power -icon: mge +icon: eaton mib_dir: - mge +over: + - { graph: device_current, text: Current } discovery: - - sysDescr: - - MGE Switched PDU + - sysObjectId: + - .1.3.6.1.4.1.705.2 diff --git a/includes/definitions/mgeups.yaml b/includes/definitions/mgeups.yaml deleted file mode 100644 index ca5df56b8e..0000000000 --- a/includes/definitions/mgeups.yaml +++ /dev/null @@ -1,19 +0,0 @@ -os: mgeups -text: 'APC UPS' -group: ups -type: power -icon: apc -mib_dir: - - mge -over: - - { graph: device_current, text: Current } -discovery: - - sysObjectId: - - .1.3.6.1.4.1.705.1 - - sysDescr: - - 'Pulsar M' - - 'MGE UPS SYSTEMS - Network Management Proxy' - - sysDescr_regex: - - '/^Galaxy/' - - '/^Evolution/' - - '/^Comet/' diff --git a/includes/discovery/sensors/current/powerware.inc.php b/includes/discovery/sensors/current/powerware.inc.php deleted file mode 100644 index 2efbed25ba..0000000000 --- a/includes/discovery/sensors/current/powerware.inc.php +++ /dev/null @@ -1,62 +0,0 @@ - 1) { - $descr .= " Phase $i"; - } - - $current = snmp_get($device, $current_oid, '-Oqv'); - $type = 'xups'; - $divisor = 1; - $index = '4.4.1.3.'.$i; - - discover_sensor($valid['sensor'], 'current', $device, $current_oid, $index, $type, $descr, $divisor, '1', null, null, null, null, $current); -} - -$oids = trim(snmp_walk($device, 'xupsInputCurrent', '-OsqnU', 'XUPS-MIB')); -d_echo($oids."\n"); - -list($unused,$numPhase) = explode(' ', $oids); -for ($i = 1; $i <= $numPhase; $i++) { - $current_oid = ".1.3.6.1.4.1.534.1.3.4.1.3.$i"; - $descr = 'Input'; - if ($numPhase > 1) { - $descr .= " Phase $i"; - } - - $current = snmp_get($device, $current_oid, '-Oqv'); - $type = 'xups'; - $divisor = 1; - $index = '3.4.1.3.'.$i; - - discover_sensor($valid['sensor'], 'current', $device, $current_oid, $index, $type, $descr, $divisor, '1', null, null, null, null, $current); -} diff --git a/includes/discovery/sensors/frequency/powerware.inc.php b/includes/discovery/sensors/frequency/powerware.inc.php deleted file mode 100644 index 8df19780d0..0000000000 --- a/includes/discovery/sensors/frequency/powerware.inc.php +++ /dev/null @@ -1,35 +0,0 @@ - 1) { - $descr .= " Phase $i"; - } - - $type = 'xups'; - $divisor = 1; - $current = (snmp_get($device, $volt_oid, '-Oqv') / $divisor); - $index = '3.4.1.2.'.$i; - - discover_sensor($valid['sensor'], 'voltage', $device, $volt_oid, $index, $type, $descr, $divisor, '1', null, null, null, null, $current); -} - -// XUPS-MIB::xupsOutputNumPhases.0 = INTEGER: 1 -$oids = trim(snmp_walk($device, 'xupsOutputNumPhases', '-OsqnU')); -d_echo($oids."\n"); - -list($unused,$numPhase) = explode(' ', $oids); -for ($i = 1; $i <= $numPhase; $i++) { - // XUPS-MIB::xupsOutputVoltage.1 = INTEGER: 228 - $volt_oid = ".1.3.6.1.4.1.534.1.4.4.1.2.$i"; - $descr = 'Output'; - if ($numPhase > 1) { - $descr .= " Phase $i"; - } - - $type = 'xups'; - $divisor = 1; - $current = (snmp_get($device, $volt_oid, '-Oqv') / $divisor); - $index = '4.4.1.2.'.$i; - - discover_sensor($valid['sensor'], 'voltage', $device, $volt_oid, $index, $type, $descr, $divisor, '1', null, null, null, null, $current); -} - -// XUPS-MIB::xupsBypassNumPhases.0 = INTEGER: 1 -$oids = trim(snmp_walk($device, 'xupsBypassNumPhases', '-OsqnU')); -d_echo($oids."\n"); - -list($unused,$numPhase) = explode(' ', $oids); -for ($i = 1; $i <= $numPhase; $i++) { - $volt_oid = ".1.3.6.1.4.1.534.1.5.3.1.2.$i"; - $descr = 'Bypass'; - if ($numPhase > 1) { - $descr .= " Phase $i"; - } - - $type = 'xups'; - $divisor = 1; - $current = (snmp_get($device, $volt_oid, '-Oqv') / $divisor); - $index = '5.3.1.2.'.$i; - - discover_sensor($valid['sensor'], 'voltage', $device, $volt_oid, $index, $type, $descr, $divisor, '1', null, null, null, null, $current); -} diff --git a/tests/OSDiscoveryTest.php b/tests/OSDiscoveryTest.php index dc608b5c82..4a51761d0c 100644 --- a/tests/OSDiscoveryTest.php +++ b/tests/OSDiscoveryTest.php @@ -204,6 +204,11 @@ class DiscoveryTest extends \PHPUnit_Framework_TestCase $this->checkOS('apc', 'apc-embedded-powernet'); } + public function testApcMgeups() + { + $this->checkOS('apc-mgeups', 'mgeups-galaxy'); + } + public function testApic() { $this->checkOS('apic'); @@ -633,6 +638,17 @@ class DiscoveryTest extends \PHPUnit_Framework_TestCase $this->checkOS('dsm', 'dsm-ds916'); } + public function testEatonMgeups() + { + $this->checkOS('eaton-mgeups', 'eaton-5p'); + $this->checkOS('eaton-mgeups', 'eaton-5px'); + $this->checkOS('eaton-mgeups', 'mgeups-ex2200'); + $this->checkOS('eaton-mgeups', 'mgeups-pulsar'); + $this->checkOS('eaton-mgeups', 'mgeups-evolution'); + $this->checkOS('eaton-mgeups', 'mgeups-proxy'); + $this->checkOS('eaton-mgeups', 'mgeups-comet'); + } + public function testEatonpdu() { $this->checkOS('eatonpdu'); @@ -641,8 +657,6 @@ class DiscoveryTest extends \PHPUnit_Framework_TestCase public function testEatonups() { $this->checkOS('eatonups'); - $this->checkOS('eatonups', 'eaton-5p'); - $this->checkOS('eatonups', 'eaton-5px'); $this->checkOS('eatonups', 'eaton-powerxpert'); } @@ -1171,16 +1185,6 @@ class DiscoveryTest extends \PHPUnit_Framework_TestCase $this->checkOS('mgepdu'); } - public function testMgeups() - { - $this->checkOS('mgeups', 'mgeups-pulsar'); - $this->checkOS('mgeups', 'mgeups-galaxy'); - $this->checkOS('mgeups', 'mgeups-evolution'); - $this->checkOS('mgeups', 'mgeups-ex2200'); - $this->checkOS('mgeups', 'mgeups-proxy'); - $this->checkOS('mgeups', 'mgeups-comet'); - } - public function testMicrosemitime() { $this->checkOS('microsemitime'); @@ -1474,11 +1478,6 @@ class DiscoveryTest extends \PHPUnit_Framework_TestCase $this->checkOS('powerwalker'); } - public function testPowerware() - { - $this->checkOS('powerware'); - } - public function testPrestige() { $this->checkOS('prestige'); diff --git a/tests/snmpsim/mgepdu.snmprec b/tests/snmpsim/mgepdu.snmprec index 18c236d9af..29e986276d 100644 --- a/tests/snmpsim/mgepdu.snmprec +++ b/tests/snmpsim/mgepdu.snmprec @@ -1 +1,2 @@ 1.3.6.1.2.1.1.1.0|4|MGE Switched PDU +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.2 diff --git a/tests/snmpsim/mgeups-evolution.snmprec b/tests/snmpsim/mgeups-evolution.snmprec index f727e75ee6..e738b10b55 100644 --- a/tests/snmpsim/mgeups-evolution.snmprec +++ b/tests/snmpsim/mgeups-evolution.snmprec @@ -1 +1,2 @@ -1.3.6.1.2.1.1.1.0|4|Evolution Something +1.3.6.1.2.1.1.1.0|4|Evolution Something Data guessed +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.1.2 diff --git a/tests/snmpsim/mgeups-galaxy.snmprec b/tests/snmpsim/mgeups-galaxy.snmprec index 93dc774b6c..1860f2ee4a 100644 --- a/tests/snmpsim/mgeups-galaxy.snmprec +++ b/tests/snmpsim/mgeups-galaxy.snmprec @@ -1 +1,2 @@ -1.3.6.1.2.1.1.1.0|4|Galaxy Something +1.3.6.1.2.1.1.1.0|4|Galaxy 3000 30 kVA +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.1.2 diff --git a/tests/snmpsim/mgeups-proxy.snmprec b/tests/snmpsim/mgeups-proxy.snmprec index 7caca5e4d4..bfec022c99 100644 --- a/tests/snmpsim/mgeups-proxy.snmprec +++ b/tests/snmpsim/mgeups-proxy.snmprec @@ -1 +1,2 @@ 1.3.6.1.2.1.1.1.0|4|MGE UPS SYSTEMS - Network Management Proxy +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.1 diff --git a/tests/snmpsim/mgeups-pulsar.snmprec b/tests/snmpsim/mgeups-pulsar.snmprec index 04c57640f0..c8ca443862 100644 --- a/tests/snmpsim/mgeups-pulsar.snmprec +++ b/tests/snmpsim/mgeups-pulsar.snmprec @@ -1 +1,2 @@ 1.3.6.1.2.1.1.1.0|4|Pulsar M +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.1.2 diff --git a/tests/snmpsim/powerware.snmprec b/tests/snmpsim/powerware.snmprec deleted file mode 100644 index 959f86711f..0000000000 --- a/tests/snmpsim/powerware.snmprec +++ /dev/null @@ -1 +0,0 @@ -1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.534