2216 Commits

Author SHA1 Message Date
de56dccc8a refactor: Move config loading into the Config class. (#8100)
Self contain dbFacile too.
Update rrdtool default setting to be similar to others.
Move silly cisco-entities.php into entity-physical.inc.php
2018-02-10 20:38:25 +00:00
977796382d StoneOs improvements (#8155)
* Added snmp mibs from vendor (https://www.hillstonenet.com)

* Added memoery discovery and pool

* Added serial and os version discovery.

* Added cpu discovery.

* Added temperature and power sensors

* Added test data.

* Fix yaml format.

* Pass mib name as parameter.

* Pass mib name as parameter.

* Use numeric OID

* User snmp_get_multi_oid

* Use snmp_get_multi_oid

* Remove default extension from vendor.

* Update test data.

* Renamed some mibs + changed oid in disco proc

* Updated json test data

* Update processor discovery to yaml
2018-02-07 23:28:46 -06:00
913d6dc641 refactor: Update awplus to new processor discovery (#8204)
* Update awplus to new processor discovery
Have no test data, so this needs testing.

* Updated YamlTest to include data as optional param for processors
2018-02-06 22:28:14 +00:00
f706d0ab41 fix: Fixed cbgp peers data on some devices (#8208)
* IOSXR snmprec data (unsorted)

* iosxr sorted

* Fix cbgp peers data on some devices

* fix formatting
2018-02-06 21:06:44 +00:00
b834d2d4b4 fix: Removed div by 100. Junos SNMP value was not 0.01 resolution (#8198) 2018-02-05 20:48:32 +00:00
11147d3bbf Major Processors rewrite (#8066)
* Extract DiscoveryItem and move some things to better places.
Extract model class
Fix up model construction.  I have problem with construction...
Makeshift model working.  Switch constructor to factory.  discover() and create()
Support legacy discovery.
Remove uneeded custom pollers
Remove netonix custom detection as we try ucd on all os now.
Add a few yaml procs.  Fix a couple things.
More processor discovery conversions
Move Calix e7 to standard hrProcessorLoad, but it doesn't fully implement the HR-MIB, move things around to make it work.
Add a few yaml procs.  Fix a couple things. Correct some stupid mib stuff.
Move more, drop php 5.3
Add netscaler which uses string indexes.  Port fiberhome to yaml and use skip_values
More conversions.  BroadcomProcessorUsage Trait
Serveriron and Ironware share some mibs.  Create a common abstract os for them.
Add yaml support for mib specification in each data entry
Make legacy discover_processor() set 0 for hrDeviceIndex

Untangle Dell switch OS processors

Use use shared OS for groups if they don't have a specific group.
fix silly mib mistake

Make index optional

Move HR and UCD to Traits and out of Processor.

* forgot to update the fortiswitch index

* Make sgos and avaya-ers match the old index.

* fix comware test data

* fix merge errors

* fix dsm and remove pointless empty modules

* file not found exception is in the wrong place.

* Updated processor development docs
2018-02-05 07:39:13 -06:00
a347e7c8d3 F5 gtm support (#8161)
* initial

* commited correct version of f5-ltm-inc.php

* cleaned up comments

* cleaned up formating for travis

* split GTM discovery from LTM discovery module

* removed blank line at EOF

* updated per comments
2018-02-01 23:35:23 -06:00
947e53d8cc fix: Fix arp-tables updates (#8180)
* Fix arp-tables updates
Little more complete fix this time.
Don't allow context_name to be nullable...

* update schema file
2018-02-01 09:50:32 +00:00
b2762d9fa7 refactor: Prevent function collisions with Laravel (#8166)
Make function call compatible
drop insensitive starts_with and ends_with for now as they aren't needed.
2018-01-29 21:58:21 +00:00
772ecac36d Updated LTM discovery to fix route domain ID breaking the hex to stri… (#8146)
* Updated LTM discovery to fix route domain ID breaking the hex to string IPv4 conversion

* fixed whitespaces

* fixed whitespaces
2018-01-25 13:28:40 -06:00
a98ab6363b fix: Fixed arp-tables duplicate data (#8147)
Truncating the table here, because we could have a massive amount of duplicate rows which could cause php oom.
2018-01-24 20:51:00 +00:00
0a6f113f5a device: Improved FortiManager support (#8102)
Modified with suggested changes

Test data for FortiOS
2018-01-24 09:37:27 +00:00
14b2419248 refactor: Move more state sensors to yaml (#8016)
* refactor: Move more state sensors to yaml

* Fix errors..

* Update comware.yaml

* Update ddnos.yaml

* Update dell-ups.yaml

* Update mimosa.yaml

* Update waas.yaml

* added some test data for comware and dell-ups

* added mimosa test data

* re-saved comware test data

* set arp-table sort order.
remove unneeded modules from mimosa

* remove arp-table it doesn't work yet

* remove deleted sensors and mempools (which have no snmp data)
2018-01-21 15:43:19 -06:00
99f8728688 Added Dlink MIBS, memory polling and temp polling for some devices (#8076)
* Added Dlink MIBS, memory polling and temperature polling for some devices

* Added Dlink MIBS, memory polling and temp polling for some devices

* Update dlink.yaml

Changed values as per laf's request.

* Update dlink.inc.php

Updated date

* Update dlink.inc.php

Deleted line as per laf's request.
2018-01-21 00:29:22 -06:00
36fe6c83dc fix: Bgp-peers junos empty afi-safi names (#8083)
* fix: Bgp-peers junos empty afi-safi names

* fix discovery of all names
* fix polling rrd names assignment

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* Update tests data for junos bgp-peers safi update

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2018-01-20 21:21:39 -06:00
88b4e31912 refactor: Refactored bgp-peers (#7972)
* bgp-peers update
Use IP parsing library more effectively.
Fix update issue
Include comware bgp-peers test data
deeper refactoring
Allow JunOS fallback to BGP4-MIB, some models only use that.
Add junos bgp4 data
Actually update all bpg data in the poller

* fix arista data. refactor some to prevent missing data from mucking things up

* refactor to use $oid_map for BGP4-MIB too

* A few comments to break up teh file a bit

* Junos bgp data an a quick revert for now.

* small cleanup

* fix ios bgp polling, add test data

* check the correct variable
2018-01-18 20:54:38 +00:00
c80f9726c8 feature: Added new EER and Water Flow Rate sensors (#8104)
* Add new EER sensor

* remove bad RRD option

* add waterflow sensor

* add test data result

* added test json data
2018-01-18 20:50:19 +00:00
1da86aa229 device: Added Allied Telesis CPU info (#8111)
Added support to poll both standalone devices and VCStacked
device's CPU info
2018-01-18 20:15:09 +00:00
1f03110b20 refactor: Moved routeros sensors to yaml + fixed divisors (#7946)
* move routeros fanspeed to yaml

* moved more routeros sensors to yaml

* reverted signal migration to yaml

* added routeros test data

* re-saved test data for routeros
2018-01-17 20:25:09 +00:00
df731c165c refactor: Rename cisco-vrf to vrf and enable discovery for junos os (#8033)
* device: Enable cisco-vrf discovery for junos os

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* refactor: Rename cisco-vrf module into vrf

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2018-01-17 12:09:19 +00:00
9a0b06e4de device: Added processor and mempools for EdgeCore switch (#7850)
* Added cpu and mempolls EdgeCore switch

* Added cpu and mempolls EdgeCore switch

* Added cpu and mempolls EdgeCore switch

* Added cpu and mempolls EdgeCore switch

* Added cpu and mempolls EdgeCore switch

* Added cpu and mempolls EdgeCore switch

* Update edgecos.inc.php

* Add files via upload

* Create test.txt

* Add files via upload

* Delete test.txt

* Add files via upload
2018-01-11 22:26:04 +00:00
42e5819130 refactor: Updated discovery/poller to use numeric sysObjectID (#7922)
* refactor: Updated discovery to use a core module for sysDescr/sysObjectID use

* final update hopefully

* revert changes

* more changes + docs

* migrated poller to use numerical sysObjectID

* more updates for sysObjectID

* update any alert rules which might have enterprises. in

* moved schema file

* small updates

* updated getHostOS()

* scrut fixes

* updated sysObjectId -> sysObjectID

* updated sysObjectId -> sysObjectID

* updated remainder of sysObjectId -> sysObjectID

* another sysObjectId -> sysObjectID

* fixed secureplatform test data

* Fix tests: $device is not pulled from the database before polling
Also, update the db in the core discovery module.
2018-01-06 23:00:47 -06:00
fc610195f7 device: Added CheckPoint SecurePlatform support (#8000)
* Added CheckPoint SecurePlatform support

* Changed some issues

* Changed some issues

* Update splat.yaml

* Changed os name to secureplatform intead of splat

* Changed os name to secureplatform

* Changed some issues
2018-01-05 22:06:07 +00:00
4fc946bd21 Move ignore_storage call to discover_storage (#7973)
* Move ignore_storage call to discover_storage

* Remove long if statement
2018-01-04 22:24:06 -06:00
4ffdbe0e6a fix: Fix can't find CPQHOST-MIB (#8024) 2018-01-04 22:42:16 +00:00
91cd338c35 fix: Bgp-peers add missing os junos safi values (#8018)
* fix: Bgp-peers add missing os junos safi values

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* fix: Mirror cisco safi names

* Except safi 4 which is not supported by cisco
bgp mib

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* fix typo

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2018-01-04 22:41:06 +00:00
da54444057 fix: Cisco-vrf discovery for device os junos (#8009)
Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2018-01-03 10:54:48 -06:00
046ed94f7c refactor: Remove all old style snmp calls (#7924) 2017-12-20 21:48:35 +00:00
fff66d3c00 Feature: Generic discovery and poller tests (#7873)
* Processor Tests!

* Capture data from live devices easily.

* fix up some stuff, remove powerconnect things as they seem to be just broken.

* formatting, fix missing assignment
add netonix processor data

* fix multi-line, always add sysDescr and sysObjectID
ios cpm test file

* revert composer change and fix whitespace issues

* add help text

* missed help text

* tighter debug output

* handle empty strings properly and mibs with numbers

* use keys for sorting as intended

* fix type with empty data

* oops :)

* whitespace fix

* try installing fping

* Fix TestCase collision + cleanup

* mark TestCase as abstract
don't run two instances of snmpsim

* better database dumps, improved capture

* style fixes

* fix quotes add a few more tables

* add --prefer-new, properly merge data

* Support separate discovery and poller data. But don't waste space if they aren't needed.

* refactor to use class
collects all code in one place for reusability

* reorganize

* Print out when not saving.

* Support for running multiple (or all) modules at once.

* tidy

* Change unit test to a generic name and test all modules we have data for.

* Add documentation and a few more tidies

* whitespace fixes

* Fix tests, add a couple more modules, more docs

* More docs updates

* Fix scrutinizer issues

* add bgp-peers
2017-12-20 08:36:49 -06:00
e473b03697 Add Huawei VRP sensors to yaml and fix bug in functions.inc.php (#7918)
* Add Huawei sensors to yaml and fix bug in functions.inc.php

* Add Huawei sensors to yaml and fix bug in functions.inc.php
2017-12-16 22:26:43 +00:00
c30a5e8977 feature: Added Mikrotik LLDP discovery (#7901)
* Add Mikrotik LLDP discovery

* Add Mikrotik LLDP discovery

* Add Mikrotik LLDP discovery
2017-12-16 22:23:06 +00:00
84fdfdf542 Junos dwdm interface sensor support (#7714)
* Junos dwdm interface sensor support  …
  four new sensors
    Chromatic Dispersion ps/nm
    Delay s (seconds)
    Q_factor (dB)
    preFEC_BER (ratio)

  reuse of
    SNR, dbm, temperature, current

* new dwdm sensors more generic, ber and quality_factor

* new sensors updated

* renamed html graphs new sensors

*  fixed ber polling

* Change to base SI Hz and s.

* update sensor divisors to bigint

* rename sql-schema/216.sql to 218.sql

* YAML junos dwmd sensor definitions, except BER

* bigint divisor fixed

* deafult 1 divisior

* small fixes including schema change for another PR

* schema fix
2017-12-12 20:27:10 -06:00
9601324142 device: Added temp and humidity sesors + serial for websensor (renamed from cometsystem-p85xx) (#7854) 2017-12-11 20:34:04 +00:00
ef668f4270 Set entPhysicalIndex for comware processors (#7878) 2017-12-09 17:37:29 +00:00
8ab0b2bffd refactor: Replace custom queries with dbDeleteOrphans(). (#7862)
* Replace custom queries with dbDeleteOrphans().
Generalize dbDeleteOrphans() a bit more.  Allow for multiple tables and custom key pairs.

* fix whitespace
2017-12-06 22:44:23 +00:00
0dd3ec25d3 device: Update Cambium devices to the new wireless sensors (#7703)
* Inital cambium refactor

* Refactored tests

* Remove CMM from pmp group

* Add sensors / Give CMM individual OS

* Fix linting

* More Sensors / states and Revised Headers

* Added old graphs / more sensors

* Add modulation rate to sensor

* Fix Hardware detection bug

* Further hardware detection refinments

* Modify pmp hardware detection

* New Wireless Metric - SSR

* SSR Sensor Graph

* Migrate SSR to metric

* Added last metric file

* Add master check to isAp method

* Fix variables in epmp

* CMM Discovery and state addition

* Add another test for cmm
2017-12-06 21:36:01 +00:00
cdf5b05934 Replace usages of array_combine() that match array_by_column() (#7863)
Also, fix up some usages where just array_column() will do.
2017-12-06 08:19:29 +00:00
6cede359ef fix: Do not try and add dnos processors when no usage exists (#7847) 2017-12-04 08:30:28 -06:00
de1e47aa70 fix: Re-moved entity-state discovery from sensors discovery (#7845)
* fix: Moved entity-state discovery file to correct location

* correct fix
2017-12-03 22:10:10 +00:00
b9dc7773d7 refactor: Don't do unneeded snmp queries (#7841)
* Don't do uneeded snmp queries
sensors discovery 26 -> 16
wrapped some poller modules in db checks.  The same could be done for some others, but more work is needed.

* travis fix
2017-12-02 23:18:45 +00:00
5357dd9515 feature: Added support for entity values in sensors (#7805)
* Added info on using OIDs in skip_values for sensors

* added more docs + entity support

* remove whitespace
2017-12-02 22:56:57 +00:00
f1fa61758b feature: Print out operations stats per poller/discovery module (#7839)
* Print out operations stats per poller/discovery module

* Add line return so we can see polled time better.
2017-12-02 22:55:53 +00:00
a21a3fb2b6 feature: Added support Entity State polling (#7625)
* Entity state sensors??

* feature: Entity State polling
Display entity state on the Inventory page.
Allows for alerting based on states.

* fix empty last changed, timezones, alarm parsing, and db updates

* do not display unavailable alarms (80)
add tooltip with state value

* remove debug

* Entity state sensors??

* feature: Entity State polling
Display entity state on the Inventory page.
Allows for alerting based on states.

* fix empty last changed, timezones, alarm parsing, and db updates

* do not display unavailable alarms (80)
add tooltip with state value

* remove debug

* Use a discovery module and only fetch the rest of the data if entStateLastChanged is updated.

* A little more efficient sql use in the case nothing has changed.

* disabled by default, add to docs.

* moved schema file to 220.sql
2017-12-02 20:23:56 +00:00
4a03e7838e feature: Save application metrics to db for alerting (#7828)
* feature: save application metrics to db for alerting
However, alerting will not work because ResolveGlues() is broken.
Can add workaround after state_translations alerting is merged

Does not update all applications yet, not sure if that should be done here or in another PR.

Introduces two handy functions dbDeleteOrphans() and array_by_column().  Will replace those in other locations after this is merged or separate them out if this is not merged.

* remove accidental inclusions

* Add db schema
2017-12-01 07:53:26 +00:00
d6db01abb5 refactor: Refactor fix php codesniffer 3.x issues (#7816)
We cannot use 3.x because it  requires php 5.4, so update to 2.9.1 or newer 2.x release.
2017-11-29 08:23:19 +00:00
3720f0e776 feature: Implement dynamic temperature scale detection and value conversion for siteboss (#7734)
* added comments describing changes needed to be implemented

* Added patch by laf to update the underlying function, modified OID value in yaml to poll string instead of integer

* Second patch to discovery function peer laf/murrant
2017-11-28 20:30:24 -06:00
6b4241381f fix: Fixed UPS time remaining in Mikrotik RouterOs (#7803)
* Fix UPS time remaining in Mikrotik RouterOs

* Fix UPS time remaining in Mikrotik RouterOs

* Remove space
2017-11-27 17:13:09 +00:00
8c8a2e05c6 feature: Added additional sensors for ups-nut
* Add db schema for ups-nut alerting

* Add db schema for ups-nut alerting

* Add db schema for ups-nut alerting

* Add db schema for ups-nut alerting
2017-11-23 20:37:05 +00:00
b45302bf70 newdevice: Updated Checkpoint Gaia detection and added storage (#7656)
* newdevice: Updated Checkpoint Gaia detection and added storage

* update db_schema

* added murrants discovery options

* Rename 216.sql to 217.sql
2017-11-22 23:28:33 -06:00
cfe4cecc8e Precache undefined variable $array_data (#7781)
Not sure of the implications of this but I'm pretty sure it should be $oid
2017-11-22 21:50:22 +00:00