Commit Graph

7855 Commits

Author SHA1 Message Date
Zane C. Bowers-Hadley
0ed68e33de add Linux Softnet Stat app (#15094)
* add linux_softnet_stat poller

* add graphs and app page for linux_softnet_stat

* fix polling

* rename a few items, clean up the app specific page, and add to the apps page

* convert from derive to counter

* save the budget and budget_usecs to app data

* display current value of the budgets

* now track budget values

* add tests data

* rename it

* add docs for Linux Softnet Stat

* re-order and add budget for app page graph order

* style fix

* correct data location

* fix metrics for the json
2023-06-11 16:37:55 +02:00
Zane C. Bowers-Hadley
3190bdb8b2 add ZFS L2 support (#15095)
* add alerts for ZFS

* add initial l2 bits to the poller for zfs

* more minor tweaks to the ZFS poller

* more zfs bits

* add new ZFS graphs

* begin adding L2 stuff

* add linux_zfs-v3 bits

* update zfs app page

* style fix

* update the data for the zfs legacy test

* test update for zfs v1

* fix some zfs tests

* more zfs v3 test cleanup

* another zfs v3 test data fix

* more zfs v3 test data cleanup

* more test tweaks
2023-06-11 16:32:28 +02:00
kg6uyz
1ba544c2ef Update Trendnet TEG-S50ES and TPE-P521ES OS detection (#15052)
Add OID's for TEG-S50ES and TPE-P521ES switches to be detected as Trendnet devices instead of generic devices.
2023-06-05 16:48:36 +03:00
wrongecho
ea57c25182 Remove asterisk from recurring input (#15074) 2023-05-30 18:49:12 -05:00
Jellyfrog
2b3575a5e9 Laravel 10.x Shift (#14995)
* Apply code style

* Remove explicit call to register policies

* Shift core files

* Shift config files

* Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them and merged your true customizations -
where ENV variables may not be used.

* Bump Laravel dependencies

* Add type hints for Laravel 10

* Shift cleanup

* wip

* wip

* sync translation

* Sync back config

* Public Path Binding

* QueryException

* monolog

* db::raw

* monolog

* db::raw

* fix larastan collections

* fix phpstan bug looping forever

* larastan errors

* larastan: fix column type

* styleci

* initialize array

* fixes

* fixes

---------

Co-authored-by: Shift <shift@laravelshift.com>
2023-05-24 22:21:54 +02:00
d-k-7
dd3ed41319 add sensor support for cefcModuleOperStatus (#15026)
* add sensor support for cefcModuleOperStatus

* add tests for cefcModuleOperStatus

* revert sensors/state/cisco.inc.php

* add sensor support for cefcModuleOperStatus using yaml

* update tests for cefcModuleOperStatus

* try adding tests again for cefcModuleOperStatus

* include CISCO-ENTITY-FRU-CONTROL mib for cefcModuleOperStatus sensor state discovery
2023-05-24 20:43:37 +02:00
Jellyfrog
153be4d583 Tests: Fix Dusk tests after 13626 (#15057) 2023-05-23 19:23:15 +02:00
Tony Murray
04bb75f5f3 Alert transport cleanup, no_proxy support and other proxy cleanups (#14763)
* Add no_proxy and other proxy related settings
Set user agent on all http client requests
Unify http client usage

* Style fixes

* Remove useless use statements

* Correct variable, good job phpstan

* Add tests
fix https_proxy bug
add tcp:// to the config settings format

* style and lint fixes

* Remove guzzle from the direct dependencies

* Use built in Laravel testing functionality

* update baseline
2023-05-23 09:25:17 -05:00
Nick Peelman
da94ac5a85 Add RoomAlert 12E Switch Sensors, fix Humidity Sensor (#15049)
* Add RoomAlert 12E Switch Sensors, fix Humidity Sensor

* Fix per murrant

* Revert port data generated on older install

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-05-19 10:14:09 -05:00
mtentilucci
e55c4e9e1e Add support for Trellix NSP devices (#14964)
* Add support for Trellix NSP devices

- Add discovery for mlos NSP devices
- Monitor port statistics from non standard MIBs
- Add Trellix MIBs
- Add test data

* Fix StyleCI findings

* Rename MIB files to match MIB names, remove unused MIBs

* regenerate mlos-nsp_ns9500.json to account for changes from PR#14963
2023-05-16 17:25:29 -05:00
Albert Siersema
ad1b2f96f5 Fixes #14957 missing IPv6 BGP peers (#14959)
* Fixes #14957 missing IPv6 BGP peers

* Limit to NX-OS and IOS-XR

* Check for actual VRF since count(getVrfContexts) always > 0

* argh, fix last minute nervous finger superfluous space

* removed redundant count()
2023-05-15 10:32:26 +02:00
Dominik V. Salonen
26c49af32d rutos-rutx: Map GPS lat and lon to os module (#15033)
Makes GPS position appear on geographic maps.
2023-05-12 07:45:48 -05:00
Nick Peelman
6247eeae36 Fix inventory display for Calix AXOS devices (#15039) 2023-05-12 07:06:34 -05:00
Nick Peelman
09b3c88ae0 Fix WISI over graphs (#15040) 2023-05-11 22:51:12 +02:00
Tony Murray
3315b5d0f8 Remove old unused adduser page and script (#15035)
Use /users/create and lnms user:add instead
2023-05-11 02:32:20 +02:00
Neil Lathwood
2f6904fb59 webui: Fix availability graphs to 100% (#15013)
* Fix availability graphs to 100%

* Update availability.inc.php
2023-05-10 22:03:51 +01:00
cjsoftuk
635acad7d6 Firebrick CPU Monitoring (#15030)
* Add FB CPU definition.

* Poll in the right OID.

* Add test data for FB CPUs.
2023-05-09 17:32:34 +02:00
eskyuu
ce0734ff5d Added support for user timezones and user browser timezone by default (incomplete) (#13626)
* Added support for user timezones and user browser timezone byt default

* Formatting fixes

* Use the timezone for alert log display

also added validation for the timezone because it's being used in SQL.

* Formatting fixes

* Added return type

* Formatting"

* Update the latency graphs to use the user timezone

* Simplify the web routes config

* Update phpstan to ignore type error

* Fixed up the phpstan config

* Reverse phpstan change

* Re-apply phpstan override

* Remove the option to unset the session timezone

* Formatting fix

* Update outge and event logs to use session timezone

* Fix route for the timezone control

* Made the timezone more dynamic

* Fix a logic error that was stopping the timezone from being set automatically on login

* Prevent getPref from being called twice

* again prevent getPref double call

* getPref double call

* Fixed typo made during merge

* Fixed merge error in phpstan-baseline.neon

* Change spaces to tabs in phpstan-baseline.neon

* Update error count

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-05-09 10:24:48 -05:00
bnerickson
56e9fa3742 Adding linux_config_files application support (#14776) 2023-05-09 10:23:49 -05:00
cjsoftuk
927446db7b Fix Firebrick mempool polling (#15022)
* Add support for Firebrick memory monitoring.

* Add mempool testing for Firebrick.

* We have to specify the OID by numeric, because otherwise it assumes it's some kind of indexed table.

* Specify by OID.

* Fix test result data for the FB mempools.x

* Firebrick reports in KB.

* Fix precision in the tests.
2023-05-02 14:02:50 -05:00
cjsoftuk
bc310cffec WIP: Add support for memory monitoring on Firebrick platform (#15021)
* Add support for Firebrick memory monitoring.

* Add mempool testing for Firebrick.
2023-05-02 07:12:09 -05:00
Shao Yu-Lung (Allen)
741d93c2a5 feat: Agent support OS Updates (#14687) 2023-04-28 08:49:04 -05:00
jlo-lirmm
41ae162223 php implode arg mismatch (#15014)
php implode arg mismatch
2023-04-28 15:44:22 +02:00
Tony Murray
5c25cece48 Convert the inventory page to Laravel (#15004)
* Convert the inventory page to Laravel
Fix several XSS issues (hopefully no new ones snuck in)
Small improvement to the SelectController to allow filtering by filterFields()

* style fixes

* Fix lint issues

* Fix part device filter
2023-04-28 07:51:41 -05:00
Mathias Bøhn Grytemark
204abe0cf2 add advantech icr-os for advantech routers (#14171) 2023-04-25 07:54:41 -05:00
Justin Lentz
8c96a391c9 Clarify Alert Notify Settings (#14974)
* Update print-alert-rules.php

* Update print-alert-rules.php

Was hoping to avoid word wrap with notify, but can't be avoided, so changing to notification
2023-04-24 18:57:13 -05:00
Tony Murray
e1b6fd0165 Fix more refactor errors (#14998) 2023-04-23 20:33:50 -05:00
Tony Murray
2271e29e03 Fix billing error introduced by #14979 (#14996)
Fixes #14994
2023-04-23 13:23:54 -05:00
Tony Murray
265906b44c Fix some undefined constants (#14993)
* Fix undefined constants
These have been broken for a long time.  Likely they are unused.

* Fix undefined constants
These have been broken for a long time.  Likely they are unused.
2023-04-22 10:37:20 -05:00
Tony Murray
3fe3db747c Refactor billing (#14979)
* Refactor common billing code into a namespace
Prevents issues of usages where the code hasn't been loaded.

* remove redundant Billing in method names

* remove accidental duplication

* more use statements

* Style fixes
2023-04-21 19:52:47 -05:00
Tony Murray
2ddfba51dd Set ping_perf scale_min to 0 (#14989)
And allow scale_min, scale_max, and scale_rigid to be set via url parameter
2023-04-20 22:30:32 -05:00
ollb
d40c3be75d Fix cisco dbm sensors port link on discovery (NCS55A2) (#13965)
* Fix cisco dbm sensors port link on discovery (NCS55A2)

dBm sensors were not linked to port on Cisco NCS55A2 platform (iosxr)
causing false alarms triggered by optical modules in administratively shut down ports.

* Delete iosxr_ncs55a2.json

* Create iosxr_ncs55a2.json

* Renew test/data/iosxr_ncs55a2.json

* Delete and recreate test/data/iosxr_ncs55a2.json

With command :

  ./scripts/save-test-data.php -o iosxr -v ncs55a2 -m os,ports,processors,mempools,sensors

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-17 11:08:52 -05:00
Jellyfrog
0a351b49fd Laravel 9.x Shift (#14504)
* Move `resources/lang` folder

* Shift registered middleware

* Remove `fruitcake/laravel-cors` dependency

* Streamline `$commands` property

* Upgrade to Flysystem 3.0

* Shift core files

* Convert `optional()` to nullsafe operator

* Remove unnecessary `$model` property

* Convert route options to fluent methods

Laravel 8 adopts the tuple syntax for controller actions. Since the old options array is incompatible with this syntax, Shift converted them to use modern, fluent methods.

* Convert deprecated `$dates` property to `$casts`

* Shift config files

* Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them and merged your true customizations -
where ENV variables may not be used.

* Bump Laravel dependencies

* Use `<env>` tags for configuration

`<env>` tags have a lower precedence than system environment variables making it easier to overwrite PHPUnit configuration values in additional environments, such a CI.

Review this blog post for more details on configuration precedence when testing Laravel: https://jasonmccreary.me/articles/laravel-testing-configuration-precedence/

* Fix error provider

* Match new symfony syntax

* Match upstream syntax

* Fix route syntax

* generate composer.lock

* Sync back configs

* routes

* composer

* Fix more flare

* fix cors

* sync lang

* Apply fixes from StyleCI (#14517)

Co-authored-by: StyleCI Bot <bot@styleci.io>

* bump larastan

* update packages

* wip

* Temporarily lower phpstan level

* Update phpstan.neon

* wip

* wip

* wip

* Apply fixes from StyleCI (#14592)

Co-authored-by: StyleCI Bot <bot@styleci.io>

* test

* Update CiHelper.php

* Update test.yml

* Update CiHelper.php

* Update CiHelper.php

* Apply fixes from StyleCI (#14616)

Co-authored-by: StyleCI Bot <bot@styleci.io>

* test?

* fix phpstan problems

* dont run snmpsim on github ci

* Fix whitespace

* More whitespace

* More whitespace ???

* I think the space broke it

* fix the reset of the whitespace

* hard code auth guard

---------

Co-authored-by: Shift <shift@laravelshift.com>
Co-authored-by: StyleCI Bot <bot@styleci.io>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-17 06:51:35 -05:00
AdamB
519fc00367 Change ESXi port naming to be stable (#14639)
* Change ESXi port naming to be stable

Currently every time discovery runs against ESXi, the port names change generating a lot of log spam.

This is because ESXi uses this as the ifDescr:
```Device vmnic1000202 at 01:00.0 nmlx4_en```

The poller parses this, and extracts the interface name, whereas discovery does not, causing the interface names to flip every 6 hours.
https://github.com/librenms/librenms/blob/22.10.0/includes/polling/ports.inc.php#L578-L580

This change gives the discovery process the same behaviour, so the naming is now stable.

* Try to fix test data with a squash

* vcsa test data

* Synthesise VCSA ifName, use it in place of ifDescr

* Refresh test data

* Update ports.inc.php

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-16 12:58:38 -05:00
Tony Murray
a70d10af19 Fix vsolution discovery yaml (#14970)
* Fix vsolution discovery yaml
Fetching too much data and incorrect config for scalar values.

* revert json changes

* one sensor_prev

* fix

* revert all changes
2023-04-14 23:11:01 -05:00
Stef
0430f6acb1 Cisco QFP polling fixes (#14961)
* fix cisco-qfp Division by zero

* fix percentage calc

* linting

* another zero in RRD. the (int) might be consequential errors and should hurt...

* no float for average_package

* Update includes/polling/cisco-qfp.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>

* Add floor

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-14 22:11:36 -05:00
mtentilucci
b6572e0acc Add support for Trellix ATD devices (#14965)
* Add support for Trellix ATD devices

- Add discovery for mlos ATD devices
- Monitor various OIDs related to ATD system health and status
- Add required MIBs
- Add test data

* add json test data

* Rename MCAFEE-SMI to MCAFEE-INTRUVERT-SMI

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-14 19:34:43 -05:00
Tony Murray
6a769fc7a4 Fix Tait Tnadmin Processor discovery (#14969) 2023-04-14 18:26:38 -05:00
Schylar Utley
056305c3c3 Add support for Alpha CXC HP Controller (#14829)
* add support for Alpha CXC HP Controller

* add num_oids, fix formatting

* fix typo

* Rename cxc_cxc.snmprec to cxc.snmprec

* Create ALPHA-RESOURCE-MIB

* Create ALPHA-RECTIFIER-SYS-MIB

* Create cxc.json

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-14 18:04:42 -05:00
Kevin Zink
5d7b0e8dc8 Correct PowerConsumed SI Units in Overview (#14425)
* Correct PowerConsumed SI Units in Overview

Workaround to convert PowerConsumed SI Display Units from kkWh to MWh. Better way would be to directly save the data in Wh instead of kWh. But we don't know the impact jet.

* Fix style
2023-04-14 17:34:03 -05:00
Tony Murray
0cdda100e7 Fix Raisecom Processor (#14968)
* Fix Raisecom Processor
Had the same problem as ROS #14966

* Missed oid update
2023-04-14 17:12:35 -05:00
Justin Lentz
b9cc630dbc Stacked graphs on zoom to speed (#14928)
* Update generic_data.inc.php

* Update functions.inc.php

* Update generic_data.inc.php

* Update functions.inc.php

* Update functions.inc.php

* Update generic_data.inc.php

* Update graphs.inc.php

* Make Murrant Happy ;)

* Update generic_data.inc.php

* Update generic_data.inc.php

* Update graphs.inc.php

* Update graphs.inc.php
2023-04-14 16:48:30 -05:00
Tony Murray
cafdec6285 Remove unused port fields (#14963)
* Remove unused port fields
(and set vlan to default to null)

* Update test data for deleted fields

* update vlan to null

* missed field removals

* More correct migration

* Update new data

* restore accidental deletions
2023-04-14 16:47:26 -05:00
Tony Murray
49056da4a0 Fix Raisecom ROS processor collection (#14966)
Was origionally intended to use the 1 minute values, but was discovering the one second value and polling the twoHour value
Was also restricted to only one CPU.
Now discovers and polls all CPUs at the oneMin avg
2023-04-14 15:22:55 -05:00
mtentilucci
04217269a4 Expand discovery of gigavue os (#14933)
* Expand discovery of gigavue os

- Expand discovery so all Gigamon products are discovered
- Query for hardware version using GIGAMON-SNMP-MIB::model.0 OID if present
- Add more Gigamon gigavue test data

* Create gigavue_hc2.json

Looks like there was no json file before...

* update gigavue_hc2.json

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-14 07:12:44 -05:00
JStandiford
3362e0ee7b fortivoice: add version, hardware and serial collection (#14956)
* Update fortivoice.yaml

Add in pulling in device hardware and software info

* Add files via upload

* Add files via upload

* merge test data

* Delete fortivoice_fortivoice.snmprec

* Update fortivoice.json

* Update fortivoice.json

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-04-12 10:11:49 -05:00
Tony Murray
e9c08e21a5 Fix more divide by zero issues (#14954)
* Fix more divide by zero issues
fixes: 14932

* Round to the nearest integer, then cast

* Fix up dhcpatriot
2023-04-11 13:44:45 -05:00
pjroehl
2b1f6a743d Add discovery of NVT Phybridge FLEX24 (#14913)
* Add discovery of NVT Phybridge FLEX24

* Update phybridge-flex.yaml

Added FLEX-24 Switch under sysDescr

* Test Data phybridge-flex_flex-24 json and snmprec
2023-04-10 11:12:12 +02:00
PipoCanaja
228c4ca78d bug - wrong type in ports.inc.php (#14952)
Yet another of these :) 

```
[2023-04-07T19:55:28.777810+02:00] production.ERROR: Error polling ports module for xxxxxxxxxx. TypeError: Unsupported operand types: string - int in /opt/librenms/includes/polling/ports.inc.php:785
Stack trace:
#0 /opt/librenms/includes/polling/functions.inc.php(339): include()
#1 /opt/librenms/poller.php(126): poll_device(Array, false)
#2 {main}  
[2023-04-07T19:55:28.780705+02:00] production.ERROR: Unsupported operand types: string - int {"exception":"[object] (TypeError(code: 0): Unsupported operand types: string - int at /opt/librenms/includes/polling/ports.inc.php:785)"} 
```
2023-04-07 14:09:57 -05:00
Tony Murray
3380122733 Poller perf: add per device average (#14940)
* Poller perf: add per device
Fix min, avg, and current values

* Fix up previous

* Fix style

* Rename to device average, we don't calculate min and max, but rather the min/max of the average.
2023-04-07 13:27:12 -05:00