Fix for issue #8950
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [ ] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
* Added Arris C3 to cmts.yaml
* Added Arris C3 hardware
* ARRIS CMTS->Move from cmts to arris_c4 yaml
* Fixed some Arris_c4 definitions
* Added Arris C3 CMTS
* Fixed some typos
* Arris C3 test files
* Arris C4 test files
* Deleted not anymore valid files
* Renamed from underscore
* Fixed some typos
* Correct test files
* Removed old snmprec files
* Correct test files v2
* Deleted more old files
* Return to cmts for valid_sensor() for Arris C4/C4c
* Re-done test files
* Re-do test files after rebase
Added discovery for state of serverscheck flooding sensors.
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
Use Log facility when Laravel is booted.
Update init.php so we can easily boot Laravel for CLI scripts. (and just Eloquent, but that may go away)
Move all debug setup into set_debug() function and use that across all scripts.
Log Laravel database queries.
Send debug output to librenms log file when enabling debug in the webui.
Allow for colorized Log CLI output. (currently will leave % tags in log file output)
** Needs testing and perhaps tweaking still.
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [X ] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
This is a fix for #8746, which added support of SFP module discovery on Procurve devices. I noticed a lot of false positive alerts for current bias when we launched this in production, so looked once more through MIB/code.
MIB data:
hpicfXcvrBias - Tx bias current in microamps
hpicfXcvrBiasHiAlarm - Transceiver bias high alarm threshold limit in microamps
hpicfXcvrBiasLoAlarm - Transceiver bias low alarm threshold limit in microamps
Sensor discovery sample:
hpicfXcvrBias.49 = 23254
hpicfXcvrBiasHiAlarm.49 = 100000
hpicfXcvrBiasLoAlarm.49 = 0
hpicfXcvrBiasHiWarn.49 = 90000
hpicfXcvrBiasLoWarn.49 = 100
So yes, my mistake was to use 10^-7 instead of 10^-6 divisor for these fields. Fix is in this pull request. Sorry for the inconveniences caused.
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [ ] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
Current implementation for Force10 series doesn't support the switch-blade M-Series model. This PR adds support for mempools and temperature. In my test environment (still 1.31) I have processors utilization support as well, but I have to test that in the new way processors are handled since 1.37
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
* fix OIDs for temperature sensor and add test data
* Add current values to discover sensor and test data
* Redo test data
* Split up power/current/voltage sensors to individual files and remove json data
* Whitespace fix
* Fix temperature sensors - spelling mistakes
* Code changes to voltage/power/current sensors
* Go to yaml, add mibs and json
* Update avaya-ers.yaml
Extreme bought avaya network assests so rebranding and moving some files.
* Add files via upload
Extreme bought avaya networking assets and so rebranding to Extreme and adding logos with OS for easier reading when on devices pages
* Update avaya-vsp.yaml
removing .1.3.6.1.4.1.45.3.79.1 This is a VSP 7024xl from avaya. This is techincally not VOSS but BOSS operating system. It should be in BOSS and avaya-ers.yaml
* Add files via upload
* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php
* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php
* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php
* Update extreme-voss.inc.php
* Rename avaya-vsp.inc.php to extreme-voss.inc.php
* Rename avaya-vsp.inc.php to extreme-voss.inc.php
* Rename avaya-vsp.yaml to extreme-voss.yaml
* Update and rename avaya-vsp.yaml to extreme-voss.yaml
* Update avaya-ers.yaml
* Rename avaya-ers.yaml to extreme-boss.yaml
* Rename avaya-ers.inc.php to extreme-boss.inc.php
* Update and rename avaya-ers.inc.php to extreme-boss.inc.php
* Update and rename avaya-ers.inc.php to extreme-boss.inc.php
* Update and rename avaya-ers.inc.php to extreme-boss.inc.php
* Update and rename avaya-ers.inc.php to extreme-boss.inc.php
* Update and rename avaya-ers.inc.php to extreme-boss.inc.php
* Update extreme-boss.yaml
* Update extreme-voss.yaml
* Update and rename extreme-boss.yaml to boss.yaml
* Update extreme-voss.yaml
* Rename extreme-voss.yaml to voss.yaml
* Rename extreme-boss.inc.php to boss.inc.php
* Rename extreme-voss.inc.php to voss.inc.php
* Rename extreme-boss.inc.php to boss.inc.php
* Rename extreme-voss.inc.php to voss.inc.php
* Update and rename extreme-voss.inc.php to voss.inc.php
* Rename extreme-voss.yaml to voss.yaml
* Rename extreme-voss.inc.php to voss.inc.php
* Update and rename extreme-voss.inc.php to voss.inc.php
* Update and rename extreme-boss.inc.php to boss.inc.php
* Update and rename extreme-boss.inc.php to boss.inc.php
* Update and rename extreme-boss.inc.php to boss.inc.php
* Rename extreme-boss.inc.php to boss.inc.php
* Update voss.inc.php
* Update boss.inc.php
* Update boss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Update boss.inc.php
* Update boss.inc.php
* Update voss.inc.php
* Update boss.inc.php
* Update voss.inc.php
* Update voss.inc.php
* Rename avaya-vsp_8404c.snmprec to voss_8404c.snmprec
* Rename avaya-vsp_8404.snmprec to voss_8404.snmprec
* Rename avaya-vsp_8284xsq.snmprec to voss_8284xsq.snmprec
* Rename avaya-vsp_7254xtq.snmprec to voss_7254xtq.snmprec
* Rename avaya-vsp_7254xsq.snmprec to voss_7254xsq.snmprec
* Rename avaya-vsp_7024xls.snmprec to boss_7024xls.snmprec
* Rename avaya-vsp_4850gts.snmprec to voss_4850gts.snmprec
* Rename avaya-vsp_4850gts-pwr.snmprec to voss_4850gts-pwr.snmprec
* Rename avaya-vsp_4450gsx-pwr.snmprec to voss_4450gsx-pwr.snmprec
* Rename avaya-ers.snmprec to boss.snmprec
* Rename avaya-ers_1.snmprec to boss_1.snmprec
* Update and rename avaya-ers.json to boss.json
* Update and rename avaya-vsp_8404.json to voss_8404.json
* Update and rename avaya-vsp_8404c.json to voss_8404c.json
* Update and rename AvayaErs.php to Boss.php
* Update Boss.php
* Restore processor_type to avaya-ers in test data
* Update voss_8404c.json
* Update extremeboss.svg
* Update extremevoss.svg
* Moved temperature sensor to yaml
* Enabled sensors , it's working now
* Enable mempools and disable unused wireless discovery.
* Tests for fiberhome OS, variants can be merged on future
* Add Listmile mibs
Created custom lastmile mib
* Add Lastmile CTM support
* Update test description and remove wireless sensor
* Requested changes
Renamed OS
* json test data
* Updated test data
* Fixing HP Proliant state sensors
* Numeric state data (-e)
Update to new state style
This currently cannot be tested. We don't discover sensors until the second discovery, because we poll 'hardware' instead of discover it.
* Fix whitespace
* Add contact,relay,outlet discovery; update yaml,snmprec,json
* Fix formatting
* Another attempt at fixing sensors
* Update state mappings and fix json sensor ordering
* Capture values numerically.
Remove extra if/else statement
Make test data more interesting.
* Fix whitespace.
* Update sensors test data for order_by
Default behaviour is to set low limit to (current temperature - 10 deg) and high limit to (current temperature + 20 deg) upon discovery. Changing that to abs values +5 and +35 deg respectively to be in realistic boundaries.
* 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
* 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)
* 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
* 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.
* 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
* 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
* 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
* fix: use typical Mikrotik operating range for default temperature sensor limits.
* fix: Use static offsets for default temperature limits. Previous scaling did not work well for small or negative values.
* newdevice: support Avtech RoomAlert 32E/W
Move avtech discovery to yaml, took a bit of trickery
* More flexibility when checking pre-cached data
A little cleanup
* Add support for RoomAlert 32E/W external and wish temp sensors
Add RoomAlert 11E support (just temp sensors)
Updated ROOMALERT32E-MIB