* New device:add code
pre-requisite for updating other code paths
includes option to set display name
separate validation code from device creation
* remove duplicate community and v3 creds
* style fixes
* some lint fixes
* fix phpstan
* Exception cleanup
improved messages and translations
* port association mode to enum
well, pseudo enum
* defaults and cleanups
* fixed/improved validation messages
* fix tests
* fix stupid ide refactor mistake
* lint fixes
* Infer character encoding for ifAlias and sysLocation
Tries to convert character encoding for non-UTF-8 encoded strings.
This will only work for snmp strings that are type-hinted, not ones forced to ASCII with -Oa or similar
Only works for your default charset or Windows-1251 or LATIN1.
You can set your character encoding in .env with CHARSET
Please save us all and just use UTF-8
* style fixes
* less Yoda
* ensure return type
* fall back to passed string
* don't convert strings with any unprintable characters (such as line return)
* Update LibreNMS/Util/StringHelpers.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Fix CP850
* fix space
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Show ifSpeed on Graph
Drop ifHighSpeed, we really don't want to store that value.
* safer truth check
* Allow global setting and per-graph variable
* match surrounding case
* Style fixes
* Remove old function usage
* update schema
* remove some old usages
* cleanup more ifHighSpeed references
* update test data to remove ifHighSpeed
* fix down migration
* Add button on graph page
Change default
tweak wording
* Add TP-Link's DDM and PoE MIBs via their 20210310 archive.
* Add support for DDM sensors on TP-Link Jetstream switches.
* Add support for PoE on TP-Link switches.
* Fix linting issues.
* Fix group discrepancy in test data.
* Fix multiple discrepancies in DDM test data.
* Improve `num_oid` and `index` fields for Jetstream PoE sensors.
* Test data for PoE sensor `index` change.
* Convert Jetstream sensors to YAML and refine index names.
* Remove $debug global
and $vdebug global
makes these variables more accessible and protects from collisions.
* the on boot set sends application as the first parameter, just handle that
* Relocate other debug related functions
* Log debug to stdout
* Wrong output
* remove stupid constants
* Fix lint and style issues
* 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
* Update DSL stats even if port is down
* Correct swapped Upload/download on graphs
* Display attainable line speed in the ADSL page
* Correct SNR graph
* Rewrite labels to avoid misunderstanding
* last swap I hope
* Added check for incorrect ifConnectorPresent truth values, if invalid, save it as false
* Added space after comma line 629
* Update ports.inc.php
Updated per murrant and tested.
* Update ports.inc.php
* Update ports.inc.php
Changed to check if ifConnector is set and if the response is not true or false, set it to null.
* Update ports.inc.php
* Update ports.inc.php
Fixed the codeclimate space issue
* Update test data
* fix differing escapes
* fix ciena-sds eol
* Revert timos.json
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Fix missing PoE port graphs for Cisco Catalyst 9K
* Reworked code: 2 assignments, added tests
* Simplify code
Checking the MIBs...
CISCO-POWER-ETHERNET-EXT-MIB: AUGMENTS { pethPsePortEntry }
POWER-ETHERNET-MIB: INDEX { pethPsePortGroupIndex , pethPsePortIndex }
This means cpeExtPsePortEntry is always indexed by exactly 2 values. No point in populating slot.subslot.port
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Datastores to object oriented code, using the Laravel IoC container
Change instantiation
better DI
move OpenTSDB
Small re-orgs
remove unused stuff
Fix graphs and other scripts
Use DI for all except rrd
fix up connection error handling
Add tests, fix up a "few" things
Add Config::forget()
Style fixes
Don't reference legacy code
remove accidental code paste
Add datastores phpunit groups
some tests
* rebase fixes
* some test fixes
* shorter tests
* shorter tests
* Don't except when rrdtool can't be started.
* restore tests
* fix rrd tests
* fix iterable change upstream
* fix isValidDataset
* fix invalid data bug
* fix mysql incorrect ds
* fix issue with data that is too long
* use regular data_update()
* Use log facade
* OpenTSDB mis-ordered arguments fix
* Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores.
* only filter tags for datastores that won't it don't modify the tags permanently
* Update copyrights to include original authors.
* Stats for all datastores
* Fix mysql sends different rrd / other ds names
* fix snmp last stats not initialized
remove unused function
* remove unused function and move single use function closer to its use
* InfluxDB does not need to update null or U values.
Skip write if all fields are empty
* Fix smart value checks
* fix style issues
* Make sure port data is stored the same way as before for Graphite and OpenTSDB
Add ifIndex tag to all to be compatible
* Missed rrdtool_tune() call
* Test update WIP
* OpenTSDB now includes tags
* fix style
* Datastores to object oriented code, using the Laravel IoC container
Change instantiation
better DI
move OpenTSDB
Small re-orgs
remove unused stuff
Fix graphs and other scripts
Use DI for all except rrd
fix up connection error handling
Add tests, fix up a "few" things
Add Config::forget()
Style fixes
Don't reference legacy code
remove accidental code paste
Add datastores phpunit groups
some tests
* rebase fixes
* some test fixes
* shorter tests
* shorter tests
* Don't except when rrdtool can't be started.
* restore tests
* fix rrd tests
* fix iterable change upstream
* fix isValidDataset
* fix invalid data bug
* fix mysql incorrect ds
* fix issue with data that is too long
* use regular data_update()
* Use log facade
* OpenTSDB mis-ordered arguments fix
* Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores.
* only filter tags for datastores that won't it don't modify the tags permanently
* Update copyrights to include original authors.
* Stats for all datastores
* Fix mysql sends different rrd / other ds names
* fix snmp last stats not initialized
remove unused function
* remove unused function and move single use function closer to its use
* InfluxDB does not need to update null or U values.
Skip write if all fields are empty
* Fix smart value checks
* fix style issues
* Fix Air Fiber port stats
Define OS port polling includes in a standard way.
Move Air Fiber code to os port polling include.
* Update snmp data
* fix accidental change
* Some formatting fixes
* should be null
* extend FS switches support
* MIB compilation
* HW and Ver
* sensors and CPU
* tests
* correct version
* try to handle properly "down" as not up, for OperStat like lowerLayerDown
* try to handle properly "down" as not up, for OperStat like lowerLayerDown
* try to handle properly "down" as not up, for OperStat like lowerLayerDown
* try to replace "down" with "not up" :)
* fix other ifOperStatus checks
* Don't update ports stats in database when their ifOperStatus is down and their ifLastChange did change
* Don't update ports stats in database when their ifOperStatus is down and their ifLastChange did change
* Don't update ports stats in database when their ifOperStatus is down and their ifLastChange did change
* Update the poll_time, poll_prev and poll_period of all ports in an unique request per device
* Update the poll_time, poll_prev and poll_period of all ports in an unique request per device
* echo debug
* max array_column
* remove print_r for debug
* optimize update of poll_time, poll_prev and poll_period
* optimize update of poll_time, poll_prev and poll_period
* better code readibility
Only call snmpwalk once, instead of 20, to avoid havin to face up to 20 times the timeout. Decreased drastically polling time on some Cisco 887 / 897 devices
* Add CISCO-IF-EXTENSION polling and graph
* Added test data
* Code style
* Move CISCO-IF-EXTENSION-MIB to cisco mib dir
* Test data?
* Recollect test data again
* ios-xe variant 'ports' with ports test data
* Removed unnecessary test data
* initial db/defaults dump
* numeric values
* Remove $config['time']
* Use config_definitions.json
* try setting definition as a complete array
* a little more
* fix format
* WIP converting dynamic setting pages
* rewriting the webui
* remove legacy and add translations
* finish email section
* improve navigation
update js a bit
* Import the remaining existing settings
* Update backend still some wip
migration
* fix config loading (db not overriding defaults)
* some cleanup
* more array collapsing
* update settings
* Settings search
* add purge settings to ui, order groups and sections
* collapse more arrays
* Auth definitions WIP
* remove needless slash escapes
* add warning to json
* moving settings from defaults.inc
* remove slow_statistics
* Move rrdtool settings to the poller section
* Use translations more consistently
* removing more settings from defaults.inc.php
* show setting name in tooltip
* allow help text to be shown on mobile
* disable settings that are set in config.php
* Implement undo and reset to default.
* Vue.js functional
* Vue.js WIP
* Implement tabs component
* accordion WIP
* lodash ver update
* two items
* Accordion somewhat working
* hash navigation
* Refine Accordion
* Fix up tab styling a bit
* Cleaner tab selected property
Hide html while loading
* spinner?
* Icon support
property for accordion to active
* WIP
* Tabs/Sections from ajax
* Setting Component skeletons
* Dynamic Component resolution
* Basic functionality
* toggle class
* Refactor components
* translate tabs and accordions
* simple array attempt
* improve readonly tooltip
* array styling
* array value editing
* organize snmp info
* Handle initial tab/section in url
* Use Laravel to parse tab/section, dump old
* Draggable array entries
* v-tooltip, for clickable (and touch) help tooltips
disable draggable
* Navigation WIP
* Navigation WIP
* groups computed
* filter settings
* fix event reference
* vue.js i18n initial
* missing description = just setting name
* en fallback
* tidy up the language support and js generation
* persist value to db
* fix issue with 0
* Delete settings from DB instead of setting them to default
* ldap-groups
fixup style
* Default dashboard selection
* fix array of options instead of object
* allow custom validation for settings
* translate options in SettingSelect
* SNMP v3 WIP
* fix setting arrays
* Split persist out of set
* Hook up events for SNMP v3 Auth
correct Config::persist behaviour with arrays
* dependent settings (primitive for now)
actually update the settings values in the LibrenmsSettings component
* more complex "when" behaviour
* remove un-needed seeder
* add poller_modules.cisco-qfp
* remove en.json (disable warning)
* don't set default for log_dir or log_file, otherwise it won't be processed correctly
* Fix module order
add some missing settings
* more config corrections
* correct graphs
correct loading values set to null (although it should have no difference)
remove project_name_version
* Add nfsen settings. Docs are very confusing, so might have flubbed something
remove option for array definition of select option as numeric indexes messes it up
* Correct more upstream config differences
* Config cleanup after a bunch of merges.
* Fixes
* add version tags to js/css files
remove old js
* Print out full settings list read-only
* Add http_proxy setting
fix indents in config_definitions.json
* repeaters default is 0 (aka 20)
* cleanups
* rewrite the dynamic config docs
* add language docs
* Don't show snmp v3 auth add/remove if disabled by config.php
Fixes#9718
This PR adds POE graphs, even if not all the values that are polled on other OSes are available on this one.
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 10075`
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.
* add mibs,first commit
* adds support for Nokia ISAM Plattform
* remove some comments
* change os polling to multi oid
* Restore file headers
* Fix discovery by sysObjectID
* first deactivate checks against IHUB (timos), It not necessary so long we can not provide more thatn one snmp community per device
* move snmp state and temperature from pre-cache
* Update os_schema.json
* fix_if_discover
* Update ports.inc.php
* Fixed overwriting IfDescr and IfAlias overwriting
* removed whitespace
* added ifname, ifalias and ifdescr copy if it is emtpy or null
* removed ifAlias from update to prevent overwrite
* removed ifName and ifDescr from update to prevent overwrite
* added is_port_valid before doing copy actions between ifDescr,ifAlias&ifName also added back ifDescr&ifName update
* Update ports.inc.php
* Update functions.php
* Update ports.inc.php
* Update exa_e7-2.json
* Update fortigate.json
* update some mibs
* add virtual router ports
* coding style
* refactor
* some refactoring
* some typos
* add snmprec
* Fix capturing VRF entries with no ports
* updated test data
* manually fix test data
Not going to try to fix the data capture for backslashes at this time.
* Revert "manually fix test data"
This reverts commit 2c98450706.
* timos data for net-snmp 5.7.3 ?????
* Added Fortigate state sensors
* Added snmprec file
* Update fortigate.json
* Fix "awesome" ifHighSpeed implementation...
* Update fortigate.json
* better MAX_INT ifHighSpeed fix
* update for new ifType changes
* ifDescr is not used correctly like most fortinets
* Adding ifType to base_oids
* Improve discovery (update ifType) and polling (save ifType)
* Updated test data
* Updated json test data
* vlan isn't filtered by default :P
* With default ignored ports
* Update newer test data
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.
* device: Initial support for CXR-Networks Terminal Server
* device: Support for CXR-Networks Terminal Server - CodeClimate + cleaning
* device: renamed cxr-networks-ts and code improvement
* device: cxr-networks-ts test data
* device: renamed os as cxr-ts
* device: renamed os as cxr-ts, test data