* 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
* Fix python config fetch disrupted by stderr output
I have no idea how to make command_runner not include debug output, so just use subprocess.check_output
* restore import
* Workaround for dashboard widgets showing over popups.
z-index is being set on the popup, and I verified it is applied, but for some reason the widget with a z-index of 2 still shows over top.
I don't think this has any side-affects, but I don't know for sure.
Could not find another work-around. Gridster is dead, so unlikely we will update the js and override this fix.
* version file to make clients update
* Modified Prometheus extension to allow for a configurable prefix on metric names.
* Added reference in config_definitions.json and updated docs.
* Fixed whitespace in config_definitions.json.
* Added reference to prometheus.prefix in settings.php
* Defined prefix var as private in Prometheus.php
* Formatting changes to doc for Prometheus extension.
* Modified Prometheus extension to allow for a configurable prefix on metric names.
* Added reference in config_definitions.json and updated docs.
* Fixed whitespace in config_definitions.json.
* Added reference to prometheus.prefix in settings.php
* Defined prefix var as private in Prometheus.php
* New service/discovery/poller wrapper
* Convert old wrapper scripts to bootstrap loaders for wrapper.py
* Move wrapper.py to LibreNMS module directory
* Reformat files
* File reformatting
* bootstrap files reformatting
* Fusion service and wrapper database connections and get_config_data functions
* Moved subprocess calls to command_runner
* LibreNMS library and __init__ fusion
* Reformat files
* Normalize logging use
* Reformatting code
* Fix missing argument for error log
* Fix refactor typo in DBConfig class
* Add default timeout for config.php data fetching
* distributed discovery should finish with a timestamp instead of an epoch
* Fix docstring inside dict prevents service key to work
* Fix poller insert statement
* Fix service wrapper typo
* Update docstring since we changed function behavior
* Normalize SQL statements
* Convert optparse to argparse
* Revert discovery thread number
* Handle debug logging
* Fix file option typo
* Reformat code
* Add credits to source package
* Rename logs depending on the wrapper type
* Cap max logfile size to 10MB
* Reformat code
* Add exception for Redis < 5.0
* Make sure we always log something from service
* Fix bogus description
* Add an error message on missing config file
* Improve error message when .env file cannot be loaded
* Improve wrapper logging
* Fix cron run may fail when environment path is not set
* Add missing -wrapper suffix for logs
* Conform to prior naming scheme
* Linter fix
* Add inline copy of command_runner
* Another linter fix
* Raise exception after logging
* Updated inline command_runner
* Add command_runner to requirements
* I guess I love linter fixes ;)
* Don't spawn more threads than devices
* Fix typo in log call
* Add exit codes to log on error, add command line to debug log
* Add thread name to error message
* Log errors in end message for easier debugging
* Typo fix
* In love of linting
* Feature config seeder
Place yaml key value files in database/seeders/config to pre-populate the config database
This feature is primarily for docker images and other automation
example snmp.yaml
```yaml
snmp.community:
- public
- private
snmp.max_repeaters 30
```
* fix style
* include /data/config as used in docker
* respect --force option
* Confirm if re-import
Defaults to yes for --no-interaction
Don't confirm if there is nothing to do
* default to false
* typehints
* 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>
* Improve tailwind dark theme colors
Import the dark theme colors into the Tailwind color palette
update components to use those new colors
* remove colors import, it isn't used right now
* fix issue #13119
try to detect if total_units exists (variable comes from errors.inc.php and nupkts.inc.php ) as 'pps' and define graph units as such.
* standardize units_descr for both ucastpackets and errors
* Infer character encoding for ifAlias and sysLocation
Tries to convert character encoding for non-UTF-8 encoded strings.
This will only work for snmp strings that are type-hinted, not ones forced to ASCII with -Oa or similar
Only works for your default charset or Windows-1251 or LATIN1.
You can set your character encoding in .env with CHARSET
Please save us all and just use UTF-8
* style fixes
* less Yoda
* ensure return type
* fall back to passed string
* don't convert strings with any unprintable characters (such as line return)
* Update LibreNMS/Util/StringHelpers.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Fix CP850
* fix space
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* DB Field specific Port Search
* .
* seperate function for API Call
* second parameter now optional
* code adjustments
* Update api_functions.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>