* AuthSSOTest: clear roles cache
* PollingJob: When a poller module doesn't exist, return null instead of false. Skip all other checks and disable polling in that case.
* Sensors: Guess high and low limits separately as needed
* Sensors: drac test psu current data was wrong, referencing the snmprec, 8 / 10 and 0 / 10 should be the values
NOTE: drac is messed up and runs a billion snmp queriess for no reason
* please phpstan
* Sensors: limits reference old code
move to "creating"
* Fix gw-eydfa accidental assignment
* Fix ies5000 test data now that the bad state is removed
* Fix ies5000 test data part 2
* Move sensor discovery reset into discover_device()
* infinera remove duplicate sensor (also a lot of trailing whitespace apparently)
* Fix innovaphone bad yaml discovery
* module tests should be using null when test data doesn't exist, not an empty array
* When discovery or polling is not supported, dump null instead of an array.
Account for nulls in testing
* update ISE serial
* Janitza was seemingly wrong before
* Remove some private data
* bgp-peers requires ipv4-addresses and ipv6-addresses for bgpPeerIface
* fix polycomLens broken state sensor discovery
* Raritan pdu and pdu2 test data was combined in one test file, split it out
* scs-ks duplicate temperature sensor indexes
* sentry3 someone tried to avoid breaking stuff but just broke things more
* smartos-dcp-m fix incorrect numeric oids
* ssu2000 apparently test data was wrong, must have fixed a bug in the code.
* timos remove duplicate dbm sensor definitions
* bgpPeerIface is working in tests now
* Fix moxa-etherdevice when mibs are a bit different
* xw_to_dbm negative values should return null
* Update cisco test data due previous fixes/changes
* One more bgpPeerIface
* Add orderBy to ospf module db dumps
* Remove links test data for now
* Improve handling of bad data in ipv6-addresses module
* 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