* Add transceivers module
Move os specific code to OS
Fix errors and updated connector names
Add RouterOS, a lot less data there.
Add Comware
Add Exa, required a transformer function (mw to dBm)
Add Junos, revision was too short
Just starting on ui
Graphs, and more ui
some polling fixes
collapse header for small screens
refactor a bit
Missed graphs
Transceivers icon inline
Use @once on popup javascript
update db_schema.yaml
Don't show transceivers in basic view
basic view could use a review
Apply fixes from StyleCI
API functions
Comware don't fail if port is missing
Apply fixes from StyleCI
Add alert rules to collection
Device Overview
Attempt to fix bad alert rule, probably needs more
Fix up Comware and remove old sensors
Mark transceiver metrics without thresholds as Unknown
Routeros cleanup
Exa cleanup
Handle missing port
Graph allow filter by channel
More translations
Add transceiver graphs to port graphs
Add Cisco support, use entPhyscial module data if available
Fix OcNos divisors
Labels on transceiver page
Show encoding if available
Hacky OcNos port mapping
Fix up Junos optics and remove old sensors
FS switch support
Metric casts to prevent thrashing
Extra transform_function support
Add link to transceivers page from overview
Change default sort to group by type, then channel
move some code out of overview blade template
Fix bad type ocnos
Apply fixes from StyleCI
Add scales to graphs
Add some test data
Default sort order for metrcis in SQL applied by default
Transceiver metrics threshold manual settings via WebUI and API
Fixes to channels verbiage
Fix severity calculations
Add cable field for SM/MM/Copper
Apply fixes from StyleCI
update test data
Show DDM
Update DB schema file
Extend serial field to 32, even though devices shouldn't be able to have one longer than 16
Missing import
Add status field to database, that way we can support snmp implementations that only return an enum
Add missing files
Fix db_schema
Fix style
Fixes
Style fix
Work around phpstan issue
Update transceivers.blade.php
Missed getStatus() call
Prevent extra dots when channels are not changed
Update module to match upstream
Save ocnos metrics as sensors
Move to regular sensors
add entity physical index
Update UI to sensors WIP
Apply fixes from StyleCI
Forgot one change
Update ui to use sensors
Remove transceiver metrics
Remove metric os discover code
fs-switch pending
Remove transceiver metrics for fs-centec
Exa link up
Revert all test data
Fix up transceiver module interface
Remove unused Convert class
comware cache and transceiver type
Fix some transceiver metrics filtering and formatting issues
Consolidate display formatting
Coalesce commare hh3cTransceiverTable walks to prevent double walk
Use group to identify transceiver sensors
Fixup routeros
Fix up cisco
update db_schema
Small addition to docs
Improve overview layout and add graph popup
Update Junos
update css files
ddm should be nullable
Increase the field length for type and model
Cisco Improve detection when there is an intermediary container
Add transceiver test data
Apply fixes from StyleCI
Fix incorrect test data
Improve display formatting
Fix test data
Apply fixes from StyleCI
Fix up more data
Fix up more data
Fix incorrect return type in routeros
Update ocnos data
* Remove some remaining references to transceiver_metrics table
* Refactor poller to allow modules to run even if the device is down
Include core in config (but not webui) to avoid silly shenanigans
Inject datastore into polling
* Needed to split datastore interface
* Cleanup some data_udpate() references
* Apply fixes from StyleCI
* Fix legacy poller :D
* Output to the correct stream
* Fix lint issues
* Apply fixes from StyleCI
* Fix discovery not including core and submodule handling
* Use whereRaw
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* Fix warnings up to Arbos
* fixes a-c
* a-r
* a-vrp
* There and back again
* Update test data, couple fixes
* PHPSStan fixes
* style fixes, and fix Asyncos, whoops
* flip serial back.......
* less bogus data
* Poweralert sysName during polling too
* make sure things are calculated in the correct order
* fix style and bad nullables
* update test data
* A comple more conversions
* cambium ptp, misc, and hardware_mib
* remaining except vmware-esxi
* Fixes
* Update baseline
* fixes and fix up baseline
* adjust SnmpQueryMock to upstream options change
* data corrections
* restore slashes
* correctly handle all options input in SnmpQueryMock
* undo ftos changes
* restore vccodec sysDescr
* don't hardcode index for Mikrotik LTE wireless statistics
* sync test data now that Mikrotik LTE index is no longer hardcoded
* sync tests data now that Mikrotik LTE index is no longer hardcoded
* fix whitespace
* sync test data now that Mikrotik LTE index is no longer hardcoded
* add test data for Mikrotik LtAP mini (aka RB912R-2nD)
* Re-write Routeros wireless code
It now works like most other devices
* fix style
* update baseline
* Remove station 60G rate
* use base unit of m, not km
* move interface stats name inside loop to avoid a walk when it does exist
* notification
* fix typo
Co-authored-by: Tony Murray <murraytony@gmail.com>
* bug-fix and new features
Fixed incorrect OID for rate, renamed rate to TX-Rate as per update from mikrotik.
Added support for link distance
* Fixed indent issue
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.
Fixes: #8933
* feature: Wireless Sensors
Includes client counts for ios and unifi
Graphing could use some improvement.
Alerting and threshold ui not implemented
WIP: starting OO based wireless sensors.
Class based functionality working
remove old functional files
add schema file
discovery needs to be enabled, not polling
fix up schema
fix Unifi discovery not returning an array
Add some debug when discovering a sensor.
Fix style.
Add missing semicolin
Add a null object (Generic) for OS.
Fill out some phpdocs
Re-organized code
Each sensor type now has it's own discovery and polling interface
Custom polling tested with Unifi CCQ
Left to do:
Implement UI (Graphs and Custom thresholds)
Alerting
Testing
Fix event message text
Remove runDiscovery and runPolling from OS, they are unused and don't belong there.
Cleanups/docs
Missed this file.
Remove the requirement to fetch the current value to check validity.
Do that automatically if current is not specified
A few cleanups here and there
First pass at graphing.
device_ and wireless_ graphs added.
Add RouterOS support
Singleton OS instance isn't required right now.
Remove that to allow some memory to be freed.
Add wireless to the device list metrics.
Make all metrics clickable
Tweak graphs a bit
Implement limit configuration page.
Use sensors page as common code instead of duplicating.
Clean up some javascript interactions: Allow enter on values to save. Cancel if update is not needed. Enable the clear custom button after setting a custom value.
Add some wireless alert rules to the library.
Add documentation.
Add unifi client counts by ssid in addition to radio.
Optimize Sensor polling a bit.
Add HP MSM clients support (for full controller)
Fix function accessibility
Formalize the discovery and poller interfaces.
Add Xirrus clients and noise floor
move module interfaces to a more appropriate place.
push caching code up to os, unsure about this do to the limitations
No point in selectively enabling wireless discovery. We only discover if the device supports something.
Add RSSI, Power, and Rate.
Add these sensors for Ubnt Airos.
Clean up some copyrights.
Reduce the amount of files need to add new types.
Leave graph files for consistency and to allow customization.
Remove the old wifi clients graph completely.
ciscowlc should have improved counts (total and per-ssid)
Schema didn't get added.
Impelement the rest of the AirOS sensors
Reformat and re-organize the Airos.php class.
Add several UBNT AirFiber sensors
A few fixes add links to the section headers
Add HP MSM mibs.
* Schema file got dropped in rebase.
* Add wireless menu to view sensors across all devices.
Icons in the menu need help :/
* Add HeliOS, Mimosa, and Siklu support
Sensors added SNR + Noise
* Add power and utilization to Unifi
* Update polling to prefetch all sensor data in a few snmp requests as possible
* Add Extendair: tx+rx power, aggregate rate, frequency
* Add a check for duplicate sensors in discovery. Just print an error for now.
* Add Bit Error Ratio (named error-ratio to allow for bit error rate to be added if needed)
Fix an incorrect link in the wireless sensors table
* Add error rate and change all bps and Hz to use si units
* Fixes to limits and frequency display
* Fix overview graph frequency display
A few decimal place tweaks
* Don't allow switching sensor and wireless-sensor graphs, it doesn't work.
Change individual distance graphs to use si units
* Go through the OS and make sure I got all the sensors I can (probably missed some still)
Because pollWirelessChannelAsFrequency() is generic and a little complex, so pull it up to OS.
Message to help developers adding supports that don't return an array from discover functions.
* Fix some issues
* Remove noise and signal for now at least
A couple more fixes
Add a notification
* Oopsie
* Bonus AirFiber sensors