* Poller settings WIP
* Poller settings WIP2
* working on SettingMultiple
* setting multiple working
* settings sent with all required info
* fix translation
* Fix keys
* fix groups setting
* Apply settings to service
fixes and validations for setting
* don't error when no poller_cluster entry exists
* hid tab when no poller cluster entries
* Authorization
* make prod
* daily maintenance toggle should be advanced
* Update schema def
* Detection for MobileIron appliances
* Test data
* Remove references for GANDI-MIB
Turns out these aren't actually needed for Linux-likes
* Remove module filters
* -Real dark mode, (themed bootstrap)
-removed inverted colors in navbar
* Test data
* FIX: navbar in mono theme.
* Dark mode rrdtool
* Changed background on gridster to match background of the dark theme
* - Icons and links now are grey
- Modernized tabs style into pills,
- button pagemenu-selected fixed
* Improvements:
- bootgrid-th, are now visible (dark mode to the table headings)
- Changed line color of poller and ping in rrdtool
* Fix some codeclimate errors
* Fix airos.snmprec, reverted to original file
* Ping only device doesn't display
if os was set to something, ping os wasn't loaded and we try to get overview graphs from it.
* Fix snmp_disable device page load error
When other os is set.
* Revamp os setting loading
the only safe way to access is Config::getOsSetting()
* Remove getOsSetting fallback behavior
Most instances don't use it and it can have unexpected results Config::getOsSetting('blah', 'group') == 'librenms'
* refactor and remove unneeded load_os/loadOs calls now since getOsSetting automatically loads it.
* restore unix overview graphs, they are different
small cleanups
* fix
* New OS: QTECH
https://www.qtech.ru/en/catalog/
* QTECH: Add hardware, version and serial support
* QTECH: Fix platform and software version detection
* QTECH: Add test for QSW-3450
* Throw some shit together, rough outline.
* Reorganize tabs, use tab controllers
* Implement performance (into the latency tab)
* Update resources/views/device/header.blade.php
Co-Authored-By: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Add more tabs
* All controllers created
* Implement routes
* Implement smokeping
* routing and auth
* fix smokeping check
* Implement device dropdown menu
* Update deviceUrl to new style
* Use Gates
* Fix style
* use more appropriate gates
* add show-config gate
remove Laravel helper
* Only show vlan tab if VLANs exist for the device :D
* Fix rancid file check will return false
* revert over-zealous file name changes
* don't need to request the location parameter, just cast to string to avoid bugs when not found
* Move latency tab (ping/performance) to the position of performance instead of ping.
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
It's also possible to do zpool IO from the MIB, but diskIO on
LibreNMS makes a lot of assumptions about it coming from the UCD
MIB.
This changeset adds detection for FreeNAS and TrueNAS - despite
having their own enterprise number, the snmpd uses the FreeBSD
one.
The naming is a bit all over the place, because this reflects
reality - IXSystems produce FreeNAS and TrueNAS, the product lines
have merged to eliminate FreeNAS, but TrueNAS still calls itself
FreeNAS everywhere except the GUI.
* Add OS detection for Greenbone appliances
They don't expose anything fancy over SNMP, but this makes them
display interface names correctly. Under the hood they're unix-y.
Greenbone logo is from the AGPLv3 gsa, which is GPL compatible:
https://github.com/greenbone/gsa/blob/master/gsa/public/img/greenbone.svg
The mib is included for completeness, but it doesn't expose any
graphable values.
* Fix the vendor's logo
* 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 Advantech logo.
Taken from https://commons.wikimedia.org/wiki/File:Advantech_logo.svg
with minor edits (removed width and height).
* Add Advantech MIB files.
* Add Advantech definitions.
* Add suppor for version and hardware polling.
* Add advantech snmp recording.
* Add sensors for SFP ports
Each SFP will have temperature, voltage, tx bias, Tx/Rx power.
Also update snmp recording to include new data.
* Rename ADVANTECH-EKI-PRONEER-MIB_1_01.mib to ADVANTECH-EKI-PRONEER-MIB
* Rename advantech-common-mib.mib to ADVANTECH-COMMON-MIB
* Update advantech.yaml
* Update advantech.svg
* Create advantech.json
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* ascom support
* tests
* typo
* Correct missing 'mpls' in misc/os_schema.json
* remove mpls for now
* tests
* Update ascom.svg
* Don't disable already disabled modules
As I usually state, not much gain in disabling these here. Would be better to optimize the modules if you think they take too long on devices that don't have support.
* refactor polling code
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
* device search by (valid) ip address
* add device_ip & not empty conditions to search results
* updated comments
* spaces after commas
* search ip and overwrite_ip for name based searches, too
* All of the images in html/images/manifest.json 404 because the src specified was relative
* The resulting URL was /images/images/android-chrome-192x192.png (which does not exist). The files are in /images/.
* This fix adds a leading / to the src members, which effectively uses the correct path (e.g. /images/android-chrome-192x192.png)
* For reference, when using web manifests for icons, https://developer.mozilla.org/en-US/docs/Web/Manifest/icons
"If src is a relative URL, the base URL will be the URL of the manifest."
* librenmsv1.blade.php uses asset('images/manifest.json'); many other blades use it. This fix applies to all of these views.
/opt/librenms/resources/views/about/index.blade.php
/opt/librenms/resources/views/auth/2fa.blade.php
/opt/librenms/resources/views/auth/deny-demo.blade.php
/opt/librenms/resources/views/auth/external-auth-failed.blade.php
/opt/librenms/resources/views/auth/login.blade.php
/opt/librenms/resources/views/auth/public-status.blade.php
/opt/librenms/resources/views/device-group/create.blade.php
/opt/librenms/resources/views/device-group/edit.blade.php
/opt/librenms/resources/views/device-group/index.blade.php
/opt/librenms/resources/views/layouts/legacy_page.blade.php
/opt/librenms/resources/views/locations.blade.php
/opt/librenms/resources/views/settings/index.blade.php
/opt/librenms/resources/views/user/authlog.blade.php
/opt/librenms/resources/views/user/create.blade.php
/opt/librenms/resources/views/user/edit.blade.php
/opt/librenms/resources/views/user/index.blade.php
/opt/librenms/resources/views/user/preferences.blade.php
/opt/librenms/resources/views/vue.blade.php
/opt/librenms/resources/views/map/device-dependency.blade.php
* Added WUT 57606,57613,57720
* Added os wut-*
* fixed MIB Names and try to generalize wut
* more general sysObjectID mapping, and mib directory
* Delete WUT-57606-MIB
* Delete WUT-57613-MIB
* Delete WUT-57720-MIB
* Rename wut-57613.snmprec to wut_57613.snmprec
* Rename wut-57720.snmprec to wut_57720.snmprec
* Rename wut-57606.snmprec to wut_57606.snmprec
* Delete wut-57606.yaml
* Delete wut-57720.yaml
* Delete wut-57613.yaml
* Delete wut-57606.yaml
* Delete wut-57720.yaml
* Delete wut-57613.yaml
* Update wut.yaml
* Try to correct the Temperature part
This should work for temperature, according to MIB. Pressure and Humidity are not described in this mibfile, so we cannot poll them.
* change wut.yaml
* Add and fix wut_57720
* after ./scripts/save-test-data.php ?
* Add test data
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* 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
* When searching from the web interface, librenms produces
production.ERROR SQLSTATE: Column not found: 1054 Unknown column
'$perms_sql' in 'where clause'
* Above feeds resources/views/layouts/menu.blade.php which, because
of the failed query, has no device_ports as a value. Thus the search
results do not produce the expected 'name ... device with X port(s)'
* As well, the previous query did not exclude deleted and ignored
ports. Therefore, the value for X port(s) was incorrect and did not
correspond to the device's ports screen.
* Device group based access
* Use Permissions class to resolve permissions
Also give port access based on device access
* Convert more pages to use Permissions class
* shorten config setting name
use Eloquent relationships in several places
alphabetize config_definitions.json
* Change Models and Permissions
* Clean up ajax_search LIMIT sql
* Convert more pages to use Permissions class
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Update menu.blade.php
* Swap username and notification icon
* Hide count-notifications when zero
* slight tidy
* Accidental key press
* Decrease space to tie them together better
* Update styles.css version
* Add option to authenticate user independtly of OU
* Set config option in webui
* Compatibility with bind username option
* ran ./lnms translation:generate
* update doc
* 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
additional translatable strings: Filter Settings in settings page and Global Search on all pages.
remove duplicate fr key
also, language file signatures were wrong as I had a testing version of the vue generator
* Unbundle javascript language files
automatically generated for each install
* update docs
* update laravel-vue-i18n-generator
a newer (unreleased) verison is need for English fallback to work