* OcNOS transceiver temperature display fix
Temperatures were not displayed in the transceiver area. Update the group to fix that issue.
* Update test data
* 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
* Update discovery-protocols.inc.php
When using the LLDP-V2-MIB, the device may reply with lldpV2RemPortId as hexadecimal. To convert it to a string, this update checks if the lldpV2RemPortIdSubtype is '5' = "interfaceName(5)"; if so, the code removes the character ":" from the value of lldpV2RemPortId and tests if it is hexadecimal. If the test is positive, it translates it into a string.
* Update discovery-protocols.inc.php
Added lines 342 to 345 to convert the lldpRemPortId when is hex and lldpRemPortIdSutype is 5.
* Update discovery-protocols.inc.php
Importing lib StringHelpers.
* tabs + tests PANOS
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* AuthSSOTest: clear roles cache
* PollingJob: When a poller module doesn't exist, return null instead of false. Skip all other checks and disable polling in that case.
* Sensors: Guess high and low limits separately as needed
* Sensors: drac test psu current data was wrong, referencing the snmprec, 8 / 10 and 0 / 10 should be the values
NOTE: drac is messed up and runs a billion snmp queriess for no reason
* please phpstan
* Sensors: limits reference old code
move to "creating"
* Fix gw-eydfa accidental assignment
* Fix ies5000 test data now that the bad state is removed
* Fix ies5000 test data part 2
* Move sensor discovery reset into discover_device()
* infinera remove duplicate sensor (also a lot of trailing whitespace apparently)
* Fix innovaphone bad yaml discovery
* module tests should be using null when test data doesn't exist, not an empty array
* When discovery or polling is not supported, dump null instead of an array.
Account for nulls in testing
* update ISE serial
* Janitza was seemingly wrong before
* Remove some private data
* bgp-peers requires ipv4-addresses and ipv6-addresses for bgpPeerIface
* fix polycomLens broken state sensor discovery
* Raritan pdu and pdu2 test data was combined in one test file, split it out
* scs-ks duplicate temperature sensor indexes
* sentry3 someone tried to avoid breaking stuff but just broke things more
* smartos-dcp-m fix incorrect numeric oids
* ssu2000 apparently test data was wrong, must have fixed a bug in the code.
* timos remove duplicate dbm sensor definitions
* bgpPeerIface is working in tests now
* Fix moxa-etherdevice when mibs are a bit different
* xw_to_dbm negative values should return null
* Update cisco test data due previous fixes/changes
* One more bgpPeerIface
* Add orderBy to ospf module db dumps
* Remove links test data for now
* Improve handling of bad data in ipv6-addresses module
* Convert Config to a singleton
Continuation of #14364 by @Jellyfrog
This time, make the old class a shim for the facade. Will update references in a separate PR.
* Remove logging config call
* Apply fixes from StyleCI
* Fix bad Git constructor call
* Fail on config table does not exist instead of throw exception
* Inline LibrenmsConfig::isRegistered()
* Debug call in case there are more issues,
remove before merge.
* Fix up config tests
* Allow config cache controlled by CONFIG_CACHE_TTL (disabled by default for now)
* Enable config cache for tests
* Remove debug statement and deprecation phpdoc
* Apply fixes from StyleCI
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Modification of the MIB name and extension to support all LS and PS backup power sources, including the addition of hardware, firmware, and serial number.
* Fix os name
* Added snmprec file from ISE SNS-3595K9
For Cisco ISE SNS-3595K9 Support
* Create ise_3595.json
For support for Cisco ISE SNS 3595-K9
* ISE: added Support for SNS-3595-K9
Added sysObjectID from SNS-3595-K9
* Adding support to Infortrend DS3016
* Adding snmprec for Infortrend DS3016
* Delete tests/snmpsim/DS_3016.snmprec
* change of the infortrend logo
* change of the infortrend logo
* add the infortrend logo
* Delete tests/snmpsim/infortrend_test.snmprec
* again another logo replacment
* again another logo replacment
* again another logo replacment
* update yaml file to display sensor state
* Delete includes/definitions/discovery/infortrend_orig
* typo missed the . at start of oid
* change logo based on req. from PipoCanaja
* on req of PipoCanaja to fix the structure of the folder
* replacing the logo as req. from PipoCanaja
* adding temperature sensor and serial number
* improving sensors
* removed wrongly added chars
* removed MIB from wrong place
* Murrant's request for snmprec file
* adding Voltage sensor monitoring
* Skipped the value that are irrelevant. Yay!
* Update .gitignore
* Fix infortrend.yaml
* Create infortrend_ds3016.json
* fix infortrend.yaml
* Update infortrend_ds3016.json
* Update infortrend.yaml
* Update infortrend_ds3016.json
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Update CISCO-LWAPP-TC-MIB
Uploaded latest version from Cisco Feature Navigator
From the original Cisco MIB:
Deleted duplicate END in line 868
Change the names “dot11_6ghz” and “dot11_xor_5_6ghz” by removing the underscore (example: “dot11-6ghz” “dot11-xor-5-6ghz”)
* Update Iosxe.php
Added Wireless Controller module
* Update iosxe.yaml
Added AP count and Wireless Client
Credit to @AllanHahn
* Create iosxewlc.yaml
Added IOS-XE WLC. Need to add sysObjectID for the future devices beyond WLC9800.
System description has IOS-XE in it
* Update iosxe.yaml
* Update iosxe.yaml
WLC 9800 not included, have own YAML file
* Create iosxewlc.php
* Update Iosxe.php
Remove WLC Module
* Rename iosxewlc.php to Iosxewlc.php
* C9800 WLC detection
* Update iosxewlc.yaml
* Remove CiscoWLC notes
* Remove ISIS
* Update Iosxewlc.php
* Fix syntax
* Remove Cisco WLC notes
Need some cleanup since already created new PHP file for Cisco IOS-XE WLC
* Update Iosxewlc.php
* Update CISCO-LWAPP-AP-MIB
Downloaded the latest from Cisco MIBS to support AP count for Cisco WLC C9800 models.
* Update Copyright
* Change type from network to wireless
* Patterned with AirOS Cisco WLC
* Create iosxewlc_c9800.snmprec
Added test file
* styleci compliance
* styleci compliance
* styleci compliance
* Uploaded data from actual device
* styleci compliance
* styleci compliance - remove space
* Merge iosxe and iosxewlc
As discussed
* Merhe iosxewlc.yaml to iosxe.yaml
No over graphs for Number of Clients and AP Count or IOSXE WLCs but still can view via Tabs
* remove iosxewlc.yaml
Covered by iosxe.yaml
* Delete iosxewlc.php
Covered by iosxe.php
* Rename iosxewlc_c9800.snmprec to iosxe_c9800.snmprec
due to removal of iosxewlc template which was merged.
* styleci compliance
* styleci compliance
* Update iosxe_c9800.snmprec
* Update iosxe_c9800.snmprec
* rerun-tests
* Remove pollOS block from Iosxe
* Check before polling and add additional IP discovery
* lint fix
* Added raw data from actual device
Convert sensitive data to <private>
* Create iosxe_c9800.json
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* IP Infusion OcNOS inventory
* Hide strings that say item is missing
Handle more sfp ethernet types
* Add Edgecore models AS5912 & AS7316 port mapping
* Test data
* Apply fixes from StyleCI
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* add the poller
* save text status stuff
* add initial app page stuff
* add history table and start work on graphs
* checkpoint
* re-work the poudriere graph bits a bit more
* fix the poller and start work on the graphs
* polling fix
* more work on the poudriere stuff
* poke stuff with php-cs-fix
* add some more graphs
* more style fixes
* another style fix
* add more graphs
* add Poudriere docs
* add tests data
* some minor tests fixes
* a test tweak
* more test tweaks
* some more test tweaks
* tweak .data.build_info data .data.build_info to make the app data test saner
* derp... missed a item
* add app data
* Initial entity-physical code
* Split out Entity-MIB trait
* Cisco Cellular inventory
* Fix bad test data
* alfo80hd - we now include all entPhysical entries
* Correct aos7 test data
* Add entPhysicalClass as last resort for label in ui
* aos add previously filtered data
* Fixup arista-eos data
* Update ariast_eos data
* Arris, clean garbage in Rev fields
* Aruba Instant custom inventory ported
* ArubaOS CX add vendor type mib
* aviat-wtm test data refresh
* axos add shelf fix data fields a bit
* ciena-rls
* ciena-sds
* Skip cimc for now... no test data
* Cisco updates
* Comware data update
* Update dnos
* Clean Edgeos garbage, make code from Arris shareable
* Relaxed ifIndex match, some devices cheat and send back static strings instead of formatted OIDs
* Regex refinement and updated edgeos with new clean data
* Update edgeswitch data
* Update eltex-mes21xx data
* eltex-mes23xx
* Guess at eltex-mes24xx since there is no test data
* Update eurostor, fix firmware version
* Apply fixes from StyleCI
* fixes
* Update fortigate data
* Update fortiweb, ftd, and fusion
* Update linux LSI
* Fix hexToAscii null removal with different seperator handling
* icotera add final snmprec data to avoid snmpsim bug
* Update IOS data
* Update mrv-od
* Add junos translation
* Generic data updates n-r
* ruijie workaround snmpsim bug
* Port saf-cfm
* Recode Schleifenbauer, and fix entPhysicalIndex values
* SmartAX fixes
* sm-os and tait-infra93
* timos inventory was not right, fix it up
* ubiquoss-pon
* VRP, has custom data collection on top of normal
adapt port ifIndex lookup to handle it
* VRP exceeded the string length specified in ENTITY-MIB...
* data updates
* Final data update and code cleanup
* Apply fixes from StyleCI
* Lint fixes
* Add missing SnmpResponse->pluck() code
* Update db_schema.yaml
* Fix bad test data
* Another instant-on update
* oops
* Remove some unused code
# Conflicts:
# includes/html/pages/device/overview.inc.php
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Adding support to Infortrend DS3016
* Adding snmprec for Infortrend DS3016
* Delete tests/snmpsim/DS_3016.snmprec
* change of the infortrend logo
* add the infortrend logo
* Delete tests/snmpsim/infortrend_test.snmprec
* again another logo replacment
* update yaml file to display sensor state
* Delete includes/definitions/discovery/infortrend_orig
* typo missed the . at start of oid
* change logo based on req. from PipoCanaja
* on req of PipoCanaja to fix the structure of the folder
* replacing the logo as req. from PipoCanaja
* Fix infortrend.yaml
* Remove mibs/IFT-SNMP-MIB
* Create infortrend_infortrend.json
* Update infortrend_infortrend.json
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
This adds a MIB from the Baicells website, lightly modified
(s/BAICELLS-MIB/BAICELLS-CPE-MIB), and yaml files for LibreNMS. Currently OS
detection works, but sensors are reporting '0'.
I can easily get the data with snmpget, so I know that part is working. The
issue I'm seeing looks like the {{ $index }} substitution in my sensor yaml
isn't being filled out. Here's some example output from poller.php that backs
this up:
```
.1.3.6.1.4.1.53058.2.2.7.: Unknown Object Identifier ()
.1.3.6.1.4.1.53058.2.2.8.: Unknown Object Identifier ()
.1.3.6.1.4.1.53058.2.2.12.: Unknown Object Identifier ()
.1.3.6.1.4.1.53058.2.2.13.: Unknown Object Identifier ()
```
* adjustments to baicells od04
* undo modification to mib
* add original unmodified mib, tweak yaml, add time conversion function
* added baicells od04 snmprec
* skip invalid values
* Rename baicells-od04.snmprec.txt to baicells-od04.snmprec
* Update and rename BaiCE-BM-2.5.23_SNMP_MIB-CAT4.txt to BAICELLS-MIB
* Update baicells-od04.yaml
* Create BaicellsOd04.php
* move userfunc into OS
* style
* squash php casting warning
* missing static
* style
* fix {{ $index }}
* Create baicells-od04.json
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Fix expandable sizing
* Temp fix: port_id_{low,high} is actually ifIndex
* new PortsStack discovery module, store actual port_ids
* Show 4 rows of ports by default
* Add test data
* Fix up the single port view too
* Apply fixes from StyleCI
* Update db_schema.yaml
* Update base migration because sqlite cannot add primary keys
* Fix phpstan failures
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* exclude triplite console servers
* add definition for tripplite console servers
* add test files
* renamed to lowercase
* add testdata
* add testdata
* disable poller and discery modules that do not apply to this device
* lo will always report empty values, so lets ignore it
* removed disabled poller modules
* Snmpsim use python venv
Patch to enable listening while minimizing output
Update lnms dev:simulate, tests, and ./scripts/save-test-data.php
removed old option to start snmpsim from older scripts, use lnms dev:simulate
* Apply fixes from StyleCI
* various fixes
* Remove patch official package is updated
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* Create ArubaosCx.php
* Create arubaos-cx_nac.snmprec
* Remove un-needed "use" lines
* Add spaces for formatting
* Add blank default values if information is not present
For table entries that do not have a value, add a fallback to a blank string, following the lead of other OS files
* Changing return types for vlan to match column type
* Delete indents on blank lines to please the formatter
* Create arubaos-cx_nac.json
* Update arubaos-cx_nac.json
* fix authz_status missing value
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* replace is_int with is_numeric
* update the docs for wireguard for the new extend
* relocate the app data bit
* update the data for the wireguard test
* start reworking the wg app page... details part done
* app page mostly done
* finish the wireguard app page
* style fix
* now sorted
* add additional info to the peer page
* style fixes
* a small fix for the links
* style fix
* make the pubkey column in details link to the peer page
* escape the pubkey