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.
* Added support for IONODES video encoders
* fixed expected number instead of string value error when running tests
* removed extra colon
* added mibs_dir for ionodes
* removed IF-MIB from ionodes.yaml
https://community.librenms.org/t/modify-discovery-protocols-inc-php-to-fix-neighbours-problem-on-extreme-networks-exos-switch/7797
The bug is caused by SNMP polling switch-1 with ifIndex to DB (associate
ifIndex when adding switch), the port “1” is “1001”. Another switch-2
discover the switch-1 port “1” by LLDP is “1” (after LiberNMS get this
information). Two values are not equal (“1001” != “1”). If I change to
use ifName associate when adding device, because ifName is “1:1”, so it
can not equal to LLDP too (“1:1” != “1”).
* Added support for HikVision-DS Cameras
clean up
removed pointless file, cleaned up code
fixed failing unit tests, a bit of cleanup
WIP - will rebase
split hikvision into hikvision-nvr an hikvision-cam
* removed unneeded comment and rec file
* New Device: ATS - Automatic Transfer Switch
* Small fixes
* Fixed test data
* More fixes, again
* Moved temp to php to retrieve limits from device
* Fixed perms again...
* Final test file. Or I hope so...
* device: Added support for APC AP9810 zone contacts
* fix: disconnected sensors been detected. And iemConfigProbesTable certainly does get used and it reference
* fix: load is VA, not to be confused with watts. This could be different per device though...
Apparent Power unit = VA
Real Power unit = Watts
And Keeping codeclimate happy
* feature: updated APC MIB
* feature: added test data for APC Smart UPS SMX750i and AP9810 with contact switches
* The SNMP value ciscoEnvMonTemperatureThreshold is now stored as high limit (and no more as high warning limit)
* Updating misc/notifications.rss to make the user aware of the behavioral change
* Addition of missing </description> in the misc/notifications.rss
* Automatic sensor limits are now optional. Set ['discovery']['sensors']['autolimit'] = false to disable.
* Changing new config variable name from discovery.sensors.autolimit to sensors.guess_limits
* Updated documentation: ['sensors']['guess_limits'] value added
* adding paper tray status and error states
* adding paper tray test data
* Create jetdirect_papertray.json
* Store printer supply type
* Update json data
* fix style
* Dantel WebMon Support
Webmon tep discovery changes
Fix Code Climate Issues
* WebMon - Move MIB to folder and create json reference
* Minor changes to Webmon polling
* Add data scrubbing state to Synology RAID status
Adds a new state translation to Synology DSM RAID status sensor, so it displays "DataScrubbing" while the operation is running. Previously it would just show "# 13".
* Update Synology RAID MIB
Downloaded from
https://global.download.synology.com/download/Document/MIBGuide/Synology_MIB_File.zip
* refactor: advanced sensor states
mark create_state_index($state_name) as E_USER_DEPRECATED?
* fix: minor corrections
* fix: mib has partialSync(9) and incompatibleVersion(8)
* fix: corrected netagent2upsstate - Sleeping(5)
* fix: NetAgent2 upsThreePhaseUPSStatusInverterOperating correction
* refactor: array() be gone
* Refactoring includes/discovery/sensors/state/extendair.inc.php with arrays
And tidying up array formatting in other files
* fix: minor typo
* standardising array item names
removed redundant "if ($state_index_id !== null) {"
* workaround: procurve & serverscheck
a sensor is causing create_state_index($state) to return null.
The updated code doesn't allow for this and thus a hybrid is being used.
* standardised naming of state info. Caused a typo $state_name instead of $status_name
$state_name is the standard
* converted compas to square arrays
* Converted APC states using preg_match to new create_state_index() call
* Update boss.inc.php
* newdevice: Added support for Alpha Comp@s
http://www.alphainnovations.eu/compas
* fix: Updated state values
state values persist in database, even after deletion of devices.
Not a 100% how to purge them.
create_state_index($state_name, $states) doesn't update the database, if the states have changed
* refactor: comp@s OS state sensor now updated to latest format
* Migration script and data feeding
* Adding the columns in the GUI
* build schema
* update FDB test data
* Use of timestamps()
* ignore created_at and updated_at in tests, and regenerate test impacted
* daily.sh does the cleaning
* space cleaning codeclimate
* Use carbon instead of str-val
* handle when $fdb_entry->updated_at and created at are null
* handle when $fdb_entry->updated_at and created at are null (force travis rerun)
* Doc update
* Doc update
* Fixes for SZ detection
* Ruckuswireless devices
* remove registered mibs
* Code Climate Fixes
* updated test data for zd1100 & zd1200
* Updated database test data
* trying to fix smartzone test data
* updating zd test data
* more code climate fixes
* Update ruckuswireless-unleashed.yaml
* hide total clients if 1 ssid
* fixing smartzone ap status
* smartzone ap count fixes
* fixes because of git
* fix zd ap counts
* Update ruckuswireless-sz.json
* Update ZD1200 test Data
* Update ruckuswireless-sz.snmprec
* Update Database test data
* Update zd1200 database data
* Update ruckuswireless_zd1100.snmprec
* Update ruckuswireless_zd1100.json
* Update ruckuswireless_zd1100.json
* Update ruckuswireless_zd1100.json
* Code Climate Fixes
* Code Climate Fixes
* Update Ruckuswireless.php
* Code Format Fixes
* 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
PR #9546 has resulted in Platform being detected as
"Juniper Virtual Chassis Switch" when a set of devices
is stacked. Hence, no more possibility to see whether
it is for example an EX2300 or EX3400 virtual-chassis.
This commit falls back to using rewrite_junos_hardware()
if the "Juniper Virtual Chassis Switch" string is detected
in boxDescr, resulting in usable hardware data.
Caveat - it's possible to build a virtual-chassis of
multiple switch models, but only for higher end hardware:
https://www.juniper.net/documentation/en_US/junos/topics/concept/virtual-chassis-ex4200-overview.html#jd0e75
Example SNMP output:
mschmidt@nlrtm1-librenms1:~$ snmpwalk -v2c -cremoved -m JUNIPER-MIB -M /opt/librenms/mibs hostname jnxBoxDescr
JUNIPER-MIB::jnxBoxDescr.0 = STRING: Juniper Virtual Chassis Switch
Also reported previously via the community forums:
https://community.librenms.org/t/pr-9546-results-in-junos-platform-detection-quirks-in-combination-with-virtual-chassis/6537
* update some mibs
* extend snmpwalk_cache_twopart_oid function
* add raisecom dbm and temperature sensors
* add test data
* add some more sensors
* Update raisecom.inc.php
* Update raisecom.inc.php
* Updated DataDomain MIB, Added DataDomain Storage poller and discovery
* Fixed issues pre-commit issues
* Removed extra blank lines
* Make polling less redudant
* Remove blank line
* Remove device os detection since it's not needed. Add test data for DataDomain
* For better compatibility, we will check if the $index is null prior to adding the storage
* Fix: is undefined...
* Update datadomain.inc.php
* Update datadomain.inc.php
* Fix Sentry3 voltage sensor discovery
Previous fix broke voltage sensor discovery with superfluous .1 in the SNMP OID. I have fixed my install with this patch but other testing should probably be done.
* Update sentry3.json
* Adding Sonicwall SMA 400 support
* Added metric clients for use in SSL VPN client alerting
* Support for specifying multiple sensors for clients metric
* RAM info supported
* CPU info supported
* Added test data
* Dashes in graph aren't really useful
* Updated test data with script from upstream (#10)
* Fix style errors (#11)
* Now 8 spaces on line 56
* port clients sensor to count
Some sensor cleanups (move all icon definitions to one spot)
* update port data
* add sensor test data. Make a guess at userLicense output since it is missing.
* cleanup missed items
* typo
* Updating test data
* Fixed missing CPU info
* Recreated test data
* Recreate test data after rebase
* Test data without ignore statements in config
* 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
* 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
* Merge ethernetprobe2 into akcp and improve akcp
Use higher resolution temperature values if available
Properly hand F/C temperature scales (LibreNMS always uses C)
Add current, voltage, airflow (no test data)
Move humidity to yaml
* Update akcp.snmprec
* Update akcp-serverprobe8.json
* Add group
* Update test data
remove old MIB
* 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.
Discovers 2 of 6 found in the test data then updates it to not match.
Setting the wrong oid.
Tracking two specific macs on a single AP that don't match the label.
If they roam it won't change until next discovery.
If this is wanted, it should be written in the wireless section.
* Fix Zynos temp warn limit
And others, but this seems to be the only one that uses
remove some odd limit restriction in the poller
* More consistent rounding for sensor limits
* round all numeric limits to 10 digits
* update test data
* Remove complex calculation as negative limit values are already swapped as needed.
* ZyXEL XGS4600-32F
- Added mib for diagnostics
- CPU/Mem
- Temp/Fan/Voltage
- Updated zyxel group mempools
- Updated test data
- snmprec
- json
- Altered ZyWall
- To exclude XGS switches
* Defined ZYXEL-HW-MONITOR-MIB at the top of file
* Removed .MIB