Commit Graph

7269 Commits

Author SHA1 Message Date
Kate Robinson
568d12cbd8 Modified SQL delete statement for vrf is null (#13199)
* Modified SQL delete for is NULL instead of = null

* Fixed spacing

* Fixed more spacing issues

* Replaced double quotes with single quotes for echo statement

* Fixed more spacing issues

* Modified null vrf db check to match vrp.inc.php

* Clean up comments

* Modified git username to fix CLA

* Revert bgp-peers.inc.php

Co-authored-by: Kate Robinson <katerobinson@KateRobinson-imac.local>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-19 06:54:34 -05:00
Shawn Kwang
0537f1d736 Add opengear humidity to sensors (#13226)
* Add new OID for humidity sensor for opengear devices.

* Typo fix

* Fixed typo: wrong OID

* Added opengear humidity test data JSON

* Removed ogEmdHumidityTable from cache.

* Added SNMP sim data for testing

* Update opengear_humidity.json

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-19 06:54:01 -05:00
Kevin Zink
98ed6bb9dc New plugin system based on Laravel Package Development (#12998)
* use Blade view and Eloquent models for plugins

* move views

* fix style

* fix style

* revert mistake

* Update Plugin.php

delete test property "name"

* rename plugin function to settings

* last but not least - rename in Test.php

* Rename Test to Example

* fix typo

* fix style

* fix style

* fix style

* fix style - I hate tabs...

* Extract view calls

* fix method calls and style

* Move Models the the abstract class

* fix style

* Convert to traits

* Change the Example description

* Fix style

* Fix style

* Fix style

* Convert plugin function to Model static methods and delete .inc.php

* fix style

* fix style

* Use scope

* final methods blows up legacy code

* Config > \LibreNMS\Config

* convert the static string to a static method

* Correct placement in the page

* fix tabs

* fix style

* Rename from tait to hook

to make it easier to understand and be complient

* rename file

* Typo

* Started to change the docu

* change to a more usefully Device_Overview example

* and activate of course

* PluginManager

* fix .gitignore

* only php files in the root folder

* corrected .gitignore with all files :)

* Rename the Hooks and ExampleClass for better readability

* Fix style

* Fix style

* Exception handling (especially if DB is not present)

* Fix style and update schema

* fix indentation

* actually correct indent

* fix migration collation check include utf8mb4_bin

* stop phpstan whining

* A view lines documentation

* add typeHints

* Allow return null on handle

* lint

* fix return types

* fix logic of column collation check

* Fix MenuEntryHook

* switch to longtext instead of json type for now :D

* try phpstan on PHP 7.3

* set phpstan target version to 7.3

* all the typehints

* optional

* more

* Use namespace to prevent view collisions
disambiguate plugin and hook
no magic guessing of names in PluginManager, bad assumptions
remove unused plugins from the DB

* cleanup plugin menu

* cleanup on shutdown and ignore but log query error on cleanup

* instanceof must be called against an instance

* Allow multiple hooks per plugin

* Port plugin ui code to Laravel

* page instead of settings for v1 plugins

* actually working settings pages
a little url cleanup plugin/admin -> plugin/settings

* fix style

* Add page hook

* PHPstan

* Try to fix Illuminate\Http\RedirectResponse

* typehint

* Rewrite the doc

* Fix style

Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-19 06:53:28 -05:00
ottorei
d3726e6bdc Update alertlog-widget to allow filtering by device group (#13380)
* Add group filter to alertlog widget

* Remove extra characters from settings

* Apply fixes from StyleCI

Co-authored-by: ottorei <ottorei@users.noreply.github.com>
2021-10-19 06:18:29 +03:00
Nathan Manzi
fb7d89c4c3 Add get_ports_by_group API function (#13361)
* implement api route get_ports_by_group

* Update API docs for new get_ports_by_group

* Fix misspelling of function names and routes
2021-10-18 20:47:37 -05:00
Hans Erasmus
51e6701c4a Extend support for Endrun Sonoma Meridian II devices. (#13069)
* endrun_updated_support

* Added requested changes

* Converted to yaml

* Fixed Tempus Features

* fixed test data (again)

* Update endrun_sonoma.json

* fix gitignore

* fix last gitignore

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-18 20:42:28 -05:00
TheGreatDoc
fdea39fc0f Update Himoinsa Genset discovery (#13356)
* Update Himoinsa Genset discovery

* Added snmprec

* Added json test data
2021-10-18 19:42:40 -05:00
martinberg
3856c33f9d IOS/IOSXE PoE stats (#13213)
* Updated mib

* Add support for IOS/IOSXE PoE stats

* Added testdata

* Better titles for Power-tab in Health

* Added low_limit for iosxe

* Update ios_2960x.json

* Added high_limit for ios

* update ios_2960x

* update ios_2900l

* pre-cache is not needed

will only slow polling down in some cases

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-18 19:42:13 -05:00
Cirno the Strongest
ece914a06d Use high precision OIDs for APC UPS sensors (#12594)
* Use high precision OIDs for APC UPS sensors

* Force test re-run

* Remove ifHighSpeed

Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-18 19:41:37 -05:00
Simon Smith
81819c2aca fix windows fanspeed (#13376) 2021-10-18 23:38:57 +02:00
martinberg
d69810b3c3 Add support for NTI Enviromux (#13373)
* Updated mib

* Add support for IOS/IOSXE PoE stats

* Added testdata

* Better titles for Power-tab in Health

* Added low_limit for iosxe

* Basic support for Enviromux devices

* Fixes

* Revert "Added low_limit for iosxe"

This reverts commit 645e3b423a.

* Removed commits from wrong branch

* Removed limits due to not working, need php

* Added testdata

* Update nti.svg

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-10-18 10:35:30 +02:00
Tony Murray
3ef21e740c Remove unused snom files (#13369)
No snom os exists anymore.
According to very old files, sysDescr should contain the string "snom".
I checked on stats and no one reports an snom phone added to LibreNMS.
I can't add the os detection, so just remove these.
Netstats PR will remove other snom references
2021-10-17 17:08:47 +02:00
Dan Kerse
60f056c691 Poll SPU memory from Juniper SRX devices (#13191)
* Poll SPU memory from Juniper SRX devices

* Add test data

* Update junos_rpm.json

* Update junos_rpm.json

* Update junos.yaml

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-16 20:44:18 -05:00
hjcday
d8e831d772 newdevice: Added support for Teltonika RUTX series routers (#13350)
* Added support for Teltonika RUTX series routers

* Added snmprec file for testing

* Update and rename rutos-RUTX.yaml to rutos-rutx.yaml

Fix OS name

* Rename rutos-RUTX.yaml to rutos-rutx.yaml

* Rename rutos-RUTX_rutx11.snmprec to rutos-rutx_rutx11.snmprec

* Create rutos-rutx_rutx11.json

* Fix: Device discovery OID removed tab

* Remove whitespace

Co-authored-by: Tony Murray <murraytony@gmail.com>
Co-authored-by: hjcday <hugh.day@lsv.com.au>
2021-10-14 12:35:28 -05:00
Tony Murray
45ab7a5cf0 Fix for cimc polling on PHP8 (#13357) 2021-10-13 08:16:39 -05:00
DanielMuller-TN
16584d8090 Added conditional check for rules parameter on add_device_group API function (#13353) 2021-10-11 21:08:16 -05:00
Tony Murray
4bab6d7ed2 Remove load_os and load_discovery functions (#13345)
* Remove load_os and load_discovery functions
Put bits where they belong and use $os

* remove extra line return

* OS loading code in the wrong place

* fixes

* line
2021-10-08 14:04:11 -05:00
Tony Murray
8d5bc3fc41 Use Measurements for all statistic collection (#13333)
* Use Measurements for all statistic collection

* fix space

* Use colors
cleanup

* fix style

* manually fix license notice

* add return times and new line

* add return times and new line

* fix mistake in copyright template

* fix style
2021-10-06 17:09:54 -05:00
Maikel de Boer
7883218cff Ciena 6500 (#13324)
* Initial commit

* Removed unused function

* fixed style

* fixed style

* fixed test data

* Initial commit

* end of the day commit

* finish + test data

* Delete ericsson-tn_ericsson-tn.snmprec
2021-10-06 07:50:16 -05:00
Tony Murray
0b8b97bb68 Push Notifications (Mobile and PC) (#13277)
* Update manifest and add service worker
cleanup icons a bit

* Push notifications WIP

* navigate working

* cleanup

* acknowledge wired up

* Set VAPID keys on composer install

* Component to control notification permissions.

* Allow all user option to validate

* Enable on browser load if transport exists.

* Check for transport before showing user permissions
translations

* Documentation

* style fixes

* access via the attribute model

* fix alerting test

* update schema

* cleanup subscription on disable

* non-configurable db and table for webpush subscriptions (respect system connection)

* revert AlertTransport change
hopefully phpstan can figure it out

* phpstan fixes

* Support custom details display

* Match transport names to brand's preferred display

* less duplicate id errors

* Tests are done in Laravel code now so
remove legacy function usage... could be better, but ok

* Style fixes

* Style fixes 2

* Fix alert test

* Doc updates requires HTTPS and GMP

* unregister subscription when permission is set to denied

* cleanup after user deletion

* delete the right thing

* fix whitespace

* update install docs to include php-gmp

* suggest ext-gmp

* update javascript

* Update functions.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-10-06 07:29:47 -05:00
SourceDoctor
6288cb6edf alert detail fix (#13335) 2021-10-05 14:35:51 -05:00
Tony Murray
878e95ed40 restore accidentally removed code (#13330) 2021-10-04 14:34:35 -05:00
Tony Murray
9d92cf19f5 Allow non-snmp modules to run when snmp disabled (#13321)
* Use the normal config to add availability module to the poller list
This also allows it to be disabled.

* Use the normal config to add availability module to the poller list
This also allows it to be disabled.
2021-10-04 13:33:40 +02:00
Tony Murray
aa35d2f0c0 Connectivity Helper to check and record device reachability (#13315)
* Fping WIP

* Update availability, move ping rrd update in the same place as db update.

* move classes around

* make device:ping command work

* use new code, remove legacy code

* save metrics boolean prevents all saves
style fixes

* update device array

* style fixes

* Update unit test

* fix whitespace

* Fix Fping stub

* fix backwards if

* fix phpstan complaining

* Fix return type

* add fillable to DeviceOutage model.

* device_outage migration to add id...

* missed line in db_schema.yaml

* 1 billion more comments on the brain damage up/down code

* tests for status and status_reason fields

* fix style again :D

* Duplicate legacy isSNMPable() functionality
but with only one snmp call ever 😎

* Remove unused variable

* fix migrations for sqlite
2021-10-03 22:45:10 -05:00
SourceDoctor
8e1b9e2989 Show Detail by default Option on Alert Widget (#13309)
* Show Detail by default on Alert Widget

* .

* change to row count length limitation

* .

* .
2021-10-03 01:12:18 +02:00
SourceDoctor
30c20fa11f hrsystem write fix (#13314) 2021-10-02 18:03:24 -05:00
SourceDoctor
f47410e426 log count of logged in users in Database (#13137)
* log count of logged in users in Database

* .

* rewrite Code

* create hrSystem Table

* .

* .

* db adjustments

* adjust db Table

* .

* adjust db Table

* table redesign

* .

* .
2021-10-02 01:58:26 +02:00
Cupid@zul
d63656c1e0 add eventlog on_create device
* add eventlog on_create device

* add snmpV3 vars

* styleci minor fix
2021-10-01 14:04:42 -05:00
Maikel de Boer
b3c1d036b4 Ericsson Traffic Node support (#13299)
* Initial commit

* Removed unused function

* fixed style

* fixed style

* fixed test data

* Delete ericsson-tn_ericsson-tn.snmprec

* Update ericsson-tn.yaml
2021-09-30 08:29:31 -05:00
Tony Murray
fafb5a62c2 Fix port links (#13296)
yes is not a valid boolean
2021-09-30 09:41:12 +02:00
Tony Murray
66dddbaa66 SNMP Capabilities (#13289)
* SNMP Capabilities
Allow all available auth algorithms to be set in global settings
cleanup other usages

* fix style
2021-09-28 18:35:59 -05:00
SourceDoctor
708d1ebb87 API Call to set instant Maintenance mode (#13237)
* API Call to set instance Maintenance mode

* .

* remove unused code

* update query

* Use recent code

* remove accidental line return

* fix duration in success string

* style fix

* Try to fix bad code merge

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-28 21:54:52 +02:00
Tony Murray
b2ac547abb Quick fix for route discovery on PHP8 (#13284) 2021-09-28 16:22:17 +02:00
Tony Murray
b934d0c927 cleanup device type override code (#13256) 2021-09-27 14:24:32 +02:00
Nick Peelman
dda46447c3 Add ORDER BY to the ports query when showing the ports list on device overview (#13276) 2021-09-27 10:34:55 +02:00
Muhammad Lutfi Santoso
7857dab98e Add Ericsson IPOS router support (#12625)
* Add Ericsson IPOS router support

* Create ipos.snmprec

* Update ericsson-ipos.yaml

* Rename ipos.snmprec to ericsson-ipos.snmprec

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-24 16:17:07 -05:00
Cupid@zul
ba84acc1db Fix graphs showing bps instead of pps (#13266)
* fix issue #13119

try to detect if total_units exists (variable comes from errors.inc.php and nupkts.inc.php ) as 'pps' and define graph units as such.

* standardize units_descr for both ucastpackets and errors
2021-09-23 07:43:23 -05:00
Max Narvaez
296edba28a Support HP Procurve models that have an E at the beginning of the model number (e.g. E2910) (#13261) 2021-09-21 15:13:41 -05:00
Max Narvaez
a3c9e32cc3 Fix axis cam discovery (#13258)
* Fix axis cam discovery

* Remove sensor data from test data

* Include all data again

* Remove sensor data again, this time also from json file
2021-09-21 14:18:15 -05:00
Tony Murray
8a883140cb Infer character encoding for ifAlias and sysLocation (#13248)
* 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>
2021-09-21 08:47:44 -05:00
SourceDoctor
11dfbc02b7 API Call to assign/remove a Portgroup to Ports (#13245)
* API Call to assign/remove a Portgroup to Ports

* .

* .
2021-09-21 08:41:01 -05:00
SourceDoctor
0d499b538b API port search by arbitrary field (#13231)
* DB Field specific Port Search

* .

* seperate function for API Call

* second parameter now optional

* code adjustments

* Update api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-19 19:28:42 -05:00
SourceDoctor
a8ca79152c API add_device: respond with more device information (#13251)
* Advanced Response Information API add_device

* .
2021-09-19 18:47:50 -05:00
Kevin Zink
c984cdbebc MegaRaid controller in Linux (Broadcom/LSI) (#12999)
* Add power consumed

* Revert "Add power consumed"

This reverts commit 424554ac04bd340de2fd962cb6808045024ef783.

* Start with tempsensorts aus some states

* Inventory data

* Convert plugins to Blade

* Revert "Convert plugins to Blade"

This reverts commit 8d1d3ff5b1.

* fix style

* Add FANs and Powersupplies

* fix style

* add test data

* add a short description for the doc

* refresh Testfile
2021-09-19 18:31:23 -05:00
Tony Murray
1084bd6d1a Convert all ports backend to Laravel style ajax table (#13184)
* port ports to Laravel style ajax table

* fix style

* cleanups+fixes

* correct column name

* correct port formatter

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

* always filter deleted

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-09-19 18:26:33 -05:00
Max Narvaez
c1dce44947 Arubaos cx hardware (#13045)
* Add hardware, OS version and serial to arubaos-cx discovery

* Add support for ArubaOS-CX versions 10.04 and 10.06

* Fix bug where first arubaos-cx regex would be ignored

* Add test data for 10.07, data for 10.06 coming soon

* Add data for 10.06

* Update 10.04 test data

* Update arubaos-cx.json

* Update arubaos-cx_10.06.json

* Update arubaos-cx_10.07.json

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-18 15:39:34 -05:00
Noah Roufus
eff9c134cd Added SAF Integra-X OS Support (#13236)
* Added SAF Integra-X support.

* Fixed discovery confusion between Integra-B and Integra-X.

* Removed a missed unusued use statement.

* Fixed CPU sensor issues related to MIB display hints throwing off math.

* Fix to Integra-X snmprec and test data.
2021-09-17 09:13:10 -05:00
Negatifff
962e05ea6b Add sysobjectid and hardware fields into oxidized maps (#13221)
* add sysobjectid and hostname field into oxidized maps

* add app.js
2021-09-16 19:00:06 -05:00
Tony Murray
117036bf29 Fix Dell server sensors (#13247)
missing mib directory
2021-09-16 21:05:31 +02:00
Galileo77
d9b54469f2 Add Mouseover Mini Graphs that makes sense for PDU (#13246) 2021-09-16 11:07:25 -05:00