2305 Commits

Author SHA1 Message Date
VVelox eaf70e96f6 feature: Added ZFS support for FreeBSD (#7938)
* add the ZFS graphs

* And now the ZFS non-graph stuff.

Still need to move it over to using JSON.

* Now uses JSON.

* use stripslashes as SNMPD loves to slash up the JSON

* Document ZFS.

* very minor formatting cleanup

* minor formatting cleanup and remove a bit of code from when I was mucking around debugging it all
2017-12-30 11:42:51 +00:00
crcro 45be722b58 fixed missing devices graphs options (#7981) 2017-12-29 14:10:36 -06:00
crcro b63c2ac3bf webui: device page refresh (#7963)
* various device page style fixes and alignments with new look

* blank line fix
2017-12-28 23:36:49 -06:00
Tony Murray 12373d0f60 Fix devices update url (#7965) 2017-12-27 13:41:59 -06:00
Neil Lathwood 27368a2d98 webui: Stop stripping html tags from snmp creds (#7951) 2017-12-25 09:51:31 -06:00
crcro f75079ab47 fix alignment, removed redunant css classes, align layout with the rest (#7954) 2017-12-24 22:46:12 +00:00
crcro e7486d5fb2 webui: Wireless pages refresh (#7836)
* initial release

* updated to a more compact style, pagetitle fix
2017-12-24 20:19:22 +00:00
crcro 599572562a webui: Health / Sensors pages refresh (#7834)
* inital release

* added missing copyrights

* removed old commented lines

* do not center progresss bar

* integrated in page navbar, removed useless div

* changes to match latest style, fix for pagetitle
2017-12-24 20:18:48 +00:00
crcro 520fc4a268 webui: Graylog table refresh (#7832)
* initial release

* style fixes
2017-12-24 19:59:16 +00:00
crcro 3f0ad0360e webui: Ports table refresh (#7827)
* initial release

* removed duplicate div tag

* deleted ports reworks

* more header optimizations, added status entries

* more header optimizations, added status entries

* added purge all, testing needed, try once again to fix overflowing filtering bar

* fix purge all, another try to break option bar in two for longer inputs

* fix indentation
2017-12-24 19:58:59 +00:00
crcro 7a0f8c02b6 webui: Devices table refresh (#7809)
* initial release

* added missing copyright

* update to match latest style

* removed status text column

* removed status text column

* fix overflow of options bar
2017-12-24 19:58:32 +00:00
crcro 71711326fb webui: Syslog table refresh (#7796)
* initial changes

* final changes

* added missing copyright, removed commented old code
2017-12-24 19:57:54 +00:00
crcro 9e63d3200d webui: Eventlog table refresh (#7793)
* initial release

* added copyright info

* set username to System if empty

* eventlog page cleanup

* added copyright
2017-12-24 19:56:24 +00:00
crcro 34e07a1d66 webui: Alerts table refresh (#7765)
* initial release

* changed layout, matching pr 7628

* style changes
usage of short hostname

* alerts page cleanup

* reduced css class, added js function

* initial release

* added min-height, also apply min-height via js if parrent is smaller

* remove status column
2017-12-24 19:55:24 +00:00
Søren Rosiak d11808aad4 webui: Improve Services Page Look (#7628) 2017-12-24 19:41:14 +00:00
Aldemir Akpinar 56561aa4dc feature: Added support for Host dependencies (#7332)
* First draft of the modals and the config interfaces

* GUI part done

* Backend code and db schema addition

* Documentation added, fixed alerting bug

* Fix typos

* Do not try to push an older db_schame.yaml

* Small db fix

* More db fixes

* Travis CI fixes

* missed a line in the travis error

* Fixed dependency clearing bug, Manage Host dependencies button now shows current selections

* Removed unnecessary index

* Correct faulty query

* Fixed sql query as requested, and renamed sql file

* Added requested changes

* Removed debug code

* Renamed sql file

* More fixes as requested

* Trying to fix db_schema.yaml

* adding laf's diff

* Corrected a small bug

* Try to resolve scrutinizer issue

* Main page bootgrid ajax modifications

* Also corrected travis ci errors

* Added select2 for pull downs, removed a redundant debug output. Changed parent_id to text

* Add missing class in the device settings page

* Fix bug where a link wasn't added after save

* Better parent down detection

* Add missing comma

* Behold the multi-parent code

* Added lookup table

* Ready for testing

* Trying to fix documentation conflicts

* Fix copy paste errors, and possible sql injection

* indentation problems

* Modified db_schema.yaml as well

* Typos, typos

* This should correct alerts

* Try to fix travis ci error

* Fix the typo in index.php

* Changed to Tony's query

* function explanation text changed

* Updated db_schema.yaml

* Trying to make automated tests happy

* Changes as requested

* Added acknowledgment for select2

* Added laf's patch

* dbBulkInsert when adding parents
2017-12-20 14:17:52 +00:00
Slashdoom 712201e691 feature: FreeRADIUS application monitoring (#7818)
* Update unbound.inc.php

* Update unbound.inc.php

* Create unbound_cache.inc.php

* Update AUTHORS.md

* Update apps.inc.php

* Update bind.inc.php

* Update bind.inc.php

* Update bind.inc.php

* Update bind.inc.php

* Update tiles.php

* Update Applications.md

* Update Applications.md

* Update Applications.md

* Update Applications.md

* Update Applications.md

* Update Applications.md

* Update apps.inc.php

* Create freeradius_access.inc.php

* Update functions.inc.php

* Create freeradius_auth.inc.php

* Create freeradius_accounting.inc.php

* Create freeradius_proxy_access.inc.php

* Create freeradius_proxy_auth.inc.php

* Create freeradius_proxy_acct.inc.php

* Create freeradius_queue.inc.php

* Update and rename freeradius_accounting.inc.php to freeradius_acct.inc.php

* Update apps.inc.php

* Create freeradius.inc.php

* Create freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update Applications.md

* Update Applications.md

* Update freeradius_access.inc.php

* Update freeradius_acct.inc.php

* Update freeradius_access.inc.php

* Update freeradius_auth.inc.php

* Update freeradius_access.inc.php

* Update freeradius_acct.inc.php

* Update freeradius_proxy_access.inc.php

* Update freeradius_proxy_acct.inc.php

* Update freeradius_proxy_auth.inc.php

* Update freeradius_queue.inc.php

* Update freeradius_queue.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius.inc.php

* Update freeradius_acct.inc.php

* Update freeradius_acct.inc.php

* Update freeradius_access.inc.php

* Update freeradius_access.inc.php

* Update freeradius_auth.inc.php

* Update freeradius_proxy_access.inc.php

* Update freeradius_proxy_acct.inc.php

* Update freeradius_proxy_auth.inc.php

* Update freeradius_queue.inc.php
2017-12-12 21:13:24 -06:00
bergroth 84fdfdf542 Junos dwdm interface sensor support (#7714)
* Junos dwdm interface sensor support  …
  four new sensors
    Chromatic Dispersion ps/nm
    Delay s (seconds)
    Q_factor (dB)
    preFEC_BER (ratio)

  reuse of
    SNR, dbm, temperature, current

* new dwdm sensors more generic, ber and quality_factor

* new sensors updated

* renamed html graphs new sensors

*  fixed ber polling

* Change to base SI Hz and s.

* update sensor divisors to bigint

* rename sql-schema/216.sql to 218.sql

* YAML junos dwmd sensor definitions, except BER

* bigint divisor fixed

* deafult 1 divisior

* small fixes including schema change for another PR

* schema fix
2017-12-12 20:27:10 -06:00
Tony Murray c22c879983 fix: Remove faulty memcached code (not related to distributed polling) (#7881) 2017-12-10 20:40:45 +00:00
crcro 0cb3470be0 webui: Timezone support for graylog (#7799)
* added timezone support for graylog

* using default user timezone if none is configured

* newline fix, added copyrights

* copyright correction

* copyright correction

* copyright fix
2017-12-04 07:56:13 +00:00
crcro 995b7069eb webui: Added support for stacked graphs (#7725)
* initial release

* newline fix

* missed some graphs in edit

* style fixes

* revert custom function, use Config

* unified config option
added webui graph config entry
added sql entry for webui config

* removed config_id from sql file

* remove graph stack from defaults

* moved transparency and stacked option to functions.php

* style fixes

* style fixes

* changes in code
added docs about stacked graphs

* return keyed array

* new colors and transparency

* sql rename
2017-12-02 20:28:03 +00:00
Tony Murray a21a3fb2b6 feature: Added support Entity State polling (#7625)
* Entity state sensors??

* feature: Entity State polling
Display entity state on the Inventory page.
Allows for alerting based on states.

* fix empty last changed, timezones, alarm parsing, and db updates

* do not display unavailable alarms (80)
add tooltip with state value

* remove debug

* Entity state sensors??

* feature: Entity State polling
Display entity state on the Inventory page.
Allows for alerting based on states.

* fix empty last changed, timezones, alarm parsing, and db updates

* do not display unavailable alarms (80)
add tooltip with state value

* remove debug

* Use a discovery module and only fetch the rest of the data if entStateLastChanged is updated.

* A little more efficient sql use in the case nothing has changed.

* disabled by default, add to docs.

* moved schema file to 220.sql
2017-12-02 20:23:56 +00:00
Tony Murray d6db01abb5 refactor: Refactor fix php codesniffer 3.x issues (#7816)
We cannot use 3.x because it  requires php 5.4, so update to 2.9.1 or newer 2.x release.
2017-11-29 08:23:19 +00:00
Søren Rosiak 461b39e989 webui: Add ability to mark all notifications as read (#7489)
* feature: Add ability to mark all notifications as read

fixes:
https://community.librenms.org/t/ability-to-mark-all-notifications-as-re
ad/2368/1

* Do not add multiple read notifications_attribs

* not archive, yes non-admin

* Oops, hardcoded user_id
2017-11-28 21:22:53 -06:00
Neil Lathwood e1bb3261de webui: Disabled page refresh on Add services page (#7804) 2017-11-27 17:45:02 +00:00
Tony Murray ea684c3543 webui: Allow deletion of dead poller nodes (#7721)
* webui: allow deletion of dead poller nodes

* improve messages
2017-11-22 07:50:29 +00:00
mcq8 c9728a1f71 refactor: Refactored authorizers to classes (#7497)
* Refactored authorizers to classes

* Merge changes for #7335

* ! fix php 5.3 incompatibility

* Update ADAuthorizationAuthorizer.php

* Fix get_user -> getUser

* Rename AuthorizerFactory to Auth, fix interface missing functions

* Add phpdocs to all interface methods and normalize the names a bit.

* Re-work auth_test.php AD bind tests to work properly with the new class.
Reflection is not the nicest tool, but I think it is appropriate here.
Handle exceptions more nicely in auth_test.php

* Restore AD getUseList fix

Not sure how it got removed

* fix auth_test.php style
2017-11-18 10:33:03 +00:00
Neil Lathwood 38be66993f webui: Updated sensors overview header to be consistent with others (#7761)
* webui: Updated sensors overview header to be consistent with others

* added line break
2017-11-18 10:26:12 +00:00
Tony Murray de35e6e3a5 fix: notification read count doesn't decrement in menu bar (#7750)
* fix: notification read count doesn't decrement in menu bar

* also remove red color if we reach 0
2017-11-16 20:10:20 -06:00
Neil Lathwood 4e59dd47c9 webui: Expose pollers link to show total poll time for all devices per poller (#7699)
* webui: Expose pollers link to show total poll time for all devices per poller

* Update pollers.inc.php
2017-11-13 12:18:07 -06:00
bergroth a16c142658 * Health/sensor view for specific device/ports/port (#7684)
* * Health/sensor view for specific device/ports/port

* Removed code that didn't comply with standard

* added extra check html/pages/device/port/sensors.inc.php

* Update sensors.inc.php
2017-11-09 15:28:26 -06:00
Neil Lathwood f84844f2a7 fix: Better validation on callback url for Pagerduty integration (#7658) 2017-11-07 09:32:09 -06:00
Tony Murray 1c31b06768 webui: Don't disable the applications check boxes in settings if the discovery module is disabled. (#7615)
It disables the check boxes because it will automatically disabled/enabled based on data returned from the device.
2017-11-02 20:38:17 +00:00
Zmegolaz a7f42361ae Fix: Better sanity check of hostname when adding device. (#7582)
* Better sanity check of hostname when adding device.

* Style fix.

* clean() before hostname validity check. IP::isValid to support IPv6 addresses.

* Even more checks to catch invalid input.

* Long if-else, better error message.

* Code re-arranging
2017-11-01 11:06:39 -05:00
Tony Murray 6e3ea8b28e fix: Only show the neighbour tab if there are neighbors to show (#7591)
Also, fix up the sql statements in this file.  No reason to count entries if we only want to know if at least one entry exists.
2017-10-31 20:35:49 +00:00
Neil Lathwood f00e896e93 webui: Added toner support in health metrics list (#7595) 2017-10-31 20:31:56 +00:00
Tony Murray 087dbbd173 webui: Hide rediscover button for ping only devices (#7594) 2017-10-31 19:48:15 +00:00
Florian Beer f92dae6915 webui: Fix Services container alignment (#7583)
This has been bugging me for a while... ;)
The services container wasn't properly aligned with the rest of the boxes (e.g. Events, Syslog etc.). This small HTML change fixes that.
2017-10-30 12:45:58 -05:00
Zmegolaz f8d7ccfe0d feature: Support for up/down detection of ping only devices.
* Added support for ping only devices.

* Renamed sql-schema/206 to 207.

* Discovery tried to detect the OS when it shouldn't.

* Updated db_schema.yaml

* Added ping icon.

* Don't show unused graphs and tabs when SNMP is disabled.

* Allow the user to specify OS of ping only devices.

* Removing custom OS now changes it to 'ping'.

* Removed unnecessary use of mres().

* UI select box for SNMP enable/disable.

* Hide device_ping_perf if ping is disable on device.

* Fixed SNMP settings update status messages.

* Added functionality to add ping only devices via the web ui.

* Added ping only option to addhost.php

* Added ping only support to snmp-scan.py

* Moved sql 208 to 211

* Fixed scrutinizer issues.

* Fixed broken ossearch.

* Added ping only support to the API.

* Updated API doc.

* Added (optional) to OS and hardware description. Hid Port Settings, Applications, Modules, Storage, Processors, Memory and Components from the edit menu

* Style fix.

* Updated ping icon.

* clean() instead of mres(). More escaping. Better help in snmp-scan.py and addhost.php

* Fixed scrutinizer issue.

* Always try SNMP in snmp-scan.py, new option for it in addhost.php. Slice instead of chunk in ajax_ossuggest.php. Other minor style changes.

* Updated sql modifications to insert the new column in the same place as in db_schema.yaml.
2017-10-27 22:59:25 -05:00
Neil Lathwood 752ba5153c Small UI tweak for validate page (#7559) 2017-10-26 21:11:51 +01:00
Joel Kociolek bc3d1ed47e feature: Improve Freeswitch agent: add ability to get data via snmp and graph more data (#7549)
* Add ability to get Freeswitch application data via snmp

On your Freeswitch server install the script from
https://github.com/librenms/librenms-agent/blob/master/agent-local/freeswitch
into /etc/snmp, make it executable and adjust it to your installation.
Configure your snmpd to use the sript as an extension. For example on Debian
add the following line to your /etc/snmp/snmpd.conf:

extend freeswitch /etc/snmp/freeswitch

Activate the Freeswitch application for your server on your LibreNMS server.
it should now start to receive data from your Freeswitch server via snmp.

* Graph "Calls" and "Channels" of Freeswitch agent

The Freeswitch agent sends Calls and Channels count and they weren't graphed
up to now.  This is especially useful in settings where the Freeswitch
server does not act as a Gateway and thus the agent does not sent
Incoming and Outgoing Call numbers.

* Cleanup commented code and add myself to authors
2017-10-26 11:27:11 +01:00
Tony Murray 51ba934e11 feature: Added web validation (#7474)
* refactor: convert validations to modules to prep for gui integration

* accidentally dropped, schema update

* fix accidental output to webui

* mention discovery-wrapper.py and re-arrange.

* refine some fix statements

* rename the Config validation group to Configuration.

* fix some scrutinizer issues
remove as many local functions from validator.php as possible
move extensions from pre-check
remove duplicate timezone check
looks like there is some db schema differences between mariadb 10.1 and 10.2, investigating

* mariadb version diff take2

* Check schema version first for database.
Remove stop to go back to command line for install docs.
Add helpful link when there is no devices added to /addhost

* fix incorrect validation for empty string defaults

* Fix style

* Add additional file permissions checks

* catch exception and fail for invalid timezone
Change visuals a bit.

* add php version warning

* fix space
2017-10-26 07:56:09 +01:00
Søren Rosiak a9ab96e83f feature: Improve Device Neighbour WebUI (#7487) 2017-10-15 09:26:01 -05:00
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
celalemre 973764e7d3 alerts: Added OpsGenie transport. (#7392)
* Add OpsGenie transport.

* Log response body from OpsGenie only when an error occurs.

* Move OpsGenie SQL config to a new sql file.
2017-09-28 21:20:21 +01:00
Ryan Medlyn d6ae852617 Fixes query selector scope for bootgrid destroy (#7379) 2017-09-22 07:06:49 +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
Ryan Medlyn 6077d3a3db webui: Greatly reduces application memory leak for dashboard (#7215) 2017-09-01 17:27:01 +01:00
Richard Mayhew 51da2ba3af docs: Fixed API-Docs Link in webui (#7242)
* New event log severity model

* Revert "New event log severity model"

This reverts commit 0783527af8.

* Fix API-Docs Link
2017-08-29 19:41:20 +01:00
Tony Murray 0def643e09 feature: Notify about failed updates, block detectable bad updates (#7188)
* Feature: Notify about failed updates, block detectable bad updates
Ability to post notifications when the update fails.
Detect and roll back updates that will cause broken installs. (Needs testing)
Add severity to notifications, critical (2) notifications will display a toast.

This will be used for removing in-tree dependencies and raising the minimum php version.

* Improve naming a bit add phpdoc to new_notification
In case multiple notifications are created, remove them all.

* Remove notifications when update is disabled.

* update travis to use db testing

* added missing index
2017-08-26 21:35:39 +01:00