* 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>
* GPS coords from device
in yaml or php
define for epmp, airos, and airos-af-ltu
quirk for airos bug with - in the middle of the number
* style fixes
* revert airos-af-ltu mempool change
* fix imports
* add epmp test data... more improvements to come there.
* don't stagger geocoding now that this is moved to discovery
also, no need to check OSDiscovery since the base implements it.
* fix json data
* fixed
* 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
* Added rittal-cmc (LCP Plus)
skip_values opperand 'not_in_array' returns an error in pre-commit but in principal it's running. Can someone help?
1) LibreNMS\Tests\YamlTest::testDiscoveryDefinitionSchema
rittal-cmc.yaml does not validate. Violations:
[modules.sensors.fanspeed.data[0].skip_values[0].value] Array value found, but an integer or a string is required
[modules.sensors.temperature.data[0].skip_values[0].value] Array value found, but an integer or a string is required
[modules.sensors.temperature.data[1].skip_values[0].value] Array value found, but an integer or a string is required
[modules.sensors.temperature.data[2].skip_values[0].value] Array value found, but an integer or a string is required
[modules.sensors.temperature.data[3].skip_values[0].value] Array value found, but an integer or a string is required
* fix Scrutinizer Inspection
* fix codeclimate
* fix typo
* Update discovery_schema.json
To allow arrays in comparisons
* Control structures
* fix the pre-fix issues
* Typo in copy/paste
* Update rittal-cmc.json
* Unit1,2,3,4 and new snmprec, json have not changed
* Update rittal-cmc.json
Correct JSON data
* typo copy paste
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* add ability to discover percent warning on mempools discovery
* remove wierd charachters from json
* remove database defaults, add defaults for Linux and Vmware
* update db schema
* update test data
* adapt hrstorage mempools
* rebase
* device: support for Alcatel OmniPCX Server
* device: support for Alcatel OmniPCX Server - add test data
* rename
* Add a new versatile type of sensor, without unit - doc extension
* tests data updated for omnipcx
* new count test after funny rebase
* clean
* tests
* index in yaml file ...
* Update omnipcx.json
* try to add pbx state
* Change function snmpwalk_cache_oid to allow snmpvalue without index
* testdata
* Adapt the discovery_schema (to allow a non_indexed oid)
* Update snmp.inc.php
* Fix some comment and documentation typos.
* Fix various entphysical page display issues.
- Resolve flickering during loading (missing liClosed for nested items).
- Clicking a sensor actually takes you to the matching graph now.
* Add a few nicecase() calls to clean up html page display.
* Create discover_entity_physical() function
- Add discover_entity_physical() function into includes/discovery/functions.inc.php
- This allows for an easy implementation of OS-specific entity-physical discovery.
- Update includes/discovery/entity-physical/entity-physical.inc.php to use the new function.
* Add power_consumed and power_factor sensors.
* Two new icons, make more entPhysical data visible.
* Pre-commit fix: blank line found at end of control structure.
* Add Schleifenbauer OS support.
* Now really fix the comment typo.
* Fix parsing mistakes.
* Add a generic count sensor.
* Make the Schleifenbauer discovery use count instead of state sensors.
* Don't place count sensor at the top, add sane limits for Schleifenbauer
* Finetuning the rrd_options, changing Schleifenbauer sensor names.
* Update schleifenbauer.svg
* optimize logo too
* add test data
* fix sensor value display (spaces break it)
* update entPhysicalIndex
* add group to sensor initial discovery and use dynamic_discovery_get_value template syntax on them
* spaces
* switching to YamlDiscovery::replaceValues
* testdata from ibmc
* testdata from nxos
* testdata from omnitron-iconverter
* testdata from vrp
* adapt discovery_schema to accept variables
* remove pattern
* Update discovery_schema.json
Improves visual identification for sensors
- [x] Docs
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.
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.
Require it explicitly. Makes it easier to understand and matches the style of other values
Questionable YAML changes (either broken before or now broken):
secureplatform: haStatCode
ptp600: receiveModulationMode
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.
Changed some values to be explicitly boolean
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`