Commit Graph

1035 Commits

Author SHA1 Message Date
Neil Lathwood 592e8aca4c newdevice: Added sensor detection for APC In Row RD devices (#7385)
* newdevice: Added sensor detection for APC In Row RD devices

* Update apc.yaml

* Update apc.yaml

* Update cooling.inc.php

* Update pressure.inc.php
2017-09-29 21:13:27 +01:00
Zmegolaz 5441bafc81 fix: Fixed IPv6 host renaming (#7275)
* Fixed IPv6 host renaming

* Added get_rrd_dir() and modified other files to use it where appropriate.

* rrd_name() now uses the new function get_rrd_dir(), to make it simpler to modify the escaping in the future.

* Wrong function name in rrdstep.php
2017-09-02 13:45:31 -05:00
mbwall c8f695d387 webui: Updated pi-hole graphs for better grouping (#7179) 2017-08-18 07:56:50 +01:00
Tony Murray 1d777693e1 feature: New IP parsing classes. Removes usage of Pear Net_IPv4 and Net_IPv6. (#7106)
* Refactor remove use of pear Net_IPv4 and Net_IPv6

Caution, I added tests to test the functionality of the new functions, but I'm not 100% certain the replaced usages match 100%.  Please test.

Left usage in generate-iplist.php because I'm not sure the use of that script, so I didn't want to implement additional functionality to support it.

Add support for ipv6 fo ipInNetwork() function

Add phpdocs to functions
Remove accidental inclusion

Use binary operations instead of string for networKFromIp()
Tidy up binary operations in ipInNetwork()

tidy parsing cidr network

Change to a class based implementation.

Update phpdocs.
Fully catch exceptions for hex parsing.

Fix mistake.

support older phpunit versions

Fix php shifting to negative with php 5

* Fix graph authorization. Uncaught exception and checking an ipv4 against an ipv6 network == fail.

* Also remove colons from hex strings.

* Fix typo in bgp polling
Two passes of removing invalid characters from hex strings. (That way we don't mangle valid IPs)
2017-08-08 14:14:58 -05:00
crcro 61103938dc normalized file names fixing the webui (#6991) 2017-07-09 21:17:57 +01:00
Svennd 6c449b41d0 webui: Split up the complex nfs v3 graphs (#6963)
* split up the complex graph

* overview page had some excessive graphs
2017-07-05 20:20:30 +01:00
Tony Murray 20b08cf595 refactor: finish logic and definition separation (#6883)
Clean up rewrites to only have function definitions
Move authentication initialization into a function
2017-07-03 15:38:58 -05:00
Tony Murray e8dd72e8db feature: Support fdb table on generic devices (#6902)
* feature: support fdb table on generic devices
refactored code to use snmpwalk_group
refactored ajax table code to use joins and reduce extra queries
add indexes for device_id and port_id, drop primary index
Make all columns sortable
Fix a few other small issues

* Add index for vlan_id since that field can be searched by the user

* fix whitespace

* Rename 197.sql to 198.sql

* set row count for table
2017-06-29 21:03:56 +01:00
Tony Murray bf0df7266a feature: Added fdb discovery module (#6887)
revert the context_name changes to snmp.inc.php and use the same method as other parts of the code
2017-06-26 13:58:17 +01:00
Neil Lathwood 54365985a6 Revert "feature: fdb tables (#6616)" (#6886)
This reverts commit 81ddab86af.
2017-06-25 07:04:04 +01:00
Lorenzo Zafra 81ddab86af feature: fdb tables (#6616)
* feature: FDB TABLES for ios and timos

* Fixed coding style issues

* renamed fdb.sql to 191.sql

* fixed travisCI issue

* FDB table discovery working on IOS

* Fixed bug: failing to insert fdb entries into database

* Fix phpcbf issue

* moved sql schema

* rename sql schema

* Add (tentative) FDB support for HP Comware switches

* build schema

* schema changes

* run build schema.......

* FBD Table discovery working on HP ComWare

* FBD Table discovery working on HP ComWare

* Add FDB support for HP Comware

* Discovery regex fix, tested and works for cisco 3750, 2960, 6509

* Use vlan_id instead of raw vlan. Remove Nokia implementation as vlans are not being discovered for it at the moment.

* Use vlan_id instead of vlan.

* Add debug messages, comware support

* Sorry.. phpunit isnt working for me

* Use a file structure instead of if statement per OS

* Make inserts to vlan table if entry does not exist.

* Rename sql schema file

* Use existing context name

Improve output and database synchronization

Remove chromephp and if ios

rename sqlfile

add comware back

update schema

* Delete TIMETRA-CHASSIS-MIB

* Delete TIMETRA-FILTER-MIB

* change index to bigint to be safe
2017-06-24 22:07:31 -05:00
Neil Lathwood 4f4719b66a webui: Updated all tables to have the same set number of items showing (#6798) 2017-06-08 22:10:30 -05:00
Freddie Cash dd97ba1046 Update bind.inc.php (#6795)
Fix spelling mistake:  Quiries --> Queries
2017-06-06 23:09:11 +01:00
crcro 96f066189e feature: Added pi-hole application support (#6782)
* added data to webui

* added last step on docs

* fix scrutinizer issue

* fix blank lines
2017-06-05 23:00:09 +01:00
SLMitch dbaad709fe fix: add column title under device bgp tab (#6747)
* add column title

* Change column name

Change the column name to `Family` to be consistent
2017-05-30 07:54:43 -05:00
Neil Lathwood d48be5f507 newdevice: Added detection for Cisco EPC devices (#6690)
* newdevice: Added detection for Cisco EPC devices

* updated test file

* added dbm support

* added snr support
2017-05-23 10:28:44 -05:00
Aldemir Akpinar 039bf0b961 webui: Fixed Recent events card is misplaced for printer devices (#6637) 2017-05-12 13:28:21 +01:00
Slashdoom bdf1616c76 feature: Added additional Unbound chart for query cache info (#6574)
* Update unbound.inc.php

* Update unbound.inc.php

* Create unbound_cache.inc.php

* Update AUTHORS.md

* Update apps.inc.php
2017-05-04 11:04:10 +01:00
VVelox 62a562b39a feature: Updated BIND application (#6218)
* add BIND named poller

* add BIND named graphs

* add BIND stuff

* add the color pallete used by this

* add app support

* white space cleanup

* document the bind stuff

* expand the linux package stuff a bit

* note the agent and zero_stats value

* now include the $mib stuff

* white space cleanup

* whoops, add the update app bit

* correct a error added when merging

* readd copyright info

* note myself in the copyright info
2017-05-03 15:23:33 +01:00
Tony Murray 4c0412b14d feature: Wireless Sensors Overhaul (#6471)
* feature: Wireless Sensors
Includes client counts for ios and unifi
Graphing could use some improvement.
Alerting and threshold ui not implemented

WIP: starting OO based wireless sensors.

Class based functionality working
remove old functional files
add schema file

discovery needs to be enabled, not polling

fix up schema

fix Unifi discovery not returning an array

Add some debug when discovering a sensor.
Fix style.

Add missing semicolin

Add a null object (Generic) for OS.
Fill out some phpdocs

Re-organized code
Each sensor type now has it's own discovery and polling interface
Custom polling tested with Unifi CCQ

Left to do:
Implement UI (Graphs and Custom thresholds)
Alerting
Testing

Fix event message text

Remove runDiscovery and runPolling from OS, they are unused and don't belong there.

Cleanups/docs

Missed this file.

Remove the requirement to fetch the current value to check validity.
Do that automatically if current is not specified
A few cleanups here and there

First pass at graphing.
device_ and wireless_ graphs added.

Add RouterOS support

Singleton OS instance isn't required right now.
Remove that to allow some memory to be freed.

Add wireless to the device list metrics.
Make all metrics clickable

Tweak graphs a bit

Implement limit configuration page.
Use sensors page as common code instead of duplicating.
Clean up some javascript interactions:  Allow enter on values to save. Cancel if update is not needed. Enable the clear custom button after setting a custom value.
Add some wireless alert rules to the library.

Add documentation.

Add unifi client counts by ssid in addition to radio.
Optimize Sensor polling a bit.

Add HP MSM clients support (for full controller)
Fix function accessibility

Formalize the discovery and poller interfaces.

Add Xirrus clients and noise floor
move module interfaces to a more appropriate place.
push caching code up to os, unsure about this do to the limitations

No point in selectively enabling wireless discovery.  We only discover if the device supports something.

Add RSSI, Power, and Rate.
Add these sensors for Ubnt Airos.
Clean up some copyrights.

Reduce the amount of files need to add new types.
Leave graph files for consistency and to allow customization.

Remove the old wifi clients graph completely.
ciscowlc should have improved counts (total and per-ssid)

Schema didn't get added.

Impelement the rest of the AirOS sensors
Reformat and re-organize the Airos.php class.

Add several UBNT AirFiber sensors

A few fixes add links to the section headers

Add HP MSM mibs.

* Schema file got dropped in rebase.

* Add wireless menu to view sensors across all devices.
Icons in the menu need help :/

* Add HeliOS, Mimosa, and Siklu support
Sensors added SNR + Noise

* Add power and utilization to Unifi

* Update polling to prefetch all sensor data in a few snmp requests as possible

* Add Extendair: tx+rx power, aggregate rate, frequency

* Add a check for duplicate sensors in discovery.  Just print an error for now.

* Add Bit Error Ratio (named error-ratio to allow for bit error rate to be added if needed)
Fix an incorrect link in the wireless sensors table

* Add error rate and change all bps and Hz to use si units

* Fixes to limits and frequency display

* Fix overview graph frequency display
A few decimal place tweaks

* Don't allow switching sensor and wireless-sensor graphs, it doesn't work.
Change individual distance graphs to use si units

* Go through the OS and make sure I got all the sensors I can (probably missed some still)
Because pollWirelessChannelAsFrequency() is generic and a little complex, so pull it up to OS.
Message to help developers adding supports that don't return an array from discover functions.

* Fix some issues

* Remove noise and signal for now at least
A couple more fixes
Add a notification

* Oopsie

* Bonus AirFiber sensors
2017-05-01 23:49:11 -05:00
Svennd 0211c5864b feature: Added NFS-server application support (#6320)
* update

just realized the pull script is a bad idea. not really portable. no
nfsv2 stats for centos 7+

* some php errors

* fixed v4ops

removed nfs-server.sh, as only cat /proc/net/rpc/nfsd is needed as an
extend.

* split rrd

split rrd to store and pull them seperatly

* scrutinizer-ci fix

scrutinizer-ci fix

* phpcbf

* messed up

* stuck, please ignore

* applied reviews murrant suggestions

applied reviews murrant suggestions

* dirty scope

dirty scope was the issue

* style fix ?

* style PSR2

* file handle chart

* fixed style + added documentation

* applied review tasks by murrant, thx murrant!

* applied laf's review, also added tabs in the view to reduce the amount of graphs per page
2017-04-28 22:48:26 +01:00
crcro 238ca0266b feature: Added sdfsinfo application support (#6494)
* initial version

* various fixes, docs updated

* various style fixes

* added missing copyright

* docs correction

* docs correction

* new split char for bash script

* docs correction

* scrutinizer issue

* newline meh

* doc changes
2017-04-27 20:54:39 +01:00
Svennd b2e6d8abef feature: Added opengridscheduler job tracker application (#6419)
* opengridscheduler job tracker

* wrong copy of file

* applied laf's review. Thx laf!

* now including the modified files; thx laf for the review!

* Update Applications.md
2017-04-24 14:19:36 +01:00
VVelox c222aa41a0 add multi DB support to the Postgres app (#6222)
* now creates a component with all the DBs in it

* add the function get_postgres_databases

* add multi DB support to the Postgres device app page

* add multi DB support to the Postgres graphs

* whoops removed the udpate bit, readd it

* white space cleanup

* now use json for storing DB names

* provide the list of DBs in a cleaner manner

* Update postgres.inc.php
2017-04-12 10:45:12 +01:00
Xavier Beaudouin 4b0972628f Coriant Network Hardware Page. (#6187)
* Fix the definition. Should be mef instead of mef-evc

* Added Coriant TNMS Hardware page.

* Polling and discovery modules for TNMS Network Equipements.

* SQL in one line.

* Only show when OS is coriant

* Fix conflict file

* Conflict file

* Added missing COLLATE

* Refactor poller code for more data to be inserted into DB in the future.
Removed the discovery module and merged it into poller code.

* Removed tnms-nbi discovery also in the yaml

* Removing debug

* Code updates and fixes + schema rename

* bootstrapify the code.
Renamed the sql file

* Bloody tabs !

* Add db_schema.yaml update.
2017-04-12 10:39:02 +01:00
Neil Lathwood 1bbbaff58b refactor: Moved ifLabel -> cleanPort and updated the usage (#6288)
* refactor: Moved ifLabel -> cleanPort and updated the usage

* added list of tags allowed

* few updates as per comments from @murrant

* Added simple unit tests

* double display for javascript popover

* Remove ifNameDescr() function
Fix realtime port page

* remove accidental temp code

* Remove double display calls in ajax tables
2017-04-04 08:08:23 +01:00
VVelox acd11955d2 use components for fail2ban jails list (#6221)
* add get_fail2ban_jails functions

* now do component stuff for fail2ban for tracking jails

* now use get_fail2ban_jails for getting a list of jails

* readd the accidentally deleted update app bit

* white space cleanup

* Update fail2ban component code

* remove unneeded variable
2017-03-29 22:54:02 -05:00
Tony Murray e7057ecea5 feature: Application auto discovery (#6143) 2017-03-22 14:59:39 +00:00
VVelox 0a4b2658b5 feature: Added SMART application support (#6181) 2017-03-22 14:28:50 +00:00
Tony Murray 6993bd122c fix: sensors not being removed from database (#6169) 2017-03-12 00:03:04 +00:00
Neil Lathwood 38cebc5fd7 feature: Added better BGP support for Arista (#6046)
* feature: Added better BGP support for Arista
2017-03-11 23:16:49 +00:00
Xavier Beaudouin fa29839d36 newdevice: Added Coriant support (#6026)
* Added Coriant TNMS MIB and MEF (Metro Ethernet Forum) MIB

* Coriant Logo

* Added Basic Librenms Support and MEF support

* Forgot snmpsim

* Better like this

* Spaces !

* Renamed sql file

* Space

* Fix spaces

* svgo optimized logo

* Removed modules that are by default to 0

* Added sysDescr as requested

* Fix conflict file

* Setting right severity id in the discovery log_event()

* Since MEF-EVC can be used on other devices than Coriant's one, lets this be used by the poller/discovery itself

* Fixed spaces

* Rename 173.sql to 174.sql

* Moved logo from os/  to logos/
Addd Icon

* Fix name

* minimize file

* Change l/w to viewbox and minify

* Renamed mef-evc to mef on request from @laf

* Rename 174.sql to 175.sql
2017-03-11 07:30:31 -06:00
VVelox 52313564cb add missing device app pages for FreeBSD NFS and Squid (#6111)
* add missing squid.inc.php

* add missing fbsd-nfs-client.inc.php

* add missing fbsd-nfs-server.inc.php

* Update fbsd-nfs-server.inc.php

* remove extra blank line
2017-03-07 08:29:51 +00:00
VVelox 6b2a950250 add missing postgres.inc.php (#6110) 2017-03-06 22:58:13 +00:00
David Bell ead3abb2c2 webui: Create correct link for BGP peers #5958 2017-03-05 19:42:39 +00:00
Neil Lathwood 51b3a51ad6 fix: Fixed the previous graphs for diskio/bits #6077 (#6083) 2017-03-04 11:19:04 +00:00
VVelox 671654d155 feature: Added Nvidia GPU application support (#6024) 2017-03-03 20:41:20 +00:00
Robbie Penziol afb838bc10 webgui: Added ability to set warning percentage for CPU, mempools from device edit page (#5895) 2017-03-03 15:07:12 +00:00
VVelox 6844f29217 feature: add get_disks function (#6058) 2017-03-03 14:27:33 +00:00
VVelox 41bf70dac9 feature: Updated Nfsen integration support (#6003)
* add single pool based poller for php-fpm

* add the page for php-fpm

* add graph for php-fpm

* I agree to the conditions of the Contributor Agreement contained in doc/General/Contributing.md.

* use named OID as suggest by @laf

* document PHP-FPM monitoring

* link it in the index

* clean up the named oid

* add how to grab the script in question

* add f2b poller

* add f2b app page

* add f2b graph

* add fail2ban notes

* minor formatting cleanup

* ...more formatting cleanup

* rename it so it can be called via the app page

* Revert "rename it so it can be called via the app page"

This reverts commit 0bde88a038.

* *rename it so it can be called via the apps page
*setup the apps page to call it

* renamed the graph

* now include fail2ban in the apps properly

* correct the wget command so it does not stomp on phpfpm-sp

* update the fail2ban poller for the newest fail2ban script and now build multiple RRDs

* update for now graphing firewalled and banned

* update fail2ban docs to match the newest snmpd extend method

* search automatically for jails and graph them

* graphs the currently banned for a fail2ban jail

* change the tital of the graph for the total banned to make it more descriptive

* Add a explanation of the two variables in the total graph.

* misc. white space cleans ups

* misc. white space cleanup

* minor white space cleanup

* correct descr lenght

* correct descr lenght

* Update fail2ban.inc.php

* Use rrd_name properly

* note the cache file bits

* make caching optional and note why

* Update to new RrdDefinition class

* And the use statement ;/

* Messed the second rrd_def

* correct two minor errors that did not seem to be causing issues

* don't use $vars as per pull #5994

* don't use $vars as per pull #5994

* fix jails graphs

* Remove loops and temp variables

* whitespace

* Change graph so we don't get fractions

* add the common nfsen channel include

* add nfsen channel flows graph

* add nfsen channel packet graph

* add nfsen channel traffic graph

* update nfsen for channel support

* the nfsen general page

* add the nfsen channel page

* update the docs on nfsen to be more clear about configuring it

* white space cleanup

* white space cleanup

* misc code cleanup

* now consistently uses all the same quotes

* minor code cleanups

* Update nfsen_channel_common.inc.php

* minor white space cleanup
2017-03-02 09:03:45 -06:00
VVelox 002f4157b6 feature: Added support Postfix application 2017-03-01 18:34:22 +00:00
Tony Murray 5637399b95 webui: fix device edit health update icons (#5996)
Allow 0 and "" for valid health update values.
2017-02-25 10:37:13 +00:00
VVelox 6cf5add528 feature: add fail2ban application support (#5924)
* add single pool based poller for php-fpm

* add the page for php-fpm

* add graph for php-fpm

* I agree to the conditions of the Contributor Agreement contained in doc/General/Contributing.md.

* use named OID as suggest by @laf

* document PHP-FPM monitoring

* link it in the index

* clean up the named oid

* add how to grab the script in question

* add f2b poller

* add f2b app page

* add f2b graph

* add fail2ban notes

* minor formatting cleanup

* ...more formatting cleanup

* rename it so it can be called via the app page

* Revert "rename it so it can be called via the app page"

This reverts commit 0bde88a038.

* *rename it so it can be called via the apps page
*setup the apps page to call it

* renamed the graph

* now include fail2ban in the apps properly

* correct the wget command so it does not stomp on phpfpm-sp

* update the fail2ban poller for the newest fail2ban script and now build multiple RRDs

* update for now graphing firewalled and banned

* update fail2ban docs to match the newest snmpd extend method

* search automatically for jails and graph them

* graphs the currently banned for a fail2ban jail

* change the tital of the graph for the total banned to make it more descriptive

* Add a explanation of the two variables in the total graph.

* misc. white space cleans ups

* misc. white space cleanup

* minor white space cleanup

* correct descr lenght

* correct descr lenght

* Update fail2ban.inc.php

* Use rrd_name properly

* note the cache file bits

* make caching optional and note why

* Update to new RrdDefinition class

* And the use statement ;/

* Messed the second rrd_def

* correct two minor errors that did not seem to be causing issues

* don't use $vars as per pull #5994

* don't use $vars as per pull #5994

* fix jails graphs

* Remove loops and temp variables

* whitespace

* Change graph so we don't get fractions
2017-02-24 11:50:33 -06:00
Florian Beer ad58af6e6c webui: Update services pages
* Update services page

- Bring services overview page in line with the rest of the interface
using bootstrap classes, panels, colors etc.
- Getting rid of most of the tables using bootstrap's grid classes.

Device services page might need a bit more work but I'm not ready yet.

* Fix style check issues

* Bigger status labels
2017-02-22 23:53:17 +00:00
Tony Murray edc1368535 webui: Port totals match the colors of the interface links below (#5968) 2017-02-21 16:29:22 +00:00
Florian Beer 03d07f978b Add php-fpm graphs to application overview (#5912) (#5937)
* Add php-fpm graphs to application overview (#5912)

* Rename graph to php-fpm_stats
2017-02-18 05:23:55 +00:00
VVelox 872eac10aa feature: add PHP-FPM support for snmpd (#5912)
* add single pool based poller for php-fpm

* add the page for php-fpm

* add graph for php-fpm

* I agree to the conditions of the Contributor Agreement contained in doc/General/Contributing.md.

* use named OID as suggest by @laf

* document PHP-FPM monitoring

* link it in the index

* clean up the named oid

* add how to grab the script in question
2017-02-16 15:10:42 +00:00
Tony Murray cbaab1462f Change the size of the bgp updates arrows. (#5913) 2017-02-15 23:16:03 +00:00
Neil Lathwood cc51a68f85 feature: Optional partial port polling (#5805)
* feature: Added ability to switch port polling mode

* update, speed things up slightly by walking certain tables

* more fixes

* updates

* updates

* update to exclude ports that are down

* wrong variable used

* update to set previous port status when null

* small update to port disco
2017-02-14 17:26:07 -06:00
FTBZ ba2f0d8b51 fix: Remove the non-functional buttons for non-admins in devices/services (#5856)
* Remove the non-functional buttons for non-admins in devices/services

* Remove the non-functional buttons for non-admins in devices/services
2017-02-10 21:21:40 +00:00