* BGP Polling: Add error code polling
* Rework describe_bgp_error_code and fix bgp error fields migration
* Add real test data for IOS-XR and Arista EOS
* Default to null for group yaml discovery.
* Update test data for a154bda yaml group null fix.
* Changes to guessed limit functions for sensors.
Original behaviour
===================
The file `includes/discovery/functions.inc.php` contains
`sensor_limit_low()` and `sensor_limit()` which both attempt to
guess a sane value for sensors when no explicitly defined
low_limit or high_limit can be found during discovery.
Both switch control structures used in those two functions
have empty case statements which means that if one of those matches,
it's going to fall through and run the code for each subsequent
case until a `break` is reached.
For example, when we call `function sensor_low_limit(dbm, -13.036)`
it will return the value `-12.3842` instead of `null`. That is
because there will be a match at `case 'dbm':` which falls through
all the way to `case 'cooling':`, where it performs
`$limit = -13.036 * 0.95` before hitting a `break`.
Changed behaviour
===================
Removed `power_consumed` and `count` guessed low_limit and
high_limit, I personally added those sensor classes in PR #9471
when I didn't understand that a switch control structure has
fall-through behaviour so I can guarantee that guessing limits for
those is a mistake on my behalf. It should not be there, only
power_factor can have guessed limits. Apologies for the issue,
I'm still a beginning programmer!
Furthermore, I removed guessed high_limit values for `current`
and `power` because these are supposed to draw higher values as
more devices or components are installed on for example a PDU or
a chassis.
Finally, I removed guessed low_limit and high_limit for `dbm`
sensors, there is a much too large variance in power budget on
commercially available optical transceivers for there to be a
sensible window where you can guess these values.
* Documentation on adding sensor classes.
* Update test data - sensor limit changes @ 30212d2
* Added BGP Peer Descriptions
* Fixed formatting
* Added to device routing tab too
* Some text formatting
* Test files
* Added default null to bgpPeerDescr
* Added db_schema.yaml
* Fix default value for bgpPeerDescr
* Fixed Order and Search box
* Added glyphicon for success/error
* Switch to toastr notification
* Removed unused bootstrap code
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`
* 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
* tests: Added testing fro Arista EOS BGP
* fixing tests
* small updates
* last one
* more updates
* Account for no space after = in snmp data
always load_os() when a new device is freshly loaded by device_by_id_cache()
* don't be fatal in load_os()
* Update json to correct data