* 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
* 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
* 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>
* 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>
* Added SAF Integra-X support.
* Fixed discovery confusion between Integra-B and Integra-X.
* Removed a missed unusued use statement.
* Fixed CPU sensor issues related to MIB display hints throwing off math.
* Fix to Integra-X snmprec and test data.
* working popover
* popup component
* cleanup
* finalize device-link component
* attributes WIP
* working graph component
* widgets WIP
* More dynamic configs
* Graph row component
* Build CSS so we can use a dark theme
* graph row set columns
* only one popup visible at a time.
* Just set graph row width statically
* responsive WIP
* rsponsive option for graph-row "working"
* remove @deviceLink and @portLink
* fix non-responsive graph row
* update js/css
* fix style
* bad type?
* types
* types
* types #3
* remove testing code
* full rebel, no closing tags for meta and link
* match previous formatting
* fix vlans display
* restore newline
* remove silly comment
* remove unused line
* style I guess
* Removed older Horizon definitions
* Added Horizon Compact definitions via YAML.
* Added Horizon Duo definitions via YAML.
* Added Horizon Compact Plus definitions via YAML.
* Fixed issue with OID name casing for Horizon Duo EnetPort2CRC sensor
* Moved SNR/RSL/Tx Power to wireless sensor definitions.
* Reordered use statements to make StyleCI happy.
* Validate APP_KEY
key:rotate command to rotate keys, only rotates validation data for now
* fixes, swapped encrypters, not saving new value to db, check that key exists first
* add confirmation
* Option to generate new key, re-encrypt data and then save it to .env
A lot more text to try to prevent disaster. Print out both keys 1-2 times.
Fix bug in EnvHelper (when key is commented but not empty)
* fix style
* oops, good phpstan
* Do not poll passive interfaces
* Apply fixes from StyleCI
* discovering with mib active returns true/false
Co-authored-by: ottorei <ottorei@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Rewrite ISIS Adjacency discovery/polling
hopefully much faster now, do most work in discovery and just check up/down in poller.
* unused variable
* Implement option for OS override
* fix an incorrect typehint
* test data
* work around stupid migration name
* update schema
* better handling for the on-demand discovery
* more detailed phpdoc
* fix when adjacency is not found
* don't clear out data when adjacency goes away
* Adjust nullable fields
* fixes
* fix class name
* correct migration
* fix bug causing adjacency data to always be blank
* port popups for port links
* isisISAdjState does not need to be nullable
* remove extra space
* default off
* If port is missing return $text
* update schema
* Cleanup old components
* correc copy paste error
* Common contexts for polling
Don't store contexts on the device array, use the device model
Also should be easier to add different contexts later.
* rename variables for consistency
* Cleanup Port hover minigraph description.
Use port_descr_descr if exists or ifDescr.
Use the same generate_port_link() in:
- Devices - Ports
- Ports - All/Errored/Ignored
- Ports - "Types"
* Port-Customers, using Ajax Controller, Util/Url
* make https://styleci.io/ check happy
* Add inline command_runner library
* New service/discovery/poller wrapper
* Convert old wrapper scripts to bootstrap loaders for wrapper.py
* Add command_runner to current requirements
* 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