* Squash Commit
Fortigate Mib updates and ipsc ipv6 tunnels stat
test data to go allong with it
* add optional -Ih flag
* lint fix
* revert changeed on test data 500d
* fix test data on 60f3g4g
* 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
* Consolidate and improve snmptranslate usage
* Fix style
* lint fixes
* fix typo
* allow multiple mib directories
* Only add mib if it is not already set
* oid first, in case we have key length issues
* if there is a full oid, don't add other mibs
* debug in ci
* more debug in ci
* better debug in ci
* remove debug
* Use numeric index
* revert dlink change
* Don't add -On twice
* unit tests and hopefully better heuristics
* remove dump and add one more set of tests
* style fixes
* handle bad input in old functions
* shortcut whole snmp_translate function
* 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...)
* Migrate addhost.php to lnms device:add
Have snmp-scan.py call lnms device:add (make exit codes line up so this works)
Fix issue with ping only devices trying to detect os via snmp
Reorder options in device:add help and improve formatting
Update docs to remove references to addhost.php
Fix a bit of code that was in functional code
* fixes
* fix snmp version message
* Fix Temperature Sensor for AirOS 8
* Update airos_airos8.json
* Update airos.json
* Add new skip_values feature to deal with Ubiquiti nonsense.
Tweak test data to test the change
fix not_regex
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Fix warnings up to Arbos
* fixes a-c
* a-r
* a-vrp
* There and back again
* Update test data, couple fixes
* PHPSStan fixes
* style fixes, and fix Asyncos, whoops
* flip serial back.......
* less bogus data
* Poweralert sysName during polling too
* make sure things are calculated in the correct order
* fix style and bad nullables
* update test data
* A comple more conversions
* cambium ptp, misc, and hardware_mib
* remaining except vmware-esxi
* Fixes
* Update baseline
* fixes and fix up baseline
* adjust SnmpQueryMock to upstream options change
* data corrections
* restore slashes
* correctly handle all options input in SnmpQueryMock
* undo ftos changes
* restore vccodec sysDescr
* Better handling of some alerting errors
* Better error output
* Consolidate simple template parsing
* Fixes reported by phpstan (one was a bug, yay!)
* add back forgotten trim
* don't remove the template if there is no match
* Match previous behavior, which was inconsistent.
* use anonymous class for tests instead
* Oopsie, Stringable is PHP8+
* fix style
* 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
* 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>
* port related errors
* more fixes
* fix storage count
* add tests for php8
* style
* only need not empty
* aix fixes....
* storage WIP
* fix aix discovering hrstorage
fix db test adding .gitkeep
fix os modules when discovery only
* fix aos processors wrong oid
* fix mempool number casting
* fix aos7 cpu
* use + 0 cast instead of floatval()
* more verbose error on invalid json
* remove invalid data in json
* actually fix the json
* correct json error fix
* cast_number() function
fix aruba-instant and aos6 bugs exposed by new function, probably more...
* fix a-f
fix inadequate sort for component data
* fix global port poll time
* fix mempools precent 0, route count, ntp const
* fix schleifenbauer liberal current usage
* further number casting refinement
* vrp
* fix tests
* fix arbos
* warn cleanups adjust to :: change
* fix ciena-sds
* fix drac
* fix dell-rpdu anddlink
* fix and improve arubaos
better error when getting an array in Processor
* fix atenpdu, add missing arubaos files
* aruba-instant to yaml
apparently I didn't need to do this, the diff just looks really odd
It did add ranged sub-index replacements
* docker app, was completely wrong... fixed
* fix sentry4 divide by 0...
* fixed root issue, remove check
* nicer cidr in ipv6 code
* remove bogus enuxus battery bank skip_values
* Fix InfluxDB tests
* remove extra import
* fix other style issues.
* influx "style" fixes
* mempools to modern module
quick hacky hrstorage port
* port ucd-snmp-mib to Mempools
* Populate DB for ucd
Prep for yaml
* initial yaml attempt
* more complex conversions
fixes to YamlDiscovery, make leading $ optional and allow mib::oid format
* walk full tables and skip values
normalize percentages above 100
* handle precent only ones (specify total as 100)
* Move default polling out of YamlMempoolsDiscovery
* fixes
* Update test data hrstorage should be correct.
* perc_warn for hrstorage
* Host Resources, record buffer, cached, and shared
* Host Resources is always better, don't do both HR and UCD
* fix unix, include warning levels
* variable size
* consolidate skip_values
* define mempools schema
* number instead of integer
* more schema refactor
* one more skip_values reference
* throw error for invalid oid translation
aos6
* a* and Cisco
* updated test data
* update almost all hrstorage data files
* b*
* c* with test data
use standard cache for hrStorage
* use cache for storage module too
* hand bsnmp properly
* bdcom
* exclude total oid from yaml so it is not polled
May add a way to ignore this behavior and poll it, but I don't know if that is needed.
* automatically handle percent only values
* ciscowlc
* only poll used or free if we have used, free, and total.
* fix skipping
* the dlinkoning
fix find value when value "name" is numeric
* support numeric oids
* dnos/ftos attempt
* I guess we can't filter on total > 0
* edgecos
* e*
* f WIP
* f*
* gwd (aka g*)
* h* + procurve
* i*
* j*
* m*
* support 0% used memory (however unlikely)
* n*
* CISCO-PROCESS-MIB memory, share cache with processors module
* ignore mempools with invalid total
* p*
* quanta
* r*
fix raisecom mibs terribly broken
* s-z
* style fixes
* Move VRP back to PHP and make it actually work
* fix zynos
* update schema
* Update Cisco processor data for description bug fixes
* fix comware processors
* comware mempools with memory size
default precision to 1
* sophos-xg updated data
* hrstorage use ram size for buffers, cache, and shared
* Show memory available instead of free in device overview
* UCD, use same rrd format, store available instead of free in the db.
* Calculate availability for HOST-RESOURCES-MIB
* Convert UCD to standard polling
* rename old rrd files
* initial graph work
* graph WIP
* Graph looking decent
* Graph looking decent for hr
* remove old ucd_graph code
* handle availability mempool
more graph cleanup
* color adjustments
* remove accidental free calculation
* Update test data and fix corner cases
* fis pfsense
* update schema
* add default value for mempool_class
* fix whitespace
* update schema
* update schema correctly
* one more time
* fortigate_1500d-sensors missing oids
* Update docs.
* fix indent
* add implements MempoolsDiscovery explicitly to OS
* remove ucd_memory graph references
remove unused device_memory graph
* remove unused functions
* set devices with mempools to rediscover to prevent/minimize gaps
* use a subquery
* add overview graph
* port health mempools table
* Update device mempool
* only show overview if multiple
* Don't override user set warn percentages in discovery
* fix missed usage
* fix style
* Safety check to not rename rrd files incorrectly if migration has not been run.
* Fix overview percent bar and represent available and used on the bar
* missed an item to convert to mempool_class
* percent on the wrong side
* Migrate ironware sensor discovery from php to yaml.
* More sensors, add grouping.
* dynamic_discovery_get_value() becomes getValueFromData()
* Target a specific index with skip_values.
* Improve Brocade BGP session discovery/polling
This commit allows for the correct discovery of BGP sessions
with 32-bit ASNs, IPv6 neighbors using the BGP4V2-MIB which is
based on draft-ietf-idr-bgp4-mibv2-11 and also polls for IPv4
unicast received routes through the FOUNDRY-SN-BGP4-GROUP-MIB.
Copied most of the code from PR#8877 by @Mikeburke14, cleaned
up the code a little bit to match the normal LibreNMS style,
and fixed bgpPeers_cbgp discovery as well as polling for the
ipv4.unicast neighbors.
Note that older Brocade IronWare firmware versions are known
to have multiple defects relating to the BGP4V2-MIB which
might result in certain missing non-established neighbors.
Related vendor defect numbers:
- DEFECT000633962
-- Symptom: The OID bgp4V2PeerAdminStatus does not return the
correct value
-- Reported: NI 05.7.00
-- Resolved: NI 05.8.00g
- DEFECT000583319
-- Symptom: SNMP polling on bgp4V2PeerTable (OID brcdIp.3.5.1.1.2)
does not display all the BGP entries
-- Reported: NI 05.6.00
-- Resolved: NI 05.8.00e
- DEFECT000550309
-- Symptom: SNMP polling on bgp4V2PeerTable (OID brcdIp.3.5.1.1.2)
does not display the full information
-- Reported: NI 05.7.00
-- Resolved: NI 05.8.00c
* Add ironware CER & ICX platform test data.
* Re-add ironware.json compatible with current master branch.
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* accessing in YAML each part of the index in case oid has more than one
* Codeclimate
* Initialisation + comments
* Like this
hopefully doesn't break anything
Mostly issues with snmp oids and options containing spaces. Try to remove all of those.
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
Hi,
As far as I understand the code, it seems that array_reduce should be array_replace in this line, isn't it ?
PipoCanaja
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [X] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
* Use of dynamic_discovery_get_value in can_skip_sensor in order to use all available oids in skip_values
* Use LibreNMS\Device\YamlDiscovery code instead of keeping duplicated function can_skip_sensor
* Fix Travis errors
* Extract DiscoveryItem and move some things to better places.
Extract model class
Fix up model construction. I have problem with construction...
Makeshift model working. Switch constructor to factory. discover() and create()
Support legacy discovery.
Remove uneeded custom pollers
Remove netonix custom detection as we try ucd on all os now.
Add a few yaml procs. Fix a couple things.
More processor discovery conversions
Move Calix e7 to standard hrProcessorLoad, but it doesn't fully implement the HR-MIB, move things around to make it work.
Add a few yaml procs. Fix a couple things. Correct some stupid mib stuff.
Move more, drop php 5.3
Add netscaler which uses string indexes. Port fiberhome to yaml and use skip_values
More conversions. BroadcomProcessorUsage Trait
Serveriron and Ironware share some mibs. Create a common abstract os for them.
Add yaml support for mib specification in each data entry
Make legacy discover_processor() set 0 for hrDeviceIndex
Untangle Dell switch OS processors
Use use shared OS for groups if they don't have a specific group.
fix silly mib mistake
Make index optional
Move HR and UCD to Traits and out of Processor.
* forgot to update the fortiswitch index
* Make sgos and avaya-ers match the old index.
* fix comware test data
* fix merge errors
* fix dsm and remove pointless empty modules
* file not found exception is in the wrong place.
* Updated processor development docs