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`
Don't delete skipped ports when using selected polling
Improve output of port polling module.
Update ifOperStatus and ifAdminStatus even when skipping.
Warning! causes a semantic change where ifAdminStatus_prev and ifOperStatus_prev are updated every poll, so they will only be mismatched for one poll. This could cause alerts to behave differently.
Add an optimization if less than 10% of the ports are disabled (or less than 5), walk the base oids.
Time improvement on test device Full: 12s, Selective: 8s, Optimized 4s. (no disabled ports on device, many down)
Another test device.

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
* Fix Calix OS definitions
The main change is EXA (E7, etc) and B6 (Occam) devices are now their own OS
Now the follow OS exist:
exa: E7 EXA, E5-400, E5-48, E3-48, E3-8G
occamos: B6
Unchanged:
calix: E5-1**, E3-12C
axos: E7-2 AXOS, E9-2, E3-2, E5-520, E5-16F, E3-16F, E5-30x
* fix tests
exa_e7-2 seems like bogus data.
* additional tests, fix an error in the yaml
* Remove extra line return
* Add missed file
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`
PR 183 from librenms-agent contains the script to make this work
https://github.com/librenms/librenms-agent/pull/183
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#8755
I have not added test data as it would require filterting quite some LLDP/IP's etc information.
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`
Mostly useful for debugging
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`
- Added port discovery for cmm3 (not available for cmm4, not that i could find)
- Added discovery for cmm4
- Added Power port cmm4
- Removed Processor bug by disabling processor on device.
I am unable to test CMM4 and may need someone to do so or review for possible errors.
Fixes Issues #8732, #8731
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`
* device: Initial support for Allied Telesis Wireless devices
This commit provides basic info for Allied Telesis TQ Access Points
* device: allied wireless initial test data
* device: allied wireless
Fix up mibs.
-- Moved ATKK-WLAN-ACCESS to awplus mibs folder
--- ATKK-WLAN-ACCESS mib relies on AT-SMI-MIB
-- Changed Allied-wireless to look at awplus mibs folder instead of allied
--- As above due to newer AT-SMI-MIB file
- Performed new snmprec with walk on enterprise OID
-- For some reason the enterprise and wireless specific tables are not
walked by a default snmpwalk.
* add snmpwalk for analysis
* Attempt at wireless polling
* Delete allied-wireless-snmpwalk.txt
* device: fix basic allied wireless
* Update allied-wireless.json
* Simplify Allied Wireless test data
* fix allied-wireless definition
* device: allied-wireless renamed to allied-tq
* Update allied-tq.yaml
We match "iosxe" OS as well for POE polling on cisco devices, as they are using the same MIBs.
This will add support for Catalyst 3850, as well as probably Cat4500 family as well.
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`
Currently has a file handle leak (and will eventually run out of handles) related to the self update process.
Either need to fix that or rip out self-update and leave that up to cron or something.
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`
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`
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`
- Added initial detection for EfficientIP SOLIDserver
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`
Fixed an issue in the SRX session graphing code which caused Junos BGP sessions to alert as down even though they were established. Previous pull to add the session graphs: #8815
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 was previously a pull request that was closed#8721
Not sure why it was closed or if it was abandoned since the branch they had was deleted, but I just put everything back together along with some test data. Kudos to @centralscrutiniser for the code in the original request.
* Change max load from 5000 to 50000
Perhaps a load value of 50000% seems excessive, however it can happen. (Example: a heavily loaded compute node with 48 CPU cores that produces loads of ~15000%, printed as 150 by tools htop).
* Remove maximum value for load averages
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 was an obvious bug, the pattern in all similar .inc.php files for other apps is always `$metrics[$something] = $fields`, assigning the array itself to be an element of itself must have been a mistake (that makes it impossible to create application metric based alerts based on disk SMART status).
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`
* add json_app_get function
* add numeric testing and version support
* now use json_app_get
* remove some unneeded code
* update the docs for json_app_get some more
* make the format checker happy
* add in min version support and now take extend name instead of the partial OID
* hmm... don't make min version optional
* add Exception usage for this all make min version actually work
* minor formatting cleanup
* minor style cleanup
* update json_app_get with $throw_me setting
* Use exceptions to fully handle errors.
Always update the application. Include error message for use in UI.
Move data to data key for easier parsing.
Add test data
* make a few changes to the lovely changes from @murrant
* style cleanup
* now attempt parsing it the old way if a error of -5 is returned
* add new exceptions and rework them all
* add new exceptions and min version 0 no longer bypasses the key checks
* redo the error codes a bit and improve the comment about it all
* fix a a bit of formatting
* added JsonAppException and make the other JsonApp stuff a sub of it
* note JsonAppException
* fix class creation
* JsonAppBlank now extends JsonApp
* doh! add <?php
* update the poller to properly use the new exceptions
* no longer check for error twice and make sure the data key is present
* cleanup processing of legacy scripts
* tweak this a bit
* white space fix
* fix the tests for fail2ban
* Blue Coat device updates
* Blue Coat device updates
* Updated PHP code per @laf comments
* YAML update for Packetshaper
* SSL Visibility YAML and snmprec file
* Cleanup problematic MIB files which should not have been there
* Reset Packetshaper YAML to original
* Fixed typos and value bugs in inc files|added missing definitions.inc.php entries to display graphs
* Fixed SQL typo
* Corrected SQL file names
* Update 251.sql
Hello
For VRP devices supporting POE, the goal is to fetch only the strict necessary values instead of all the table to improve the polling time (devices tested, 5720, are quite slow to return SNMP values).
Test Data is unchanged.
Bye
PipoCanaja
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`
* Poe Polling Code, Poe Graphs, and Huawei MIB
* Reverting the reindent done after pre-commit script
* Cleaning of code not used for Cisco IOS, removal of untested Procurve code, and restore of legacy generic code (tested with Cisco+huawei)
* Rename MIB file
* Rearranged duplicated code
* Cleaning of variable not used
* Cleaning of commented code after night validation in test environnement
* Cleaning after pre-commit.php comments
* test data with PoE oids for huawei 5720
* test data with PoE oids for cisco 2960X
* Blue Coat device updates
* Blue Coat device updates
* Updated PHP code per @laf comments
* YAML update for Packetshaper
* SSL Visibility YAML and snmprec file
* Cleanup problematic MIB files which should not have been there
* Reset Packetshaper YAML to original
* Added json test data
* Add netspire os support
* Update netspire.yaml
* Change from numerical oid to regular oid and readd poller/discovery modules
* Remove mib_dir and change os polling
* Add support for Allied Telesis AlliedWare Plus products
- Uses mibs from 5.4.7-2.1 for AlliedWare Plus products
- Updates Legacy AlliedWare mibs
- Added Allied Telesis svg
* Remove unnecessary "trim" from snmpget
* Add new line to end of file
* Minor fixes for commit
* awplus: initial ntp commit
This isn't completely working, however initial patch of it partially working
* awplus: Add NTP support
- Fixed polling issues for awplus. Now offset and delay graphs work.
- html/includes/graphs/device/ntp_*.inc.php
-- Removed extra "\" from MAX count which showed up in Graph legend
- html/includes/graphs/device/ntp_delay.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)
- html/includes/graphs/device/ntp_dispersion.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)
- html/includes/graphs/device/ntp_offset.inc.php
-- Removed rrd minimum (-l 0). This is because offset can be below 0.
--- It's better for the graph to auto scale than set a fixed minimum to display here.
- html/includes/graphs/device/ntp_stratum.inc.php
-- Changed graph to go from 0 to max of 16. NTP Stratum can only be 0 to 16.
* awplus: Add NTP test data
* updated awplus ntp poller
* device: awplus convert NTP poller into seconds
* device: fix NTP graph formatting
* device: Improve NTP formatting
* device: unset awplus NTP variable
* fix formatting
* device: awplus change NTP from numerical OIDs to named
* device: update awplus ntp json tests
* device: fix cisco and awplus ntp database creation
* device: update awplus json
* update FOUNDRY-SN-ROOT-MIB to support MLXe and more
* add some (former) brocade rewrites
* improved IronWare version detection
* work around IronWare signed versus unsigned bug
* correct coding guidelines
* update FOUNDRY-SN-ROOT-MIB to support MLXe and more
* add some (former) brocade rewrites
* improved IronWare version detection
* work around IronWare signed versus unsigned bug
* correct coding guidelines
* pop spaces around mempool checks
* Update boss.inc.php
Another easter egg for the rebranding of voss and boss. Lost the memory usage. Modifying allowed the voss and boss to graph memory again.
* Update voss.inc.php
Another easter egg for the rebranding of voss and boss. Lost the memory usage. Modifying allowed the voss and boss to graph memory again.
* Rename voss.inc.php to avaya-vsp.inc.php
* Rename boss.inc.php to avaya-ers.inc.php
* Update voss.inc.php
* Update boss.inc.php
Boss hardware is a very long string by default for sysDescr. I want to convert these long strings to "ERS-" and "VSP-".
root@cox-home-dashboard:~# snmpwalk -v2c -c public 192.168.1.6 .1.3.6.1.2.1.1.1
iso.3.6.1.2.1.1.1.0 = STRING: "Ethernet Routing Switch 4850GTS-PWR+ HW:14 FW:5.8.0.3 SW:v5.11.1.013 BN:13 (c) Avaya Networks"
root@cox-home-dashboard:~# snmpwalk -v2c -c public 192.168.1.9 .1.3.6.1.2.1.1.1
iso.3.6.1.2.1.1.1.0 = STRING: "Ethernet Routing Switch 3510GT-PWR+ HW:17 FW:5.3.0.8 SW:v5.3.6.015 BN:15 (c) Extreme Networks"
* 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
* Add ibm-dpi os support
* SNMP test data
* Remove blank space
* remove snmp_get
* Rename to dpi
* Add json test data and change text to IBM DPI
* Update json test