* Update nios.yaml
I tried to pull them all in using {{ index }}, but it didn't actually work.....
This adds the DHCP, DNS and NTP service statuses.
* Dynamic service discovery
* typo
* Create nios_status.snmprec
* Create nios_status.json
* Array
* Typo, more
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Fix Siklu Voltage
* Update tests
* Another test fix attempt
* Decimals..
* Ok, enough.
* Restore currently used index value and correctly push num_oid
* Update siklu.json
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Add version match for newer IOS-XR NCS hardware
* Tested with NCS-5504 and NCS5508
Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
* Add test data for Cisco NCS-5504 and NCS-5508
Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
* Initial push
* power trap tests
* vmware heartbeat trap tests
* heartbeat trap test
* created utilclass for common functions
* Changed util class name to better reflect its use
* make vm power state changes to db
* Traps will modify DB
* Removed unecesarry relationship
* Added vminfo modelfactory, tests, and fixed format
* Added suspended state to ui
* 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
* Add FDB support for ArubaOS; modify some SNMP calls to allow community string indexing
* Apply coding styles, changed arubaos.inc.php comment headers
* Coding style
* Modify per items discussed at pull 10940
* ArubaOS test data
* ArubaOS header doc
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Initial stab at switch input state sensor
* Fix indentions
* Fix indentions
* Index updates
* More useless changes.
* And it finally works.
* Open should be a WARNING state.
* Update email
* Add line
* One empty line, not three.
* This is getting ridic.
* Add test data
* Add support for TRENDnet switch, TEG-S80ES in particular
* Add trendnet.snmprec
* Add test data (JSON)
* Remove mib comment from yaml
* Update copyright info
* Use sysDescr value for Hardware
* update nokia mibs
* database migrations
* add code
* html code
* update db schema
* add test data
* add FIXME
* move mibs/nokia/MPLS-TE-MIB to mibs/MPLS-TE-MIB
* Updated Aruba ClearPass appliance detection for new sysObjectId
* Change the correct snmprec test file this time
* Create a new ClearPass variant and leave the original one as it was
* Restore old clearpass match
* Clean broken VRF lite code
* Change DB table for route discovery
* Add VRF simple support
* add port_id to db and discovery
* static-fy the translation arrays
* sort and search cleaning
* Sorting refactor and validation
* formatItem shortened
* Handle ifIndex==0 meaning no next hop defined (MPLS)
* Sync all create/updates
* purge in daily
* remove old route table
* get rid of inetCidrRouteNextHop_device_id
* fix wonky column orders
* add route snmprec
* fix sorting by interface
* Move to new config
* rename to route the new table
* Properly display ipv6 compressed addresses
* Translation before merge ./lnms translation:generate
* Update manifest
* Device Cache
also some additional device related models
* attribs from cache
* replace common attribute functions
* remove legacy cache usage
tidy up some collection manipulation
remove some unused or single use functions
* cleanup some items
* always return a device, to prevent bugs
* clear device cache when testing after each test
* fix double assignment
* Clean up function to take advantage of null object
* - update yzyxel mibs
- update definitions für ies series
- slot state and alarm support via yaml
* more sensors
* add new device Zyxel IES4206
* restore original ies files
* revert function stuff
* update to latest official mib
* rebase
* Added Model number detection to old 3Com SWitches
* Added test data
* Added better way to obtain data from Old 3Com StackSwitches
* Removed debug prints
* Added needed mibs
* Removed mibs and changed to oid in script
* Added Original 3com mibs from http://oidref.com/static/mibdepot/*
* Create 3com_4200.json
* Seafile Monitoring
* generalized function for application with multiple similar entries
* adding snmprec file
* Create linux_seafile-v1.json
* Update linux_seafile-v1.snmprec
Updated linux_seafile-v1.snmprec to use 4x for encoding json data response
* Update Applications.md
* added support for drac power and current polling
* Revert "added support for drac power and current polling"
This reverts commit cf83c1cb82.
* changed discovery to yaml
* readded test data
* Create transition.inc.php
* Update transition.inc.php
This file was copied from another existing file with only the OID changed originally. Cleaned up to remove unnecessary clumsiness.
* Update transition.snmprec
* Update transition.json
* Added model, processor, fan and power supply for Alcatel Omnistack Switches
* Removed Index from description of Fan and power supply
* Merged PR #10655
* Added Temperature Sensor for AOS7+ Alcatel Enterprise Switches
* Added AOS7 mempools
* Added Tests
* Update aos.yaml
* Update alerts levels in state sensors
* Add test data
* added support for PDU/PDU2 MIB data (current, power) and added external sensor fpr humidity and temperature on PDU MIB
* added test data of 1 PDU-MIB device and 1 PDU2-MIB device
* Create raritan-pdu.json
* forgot to do save-data on last commit
* 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
* Fix duplicate ping response showing false down
Log event that duplicate was detected
Escape fping cli parameters
add unit test
* Update FpingTest.php
* Refactor tests
Boot Laravel for all tests.
Config use private static property for storage instead of global
* Backup/restore modules
* disable snmpsim log
* Fixing DBTestCase
* Fix macros loading to the wrong place
* trap and other tests should check if db is available
* don't include snmp.inc.php if mock.snmp.inc.php is already included...
* fix migration
* if we don't reset the db, run migrations at least.
* set vars for migrate too
* Fix style
* ignore issues with undefined indexes in legacy code
* Store config data serialized
This way we can store null, booleans, and more reliably.
* Use model to get the mutated output.
* fix whitespace and unused function
* use json_encode/decode and casts
migration to transfer
* json_encode JSON_UNESCAPED_SLASHES
* Use JSON_UNESCAPED_SLASHES. That is only relevant if you are printing into an HTML page.
* pre-encode the seed...
* filter other fields besides config_value
* 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
* Add ECS4110 cpu usage
* Add cpu usage oid for ECS4110
* TESTED
* Fix EdgeCore ifOperStatus does not follow the Cisco convention
* Since EdgeCore use "lowerLayerDown" in ifOperStatus when port is unplugged
* On the other way, Cisco use briefly "down".
* So change "lowerLayerDown" to "down" to workaround the bug that will make port always show as up/up
* Refactor Edgecos cpu usage oid
* Codeclimate is unhappy about it maybe the refactor will make it happy.
* Add EgdeCore ECS4110 MIB
Just got MIB from EdgeCore
* Refactor Egdecos Mempool
* a bit refactor of Mempool discover and polling
* add support for ECS4110 via MIB
* Modify ECS-4110 MIB
* MODULE-IDENTITY change from ECS4110-52P-MIB to ECS4110-MIB
* strip off syntax error part(time range)
* Add EdgeCore ECS-4110 OS polling
* polling OS and Hardware via MIBs
* Fix typo
* Sorry that I am dazzled
* Fix Syntax Check
* Codeclimate is a bit aggressive
* Update edgecos.inc.php
* Update edgecos.inc.php
* Revert "Fix EdgeCore ifOperStatus does not follow the Cisco convention"
This reverts commit 27971b34a8.
* Add snmprec file for unit testing.
* Create edgecos_ecs4110-28t.json
* Added Cisco QFP processor discovery
* Fix QFP index loop variable name
* Add test data for IOS-XE processors (from ASR1001-HX)
* set the right variable
* additional sensors, some cleanup in yaml
* re-add updated tests/data/enexus_smartpacks2.json
* some rework to avoid regression
* sensor grouping
* update test data
* Add more Vigor series device support
* Update draytek.yaml
* Add more Vigor series device test data
* Update AUTHORS.md
* Update draytek.snmprec
* Create draytek_vigor3900.snmprec
* Added more DELL switches in order to get proper CPU stats
More DELL switches supported:
* N4032
* N2048
* N2024
* N3048
* N2048P
* 54XX
* fixed indent as requested by phpcbf
* fixed multiline argument function call
* removed blank lines
* Added CPU stats for N4064F
* Added test data for N4064F
* fixed indent as requested by phpcbf
* Added test data for Dell Powerconnect 5424
* Added test data for Dell Powerconnect 5448
* Added test data for Dell Powerconnect 5524
* Added test data for Dell Powerconnect N4032
* Added test data for Dell Powerconnect N2024
* Added test data for Dell Powerconnect N2048
* Added test data for Dell Powerconnect N2048P
* Added test data for Dell Powerconnect N3048
* Fixed processor usage data
* Fixed snmpsim data for 3056
* Fixed processor usage
* easier to read format
* remove space changes
* 3056 should be 8%
* Fixed Junos port/vlan relationships for els and non-els based software
* fixed tabs
* Add test data
* Updated test data
* Update module_tables.yaml
* Update junos_qfx5100.json
* Update junos_qfx5100.json
* Update junos_qfx5100.json
* Update opengear MIBs to latest version.
* Replace PHP signal discovery with YAML.
* Update Opengear YAML with new sensors.
* Add test data for Opengear.
* Add the test data json for Opengear.
* Named to numbered index to avoid data loss.
* Simple linear port graph prediction
Simple linear prediction line for in and out if graph "to" value is in the future
Improve graph date handling
* thinner line
* Make test specify timezone
* Laravel 5.8
and dependencies
* Fix cache time
* upstream base file changes
* Accidentally ran composer with PHP 7.3
* fix test error
* one more
* one more
* one more
* fix dotenv loading
* Add more api helper functions
to centralize code more
* Enable cors
* Initial Legacy route in Laravel
* Force api v0 responses to json
Add a couple more routes
* more paths, pretty print the json response
pass parameters to the api function
* devices basic functions
* Port generic graph function
check permissions function accepts callback to avoid lots of if statements
* move vlans
* links
* graphs
* fdb
* health
* wireless
* port graphs
* ip functions
split em up
* port_stack
* components
* compoment add/edit/delete
* get_device_groups
* port stats
* port graphs
* get_devices_by_group
* port_groups
* api_get_graph
* show_endpoints
* get_bill
* get_bill_graph
* get_bill_graphdata
* get_bill_history
* get_bill_history_graph
* remaining bill functions
* list_alerts
* ack/unmute alert
* Some cleanups
* Some cleanups
* list_alert_rules
* alert rule add/edit/delete
* inventory
* list_cbgp
* vrf
* list_ipsec
* list_fdb
* list_links (fix both usages)
* list_locations
* list_locations
* list_vlans
* list_ip_addresses
* list_arp
* list_ip_networks
* cleanup
* services
* list_logs and fix authlog.......
* cleanup
* cleanup 2
* remove slim
* don't load schema more than once
* basic test
* fix style
* downgrade laravel-cors to a version that supports PHP 7.1
* initial database migrations
* first part, discovery
* second part, polling
* add SAP polling and discovery
* style checks
* rename variables in more generic way
* html global pages for sdp and sdp binds
* add Services and SAPs
* port links, database, etc.
* html device routing pages
* add tests
* checks
* rework database id relationship
* scruntinizer inspection
* fix unit test for new mpls tables
* Update MRV MIBs to version 5.14.1
* Learn SlotTemperature limits from the new MIB.
* Rename MIB files to the name of the MIB.
* Update mrv-od.snmprec
* Update mrv-od.json
* Added support for snmp monitored PDU from fs.com
* Added support for snmp monitored PDU from fs.com
* Fix sysObjectID 1.3.6.1.4.1.30966
* Create fs-net-pdu.json
* Add phase2 name to IPSEC sensor.
For VPN tunnels with more than one phase2, the sensor is confusing.
Using the phase2 value provides both the phase1 and phase2 name for a more complete sensor.
* Update fortigate.yaml
phase1\phase2 naming for a more clear sensor.
test data to come
* add test data
* more test data?
* missing whitespace compared to original
* Remove wireless data
* Added support for DGD and BER that are avalible on newer infinera-groove FW
* updated tests for new groove sensors
* Update infinera-groove.inc.php
* Update infinera-groove.inc.php
* Force test to run again
* Default to null for group yaml discovery.
* Update test data for a154bda yaml group null fix.
* Changes to guessed limit functions for sensors.
Original behaviour
===================
The file `includes/discovery/functions.inc.php` contains
`sensor_limit_low()` and `sensor_limit()` which both attempt to
guess a sane value for sensors when no explicitly defined
low_limit or high_limit can be found during discovery.
Both switch control structures used in those two functions
have empty case statements which means that if one of those matches,
it's going to fall through and run the code for each subsequent
case until a `break` is reached.
For example, when we call `function sensor_low_limit(dbm, -13.036)`
it will return the value `-12.3842` instead of `null`. That is
because there will be a match at `case 'dbm':` which falls through
all the way to `case 'cooling':`, where it performs
`$limit = -13.036 * 0.95` before hitting a `break`.
Changed behaviour
===================
Removed `power_consumed` and `count` guessed low_limit and
high_limit, I personally added those sensor classes in PR #9471
when I didn't understand that a switch control structure has
fall-through behaviour so I can guarantee that guessing limits for
those is a mistake on my behalf. It should not be there, only
power_factor can have guessed limits. Apologies for the issue,
I'm still a beginning programmer!
Furthermore, I removed guessed high_limit values for `current`
and `power` because these are supposed to draw higher values as
more devices or components are installed on for example a PDU or
a chassis.
Finally, I removed guessed low_limit and high_limit for `dbm`
sensors, there is a much too large variance in power budget on
commercially available optical transceivers for there to be a
sensible window where you can guess these values.
* Documentation on adding sensor classes.
* Update test data - sensor limit changes @ 30212d2
* Device Groups rewrite
Updated web ui
Static or dynamic groups allowed
Alert rule query builder
Translation support
Permissions support
* cleanup, make relationship save, and validate it
* builder WIP
* rules builder and rules saving/loading
* Parse query builder to Laravel Fluent query
* Upgrade existing groups when editing.
Properly update only dynamic groups when polling.
* remove unused old code
Update API and other places to use Eloquent
* debug output in poller restored
* Fix up some things
creating static
improved validation
fix js error on creation
Fix static groups in polling
* hide pattern for static group
* Implement authorization
Use in the menu too
* update schema
* fix rollback
* Don't abort on invalid queries
* fixes to query builder
* add test data, looks like macros aren't handled (omitted them because groups don't use them generally)
* Add macro support for QueryBuilderFluentParser
* add test for macro that accepts value
* More space in forms
Retain rules when converted to static
no duplicate names allowed
* Better error feedback
Update related devices on save
* Add button icon
* format
* update docs
* fix tests
* Fix some QueryBuilderFluentParser issues with OR
updated/more test data
* Show device groups runtime
fix querybuilder.json format
* Store table joins in the rules to minimize polling time
Update group joins in daily.sh (and when they are saved)
* Update daily.php
* Add units to time
* Device Groups rewrite
Updated web ui
Static or dynamic groups allowed
Alert rule query builder
Translation support
Permissions support
* cleanup, make relationship save, and validate it
* builder WIP
* rules builder and rules saving/loading
* Parse query builder to Laravel Fluent query
* Upgrade existing groups when editing.
Properly update only dynamic groups when polling.
* remove unused old code
Update API and other places to use Eloquent
* debug output in poller restored
* Fix up some things
creating static
improved validation
fix js error on creation
Fix static groups in polling
* hide pattern for static group
* Implement authorization
Use in the menu too
* update schema
* fix rollback
* Don't abort on invalid queries
* fixes to query builder
* add test data, looks like macros aren't handled (omitted them because groups don't use them generally)
* Add macro support for QueryBuilderFluentParser
* add test for macro that accepts value
* More space in forms
Retain rules when converted to static
no duplicate names allowed
* Better error feedback
Update related devices on save
* Add button icon
* format
* update docs
* fix tests
* Aruba IAP: Fix Radio State Sensor
Fix state sensor for radio status from warning when disabled to unknown state.
* Update aruba-instant.json
* Update aruba-instant_105.json
* Fix Software Version #
I don't think setting $firmware does anything, not to mention the regex wasn't matching correctly. I tested this fix tons of different software versions and they all seem to work.
* Revert "OS CIMC Software Version Number"
* version and features
* fixed feature
* Fix Extra Blank line EOF
* Extend the Dell drac module to report CMC status and sensors
* CMC status sensors do not have chassis id
* Update test data for drac OS
* Add missing test data for drac os
* WIP - Add MPLS Support
This introduce the generic MPLS support
- New database tables for MPLS LSPs
- actually discovery and polling on NOKIA SR OS (Timetra) devices
- new routing->MPLS HTML pages
- ToDo MPLS LSP paths table and views
Suggestions and improvements are welcome
* add db schema
* some fixes
* add path table, discovery and polling
* add path views
* add test data
* Convert MPLS module to new style
Implement a SyncsModels trait to simplify code a lot
* abs() for negative value from snmp (bug?), test data
* fix db schema
* Fix up test data, remove uneeded data in json
* fix whitespace
* Fix Software Version #
I don't think setting $firmware does anything, not to mention the regex wasn't matching correctly. I tested this fix tons of different software versions and they all seem to work.
* Revert "OS CIMC Software Version Number"
* cimc-version-fix
* added test data
* Update cimc.snmprec
* Dynamic entPhysicalIndex values for YamlDiscovery
* Use degree symbol when displaying temperature values
* Adjust SNMP options for new snmp_get_multi()
The OS polling module for mrv-od was using snmpget commands with
-Ovqs, rather than -OQUs, which meant that the equal sign was
stripped in the snmpget output. But that equal sign is now used
as the explode() delimiter so it broke the construction of the
returned array for the snmp_get_multi() function.
Additionally, I removed the NBS-CMMC-MIB:: prefix which is no
longer returned by snmp_get_multi() as part of the OID. Now,
the mrv-od.inc.php OS polling module is retrieving data from
positions in the array with actual content.
* Convert mrv-od to yaml, improve sensors discovery
Converted sensors discovery for mrv-od to yaml, retaining all
functionality for pre-cache, dbm, and temperature. Replaced specific
SFF-8472 Digital Diagnostics state sensors with generic ones, given that
we are now reading out detailed values through new dbm, current, voltage
sensors.
Reasoning: the generic Digital Diagnostics state sensors report state
diagsOk, or else the worst severity level measured among all of the
Digital Diagnostics values for that optical data point. You'd really
only want to set a generic "alarm" so the box can report that it
thinks something is wrong, whereafter a human can look at the graphs
and/or the CLI to draw their conclusions about the alarm. Otherwise,
things would quickly become too spammy as you are essentially duplicating
every sensor across both regular measurements and state measurements.
Further changes:
- Increase maximum number of detected PSUs from 4 to 8 per the MIB.
- State sensor to detect (in)sufficient power budget for all modules.
- Use skip_values to hide state sensors with the notSupported value.
- Use skip_values to hide sensors which are unsupported per the MIB,
signified by the device returning special values -1 or -2147483648.
- Add dBm, temperature "over" graphs to the mrv-od device header bar.
* Add mrv-od entity-physical support
MRV does not use the ENTITY-MIB data format, so we had to reconstruct
the inventory from their proprietary format using the following tables
from their NBS-CMMC-MIB:
- nbsCmmcChassisTable
- nbsCmmcSlotTable
- nbsCmmcPortTable
Additionally, since sensors didn't have their own ifindex in the
NBS-CMMC-MIB, I went ahead and appended the last OID digit to
the "containing" ifindex create a unique number. The same was
done for the sensors in the yaml-discovery.
* Test data for mrv-od, fix 2* pre-commit.php issues
* Fix entPhysicalIndex returning 0 instead of null
Some unit test breakage was caused by 62167ebcb which changed
the code to return 0 instead of null when {{ $index }} was
set as the entPhysicalIndex in the YamlDiscovery. So now we
detect if it returns some value which may be interpreted as
false, and if so we set null rather than 0.
* Fix for RouterOS LLDP discovery
Only the first nine neighbors were correct on RouterOS - missing hexdec() led to the remaining neighbors being linked to the wrong ports. Ex. port 10 in hex was incorrectly linked to port 10 decimal when it should be 16 in decimal
* Added test data for MikroTik RouterOS CRS317 switch
* fix client count polling, add ap count polling.
* Set low warning/critical thresholds for AP count sensors
* Add Aruba AP Count Warning and Critical Alerts to collection, lint alert_rules.json
* add newline at end of alert_rules.json
* add/update tests/data/arubaos*.json test data
* Fix Cisco MAC acounting discovery, polling and HTML templates.
* Remove empty code.
* Provide test data for cisco-mac-accounting module.
* Added module test dependency.
* Refactor LibreNMS service
add ping
* services ported
remote legacy stats collection
* alerting
* implement unique queues
* update discovery queue manager
* remove message
* more cleanup
* Don't shuffle queue
* clean up imports
* don't try to discover ping only devices
* Fix for discovery not running timer
* Update docs a bit and and add some additional config options.
Intentionally undocumented.
* Wait until the device is marked up by the poller before discovering
* Handle loosing connection to db gracefully
* Attempt to release master after 5 db failures
* Sleep to give other nodes a chance to acquire
* Update docs and rename the doc to Dispatcher Service to more accurately reflect its function.
* add local notification
* Collect Appliance serial number from Sophos device
Add serial number read. Added on polling session instead of discovery because the S/N changes in case HA functionality is enabled, and there is a switch between active and standby.
* Update cyberoam-utm.inc.php
* Fix Siklu Version/Serial
Siklu allows for two software images. We must first determine which SW bank is "running" in order to report the correct version.
Also adding correct Serial Number detection for Siklu devices.
* Update siklu.inc.php
* Update siklu.snmprec
* Create siklu.json
* New OS: Aruba Instant
* New OS: Aruba Instant
* recreate test data
* remove aruba_instant test data
* remove empty file includes/definitions/discovery/aruba-instant.yaml
* fix state sensor discovery
* remove minor changes to includes/polling/functions.inc.phpwq
* move mac helper functions to Rewrite class
* simplify snmpwalk_group usage, general code cleanup
* fixes
* fixes
* fixes
* fixes
* fixes
* fixes
* recreate test data for 105 variant
* Add Client sensors for 8.4.0.0+
* begin stream-lining discovery and polling. separating discovery functions
* update test data
* update test data
* update test data
* improve mempool discovery/polling, clean up os polling, improve state discovery, improve os definition, misc fixes to wireless sensors module
* attempt to implement custom AP and client discovery and polling
* code fixes
* re-add ap count top graph
* more fixes
* more fixes
* more fixes
* more fixes
* remove some debugging, update test data
* code cleanup
* code cleanup
* address some scrutinizer warnings
* Fix Avtech discovery
pre-cache stored the data incorrectly
* Fix RA-4E external sensors
sen1 had incorrect oids (duplicate of sen2)
Description oid from data doesn't match the mib, perhaps outdated MIB?
* add test data
* Updated 4E MIB
* initial commit of junos handlers
* added DOM alarm test, refactored handlers for DOM alarms
* fixed some formating issues with last commit
* Created DOM alarm handlers and unit tests
* Made tests for LSP Down handler
* Added trap tests for JnxVpnSes*, JnxVpnIf*, JnxVpnPw*
* Added BGP4 trap handlers and tests
* Fixed some variable names for codeclimate
* Simplified JnxBGPM2* handlers
* updated unit tests
* additional sensors for timos
change to yaml discovery for sensors
remove obsolete tmnxChassisPowerSupplyTable
* inconsistent data in snmpsim
* fix snmpsim data
* fix snmpsim data
* fix snmpsim data
* Added support for Zmtel greenpacket devices (os: zmtel)
* added more sensors
* move count sensors to features
* rename MIB and move modulation scheme to state sensor
* added test data
* graph pCID
* Added SNMP Trap Handlers for Adva Ethernet devices
* Fixed formatting.
* Fixed errors from previous commit.
* Refactored AdvaAttributeChange.php
* Updated a few handlers, added test script.
* Added changes to snmptraps.php to make handlers active
* Fixed issues found by travisci
* Missed two mistakes in travisci, fixed. Should be ready for human eyes.
* Added SNMP Trap Handlers for Adva Ethernet devices
* Fixed formatting.
* Fixed errors from previous commit.
* Refactored AdvaAttributeChange.php
* Updated a few handlers, added test script.
* Added changes to snmptraps.php to make handlers active
* Fixed issues found by travisci
* Missed two mistakes in travisci, fixed. Should be ready for human eyes.
* Added two tests.
* fixed error
* Updated handlers with changes introduced in 1.50
* Refactored and added a few tests
* Added test for StateChangeTraps
* Added AdvaObjectDeletionTest, still wip as I need to recapture flow del.
* Added Network Element Alarm Trap Test
* Added more tests, but they are wip.
* Finished traps handler tests, few handler refoactors.
* fixed style errors and refactored as requested
* made requested changes to threshold trap handlers
* removed a test script
* modified adva port threshold handler
* Update AdvaAccThresholdCrossingAlert.php
* Update AdvaNetThresholdCrossingAlert.php
* removed static method
* fixed mistake in AdvaNetThresholdCrossingAlert.php
* Rewrite user management.
Error management
Revert edituser legacy page
Connect user permissions button to legacy page for now.
Implement user creation
Refine form
Remove PingCheck.php accidental add :)
Fixes for redirection and deletion
More fixes: realname accidental validation setting, hide can modify for read-only auths
Use a panel to improve style
Add icon to panel-title
Not allowed to delete own user (at least via the click of a button)
Use request validation to reduce complexity of controller.
Improve protection against users doing things they should not.
Switch to horizontal form and not nearly as wide of layout :)
delete without refresh.
Fix for buttons
Include all users (not just from this auth)
Hide the auth column if there is only one auth type
Show username if real name isn't set
Don't allow creation of demo users via the webui
a fix to the lnms user:add command, it didn't set auth_id
update edituser.inc.php to current
just redirect to users page
* Remove TwoFactorTest for now
* Update edituser.inc.php
* Update .env.dusk.testing
* Enable 2fa for 2fa test...
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.
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.
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
* 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
* ovaldi UPS support
* ovaldi UPS tests
* serial + model + version inc tests
* update of the code using details from requester
* update of the code using details from requester
* update of the tests
* forgot discovery yaml ...
* Added support for Ruijie Networks
* Extend discovery
Let's extend to all the products from this brand, at least until we have more detailed discovery
* 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
* added new OS - sensatronics-em1
* #9960 - added logo, icon, and update skip_values
* #9960 - fixed over: value
* #9960 - updated icon, logo, and updated descr: from static to table names
* Reorganize trap tests
* Testing db DRIVER to prevent .env from interfering
* New code to detect if Laravel is booted. Hopefully more reliable.
* WIP external test process
* revert module test helper
* Use .env in Eloquent::boot()
* Fix test database settings loading
* fix undefined classes
(didn't find the one I needed)
* Fix incorrect Config usages
And RrdDefinition return type
* fix .env loading
* use the right DB
* slightly more accurate isConnected
* Move db_name to DBSetupTest specifically
* restore $_SERVER in AuthSSOTest
* missed item
* WIP
* tear down in the correct order.
* some testing cleanups
* remove check for duplicate event listener, it's not working right
* Don't need this change anymore
* Implement Log::event to replace legacy function log_event()
* fix port tests
* fix up tests
* remove pointless TrapTestCase class
* fix style
* Fix db config not being merged...
* skip env check for tests
* defer database operations until after Laravel is booted.
* don't include dbFaciale...
* redundant use
* Reorganize trap tests
* Testing db DRIVER to prevent .env from interfering
* New code to detect if Laravel is booted. Hopefully more reliable.
* WIP external test process
* revert module test helper
* Use .env in Eloquent::boot()
* Fix test database settings loading
* fix undefined classes
(didn't find the one I needed)
* Fix incorrect Config usages
And RrdDefinition return type
* fix .env loading
* use the right DB
* slightly more accurate isConnected
* Move db_name to DBSetupTest specifically
* restore $_SERVER in AuthSSOTest
* missed item
* WIP
* tear down in the correct order.
* some testing cleanups
* remove check for duplicate event listener, it's not working right
* Don't need this change anymore
* Implement Log::event to replace legacy function log_event()
* fix port tests
* fix up tests
* remove pointless TrapTestCase class
* fix style
* Improvements for infinera groove
- add support for 3.0.1 and prior versions
- add support for subports and fibre-channel
- fix bug relating to OS version detection
- updated unit test snmprec
* 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
* 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
* Cisco Sat Receiver
* Formatting Fixes
* Code Climate Fixes
* Add $entry field in the last array.
* Formatting Fixes
* Updated to correct S/N was grabbing wrong OID.
* Update test data for missing serial #
* Updated Serial # test data
* 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
* Fix icon finding
Also fix os suggest not loading all OS.
* Fix os that would have missing icon under the new code (and one under the old code)
* forgot icon
* 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
* Sync Git to Master
* OS Support for Perle Terminal Servers. Added via /scripts/new-os.php. Tested on two devices
* There was an existing Perle OS, updated it to include the Perle IOLAN SCS model .1.3.6.1.4.1.1966.12. Removed Files the script created that were no longer needed
* There was an existing Perle OS, updated it to include the Perle IOLAN SCS model .1.3.6.1.4.1.1966.12. Removed Files the script created that were no longer needed. Round 2
* Update exiting includes/definitions/perle.yaml to catch all device by Perle. Removed the .gitignore files from the branch
* Git Add includes/definitions/perle.yaml helps
* Empty file not allowed in YAML verification
* restore missing files
* restore missing files
* restore missing files
* Restore the sysDescr
The existing testdata relies on this, as sysObjectID is not collected
* 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