Commit Graph

910 Commits

Author SHA1 Message Date
BennyE
0f429e3d9a Added New-OS: Alcatel-Lucent Enterprise Stellar Wireless (#12952)
* Added New-OS: Alcatel Stellar Wireless

* Addressing StyleCI remarks

* StyleCI is still unhappy with me

* Addressing scrutinizer identified minor bug with additional type check

* Add snmprec test data

* Add json test data
2021-06-17 16:23:16 +02:00
Sean
bcedc0ed77 Improve Markdown syntax in Document (#12949)
* Use GitLab instead of Gitlab

Only change text part, the Alert.Transport.Gitlab class left as is.

* Fix href in document

* Move section in document

The agent list in this document is sorted by alphabetical order,
"SDFS info" is the only exception.

* Remove trailing spaces in document

* Align code in document

* Fix Markdown in document

- Escape underline
- Add syntax highlight
- Add two space in the end of line to make it a newline
- Add newline before list or code section

* Update LibreNMS/Alert/Transport/Gitlab.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-06-16 21:16:21 +02:00
Tony Murray
bd3da058d3 Human readable database inconsistent error (#12950)
* Human readable database inconsistent error
In case a db error causes an exception, check validate and show the db errors to the user in the webui.

* only failed validations

* fix style
2021-06-14 13:33:59 -05:00
geg347
672fe61b5e New module add juniper rpm support + reimplementation of cisco-sla module (#12799)
* Definition of a new SLA module to migrate from old cisco-sla and support other devices : Juniper RPM and Huawei

* Change wrong description name of module SLA

* Re implementing Juniper RPM support in a new module Slas (Cisco SLA to be added)

* Added Graphs for Juniper RPM types

* Tried to make discover and poller generic : to handle Cisco SLA and Juniper RPM and others

* Reimplementing Cisco SLA in the new Sla module and adding condition to manage both SLA and RPM

* Definition of a new SLA module to migrate from old cisco-sla and support other devices : Juniper RPM and Huawei

* Change wrong description name of module SLA

* Re implementing Juniper RPM support in a new module Slas (Cisco SLA to be added)

* Added Graphs for Juniper RPM types

* Tried to make discover and poller generic : to handle Cisco SLA and Juniper RPM and others

* Reimplementing Cisco SLA in the new Sla module and adding condition to manage both SLA and RPM

* Fix some error due to Elequent object replacing SQL request

* Fixing indentation

* Fixed continuous integrations errors

* Fixed continuous integrations errors part 2

* Fixed continuous integrations errors part 3 : missing last new lines

* Fixed PHP Static Analysis checks

* Fixed continuous integrations errors part 4

* Fixed PHP Static Analysis checks part 2

* Trying to convert existing cisco-sla to new slas one

* Trying to add slas to fix test failure (I am pretty sure this is not enough but I don't know how to do it)

* Switching old cisco-sla module declaration to new slas module in concerned OS files

* Fixing wrong sla module name instead of slas in concerned OS files

* Fixing wrong module name sla changed to slas (as is it in power-supplies reimplementation)

* Fixing some warnings shown in the Inspection CI but skipping some that are already present

* Adding tests files from virtual Juniper VMX and adding slas modules in /tests/module_tables

* Adding missing SNMP data files

* Module Slas modifications to use inheritance

* Fix CI errors

* Fix CI errors part 2

* Fix CI errors part 3

* Fixing no value on RTT graphs

* Fixing only last SLA to be polled : problem with loops

* Fix CI errors part 4

* Optimizing a little the Juniper RPM poller part

I wanted to query only the required values but it is complicated to query a specific OID
as Cisco-SLA does because the owner and tag are hardcoded in ASCII decimal with strange values.
So I use the function snmp_walk which gets the whole OID values in text.
And I index the Juniper MIB (because we want multiple values). But I changed the DISMAN MIB
requests to get only what we want.

* Fix CI errors

* Fix CI errors part 2

* Fix CI errors part 3

* Fixing PHP Static Analysis error 2/4

* Fix CI errors

* Implementing Interfaces to fix some errors that occurs with inheritance

* Adding missing Interfaces files

* Moving generic Sla discovery code into Junos Class

* Fix CI errors

* Fix CI errors part 2

* Fixing missing definition of SlaDiscovery in Cisco shared Class

* Fixing missing import for Illuminate\Database\Eloquent\Collection

* Fix CI errors part 3

* Fix PHP Static Analysis error

* change type strings to use translations instead of config

* IOSXR test data

* remove test data garbage

* simplify discovery

* Fix style

* Updating test files to adapt mock sla_nr ID starting from 0 and not 1 : CI tests should pass

* clean up polling
add rtt field in the db
cisco icmpjitter seems to have confused a lot of values

* rtt on discovery

* use crc32 for consistent sla_nr values

* revert snmprec

* Fix style

* correct schema

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-06-11 13:48:33 -05:00
Patrik Forsberg
3cf039764e add number sign to to special character handling in ActiveDirectoryAuthorizer $group_dn (#12943) 2021-06-11 14:58:34 +02:00
ottorei
69397ea70f ISIS-adjacency polling support (#12461)
* init

* Add adjacency polling support

* Format messages

* Fix prints

* Apply fixes from StyleCI

* Fix schema

* Schema fix

* Alert rule example

* Remove display format

* Change option order

* Add test data

* Add test data

* Test data

* Review fixes

* Remove duplicate MIB-file

* Add cleanup

* Fix

* Print fix

* Remove extra cleanup

* Revert "Remove duplicate MIB-file"

This reverts commit 4b3cf8127c.

* Remove unneeded MIB-files

* Add check for empty array

* Apply fixes from StyleCI

* Review fixes

* StyleCI

* StyleCI

* Apply fixes from StyleCI

* typo

* Update function calls on pages

* Linting fixes

* Apply fixes from StyleCI

* Discovery module

* Add discovery module

* Apply fixes from StyleCI

* Update example alert rule

Co-authored-by: ottorei <ottorei@users.noreply.github.com>
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
2021-06-10 19:42:34 -05:00
PipoCanaja
2e8c336c8f add TopErrors widget based on error_rate (#12926)
style

style
2021-05-31 19:40:45 +02:00
Tony Murray
143765ced8 Add 'nobulk' setting in sensors yaml (#12833)
* nobulk setting in sensors yaml
* silly python
2021-05-30 00:08:20 +02:00
maesbrisa
bc46491349 Bump version to 21.5.1 (#12900) 2021-05-25 15:30:01 +02:00
Tony Murray
e782bdbe02 Bump version to 21.5.0 2021-05-17 19:17:53 -05:00
Tony Murray
3cd7043fa7 Always test all OS detection. (#12879) 2021-05-16 20:32:54 +02:00
Tony Murray
ba4ccc1c61 Fix database validations (#12882)
Query output changed using Laravel Fluent, fix output parsing
2021-05-14 12:38:00 -05:00
Tony Murray
77a17dac88 Fix installer when DB is empty (#12873)
(which is every time)
2021-05-13 13:02:43 -05:00
Tony Murray
5ba3df45eb Fix validation runningInConsole issues (#12872)
* test

* Fix cli checks
Add helper function that works in both before Laravel is booted and without the legacy includes
2021-05-13 13:00:56 -05:00
Tony Murray
1bf9afb744 Fix graph argument issues (#12868)
* Fix top devices widget storage graphs
referenced the wrong graph, caused it to not work because device was not set.

* Handle feedback from rrdtool properly
2021-05-13 11:27:05 -05:00
Tony Murray
df5096e449 Install: Validate database before migrating (#12867)
* Validate database during install
Needed to remove usages of legacy functions in the validation

* Fix output, restore real versions
2021-05-13 07:18:54 -05:00
wolfraider
60d372979d PHP 8 Unit Conversion Fix (#12857)
* PHP 8 Unit Conversion Fix

* changed to float
2021-05-11 18:30:49 -05:00
Tony Murray
abfe62cb44 Fix Unifi processors (#12854)
Use HOST-RESOURCES-MIB, apparently Ubiquiti added partial HR-MIB support sometime.
Works better than the old load based value.
Also port os discovery to the new style
2021-05-11 18:28:58 -05:00
PipoCanaja
fff8b8e832 Collect OUI Database and do OUI lookups (#12842)
* first draft

refresh time

refresh time

* return codes

style

style

* presentation

* Exception details

more

fix

fix

* add tooltips

fixes for dns display

* create WebUI config option

languages

* refresh data every 7 to 11 days, keep it 15 days max

* 'Ports' and 'Port' ARP table

* Stp page support

style

style

* fix dnsname column finding when vendor is added/removed

fix dnsname column finding when vendor is added/removed

* nac vendor column

nac

* filter fields to reduce size of AJAX reply

filter fields to reduce size of AJAX reply

* fix typo on dns column detection

* default enabled
2021-05-10 14:56:48 -05:00
Tony Murray
76910e4180 Debug and collect-snmp-data.php fixes (#12837)
Fix output so it can be captured and typo in collect-snmp-data.php
2021-05-05 10:27:10 -05:00
Tony Murray
aa83e6aa1a Tripplite snmp trap handling (#12832)
* Tripplite snmp trap handling

* remove extra import
2021-05-05 12:39:14 +02:00
Tony Murray
bb39b4ad83 Rrd graph optimizations (#12806)
* RRD Graph optimization
Do not use temporary files to generate graphs
Don't start up a process to pipe commands to, just run the command
Error image improvements

* fix style issues

* run the rrdgraph command in the rrd directory
2021-05-03 09:48:15 -05:00
Jellyfrog
f7fbf9fe07 Add support for when group doesnt exist (#12817)
Previously this errored out the validation
2021-04-29 22:44:31 -05:00
Tony Murray
61c89794e4 Remove debug globals (#12811)
* Remove $debug global
and $vdebug global
makes these variables more accessible and protects from collisions.

* the on boot set sends application as the first parameter, just handle that

* Relocate other debug related functions

* Log debug to stdout

* Wrong output

* remove stupid constants

* Fix lint and style issues
2021-04-29 22:42:18 -05:00
Tony Murray
7de808a4e8 Revert "RRD Graph optimization (#12735)" (#12805)
This reverts commit 2833d935e0.
2021-04-28 09:07:31 -05:00
Tony Murray
2833d935e0 RRD Graph optimization (#12735)
* RRD Graph optimization
Do not use temporary files to generate graphs
Don't start up a process to pipe commands to, just run the command
Error image improvements

* fix style issues
2021-04-28 05:28:07 -05:00
martinberg
33c7151763 Additional data collection for GAIA (#12713)
* Added support for GAIA logserver/firewall lograte, raid state and type, logserver state and testdata, firewall packet stats and connections stats

* Fixed typo

* Added testdata

* Fixed typo

* Changed some faulty strings to integers

* Added more sensors. License, HA states and Updates checks

* Added testdata

* Using snmp_get_multi. Cleaner code

* Fix rrd function usage

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-04-28 05:19:17 -05:00
Simon Smith
5453163331 change printer-supplies rrd name to include the supply_type (#12792)
* Update PrinterSupplies.php

* Update toner.inc.php

* Update auth.inc.php
2021-04-25 09:16:21 -05:00
Jellyfrog
d9ac9ab80d Support X-Forwarded-Proto header (#12759) 2021-04-22 22:21:01 -05:00
Jellyfrog
53d46044c3 Fix OS sensor array return (#12694) 2021-04-22 21:49:33 -05:00
PipoCanaja
07900ccc08 Discovery - Refactor num_oid computing (#12576)
* Test the num_oid generation

* Refactor num_oid discovery

* cnt

* Cache the value to avoid unnecessary snmptranslate

* desc of function

* typo

* Negative caching as well

* Negative caching

* style

* Str::before

* Str::before

* Str::before

* Fix key,  and model Devices

* types

* types

* doc update

* re-run tests

* Use Cache class

* Simplify caching and do it into oidToNumeric

* Simplify caching and do it into oidToNumeric

* style

* Extend to 3 hours

* and not ->cache_time

* force re-run tests

* only one OID for num_oid test

* rerun tests

* typo in MD

* restore

* Exemple

* Exemple

* light change

* test

* test

* test

* back to PR

* phpstan + suggestions from Tony

* fix firebrick num_oid

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-04-22 14:40:45 -05:00
Jellyfrog
3e3aa9077e Revert "Fix StringBlade errors with a stub file" (#12776)
This reverts parts of commit 165c4fd53c.
2021-04-21 23:22:15 +02:00
Jellyfrog
165c4fd53c Enable PHPStan linter (#12678)
* Enable PHPStan linter

* Add PHPStan baseline

* Switch to Level 5

* Fix StringBlade errors with a stub file
2021-04-21 07:41:34 -05:00
djamp42
97d20dd09a Make docker app work with rrdcached (#12746)
* docker app rrdcached

* offset fix and formatting fix

* more fixes

* Update Rrd.php

* Update Rrd.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-04-21 07:40:48 -05:00
PipoCanaja
6a3b1c94ea Missing in select (#12771) 2021-04-20 23:24:16 +02:00
Jellyfrog
a8c8a9a4a2 Misc cleanup (#12758)
* Fix Docblock

* Misc

* Parameter #2 $callback of function array_filter expects (callable(mixed, mixed): bool)|null, 'strlen' given

* Parameter #2 $data of function hash_hmac expects string, int given

* Unreachable statement - code above always terminates.

* Update Device.php
2021-04-20 12:47:22 +02:00
Tony Murray
5f7682d4fe Bump version to 21.4.0 2021-04-17 23:05:07 -05:00
Jay Shepherd
c464797536 Add Packet Buffers as memory for PanOS (#12582)
* Add Packet Buffers to PanOS


Add buffer memory logic to panos.php
Replace panos test data

* Update Panos.php

* Revert to original test data

Reverting original snmprec to regenerate tests

* Regenerated Test Result

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-04-16 09:34:09 +02:00
Tony Murray
c36fe928e4 Fix mini graphs (#12738)
Remove the polyfill, if the noscript tag isn't removed it breaks graphs
Ajax tables should not use lazy loading anyway...
2021-04-12 02:40:47 +02:00
Jellyfrog
643c1ca3aa Correct snmp function usage (#12714)
* Use snmp_translate correctly

* use snmp_get correctly

device array instead of object

* Update snmp.inc.php
2021-04-09 11:11:57 -05:00
Jellyfrog
edb36fd69d More cleanups (#12715)
* PHPDoc

* Replace Auth > Illuminate\Support\Facades\Auth

* Return inside when()

* use str_replace correct

* Misc

* dead code

* use int $port

* styleci
2021-04-08 08:14:49 -05:00
Tony Murray
04407db85b Use native browser lazy load (#12720)
* Use native browser lazy load
Polyfill for older

* Add intersection polyfill for IE and older browsers
2021-04-08 11:24:53 +02:00
Jellyfrog
a70d55bfd8 Add feature to capture a full snmprec (#12706) 2021-04-06 17:26:31 -05:00
Tony Murray
7788c19256 Fix mempool tags (#12705)
Does not affect rrd, only external tsdb
2021-04-06 00:50:48 +02:00
Misha Komarovskiy
61b4c35ab1 Update IOS with 4948 variant hardware detection (#12685)
* Update IOS with 4948 variant hardware detection

* Use entPhysicalModelName if Switch System match
* Add test data for 4948e and 4948-10ge variants

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* Fix bracket error

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* Add json test data

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2021-04-05 22:26:38 +02:00
Jellyfrog
c025c55a03 Regression from e00eba327d (#12699)
Use Device object instead of array
2021-04-02 11:00:57 +02:00
Jellyfrog
777b78cca1 Cleanup (#12695)
* Use true/false to return booleans

* Misc fixes
2021-04-01 17:35:18 +02:00
Jellyfrog
6616727a95 Fix alert template variable ping_timestamp (#12690)
* Fix RunAlerts typo

* Update Template.php

* Update QueryBuilderFluentParser.php

* Update QueryBuilderParser.php
2021-03-31 18:06:07 -05:00
Jellyfrog
a0a3a1c8d8 PHPDoc fixes (#12693) 2021-04-01 00:35:19 +02:00
Jellyfrog
58af994c6b Linting (#12677)
* Fix Canopsis Transport

* Lint Hipchat

* Lint IRCBot.php

* Misc

* Update Hipchat.php

* Update Notification.php
2021-03-31 17:29:22 +02:00