* Add transceivers module
Move os specific code to OS
Fix errors and updated connector names
Add RouterOS, a lot less data there.
Add Comware
Add Exa, required a transformer function (mw to dBm)
Add Junos, revision was too short
Just starting on ui
Graphs, and more ui
some polling fixes
collapse header for small screens
refactor a bit
Missed graphs
Transceivers icon inline
Use @once on popup javascript
update db_schema.yaml
Don't show transceivers in basic view
basic view could use a review
Apply fixes from StyleCI
API functions
Comware don't fail if port is missing
Apply fixes from StyleCI
Add alert rules to collection
Device Overview
Attempt to fix bad alert rule, probably needs more
Fix up Comware and remove old sensors
Mark transceiver metrics without thresholds as Unknown
Routeros cleanup
Exa cleanup
Handle missing port
Graph allow filter by channel
More translations
Add transceiver graphs to port graphs
Add Cisco support, use entPhyscial module data if available
Fix OcNos divisors
Labels on transceiver page
Show encoding if available
Hacky OcNos port mapping
Fix up Junos optics and remove old sensors
FS switch support
Metric casts to prevent thrashing
Extra transform_function support
Add link to transceivers page from overview
Change default sort to group by type, then channel
move some code out of overview blade template
Fix bad type ocnos
Apply fixes from StyleCI
Add scales to graphs
Add some test data
Default sort order for metrcis in SQL applied by default
Transceiver metrics threshold manual settings via WebUI and API
Fixes to channels verbiage
Fix severity calculations
Add cable field for SM/MM/Copper
Apply fixes from StyleCI
update test data
Show DDM
Update DB schema file
Extend serial field to 32, even though devices shouldn't be able to have one longer than 16
Missing import
Add status field to database, that way we can support snmp implementations that only return an enum
Add missing files
Fix db_schema
Fix style
Fixes
Style fix
Work around phpstan issue
Update transceivers.blade.php
Missed getStatus() call
Prevent extra dots when channels are not changed
Update module to match upstream
Save ocnos metrics as sensors
Move to regular sensors
add entity physical index
Update UI to sensors WIP
Apply fixes from StyleCI
Forgot one change
Update ui to use sensors
Remove transceiver metrics
Remove metric os discover code
fs-switch pending
Remove transceiver metrics for fs-centec
Exa link up
Revert all test data
Fix up transceiver module interface
Remove unused Convert class
comware cache and transceiver type
Fix some transceiver metrics filtering and formatting issues
Consolidate display formatting
Coalesce commare hh3cTransceiverTable walks to prevent double walk
Use group to identify transceiver sensors
Fixup routeros
Fix up cisco
update db_schema
Small addition to docs
Improve overview layout and add graph popup
Update Junos
update css files
ddm should be nullable
Increase the field length for type and model
Cisco Improve detection when there is an intermediary container
Add transceiver test data
Apply fixes from StyleCI
Fix incorrect test data
Improve display formatting
Fix test data
Apply fixes from StyleCI
Fix up more data
Fix up more data
Fix incorrect return type in routeros
Update ocnos data
* Remove some remaining references to transceiver_metrics table
* AuthSSOTest: clear roles cache
* PollingJob: When a poller module doesn't exist, return null instead of false. Skip all other checks and disable polling in that case.
* Sensors: Guess high and low limits separately as needed
* Sensors: drac test psu current data was wrong, referencing the snmprec, 8 / 10 and 0 / 10 should be the values
NOTE: drac is messed up and runs a billion snmp queriess for no reason
* please phpstan
* Sensors: limits reference old code
move to "creating"
* Fix gw-eydfa accidental assignment
* Fix ies5000 test data now that the bad state is removed
* Fix ies5000 test data part 2
* Move sensor discovery reset into discover_device()
* infinera remove duplicate sensor (also a lot of trailing whitespace apparently)
* Fix innovaphone bad yaml discovery
* module tests should be using null when test data doesn't exist, not an empty array
* When discovery or polling is not supported, dump null instead of an array.
Account for nulls in testing
* update ISE serial
* Janitza was seemingly wrong before
* Remove some private data
* bgp-peers requires ipv4-addresses and ipv6-addresses for bgpPeerIface
* fix polycomLens broken state sensor discovery
* Raritan pdu and pdu2 test data was combined in one test file, split it out
* scs-ks duplicate temperature sensor indexes
* sentry3 someone tried to avoid breaking stuff but just broke things more
* smartos-dcp-m fix incorrect numeric oids
* ssu2000 apparently test data was wrong, must have fixed a bug in the code.
* timos remove duplicate dbm sensor definitions
* bgpPeerIface is working in tests now
* Fix moxa-etherdevice when mibs are a bit different
* xw_to_dbm negative values should return null
* Update cisco test data due previous fixes/changes
* One more bgpPeerIface
* Add orderBy to ospf module db dumps
* Remove links test data for now
* Improve handling of bad data in ipv6-addresses module
* Fix sensor state translations
* Fix up lint/style
* Set state_index_id
* Apply fixes from StyleCI
* Wrong call
* just use a loop
* Wrong id column
* Missing fillable
* Handle sensors missing state translations
* Before making a state index
* Can't map to a state index if it doesn't exist
* Apply fixes from StyleCI
* ies5000 overflowing tinyint
* Accept state translations directly add that in the translation
* handle duplicate state names, but with different case (skip no way to work there)
* Apply fixes from StyleCI
* Fix type stuffs
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Save guessed limits
Previous code was guessing, then not saving the guess
* Move to creating, which revealed that limits were swapped
* Apply fixes from StyleCI
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Sensors remove reliance on global variable
* Apply fixes from StyleCI
* Clear the instance instead of reset.
Remove $valid['sensors'] from docs
---------
Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
* Added tv_signal sensor class (TV signal in dBmV (decibells to millivolt))
* Added OS motorola-cm (Motorolla DOCSIS Cable Modem)
* Added OS thomson-cm (Thomson DOCSIS Cable Modem)
* Shift HTTP kernel and middleware
* Shift service providers
* Shift console routes
* Shift to class based factories
* Namespace seeders
* Shift PSR-4 autoloading
* Default config files
In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them. This allows you to review the commit
diff for once for customizations when you are done Shifting.
Moving forward, consider using ENV variables or create a separate
config file to allow the core config files to remain as default
as possible.
* Shift Laravel dependencies
* Shift return type of base TestCase methods
From the [PHPUnit 8 release notes][1], the `TestCase` methods below now declare a `void` return type:
- `setUpBeforeClass()`
- `setUp()`
- `assertPreConditions()`
- `assertPostConditions()`
- `tearDown()`
- `tearDownAfterClass()`
- `onNotSuccessfulTest()`
[1]: https://phpunit.de/announcements/phpunit-8.html
* Shift cleanup
* console routes
* composer update
* factories
* phpunit
* bootstrap pagination
* model factory
* wip
* Apply fixes from StyleCI (#12236)
* wip
* Apply fixes from StyleCI (#12238)
* wip
* wip
* wip
* wip
* Apply fixes from StyleCI (#12240)
* wip
* Apply fixes from StyleCI (#12242)
* composer update
* Bump to PHP 7.3 minimum
Co-authored-by: Laravel Shift <shift@laravelshift.com>
* split siteboss 530 and 550 into multiple OS
* add more sensors to siteboss550 and new Percent sensor
* fix contact closure event state values
* split os polling for siteboss to siteboss530 and siteboss550
* add test unit for siteboss550, rename test unit for siteboss to siteboss530
* refactor siteboss os polling to \Librenms\OS
* implement OSPolling to Sitebos550
* force save in pollOS() to keep custom sysName during polling
* updated unit test
* update device graphs
* remove pollOS and extra save()
* siteboss550 no longer extends OSPolling
* update siteboss550 test data
* update discoverOS() to match recent os discovery changes
* styleCI changes
* fix siteboss hardware discovery; add check to OS polling if os_group .inc file exists
* collapse siteboss to single OS, implement siteboss sensors in advanced discovery
* add siteboss unit tests
* removed unneeded OS disco defs
* styleCI changes
* more styleCI changes
* split siteboss os to siteboss530 and siteboss550
* split siteboss os to siteboss530 and siteboss550
* move php polling back into yaml
* keep original siteboss OS name
* resave snmp data for siteboss OS
* resave snmp data for siteboss550 OS
* Added discovery and graphing for JunOS (SRX) RPM probes
* Proposed changes for a percent based sensor type
* Fixed missing MIB declaration in JunOS YAML discovery file
* Updated Health-information.md to reflect the new percentage value type
* Added separate test data for junos_rpm type
* Update sensors.php
* Update sensors.php
* Update functions.inc.php
* test re-run
* Update junos_rpm.json
* percentage -> loss
* add ifSpeed prev test data
* mis-merge
* update sensors
* and bgp...
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Global Settings - Alert Default Settings
* Revert "Global Settings - Alert Default Settings"
This reverts commit a1af62b146.
* Widget Eventlog - Sensors link and overlib Image
* travis fix
* handling via AppServiceProvider
* collect function
* Travis ...
* static list of Sensor Types
* adding all sensor graph_types
* remove collect
* correct getTypes - remove change to lower case
* class sensor_descr switch
* class sensor_descr switch - revert
* Use standard sensor type names
* move types to attribute list
* going back to changes from 9eee7fad58
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Add Laravel to LibreNMS.
* Try to set permissions during initial install and first composer update to Laravel.
* Fix composer.lock
Fix missing db config keys
* Start building v1 layout
Port ajax_setresolution, inject csrf into jquery ajax calls
Layout works, building menu
Partially done.
* Fix device group list
remove stupid count relationships
* Print messages for common boot errors.
Don't log to laravel.log file.
Log to error_log until booted, then librenms.log
* Fix up some issues with Config loading
Start of custom directives
* Custom blade directives: config, notconfig, admin
* Preflight checks
Only load config files once.
* Update the composer.lock for php 5.6
* Menu through routing
* Start of alert menu
* Better alert scopes
* reduce cruft in models
* Alerting menu more or less working :D
* Fix style
* Improved preflight
* Fix chicken-eggs!
* Remove examples
* Better alert_rule status queries
Debugbar
* fix app.env check
* User Menu
* Settings bar (dropped refresh)
Search JS
* Toastr messages
* Rename preflight
* Use hasAccess(User) on most models.
Add port counts
* Missed a Preflight -> Checks rename
* Fix some formatting
* Boot Eloquent outside of Laravel
Use Eloquent for Config and Plugins so we don't have to connect with dbFacile inside Laravel.
Move locate_binary() into Config class
* Config WIP
* Try to fix a lot of config loading issues.
* Improve menu for non-admins removing unneeded menus
url() for all in menu
* Only use eloquent if it exists
* Include APP_URL in initial .env settings
* Implement Legacy User Provider
* Helper class for using Eloquent outside of Laravel.
Allows access to DB style queries too and checking the connection status.
* Fix up tests
* Fix device groups query
* Checking Travis
* copy config.test.php earlier
* dbFacile check config before connecting
Don't use exception to check if eloquent is connected, it gets grabbed by the exception handler.
Ignore missing config.php error.
* Fix config load with database is not migrated yet.
* Remove Config::load() from early boot.
* Use laravel config settings to init db (this prefers .env settings)
Fix bgp vars not set in menu
add _ide_helper.php to .gitignore
* Restrict dependencies to versions that support php 5.6
* Update ConfigTest
* Fix a couple of installation issues
* Add unique NODE_ID to .env
* Correct handling of title image
* Fix database config not loading. Thanks @laf
* Don't prepend /
* add class_exists checks for development service providers
* Fix config value casting
* Don't use functions that may not exist
* Update dbFacile.php
* d_echo may not be defined when Config used called.
* Add SELinux configuration steps
More detailed permissions check.
Check all and give complete corrective commands in one step.
* Ignore node_modules directory
* Re-add accidetal removal