* core WIP
* try to finish up
* trim space too
and a couple of cleanups
* update test data
* put escapes back
* another net-snmp difference
* correct copy paste error
* WIP
* Use new code YAY
* a tiny bit more
* Kind of working
* Handle manual modules correctly
* convert core to modern module
* Only save metrics if modules is not overridden
* correct module exists check
* database error handling
* debug handling
* restore bad changes
* Introduce Actions
RunAlertRulesAction
UpdateDeviceGroupsAction
* tweaks to output
* Fix some issues in outside code
* Style fixes
* fixes to module status checks
* typehints!
* Use logger only and DI
* OS module not named correctly
* Work on quiet output a bit more
* generically don't change output when disabling debug if the driver is already stack
* Fix missing $device variable for legacy os polling
Fix missing dbFacile functions when no legacy modules polled in RunAlertRulesAction
* restore legacy os module shim
* use the new poller code for tests
* PollingDevice event
* Fix some issues and enable/disable error reporting around legacy modules
* typehints
* fully update baseline
* Use Process for version commands so we don't leak debug output.
* don't detect rrdtool version in ci every time
* style fixes
* Warning fixes
* more fixes
* re-update baseline
* remove diff noise
* fix up alerts
In the initial pull request this was brought up but never addressed, https://github.com/librenms/librenms/pull/9305#issuecomment-427930650 The only reason i can think of is due to SMS message length, but you could be mindful of that with a alert template. Submitting this to see if anyone objects to changing it.
* 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
* Fix net-snmp unformatted strings
When net-snmp returns an unformatted string (with quotes around it), it also has backslashes to escape certain characters. Remove those.
* Clean up sysDescr and sysName when setting to Device model.
* Lint fixes
* Hmm, additional formatting spots
* Improve check_requirements script to dynamically read requirements.txt
* Don't dynamically load requirements for python2
* Make sure we check python3 dependencies with python3 binary
* Quote variable to fix SC2086
* Add dynamic_check_requirements.py
* Use dynamic_check_requirements.py for python3
* Revert "Don't dynamically load requirements for python2"
This reverts commit 4485c8fcf9e0075fcf212e4f8bbc59ed75e144b5.
* Revert "Improve check_requirements script to dynamically read requirements.txt"
This reverts commit a9c83350d9de6b1b3b0a313dca23af749a08300a.
* Add LIBRENMS_DIR variable to exec, check for permission errors
* Make sure we check for permission errors on pip install
* Fix shellcheck SC2046 missing quotations
* Make sure we install pip packages as librenms user for Python3
* revert daily.sh, update dependencies in composer
* And in the validation
* should be executable
Co-authored-by: Tony Murray <murraytony@gmail.com>
* get the OUIs from Wireshark CSV instead of macaddress.io which is not free anymore
* style
* optimize
* master wireshark repo
* fix Cache::get prefix ordering
* fix double cache get
Co-authored-by: Tony Murray <murraytony@gmail.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* API transport fix parsing
parse templates after parsing user options, not before
* API transport tests
* fix style and lint
* remove accidental item
* fix more type issues
* 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>
* fix latitude having an extra - in the middle after the decimal point
fix latitude having an extra - in the middle after the decimal point
* consolidate
* style
Co-authored-by: Tony Murray <murraytony@gmail.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
* 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>
* Drop PDConnect Install links
This flow has been removed.
* Update some terminology while I'm here
History time notes just for fun:
- it was called "service key" when you could only have one integration per service
- it was called "integration key" when you could only have integrations on services
- it's now called "routing key" to be inclusive of account-level routing keys
* Delete some code that should be unused now
* Tidy up imports
* I think these are also unused now
* 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
* 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>
* Rewrite netstats polling
As modern module
Don't use snmpgetnext as it can result in extra data returned
* remove copyrights on interfaces
* typehints
* fix silly backslashes
* 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
* use Blade view and Eloquent models for plugins
* move views
* fix style
* fix style
* revert mistake
* Update Plugin.php
delete test property "name"
* rename plugin function to settings
* last but not least - rename in Test.php
* Rename Test to Example
* fix typo
* fix style
* fix style
* fix style
* fix style - I hate tabs...
* Extract view calls
* fix method calls and style
* Move Models the the abstract class
* fix style
* Convert to traits
* Change the Example description
* Fix style
* Fix style
* Fix style
* Convert plugin function to Model static methods and delete .inc.php
* fix style
* fix style
* Use scope
* final methods blows up legacy code
* Config > \LibreNMS\Config
* convert the static string to a static method
* Correct placement in the page
* fix tabs
* fix style
* Rename from tait to hook
to make it easier to understand and be complient
* rename file
* Typo
* Started to change the docu
* change to a more usefully Device_Overview example
* and activate of course
* PluginManager
* fix .gitignore
* only php files in the root folder
* corrected .gitignore with all files :)
* Rename the Hooks and ExampleClass for better readability
* Fix style
* Fix style
* Exception handling (especially if DB is not present)
* Fix style and update schema
* fix indentation
* actually correct indent
* fix migration collation check include utf8mb4_bin
* stop phpstan whining
* A view lines documentation
* add typeHints
* Allow return null on handle
* lint
* fix return types
* fix logic of column collation check
* Fix MenuEntryHook
* switch to longtext instead of json type for now :D
* try phpstan on PHP 7.3
* set phpstan target version to 7.3
* all the typehints
* optional
* more
* Use namespace to prevent view collisions
disambiguate plugin and hook
no magic guessing of names in PluginManager, bad assumptions
remove unused plugins from the DB
* cleanup plugin menu
* cleanup on shutdown and ignore but log query error on cleanup
* instanceof must be called against an instance
* Allow multiple hooks per plugin
* Port plugin ui code to Laravel
* page instead of settings for v1 plugins
* actually working settings pages
a little url cleanup plugin/admin -> plugin/settings
* fix style
* Add page hook
* PHPstan
* Try to fix Illuminate\Http\RedirectResponse
* typehint
* Rewrite the doc
* Fix style
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
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>
* Dispatcher bugfix queues not being disabled properly
Introduced in #13355
Affected queues: Alerting, Discovery, Services, Ping
Adjust log level of several messages
* better formatting? looks like garbage python black
* Dispatcher: Don't update workers/frequency when updating stats
* Fix the right thing
* Don't set poller groups on the cluster entry, this way config.php can override if it hasn't been set by the webui
* Remove load_os and load_discovery functions
Put bits where they belong and use $os
* remove extra line return
* OS loading code in the wrong place
* fixes
* line
* 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
* Use Measurements for all statistic collection
* fix space
* Use colors
cleanup
* fix style
* manually fix license notice
* add return times and new line
* add return times and new line
* fix mistake in copyright template
* fix style