320 Commits

Author SHA1 Message Date
Simon Wüllhorst d2df5ac9d7 Updated nvidia poller app: handle slightly changed nvidia-smi output formatting properly (#16158) 2024-08-21 01:28:18 -05:00
Zane C. Bowers-Hadley 7b98721e32 Poudriere support (#16229)
* add the poller

* save text status stuff

* add initial app page stuff

* add history table and start work on graphs

* checkpoint

* re-work the poudriere graph bits a bit more

* fix the poller and start work on the graphs

* polling fix

* more work on the poudriere stuff

* poke stuff with php-cs-fix

* add some more graphs

* more style fixes

* another style fix

* add more graphs

* add Poudriere docs

* add tests data

* some minor tests fixes

* a test tweak

* more test tweaks

* some more test tweaks

* tweak .data.build_info data .data.build_info to make the app data test saner

* derp... missed a item

* add app data
2024-08-21 01:27:26 -05:00
Tony Murray 2d2ddddd5d Remove FILTER_SANITIZE_STRING (#16264)
It is deprecated, all the code using it is sus
2024-08-02 16:24:51 -05:00
Zane C. Bowers-Hadley 8738e978ce extend update for wireguard, correct is_int to is_numeric for polling purposes, and clean up the app page (#16182)
* replace is_int with is_numeric

* update the docs for wireguard for the new extend

* relocate the app data bit

* update the data for the wireguard test

* start reworking the wg app page... details part done

* app page mostly done

* finish the wireguard app page

* style fix

* now sorted

* add additional info to the peer page

* style fixes

* a small fix for the links

* style fix

* make the pubkey column in details link to the peer page

* escape the pubkey
2024-07-14 22:58:41 -05:00
Zane C. Bowers-Hadley 1b5f5cee37 PHP-FPM app update to handle multiple pools (#16122)
* checkpoint work for now

* polling should be good now

* re-work php-fpm some more

* re-work the php-fpm app page

* add php-fpm_v1_combined.inc.php

* add more graphs

* more work

* add last request cpu

* fix stats for pools

* more graph work

* update the docs for php-fpm

* more graph work

* more graph stuff

* graph stuff now done

* some style fixes

* another style fix

* remove a unneeded use line

* add new tests

* add some missing items to the test

* json fix

* remove start time and add data
2024-07-04 15:03:45 -05:00
Zane C. Bowers-Hadley 75d4da325a add generic and improved NFS support with initial support for both FreeBSD and Linux (#15906)
* add nfs-shared.inc.php

* add nfs poller

* polling now works

* add nfs.inc.php page

* mount options works now

* format cleanup

* add some missing items to the stats

* commit work from last night so I can swap over to ldap

* add gauge support

* save the OS type for it

* more work on NFS stuff

* more nfs work

* display cleanup some

* more nfs work

* update docs for NFS

* add nfs_server_rpc

* style fix

* add snmprec file

* more test stuff

* data cleanup

* style cleanup

* more style fix

* another style fix

* add deleted_at

* add client_rpc_info_calls

* more test tweaks

* more tweaks

* set two items as gauges that should be gauges

* convert a few more things from counters to gauges

* a few more tweaks for NFSv4
2024-06-30 19:36:58 -05:00
Zane C. Bowers-Hadley 572258e0c2 add Suricata 7 support to Suricata (#16044)
* breakout handling of suricata extend v. 1 returns

* initial work for suricata 7.0.0

* add shared file for various Suricata related variables

* update handling for new Suricata stuff

* fix suricata rrd name bits

* update suricata app page a bit

* misc

* add a new v2 suricata graph

* more suricata v2 graphs

* fix app data for suricata

* more graph work

* fix initial graphs

* the page selector for suricata v2

* more cleanup for suricata stuff

* add more graphs

* add suricata_v2_pkt_drop.inc.php

* add suricata_v2_error_delta.inc.php

* add suricata app layer flows graph

* add app layer tx

* start work on bypassed

* add flow bypass stuff

* add suricata error stuff

* add more graphs

* more suricata v2 work

* ...

* add packets overview

* cleanup suricata_packets_overview.inc.php

* more work on the overview graphs

* error delta is now per second

* cleanup suricata_v2_app_layer_error_alloc.inc.php

* add new flow proto stuff

* add suricata_v2_flow_proto

* add new overview graph

* update v2 app layer flows graph

* more v2 graph cleanup

* suricata graph cleanup

* suricata_dec_proto_overview now works

* more graph work for suricata

* more graph work

* add another overview graph

* snmp fix

* add a new overview graph

* add a new over view

* more graph stuff

* more memory graphs

* tidy pages bit

* more work on decoder stuff

* more decoder work

* decoder stuff done

* cleanup suricata_packets_overview.inc.php

* appl layer tx work

* add app flow stuff

* fix suricata_v2_decoder__event__ethernet.inc.php

* fix suricata_v2_decoder__event__ipv4.inc.php

* fix suricata_v2_decoder__event__ipv6.inc.php

* add alloc error stuff

* more error related work

* more error stuff

* start work on internal errors

* add internal error graphs

* parser error stuff done

* more decoder work

* decoder icmpv4

* more decoder work

* ltnull done

* mpls decoder stuff

* nsh decoder work

* decoder ppp done

* more decoder work

* more decoder work

* more vlan work

* vntag decoder stuff done

* descr_len auto set for generic stats

* ipv6 decoder stuff done

* style fix

* style fix

* more style cleanup

* more suricata graph work

* fix require usage

* tweak drop info a bit

* add some checks for for with suricata 7.0.4

* more suricata tweaks

* fix sagan instance handling

* another minor fix

* fix improper munging

* rever something accidentally added to this repo

* add linux_suricata-v2.snmprex

* rename the metrics for instances from instance_ to instances_

* add linux_suricata-v2.json test data

* style fix

* minor munging tweak

* style cleanup

* some app data fixes

* remove a typo from test data

* add deleted_at and make sure discovered is numeric and not a string 1

* derp... json fix

* remove something accidentally added

* fix a small erorr in the test data

* add a missing variable to the test data

* try another tweak for suricata json test stuff

* derp... fix a type in the suricata poller

* revert a test data change

* re-order some the metrics in the test

* some more metric re-ordering

* add a missing status

* remove something that was accidentally added to this branch instead of another

* strcmp cleanup

* style fix
2024-06-09 19:47:15 -05:00
Zane C. Bowers-Hadley fb7bc5dd5a two minor fixes for sagan (#16082)
* two minor fixes for sagan

* more tweaks

* change how instance handling is done
2024-06-04 11:08:20 +02:00
Zane C. Bowers-Hadley 3491f3d704 fix path related issues for ss and systemd applications (#16045)
* fix path related issues for ss and systemd

* ensure / is before include

* re-order use order
2024-05-21 07:33:02 -05:00
Tony Murray 07655c24af Merge duplicate toBytes functions (#15994)
* Merge duplicate toBytes functions
Replace other duplicate code and add tests

* Allow space between similar to formatSI output

* Style fixes

* Match previous behavior in Docker app
2024-04-30 14:40:08 +02:00
Tony Murray 3d810970fb Fix PDNS recursor error (#15942) 2024-04-14 18:43:35 +02:00
bnerickson d7c31e0ae3 Wireguard application graph cleanup and new wireguard interface/global metrics. (#15847) 2024-03-07 12:27:26 -06:00
bnerickson 0998592e1f Systemd Application Code Cleanup and new Systemd Unit State Metrics. (#15848) 2024-03-04 23:58:28 +01:00
Didr 1fedffbfe6 Remove config_bgp check in bird2 app (#15877) 2024-03-04 21:21:44 +01:00
Zane C. Bowers-Hadley 56471e63d7 add dhcp-stats tests and update for v3 of the extend (#15378)
* update dhcp polling for version 3 of the extend

* add initial lease display for dhcp

* note where I copied it from

* document the new ISC DHCP stuff

* add in displaying pool and subnet info

* finalize the docs the new dhcpd stuff

* rework the dhcp page to display more information in a cleaner manner

* now display port and device info if known for a lease

* minor comment cleanup for the dhcp page

* add tests

* do not display the optionbar if the extend is not 3+

* update dhcp-stats doc for -w

* poke includes/html/functions.inc.php with php-cs-fixer

* poke includes/html/pages/device/apps/dhcp-stats.inc.php with php-cs-fixer

* derp... add the tests and not the snmprec twice

* strftime -> date

* fix naming of the linux dhcp-stats test data files

* minor tweaks to the rest results

* test fix

* more test cleanup

* minor test fix

* set the data value for v3

* minor test tweak

* add sortable_table blade template

* no longer need render_table

* formatting fix

* add regexp to make sure the mac is sane

* style fix

* formatting cleanup

* some more formatting fixes
2024-02-21 21:33:17 +01:00
tevkar 49977a7fa0 Deliver output for a specific memcached instance (#15759)
To fix issues around 'no memcache output'. Associated with the relevant branch for librenms.
2024-01-31 22:23:40 -06:00
Simon Wüllhorst f1e993fb76 Update nvidia.inc.php (#15756)
* Update nvidia.inc.php

Handle changed output of newly released nvidia-smi

* improved code style

* Update Nvidia application - fixed a stupid typo

* Update Nvidia application - applied styleci suggestions
2024-01-17 22:57:47 +01:00
Zane C. Bowers-Hadley 19e2062893 add BorgBackup monitoring support (#15591)
* add borgbackup poller

* add borgbackup app page

* add graphs for borg backup

* minor borgbackup graph fixes and cleanups

* don't use custom colors for borg backup

* add metrics

* add borgbackup to the apps page

* add borgbackup snmprec for v1

* add test file for borgbackup v1

* add borg backup docs

* various style fixes

* add a missing key to the test data

* $total_vars -> $to_total

* remove a accidentally added space to applications.md

* test tweaks

* add no_hourly option to generic_stats

* add some more options to generic stats and don't display hourly since it is not really useful for borg backup

* style fix
2024-01-15 15:39:49 +01:00
Jellyfrog 071ca9bc2a Apply fixes from StyleCI (#15698)
Co-authored-by: StyleCI Bot <bot@styleci.io>
2024-01-04 22:39:12 -06:00
SourceDoctor abf8c564b7 fix smart application parsing (#15672)
* fix smart application parsing

* style fix

* test

* test

* test

* .
2023-12-26 22:10:14 +01:00
bnerickson a8b4068922 [bugfix] Passing $device into data_update_helper functions instead of declaring it as global. (#15542)
* Passing @device into data_update_helper functions instead of declaring it as global.

* Style fixes
2023-11-01 20:32:41 -05:00
Tony Murray 7a8e479b61 Unix Agent and Application fixes (#15460)
* Unix Agent and Application fixes

* Apply fixes from StyleCI

---------

Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-10-16 03:40:40 -05:00
bnerickson 78a4bfb9d9 Adding Socket Statistic Application Support (#15307) 2023-10-13 22:45:03 -05:00
Tony Murray a5198d7d57 Remove some lightly used or unused dbFacile functions (#15418)
* Remove some lightly used or unused dbFacile functions
['NULL'] legacy behavior seems unsupported, replace with actual nulls

* Fix refactor mishap

* another

* update baseline

* these were very wrong... what happened?
2023-10-12 09:15:03 -05:00
Tony Murray be24993cbb Remove snmp functions that are barely used (#15377)
* Remove snmp functions that are barely used
Replace them with SnmpQuery calls

* Apply fixes from StyleCI

* Fix missing namespace

* Import Oid

* No more variables left may be repeated multiple times at the end with snmpsim, remove them all

* update data fixed by SnmpResponse bugfix

---------

Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-10-05 01:29:22 -05:00
Tony Murray 4211b1c46f Remove unused functions (#15371)
* Remove unused functions
inline other legacy functions

* Apply fixes from StyleCI

---------

Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-10-04 10:17:34 -05:00
Tony Murray 0f7a066f3a Fix issue with rrdcached with bad input (#15301)
fixes #15299
2023-09-11 01:18:28 +02:00
zappiehost 8ee1a20346 Add BIRD2 BGP Peers application support (#14466)
* Add BIRD2 application support and docs

* Remove whitespacing

* Update includes/polling/applications/bird2.inc.php

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

* Correct the variable names to reflect their actual content and also use the remote address to display on the webUI as opposed to the unrelated peerid aka router-id

* Style fixes

* Style fixes

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-08-14 08:16:45 -05:00
Zane C. Bowers-Hadley 40cceee8b4 update SMART monitoring to the use JSON (#15132)
* rework into a json app and support the old style

* working now

* add health checking

* add some datapoints to make writing alerts easy

* add a few missing item for has checks

* rework the app page

* use the right var for id9

* print the self test log if we have it

* add a graph for the max temp

* display the max temp graph

* display the health pass in the disk list if we have the data

* fix legacy handling and set app as ok

* replace id190 and id194 with the more useful maxtemp graph on the apps page

* don't print the additional info area for legacy extends

* add id232

* add id252 graph support

* properly display id232 now

* do not display SSD graphs for non-SSD disks

* for legacy extends, make sure we don't have a bad line

* add missing label for Product value

* fix metrics

* rework the metrics stuff a bit more

* typo fix

* more smart metrics cleanup

* add exit info to metrics

* style cleanup and logic checking for when disks are all now fine

* fix checking for no more health errors

* update the docs for SMART for v1 and remove slightly pointless notes about useSN

* update the docs

* initial test stuff

* add missing tests for the legacy code

* save if it it is legacy or not

* style cleanup

* update the smart legacy test

* style cleanup

* more test tweaking

* some more style cleanup

* more test fixes

* correct the disk ID for the legacy test da0 -> Z304VCFY

* more tests update

* more test cleanup

* begin cleanup of the v1 tests

* more v1 test updates

* more tests for v1

* more test cleanup

* fix exit_nonzero and add unhealthy metric

* add smart alerts

* add the metric unhealthy to the stat test

* use app data for the smart-common.inc.php
2023-07-24 17:03:45 +02:00
Zane C. Bowers-Hadley 54a38dd4cd add the Mojo CAPE Submit app (#15140)
* add poller for mojo cape submit

* mojo_cape_submit poller now works

* add app page for mojo_cape_submit

* add basic generic stat graphs for mojo cape submit

* general size stats graph for mojo_cape_submit

* make sure we update slugs that did not see anything submitted for them

* sort the slugs by sub count

* add app protos graph and sub top 12 graphs

* add mojo cape submit docs

* add tests for mojo_cape_submit

* add mojo_cape_submit to the apps page

* add string helper for mojo_cape_submit

* poke lots of stuff with php-cs-fixer

* remove a unneeded line

* add a missing metric and app data to test
2023-07-19 22:41:51 -05:00
Zane C. Bowers-Hadley 2ac9a634b4 Logsize monitoring for LibreNMS (#15137)
* add logsize poller

* add set size info

* add more stats

* add min size

* more logsize files

* add logsize

* fix creating log file links

* add two new graphs

* add some graphs

* add no_minus_d

* add no minus d to app page

* add count of log files

* save logsizes in app data

* rename title log sizes

* only show top 12

* add mean median and mode

* cleanup naming a bit

* the values for the files hash is now a int instead of another hash

* add new stats and correct median name

* now properly handle unseen

* fix logsize bits

* add combined

* update metrics and add some tests

* add logsize graphs to apps page

* add the logsize bit

* add logszie docs

* add some example alert rules

* style cleanup

* more style cleanup

* fix a few things for metrics and update the test

* fix a variable name in the test and update the data
2023-07-19 22:02:23 -05:00
Zane C. Bowers-Hadley 00cf300d1a add Suricata Extract submission stats app (#15105)
* add suricata_extract

* convert from dervive to gauge and use delta

* add suricata_extract to includes/html/pages/apps.inc.php

* graph cleanup

* add sub_size

* add sub_size graph

* add docs for suricata extract

* add tests for suricata_extract

* add rules for suricata extract

* minor test tweaks
2023-06-25 20:48:26 +02:00
Zane C. Bowers-Hadley f84fca697c add Privoxy stats support (#15114)
* add privoxy

* various style fixes

* cleanup option bar

* save metrics for privoxy now

* add instructions for privoxy

* add privoxy test data

* regen the test data

* add a few missing depends to the instructions

* add apps.inc.php entry for privoxy

* note the required log settings for privoxy

* style fix
2023-06-23 15:27:28 -05:00
Zane C. Bowers-Hadley 5da8e70bf4 add Sneck support, making it very trivial to use Nagios style checks in a NRPE like manner (#13954)
* code stuff done for Sneck

* whoops, correct the abs value post adding it post rrd update

* return a array for getting the sneck data and nicely print the raw return value

* add test stuff and freeze time at 1650911765 for tests

* move the freezeTime

* add use Illuminate\Support\Carbon;

* more test changes

* rework freezeTime a bit more

* more test stuff

* another test

* rework it a bit again

* correct variable spelling for $time_diff

* remove freezeTime as we are using a old version of Laravel

* finalize graphs

* misc

* finalize sneck page

* mve the sneck tests as it needs a newer version of laravel than we are using

* add documents for sneck

* finalize the poller

* formatting cleanup

* correct comment type

* correct the spelling of description

* more documentation

* save the check returns as metrics

* add some more examples

* fix some of the sneck alerts and add a few more examples

* turn off time to polling by default

* suggest using ntp if enabled

* since we are zeroing time_to_polling by default, this now works

* backout some suggested changes for once we change to larval 9

* remove del_sneck_data as it is no longer used

* add more docs on the metrics

* php-cs-fixer to fix a few things

* update and fix sneck tests

* remote a metric from the test

* another minor tweak to the test

* one more minor change

* ahh! derp! think I found it finally... hopefully hanging this for the last time...

* now use app data

* now logs check changes

* add a missing )

* add a missing )

* some style fixes

* update the sneck page use to the app data stuff

* update the poller to use the new app data

* misc

* update sneck to log check status changes

* correct alert log messages

* correct a comment

* fix metrics

* derp, another fix

* test fix

* re-order to avoid warning

* poller update

* update sneck graphs

* update sneck graphs

* remove a unneeded line

* test update for discovery

* minor tweaks to the test and fix update the polling a bit

* style fix

* fix return data printing

* fix the test data to include app data

* attempted test fix

* add config def to apps.sneck.polling_time_diff

* cleanup docs a bit

* minor config tweaks

* minor doc cleanup
2023-06-15 09:06:28 -05:00
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
bnerickson 56e9fa3742 Adding linux_config_files application support (#14776) 2023-05-09 10:23:49 -05:00
Shao Yu-Lung (Allen) 741d93c2a5 feat: Agent support OS Updates (#14687) 2023-04-28 08:49:04 -05:00
Jellyfrog 68e0b3df28 Apply fixes from StyleCI (#14899)
Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-03-13 22:32:22 +01:00
Henne Van Och 2140ff21c5 add more docker stats (#14767) 2023-03-01 01:02:01 +01:00
Zane C. Bowers-Hadley 98c033e84f CAPEv2 support (#14801)
* re-add it

* add cape app page

* add initial cape graphs

* now work for the general page

* more udpates

* add cape pending

* add pending and cleanup for if there are no packages(likely cuckoo, so don't add extra items)

* rework the lack of packages a bit more

* more cuckoo related cleanupgiot

* fix cape error logging

* minor cleanups

* add a new graph and use it with cape... also lots of cape cleanups

* misc cape updates

* add percentile values for stats

* add fix for weekly

* don't display 1 day average if under 17 hours

* zero timeslots of packages not used for this time slot

* add avg stat graphs for cape

* now use the average graphs and update the app page

* add a new graph

* add CAPEv2 docs

* add tests data

* lots of style cleanup

* another tweak for the test data

* fix misc style issues

* add cape to apps page

* add nicecase for cape

* case fix

* json fix for test data

* add a missing stat

* some more test data tweaking

* more misc test updates

* more test tweaking

* more test work...

* more test data work

* add what is hopefully the final test tweak
2023-01-24 11:20:18 -06:00
fcqpl ae22662c8d Update Nvidia application - values in wrong charts (#14736) 2022-12-19 09:54:34 +01:00
bnerickson a556aca1d2 Removing max polling restriction for wireguard traffic RRD data (#14710) 2022-12-08 01:41:06 +01:00
SourceDoctor e851c9abd4 Alarm Flag on UPS-Nut Application (#14635)
* Alarm Flag on UPS-Nut Application

* code adjustemnt
2022-11-18 21:15:21 +01:00
bnerickson bb536bb6fe Adding wireguard application support (#14625) 2022-11-13 11:07:24 +01:00
Zane C. Bowers-Hadley 8511611f64 add HV Monitor, a generic means for monitoring hypvervisors (#14218)
* add HV::Monitor support

* document hv monitor

* add HV Monitor tests

* style cleanup

* fix a few missed style items

* test fix

* more test cleanup

* more minor test tweaks

* more test cleanup

* more test tweaking

* test ordering fix all done... hopefully

* more test cleanup

* minor formatting change
2022-11-07 13:35:48 -06:00
bnerickson a63b12a00d XSS sanitize pwrstatd application script inputs (#14545)
* XSS sanitize pwrstatd application script inputs

* Removing is_int logic
2022-11-01 20:33:17 -05:00
Tony Murray 7d9f22705f Memcached application improve error visibility (#14536) 2022-10-31 08:13:41 -05:00
bnerickson d28b1cac3f Adding systemd application (#14540) 2022-10-30 14:18:02 -05:00
Jellyfrog b6620746c5 Miscellaneous cleanup - part 5 (#14502)
* Miscellaneous cleanup - part 5

* Update includes/discovery/sensors/pre-cache/ipoman.inc.php

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

* Update ipoman.inc.php

* string for trim()

* Update ciscosb.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-10-25 19:27:28 +02:00