Improves visual identification for sensors
- [x] Docs
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`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
* Fix Zynos temp warn limit
And others, but this seems to be the only one that uses
remove some odd limit restriction in the poller
* More consistent rounding for sensor limits
* round all numeric limits to 10 digits
* update test data
* Remove complex calculation as negative limit values are already swapped as needed.
* Use of dynamic_discovery_get_value in can_skip_sensor in order to use all available oids in skip_values
* Use LibreNMS\Device\YamlDiscovery code instead of keeping duplicated function can_skip_sensor
* Fix Travis errors
Require it explicitly. Makes it easier to understand and matches the style of other values
Questionable YAML changes (either broken before or now broken):
secureplatform: haStatCode
ptp600: receiveModulationMode
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`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
* Adjustment in #9301: Eaton Galaxy HW seems to be the exception here with divisor 10 for voltage
* fix for APC Galaxy UPS (and not Eaton anymore)
* remove Galaxy test data from eaton-mgeups files
* tests: APC Galaxy 7000 test data
* MGE: Improve support for Galaxy devices
* MGE: Improve support for Galaxy devices
* MGE: Improve support for Galaxy devices
* rfc1628 adaptations for Eaton MGE Galaxy 7000
* eaton-mge: test data on a Galaxy 7000
* rfc1628 adaptations for Eaton MGE Galaxy 7000
* rfc1628 adaptations for Eaton MGE Galaxy 7000
* eaton-mgeups: test data on a Galaxy 7000
* Add upsmgUtilityFailure and upsmgUtilityRestored trap support for eaton-mgeups
* dev: eaton-mgeups: OID in the dynamic definition for discovery
* dev: eaton-mgeups: cleaning
* add contributor
* add contributor
* Feature: Collect VRP Entity details in the Huawei MIB
* Feature: Collect VRP Entity details in the Huawei MIB - Add Test Data
* Renaming of the test file vrp_5720_vrf.snmprec
* Added json test files
* Update vrp_5720_vrf.snmprec
* Update vrp_5720_vrf.snmprec
* Update vrp_5720_vrf.json
* Updated processor and mempool discovery to limit descr field
* Updated test
* Updated tests again
* Updated json test data
* Update vrp_ce12804-entity.json
* Update vrp_ce12804-entity.json
* Update vrp_5720_vrf.json
An exception in one module should not interrupt the process for other modules.
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`
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`
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`
* changed limit values in routeros.yaml to allow for the divisor value of 10
* changed the code so divisor/multiplier is only used for oids
* updated json test file
* fix: Apply divisor / multiplier to high/low limits in sensors
* Updated test data for airos
* updated sensors test data
* Updated test data
* Updated test files
* updated dell-rpdu tests
* Updated to do division / multiply after check for value
* 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
* 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
* 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
* 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
* 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.
* Initial commit. OS definition/polling, temp sensor discovery/polling, MIBs, logo, snmprec test
* replaced logo with 32x32, shortened sysObjectID in definitions, modifided sensor discovery
* fix syntax error caught by inspection
* requested chases to siteboss temp discovery file, removal of siteboss temp polling file
* converted temp sensor to yaml and added better support to skip values
* updated to use pre_cache with index
* 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
Order statements to give some results precedence over others.
Union the results but limit 1 so we can stop when we get the first result.
Checking if variables doesn't work very well without the device_id
* Added support for ping only devices.
* Renamed sql-schema/206 to 207.
* Discovery tried to detect the OS when it shouldn't.
* Updated db_schema.yaml
* Added ping icon.
* Don't show unused graphs and tabs when SNMP is disabled.
* Allow the user to specify OS of ping only devices.
* Removing custom OS now changes it to 'ping'.
* Removed unnecessary use of mres().
* UI select box for SNMP enable/disable.
* Hide device_ping_perf if ping is disable on device.
* Fixed SNMP settings update status messages.
* Added functionality to add ping only devices via the web ui.
* Added ping only option to addhost.php
* Added ping only support to snmp-scan.py
* Moved sql 208 to 211
* Fixed scrutinizer issues.
* Fixed broken ossearch.
* Added ping only support to the API.
* Updated API doc.
* Added (optional) to OS and hardware description. Hid Port Settings, Applications, Modules, Storage, Processors, Memory and Components from the edit menu
* Style fix.
* Updated ping icon.
* clean() instead of mres(). More escaping. Better help in snmp-scan.py and addhost.php
* Fixed scrutinizer issue.
* Always try SNMP in snmp-scan.py, new option for it in addhost.php. Slice instead of chunk in ajax_ossuggest.php. Other minor style changes.
* Updated sql modifications to insert the new column in the same place as in db_schema.yaml.
* fix: lldp discovery change local port resolution
dot1dBasePortIfIndex seems to skip some ports in certain configurations on Cisco devices.
Add quirk for Calix devices that return different port labels than they actually are.
* bdcom uses NMS-LLDP-MIB too.
* use dot1dBasePort to look up ifIndex if we can.
fix find_port_id() deleting all variables when device_id was given
improve find_port_id() to find ports where only a number is given
fix orphan deletion count
fix insert and update of links with strings where int are required
* refactor: discovery protocols re-write
extract more code to make it easier to read
use snmpwalk_group
walk lldpRemTable instead of lldpRemoteSystemsData
Optimize discover_device to reduce dns lookups of bad dns names
Make discovery_by_ip behavior consistent between cdp and lldp
move can_skip_discovery to discovery functions
Tested lldp, cdp, and ospf.
* always discover links even if the remote device isn't in system
Fix discover_link always updating
* fix style
* fix update, not fetching id
* increase platform length. Most devices use sysDescr here, which is max length 255
* remove orphaned links
* update db_schema.yaml
* feature: Allow ignore_mount, ignore_mount_string, ignore_mount_regex at OS level
* Change the storage settings to override global instead of merge.
Add documentation
* refactor: use the Config class includes/discovery
* fix issue with $config variable not accessible in include-dir.inc.php
* improved whitespace
* Tidy up discovery_by_ip
* feature: Improve yaml state discovery
Handle state values that are returned as strings instead of int
Synchronize state values for existing state translations so we can change them without creating a new translation and losing historical data
More extensive/verbose yaml discovery phpunit tests
dbBulkInsert, use the first entry instead of requiring the first entry to be at index 0
* Update sensor state documentation
re-order values for better readability
remove os check
Use snmpwalk_group since it is more flexible
* Add some more debug output in dynamic discovery