* Sensors remove reliance on global variable
* Apply fixes from StyleCI
* Clear the instance instead of reset.
Remove $valid['sensors'] from docs
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Initial entity-physical code
* Split out Entity-MIB trait
* Cisco Cellular inventory
* Fix bad test data
* alfo80hd - we now include all entPhysical entries
* Correct aos7 test data
* Add entPhysicalClass as last resort for label in ui
* aos add previously filtered data
* Fixup arista-eos data
* Update ariast_eos data
* Arris, clean garbage in Rev fields
* Aruba Instant custom inventory ported
* ArubaOS CX add vendor type mib
* aviat-wtm test data refresh
* axos add shelf fix data fields a bit
* ciena-rls
* ciena-sds
* Skip cimc for now... no test data
* Cisco updates
* Comware data update
* Update dnos
* Clean Edgeos garbage, make code from Arris shareable
* Relaxed ifIndex match, some devices cheat and send back static strings instead of formatted OIDs
* Regex refinement and updated edgeos with new clean data
* Update edgeswitch data
* Update eltex-mes21xx data
* eltex-mes23xx
* Guess at eltex-mes24xx since there is no test data
* Update eurostor, fix firmware version
* Apply fixes from StyleCI
* fixes
* Update fortigate data
* Update fortiweb, ftd, and fusion
* Update linux LSI
* Fix hexToAscii null removal with different seperator handling
* icotera add final snmprec data to avoid snmpsim bug
* Update IOS data
* Update mrv-od
* Add junos translation
* Generic data updates n-r
* ruijie workaround snmpsim bug
* Port saf-cfm
* Recode Schleifenbauer, and fix entPhysicalIndex values
* SmartAX fixes
* sm-os and tait-infra93
* timos inventory was not right, fix it up
* ubiquoss-pon
* VRP, has custom data collection on top of normal
adapt port ifIndex lookup to handle it
* VRP exceeded the string length specified in ENTITY-MIB...
* data updates
* Final data update and code cleanup
* Apply fixes from StyleCI
* Lint fixes
* Add missing SnmpResponse->pluck() code
* Update db_schema.yaml
* Fix bad test data
* Another instant-on update
* oops
* Remove some unused code
# Conflicts:
# includes/html/pages/device/overview.inc.php
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* rls definition
* Adding discovery
* Temp Sensor Discovery
* files for discovery
* Adding and updating MIBS
* Add snmpsim
* Modified yaml for unit test
* phpfmt format
* ci changes
* fixing temp sensor
* fix json
* db schema out of date causing bad snmpsim json
* changed temperature discovery to php
* With updated snmpsim data
* index_string restored, YAML for temperature
* style
* Fixed index_string usage in JUNOS files
* Update YamlDiscovery.php
Allow filtering on "index" in skip_values
* Move DBM to YAML as well
* style
* schema update
* Slot XX Yyyyyy
remove unwanted dot
* matching tests
* schema, round 2
* states in YAML
* put temp sensor back in yaml
* enable default poll and discovery modules
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Remove some lightly used or unused dbFacile functions
['NULL'] legacy behavior seems unsupported, replace with actual nulls
* Fix refactor mishap
* another
* update baseline
* these were very wrong... what happened?
* Refactor poller to allow modules to run even if the device is down
Include core in config (but not webui) to avoid silly shenanigans
Inject datastore into polling
* Needed to split datastore interface
* Cleanup some data_udpate() references
* Apply fixes from StyleCI
* Fix legacy poller :D
* Output to the correct stream
* Fix lint issues
* Apply fixes from StyleCI
* Fix discovery not including core and submodule handling
* Use whereRaw
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
Previously, if the device was ping only, it wasn't marked as discovered.
Now we always run discovery, but basically all it does is update last_discovered.
* Convert several JunOS sensors to yaml
Fixes some issues with the php code and reduces extra snmp fetches
* Convert several JunOS sensors to yaml
Fixes some issues with the php code and reduces extra snmp fetches
* Convert BER as well
Allow divisor and multiplier to be set from oid
* use fillValues
* fix
* sort snmprec, fix divide by 0, add more context
* APC: Add support for Battery Recommended Days Remaining
* Extract number from string later during polling
Odd that this is different from the discovery process
* wip
* wip
* Apply fixes from StyleCI
* wip
* wip
* Apply fixes from StyleCI
---------
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Error reporting
* Move code to ErrorReportingProvider
Enable reporting of error (and warning) messages.
report module exceptions
* Restore flare key
Not needed to set late anymore. We set up filtering before it is initialized.
* Remove unnecessary and maybe double Flare report
* lint
* Cannot use typed properties yet, use phpdoc
* fix handleError return type
* Filter both exceptions and reports (so we don't miss any)
Consolidate the check if reporting should be enabled
* Cache reportingEnabled check for the runtime
* Split out middleware to improve readability
Logging of why reporting is disabled
Fix reportingEnabled cache
* Style
* Return some user data
* Change to class based middleware, it looks nicer
* Fix error page error id report, add url.
* also rewrite intended url
* remove link
* Move ignition to production and update flare-client
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Fix Undefined variable/key warnings
* massage for test data
* restore set_numeric, only generates noise
* Fix ucd storage used (apparently free is not stored in discovery...)
* autodiscovery fix
* much simpler approach
* murrant suggestion
* Simplify even more
* Use nullable operator
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Allow unordered OIDs (global and per-os)
Fix global no_bulk setting, was ignored before
(to fix global needed to rework Config::getCombined() a bit to allow a global prefix to be specified)
Removed invalid use of getCombined and updated tests
* fix whitespace
* update os schema
* Catch all module errors
As of PHP 7.1, we can now catch errors and exceptions by catching throwable.
Also, log the errors in a consistent way with the entire stack trace
* Log event and improve messages
* call from facade because event might not exist on logger
* 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
* 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
* 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
* Test the num_oid generation
* Refactor num_oid discovery
* cnt
* Cache the value to avoid unnecessary snmptranslate
* desc of function
* typo
* Negative caching as well
* Negative caching
* style
* Str::before
* Str::before
* Str::before
* Fix key, and model Devices
* types
* types
* doc update
* re-run tests
* Use Cache class
* Simplify caching and do it into oidToNumeric
* Simplify caching and do it into oidToNumeric
* style
* Extend to 3 hours
* and not ->cache_time
* force re-run tests
* only one OID for num_oid test
* rerun tests
* typo in MD
* restore
* Exemple
* Exemple
* light change
* test
* test
* test
* back to PR
* phpstan + suggestions from Tony
* fix firebrick num_oid
Co-authored-by: Tony Murray <murraytony@gmail.com>