* Run phpstan locally with `lnms dev:check lint`
Separate result cache for deprecated functions so we don't break the cache every time.
* Skip phpstan flag
Skip all lints on ci except php lint (so we can check on multiple php versions)
* forgot default value
* fix up test cases
* Update LibreNMS/Util/CiHelper.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Better handling of some alerting errors
* Better error output
* Consolidate simple template parsing
* Fixes reported by phpstan (one was a bug, yay!)
* add back forgotten trim
* don't remove the template if there is no match
* Match previous behavior, which was inconsistent.
* use anonymous class for tests instead
* Oopsie, Stringable is PHP8+
* fix style
* Add Processor discovery for Dell PowerConnect 28xx
* Add Temperature discovery and cleanup code
* Add test data for PowerConnect 2824
* Add Serial Number
* Don't add VLANs as Ports
* Revert "Don't add VLANs as Ports"
* Remove invalid mempool from tests
* Introduce OS flag to support devices that deliver OIDs out of order
* Add MIB for Bintec Be.IP Plus
* Add YAML definitions for Bintec Be.IP Plus
* Add Bintec be.IP plus test files
* Rename bintec mib files
mib-standards.mib was deleted, because it included definitions that also
existed in separate files
* Add test data
* Remove standard mib files from bintec dir
* Add regex to parse Bintec Be.IP Plus OS version
* Update test data for Bintec Be.IP Plus
* Calculate Bintec Be.IP Plus CPU load from inverse of idle time
* Improve Bintec Be.IP Plus discovery and tests
* Use MIB instead of numerical OIDs where possible
* Update tests to comply with updated discovery
* Remove unused MIBs
* Remove json props that let tests fail
* Update Settings.md
* Remove `snmp_out_of_order_oids` definition from bintec-beip-plus
* Add `-Cc` snmp param for prots module
* Add `-Cc` snmp param for arp-table module
* remove snmp_out_of_order_oids
* Remove snmp_out_of_order_oids
* Update snmp.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Improve Poweralert based devices support
- Add graphs / data for Input Voltage
- Add graphs / data for Total/Output Current
* fix version formatting
* Create poweralert_3.snmprec
* Create poweralert_3.json
* Update poweralert.yaml
* Update poweralert_3.snmprec
* Update poweralert_3.json
* Missed one
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Update apc.yaml
Added sysObjectID: .1.3.6.1.4.1.318.1 to apc.yaml definition rules to allow the discovery of UPS' that are connected to Power Chute Business edition hosts.
(Tony Murray you were right & YAML hates me!).
* Create apc_powerchute.snmprec
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Add Sophos-XG OID for monitoring HA and license state
* add generic property
* Update MIB to newest version
* Add Test-data for sfosCentralOrchestrationLicRegStatus
* Add IPSec monitoring
* regenerate test-data
* Correctly implement Wireless Sensors for Teltonila RUTX series routers allowing for hardware with multiple modems
Fix sensor warning limits based on hardware specs.
* Re-capture test data for new sensors
* Tidy style
* no message
* no message
* Update RutosRutx.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Kick other session when changing password
Invalidate other sessions when a user password gets changed
* Don't logout admin users when they change passwords.
Cleanup phpstan exceptions
* only restore user if needed
* comment odd behavior
* $current_user typehint
* Added ambient temp sensor and XUPS alarm OIDs
* I dumbed this down a bit, as I do not fully trust that I actually understand the xups mib.
Now we raise an alert if XUPS-MIB::xupsAlarms.0 is anywhere in the range 1-4
* Changed the index:-value for consistency
* added snmprec and json for my hardware/firwmare version
* reran save-test-data against all variants and renamed my latest snmprec properly
* Update eaton-mgeups_9pxle.json
Co-authored-by: Tony Murray <murraytony@gmail.com>
* 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>
* remove ^M from DOS style file
* Support for West Mountain 4005i DC PDU
* update SVG to include width attributes
* try adding reserveAspectRatio="xMinYMin meet"
* remove width attribute
* removed disabled modules per @Jellyfrog comment
* rename per PR
* add missing test JSON data
* don't attempt to graph or detect uptime, as neither OID is supported
* remove file extension
* remove specific modules for discovery & polling, as this device isnt buggy enough for justify
* Update westmountainradio.yaml
* Update westmountainradio.yaml
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Core module WIP
* update OS::make()
* core WIP
* try to finish up
* switch all core do os Model
* Mock WIP
* Working tests
* cleanup
* phpstan fixes
* style fixes
* fix agent
* trim space too
and a couple of cleanups
* corrected ios test data
* missed space
* update test data
* put escapes back
* another net-snmp difference
* Fix class description
* revert snmp.inc.php change, that can be a different PR
* revert snmp.inc.php change, that can be a different PR
* Add new OID for humidity sensor for opengear devices.
* Typo fix
* Fixed typo: wrong OID
* Added opengear humidity test data JSON
* Removed ogEmdHumidityTable from cache.
* Added SNMP sim data for testing
* Update opengear_humidity.json
Co-authored-by: Tony Murray <murraytony@gmail.com>
* endrun_updated_support
* Added requested changes
* Converted to yaml
* Fixed Tempus Features
* fixed test data (again)
* Update endrun_sonoma.json
* fix gitignore
* fix last gitignore
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Updated mib
* Add support for IOS/IOSXE PoE stats
* Added testdata
* Better titles for Power-tab in Health
* Added low_limit for iosxe
* Update ios_2960x.json
* Added high_limit for ios
* update ios_2960x
* update ios_2900l
* pre-cache is not needed
will only slow polling down in some cases
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Updated mib
* Add support for IOS/IOSXE PoE stats
* Added testdata
* Better titles for Power-tab in Health
* Added low_limit for iosxe
* Basic support for Enviromux devices
* Fixes
* Revert "Added low_limit for iosxe"
This reverts commit 645e3b423a.
* Removed commits from wrong branch
* Removed limits due to not working, need php
* Added testdata
* Update nti.svg
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Dusk: improve speed
Instead of refreshing the database between tests, just cleanup all side effects.
Update UserFactory to upstream so hash never has to be generated for default
* Actually, migrate, but not fresh
* Added support for Teltonika RUTX series routers
* Added snmprec file for testing
* Update and rename rutos-RUTX.yaml to rutos-rutx.yaml
Fix OS name
* Rename rutos-RUTX.yaml to rutos-rutx.yaml
* Rename rutos-RUTX_rutx11.snmprec to rutos-rutx_rutx11.snmprec
* Create rutos-rutx_rutx11.json
* Fix: Device discovery OID removed tab
* Remove whitespace
Co-authored-by: Tony Murray <murraytony@gmail.com>
Co-authored-by: hjcday <hugh.day@lsv.com.au>
* Rename NetSnmp to SnmpQuery
Always resolve a new instance. It was not expected to be a singleton, set options persisted.
This means numeric() works properly now
* fix snmpfetch call and style
* Ability to set device from device array
* Initial commit
* Removed unused function
* fixed style
* fixed style
* fixed test data
* Initial commit
* end of the day commit
* finish + test data
* Delete ericsson-tn_ericsson-tn.snmprec
* Update manifest and add service worker
cleanup icons a bit
* Push notifications WIP
* navigate working
* cleanup
* acknowledge wired up
* Set VAPID keys on composer install
* Component to control notification permissions.
* Allow all user option to validate
* Enable on browser load if transport exists.
* Check for transport before showing user permissions
translations
* Documentation
* style fixes
* access via the attribute model
* fix alerting test
* update schema
* cleanup subscription on disable
* non-configurable db and table for webpush subscriptions (respect system connection)
* revert AlertTransport change
hopefully phpstan can figure it out
* phpstan fixes
* Support custom details display
* Match transport names to brand's preferred display
* less duplicate id errors
* Tests are done in Laravel code now so
remove legacy function usage... could be better, but ok
* Style fixes
* Style fixes 2
* Fix alert test
* Doc updates requires HTTPS and GMP
* unregister subscription when permission is set to denied
* cleanup after user deletion
* delete the right thing
* fix whitespace
* update install docs to include php-gmp
* suggest ext-gmp
* update javascript
* Update functions.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Fping WIP
* Update availability, move ping rrd update in the same place as db update.
* move classes around
* make device:ping command work
* use new code, remove legacy code
* save metrics boolean prevents all saves
style fixes
* update device array
* style fixes
* Update unit test
* fix whitespace
* Fix Fping stub
* fix backwards if
* fix phpstan complaining
* Fix return type
* add fillable to DeviceOutage model.
* device_outage migration to add id...
* missed line in db_schema.yaml
* 1 billion more comments on the brain damage up/down code
* tests for status and status_reason fields
* fix style again :D
* Duplicate legacy isSNMPable() functionality
but with only one snmp call ever 😎
* Remove unused variable
* fix migrations for sqlite
* Improvements to SSO Authorization and logout handling
Changes:
* Adds support for a default access level in the SSO authorization
plugin when group mapping is enabled.
* Restore functionality of the auth_logout_handler configuration option,
allowing the user to be redirected to a configured URL to complete
logout from an external IdP.
* Documentation and test coverage updates
* Set sso.static_level to 0 in AuthSSOTest:testGroupParsing()
* Simplify implementation to use default values in Config::get()
* SNMP WIP
* cleanup, more types
* Include my snmp:fetch command
* Fix Facade name conflict
* Command WIP
remove mib
* Ignore exit code
cleanups
* Doc blocks and style fixes
* forgot to use parseOid
* Hopefully final fixes
* missed on (:
* small changes
deviates from existing code, hopefully doesn't re-add too many corner cases.
* add some simple tests, will make it easier to add more in the future when we find corner cases.
* test numeric
* API refinements, try to avoid setting textual net-snmp options directly
* change numeric to a toggle makes for nicer usage
* make ci happy
* Some errors happen only in stderr, pass that to SnmpResponse for parsing.
Add error message access
* More consistent naming
* Teldat: Wireless and GSM Basic Monitoring
* Teldat: Wireless IfIndex fix
* Teldat: Wireless and GSM tests
* minor comment correction
* Teldat: Wireless and GSM add json test data
* linter.warn: bugfix access_point_id = null, generally used for controllers, TELDATs are never controllers
* Teldat: Wireless and GSM tests replay results.
* linter.warn: fix#17 $entPhysicalMeasured expects float|int|null set to: null
* Teldat: Wireless and GSM some updates, bugfixes and lint updates as requested.
* linter : some more fixes...
* Teldat: Wireless and GSM, apply recommendations.
* minor styleCI fix.
* linter: fix
* linter: fix.
* Delete WirelessLteCellPolling.php
Co-authored-by: Tony Murray <murraytony@gmail.com>