This is to avoid the following error when trying to poll:
```
file_put_contents(/opt/librenms/cache/os_defs.cache): Failed to open stream: Permission denied {"exception":"[object] (ErrorException(code: 0): file_put_contents(/opt/librenms/cache/os_defs.cache): Failed to open stream: Permission denied at /opt/librenms/LibreNMS/Util/OS.php:113)"}
```
* Merge duplicate toBytes functions
Replace other duplicate code and add tests
* Allow space between similar to formatSI output
* Style fixes
* Match previous behavior in Docker app
* packet_loss macros quick fix
Due to device_perf table going away, this macro no longer functions as it did.
Use device status to make it somewhat functional until a better solution can be found.
* remove space
* Add support for a maintenance boolean in API results.
If a device is under maintenance, it would be nice to see that from the
API. This can help drive other automation workflows where LibreNMS forms
a cornerstone in the management source of truth.
* Revert changes made by VSCode formatting.
* Revert two more formatting changes.
* Create a new API endpoint for GETing maintenance status.
This uses the same endpoint name as for setting a device to maintenance
but with a GET verb.
---------
Co-authored-by: Joe Clarke <jclarke@cisco.com>
* Improved Latency graph
Store loss+jitter info in rrd instead of database
New graph icmp_perf (legacy ping_perf still valid referencing part of the newer data)
Delete device_perf table
* Change loss to an area so it is more visible
* Style fixes
* Cleanups from phpstan & tests
* exit_code fix
* Remove alert usage of device_perf
* Don't use magic __get
* Add test for bulkPing
Add host to previous tests
* style fixes
* Fix issue fping error responses
* Pretty up Slack formatting.
* Normalize spaces by turning every instance of two or more spaces into
one space.
* Allow for custom URL links even when strip_tags() is in effect by
transformaing "standard" markdown syntax into Slack link markdown
after strip_tags() is run.
* Document the changes to the Slack transport.
While here, flesh out the Slack docs to match the configuration options
one currently sees in the transport.
* Use backticks to escape things from markdown rendering.
* We don't need this other escaping now.
* Fix custom link due to line break.
* Fix spelling typo.
---------
Co-authored-by: Joe Clarke <jclarke@cisco.com>
* Added support for new device OS Westermo WeOS
updated high limits
* Removed config regarding discovery and polling modules
* First test with moving sensor discovery to YAML
* Updates to discovery snr sensor, new test data, deleted sensors written in php
* Fix for SNR discovery sensor descr
* Removed shdsl from bad_iftype
---------
Co-authored-by: OSIRIS-REx <sphinxes@protonmail.com>