Commit Graph

5164 Commits

Author SHA1 Message Date
Paul Heinrichs
2d7423cdaa API: System endpoint, more health graphs (#8730)
* API: System endpoint, more health graphs

* Add new line api_functions

* Get count of relationships

Using eloquent

* Add new lines in Models
2018-05-18 23:36:06 -05:00
Aldemir Akpinar
edab606428 refactor: device dependency bootgrid sql queries (#8717)
* Starting to work on queries

* Fix sorting

* Fix row count when searching

* Update get-host-dependencies.inc.php
2018-05-16 20:54:59 -05:00
PipoCanaja
a1a13de0f6 feature: Added PoE graphs and improved PoE polling code (#8705)
* Poe Polling Code, Poe Graphs, and Huawei MIB

* Reverting the reindent done after pre-commit script

* Cleaning of code not used for Cisco IOS, removal of untested Procurve code, and restore of legacy generic code (tested with Cisco+huawei)

* Rename MIB file

* Rearranged duplicated code

* Cleaning of variable not used

* Cleaning of commented code after night validation in test environnement

* Cleaning after pre-commit.php comments

* test data with PoE oids for huawei 5720

* test data with PoE oids for cisco 2960X
2018-05-15 21:39:36 +01:00
Roger
e22642c73f feature: Added feature to filter delayed alerts on widget (#8704)
* Added feature to filter delayed alerts on widget

* fix build job error

* change filter name to fired
2018-05-15 20:54:02 +01:00
Tony Murray
9e30d3fd7b Fix some issues with globals (#8709)
Some variables aren't global anymore.
Make $vars global.
2018-05-14 18:31:46 +01:00
centralscrutiniser
ba0ed73d5f device: Added and Updated Blue Coat device support (#8664)
* Blue Coat device updates

* Blue Coat device updates

* Updated PHP code per @laf comments

* YAML update for Packetshaper

* SSL Visibility YAML and snmprec file

* Cleanup problematic MIB files which should not have been there

* Reset Packetshaper YAML to original

* Added json test data
2018-05-13 21:54:10 +01:00
Tony Murray
3e9f4b396e Fix device inventory page (#8698)
$device isn't global it is in the local scope.
2018-05-11 12:06:03 -05:00
Tony Murray
b3c3f0434f Fix two factor auth (#8697) 2018-05-11 11:29:10 -05:00
Tony Murray
66e4eccba7 Version librenms.js to break cache (#8696) 2018-05-11 11:14:35 -05:00
vivia11
5fd81db819 device: Added Open Access Netspire OS support (#8674)
* Add netspire os support

* Update netspire.yaml

* Change from numerical oid to regular oid and readd poller/discovery modules

* Remove mib_dir and change os polling
2018-05-10 20:17:42 +01:00
Tony Murray
5236a24dd5 Fix missing vlan name on port vlan page (#8684) 2018-05-10 19:56:53 +01:00
Tony Murray
0020479fc8 Test plugin menu method should be static. (#8681) 2018-05-09 08:39:21 -05:00
Tony Murray
1ad7f3138b Add Laravel to LibreNMS (#8318)
* Add Laravel to LibreNMS.

* Try to set permissions during initial install and first composer update to Laravel.

* Fix composer.lock
Fix missing db config keys

* Start building v1 layout
Port ajax_setresolution, inject csrf into jquery ajax calls
Layout works, building menu
Partially done.

* Fix device group list
remove stupid count relationships

* Print messages for common boot errors.
Don't log to laravel.log file.
Log to error_log until booted, then librenms.log

* Fix up some issues with Config loading
Start of custom directives

* Custom blade directives: config, notconfig, admin

* Preflight checks
Only load config files once.

* Update the composer.lock for php 5.6

* Menu through routing

* Start of alert menu

* Better alert scopes

* reduce cruft in models

* Alerting menu more or less working :D

* Fix style

* Improved preflight

* Fix chicken-eggs!

* Remove examples

* Better alert_rule status queries
Debugbar

* fix app.env check

* User Menu

* Settings bar (dropped refresh)
Search JS

* Toastr messages

* Rename preflight

* Use hasAccess(User) on most models.
Add port counts

* Missed a Preflight -> Checks rename

* Fix some formatting

* Boot Eloquent outside of Laravel
Use Eloquent for Config and Plugins so we don't have to connect with dbFacile inside Laravel.
Move locate_binary() into Config class

* Config WIP

* Try to fix a lot of config loading issues.

* Improve menu for non-admins removing unneeded menus
url() for all in menu

* Only use eloquent if it exists

* Include APP_URL in initial .env settings

* Implement Legacy User Provider

* Helper class for using Eloquent outside of Laravel.
Allows access to DB style queries too and checking the connection status.

* Fix up tests

* Fix device groups query

* Checking Travis

* copy config.test.php earlier

* dbFacile check config before connecting
Don't use exception to check if eloquent is connected, it gets grabbed by the exception handler.
Ignore missing config.php error.

* Fix config load with database is not migrated yet.

* Remove Config::load() from early boot.

* Use laravel config settings to init db (this prefers .env settings)
Fix bgp vars not set in menu
add _ide_helper.php to .gitignore

* Restrict dependencies to versions that support php 5.6

* Update ConfigTest

* Fix a couple of installation issues

* Add unique NODE_ID to .env

* Correct handling of title image

* Fix database config not loading. Thanks @laf

* Don't prepend /

* add class_exists checks for development service providers

* Fix config value casting

* Don't use functions that may not exist

* Update dbFacile.php

* d_echo may not be defined when Config used called.

* Add SELinux configuration steps
More detailed permissions check.
Check all and give complete corrective commands in one step.

* Ignore node_modules directory

* Re-add accidetal removal
2018-05-09 08:05:17 -05:00
mattie47
e898075c36 device: Add NTP support for Allied Telesis AWPlus products (#8580)
* Add support for Allied Telesis AlliedWare Plus products

- Uses mibs from 5.4.7-2.1 for AlliedWare Plus products
- Updates Legacy AlliedWare mibs
- Added Allied Telesis svg

* Remove unnecessary "trim" from snmpget

* Add new line to end of file

* Minor fixes for commit

* awplus: initial ntp commit

This isn't completely working, however initial patch of it partially working

* awplus: Add NTP support

- Fixed polling issues for awplus. Now offset and delay graphs work.

- html/includes/graphs/device/ntp_*.inc.php
--  Removed extra "\" from MAX count which showed up in Graph legend

- html/includes/graphs/device/ntp_delay.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)

- html/includes/graphs/device/ntp_dispersion.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)

- html/includes/graphs/device/ntp_offset.inc.php
-- Removed rrd minimum (-l 0). This is because offset can be below 0.
--- It's better for the graph to auto scale than set a fixed minimum to display here.

- html/includes/graphs/device/ntp_stratum.inc.php
-- Changed graph to go from 0 to max of 16. NTP Stratum can only be 0 to 16.

* awplus: Add NTP test data

* updated awplus ntp poller

* device: awplus convert NTP poller into seconds

* device: fix NTP graph formatting

* device: Improve NTP formatting

* device: unset awplus NTP variable

* fix formatting

* device: awplus change NTP from numerical OIDs to named

* device: update awplus ntp json tests

* device: fix cisco and awplus ntp database creation

* device: update awplus json
2018-05-08 20:37:06 -05:00
Tony Murray
9279c845f6 feature: Added wireless sensors to about and stats.librenms.org (#8676) 2018-05-08 21:42:52 +01:00
angryp
2d237710e2 Fix for recurring date placeholders in maintenance scheduling form. Only actual for MySQL-community, tested on 5.7.20 and 5.7.22. (#8659) 2018-05-07 23:32:40 -05:00
angryp
82072b3694 Fix for get_alert API method. Tested on MySQL-community 5.7.22 and MariaDB 10.2.14. (#8658) 2018-05-04 23:51:04 -05:00
Aldemir Akpinar
d214f9d5b7 Added new raritan logo (#8581)
* Added new raritan logo

* Cropped logo for the device list, also minified svg a bit more

* updated logo

* Create raritan.svg
2018-04-30 09:58:17 -05:00
Neil Lathwood
80ef4d4324 Fixed clicking notes on device alerts page (#8629) 2018-04-27 11:58:07 -05:00
Tony Murray
c88d28c10a Always update the alert note when acknowledging (#8620)
and unacknowledging
2018-04-27 14:28:08 +01:00
Neil Lathwood
efe8b8858b device: Added detection for Red Lion Sixnet devices (#8576)
* device: Added detection for Red Lion Sixnet devices

* Added state sensors
2018-04-26 08:47:15 -05:00
Neil Lathwood
3d65deaf91 device: Added detection for Corero CMS devices (#8574)
* device: Added detection for Corero CMS devices

* remove files added by accident
2018-04-26 08:46:10 -05:00
Neil Lathwood
1eee6e8195 alert: Added ability to make notes for acking alerts + record who did so (#8433)
* alert: Added ability to make notes for acking alerts + record who did so

* Updated schema

* moved sql file

* Updated from comments in PR

* warning changed to blue

* reset notes + keep notes on ack
2018-04-26 00:00:56 -05:00
Hans Erasmus
163c595494 feature: Added a third graph to unbound with more metrics (#8616)
* Added a third graph to unbound with more metrics

* Update unbound.inc.php

* Reset composer.lock

* Update unbound.inc.php

* Update unbound.inc.php
2018-04-25 20:52:12 +01:00
CZ
492a973e2d webui: Added new TPLINK logo with brand name (#8613)
* added new TPLINK logo with brand name

* Create tplink.svg logo

* Update tplink.svg

* Update tplink.svg
2018-04-25 09:27:37 +01:00
Tony Murray
b41e32c7aa Fix missing use statements (#8614) 2018-04-24 21:20:21 -05:00
CZ
fa035be4c9 New FiberHome SVG Logo (#8601)
- replace PNG with SVG
- adjust testing json data to *.svg
  (fiberhome_switch and fiberhome)
2018-04-23 21:17:51 +01:00
Neil Lathwood
21e26a437e doc: Updated github issues links to community site (#8598) 2018-04-22 23:00:46 +01:00
ospfbgp
9a420a6910 device: Rebranding of Avaya BOSS and VOSS OS' (#8469)
* Update avaya-ers.yaml

Extreme bought avaya network assests so rebranding and moving some files.

* Add files via upload

Extreme bought avaya networking assets and so rebranding to Extreme and adding logos with OS for easier reading when on devices pages

* Update avaya-vsp.yaml

removing .1.3.6.1.4.1.45.3.79.1  This is a VSP 7024xl from avaya.  This is techincally not VOSS but BOSS operating system.  It should be in BOSS and avaya-ers.yaml

* Add files via upload

* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php

* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php

* Update and rename avaya-vsp.inc.php to extreme-voss.inc.php

* Update extreme-voss.inc.php

* Rename avaya-vsp.inc.php to extreme-voss.inc.php

* Rename avaya-vsp.inc.php to extreme-voss.inc.php

* Rename avaya-vsp.yaml to extreme-voss.yaml

* Update and rename avaya-vsp.yaml to extreme-voss.yaml

* Update avaya-ers.yaml

* Rename avaya-ers.yaml to extreme-boss.yaml

* Rename avaya-ers.inc.php to extreme-boss.inc.php

* Update and rename avaya-ers.inc.php to extreme-boss.inc.php

* Update and rename avaya-ers.inc.php to extreme-boss.inc.php

* Update and rename avaya-ers.inc.php to extreme-boss.inc.php

* Update and rename avaya-ers.inc.php to extreme-boss.inc.php

* Update and rename avaya-ers.inc.php to extreme-boss.inc.php

* Update extreme-boss.yaml

* Update extreme-voss.yaml

* Update and rename extreme-boss.yaml to boss.yaml

* Update extreme-voss.yaml

* Rename extreme-voss.yaml to voss.yaml

* Rename extreme-boss.inc.php to boss.inc.php

* Rename extreme-voss.inc.php to voss.inc.php

* Rename extreme-boss.inc.php to boss.inc.php

* Rename extreme-voss.inc.php to voss.inc.php

* Update and rename extreme-voss.inc.php to voss.inc.php

* Rename extreme-voss.yaml to voss.yaml

* Rename extreme-voss.inc.php to voss.inc.php

* Update and rename extreme-voss.inc.php to voss.inc.php

* Update and rename extreme-boss.inc.php to boss.inc.php

* Update and rename extreme-boss.inc.php to boss.inc.php

* Update and rename extreme-boss.inc.php to boss.inc.php

* Rename extreme-boss.inc.php to boss.inc.php

* Update voss.inc.php

* Update boss.inc.php

* Update boss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Update boss.inc.php

* Update boss.inc.php

* Update voss.inc.php

* Update boss.inc.php

* Update voss.inc.php

* Update voss.inc.php

* Rename avaya-vsp_8404c.snmprec to voss_8404c.snmprec

* Rename avaya-vsp_8404.snmprec to voss_8404.snmprec

* Rename avaya-vsp_8284xsq.snmprec to voss_8284xsq.snmprec

* Rename avaya-vsp_7254xtq.snmprec to voss_7254xtq.snmprec

* Rename avaya-vsp_7254xsq.snmprec to voss_7254xsq.snmprec

* Rename avaya-vsp_7024xls.snmprec to boss_7024xls.snmprec

* Rename avaya-vsp_4850gts.snmprec to voss_4850gts.snmprec

* Rename avaya-vsp_4850gts-pwr.snmprec to voss_4850gts-pwr.snmprec

* Rename avaya-vsp_4450gsx-pwr.snmprec to voss_4450gsx-pwr.snmprec

* Rename avaya-ers.snmprec to boss.snmprec

* Rename avaya-ers_1.snmprec to boss_1.snmprec

* Update and rename avaya-ers.json to boss.json

* Update and rename avaya-vsp_8404.json to voss_8404.json

* Update and rename avaya-vsp_8404c.json to voss_8404c.json

* Update and rename AvayaErs.php to Boss.php

* Update Boss.php

* Restore processor_type to avaya-ers in test data

* Update voss_8404c.json

* Update extremeboss.svg

* Update extremevoss.svg
2018-04-21 11:21:14 +01:00
Richard Mayhew
350045995c webui: Replaced old Mikrotik SWOS vendor logo with the correct Mikrotik Logo (#8584)
* Replaced old Mikrotik SWOS vendor logo with the correct Mikrotik Logo

* Uptated RouterOS and SWOS to use a common Mikrotik logo

* Removed unused routeros.svg image file

* Updated test to use new defined icon
2018-04-21 09:56:54 +01:00
Sander Steffann
65b8270936 feature: Added random entropy support for applications (#8555) 2018-04-13 17:42:14 +01:00
Tony Murray
d841625f12 refactor: Refactor database and config init (#8527)
* Refactor database and config init
Connect to the database without loading full config
Load config completely so post-processing is always done consistently.
Erase existing $config when loading, fixes issues in case we load the config twice.
If the database is not connected, don't try to load database settings. (Fixes some db errors on install)
Attempt to remove $config access/modification before init.php
Remove usage of db_name, that might not match the connected database.
Centralize db config loading, so we consistently apply db_test database settings.
Many of these changes are influenced by Laravel port.

* Some safety so we don't assign strings to numeric port field
Smooth out phpunit bootstrap

* Fix a couple of scrutinizer warnings.
2018-04-11 16:15:13 +01:00
Neil Lathwood
c09e44aa94 device: Added support for Dahua NVR (#8542)
* device: Added support for Dahua NVR

* Update dahua-nvr.yaml
2018-04-11 15:34:21 +01:00
Paul Heinrichs
ff0063b515 api: Add option to output graphs as base64 (#8535)
* Allow 'option' param in graph endpoint

* Update lint and update docs

* Uncomment api response

* Add imagedestroy on 'tobias_trim' section

* Add base64 to port endpoints also
2018-04-11 08:02:04 -05:00
Brock Alberry
5d64c5da6d webui: Update Buffalo logo to new style and svg (#8539)
* Delete buffalo.png

* Add files via upload

* remove height/width and compressed
2018-04-10 21:13:53 +01:00
Tony Murray
a21c0bccc4 fix: Fixed device group rule suggest, Auth before init (#8538)
* Fix Auth before init

* Fix Auth before init
2018-04-10 16:56:22 +01:00
theherodied
313b46236e Added Tegile Storage OS detection, storage pool, and project storage. (#8464)
* added Tegile Storage 001

* Tegile fixed whitespace 002

* Added tegile.snmprec 003

* Added TEGILE-MIB

* Tried to fix svg size issue

* Tried to fix svg size issue 005

* Tried to fix svg size issue 006

* Trying dedup 007

* Revert "Trying dedup 007"

This reverts commit b30a3edb49.

* Tried to fix svg size issue 009

* Tried to fix svg size issue 010

* Reverted changes and created new branch

* changed tegile to intelliflash

* changed tegile to intelliflash

* changed tegile to intelliflash 002

* added intelliflash snmprec

* added Json test data

* Update intelliflash.json

* Redid logo

* Update tegile.svg

* changed to intelliflash1. intelliflash2 will come later.

* removed previous commit I made

* Adding project usage

* simplified project calculations

* simplified project calculations

* simplified project calculations

* simplified project calculations

* Cleaned up comments

* Added disco OS if check and removed network over graph

* chenged os detection to sysObjectID. Fixed disco if check.

* Updated json test file

* Fixed intelliflash-pr storage units.

* Updated test data

* Updated test data to remove bgp module
2018-04-09 00:57:22 -05:00
Paul Heinrichs
098c948a04 device: Added Last Mile CTM support (#8478)
* Add Listmile mibs

Created custom lastmile mib

* Add Lastmile CTM support

* Update test description and remove wireless sensor

* Requested changes

Renamed OS

* json test data

* Updated test data
2018-04-08 09:32:41 +01:00
Tony Murray
7250376104 refactor: Don't access $_SESSION directly for Auth (#8513)
* Don't access $_SESSION directly for Auth

* fix style

* add property annotations
2018-04-07 21:55:28 +01:00
Adam Winberg
2ece84495d webui: Improved fdb search (#8251)
* sort fdb search by number of mac addresses/port to show most likely endpoint switchport first in list. Also add IP search to fdb search

* fix style check error
2018-04-07 20:14:28 +01:00
theherodied
a81e2d25cd Added 2n device detection. (#8490)
* Added 2n Intercom mib

* Added 2n png logo

* Added 2n definitions yaml

* changed 2n logo. still needs to be changed later.

* changed 2n logo. still needs to be changed later 2.

* changed os name

* png not working

* trying svg. need to fix still.

* changed to object id detection

* added includes/polling/os/2nipforce.php

* named file correctly 2nipforce.inc.php

* added 2nipforce.snmprec

* added uptime to over graphs

* Changed to HeliosIP OS

* Changed to HeliosIP OS

* Removed Device Traffic from over graphs

* working on review requests 001

* Like so

* Create heliosip.json

* Update heliosip.json

Forgot to clear os cache

* Removed svg dimensions.

* Made 2n logo again.
2018-04-07 10:53:17 -05:00
sorribes22
c22b31506e api: Added lattitude and longitude on devices/device fetch (#8515)
* 'lat' and 'lng' columns added on list_devices()

* 'lat' and 'lng' columns added on device fetch

Helped by https://github.com/laf

* Commit user.name changed
2018-04-07 13:29:46 +01:00
Aldemir Akpinar
18101a93d5 webui: Use toastr for operational messages on alert templates page (#8499)
* webui: Use toastr for operational messages

* Reload template table after insert/update

* Trying to fix travis ci error

* Change error checking to librenms standard
2018-04-07 13:22:08 +01:00
Maurice den Braber
3198826769 Update devices.inc.php to use searchquery (#8509)
Updated devices.inc.php to use new searchquery parameter in stead of hostname.
2018-04-05 22:41:56 +01:00
Tony Murray
85d0e3b98e refactor: Move nested defaults to Config::processConfig() (#8429)
* Move nested defaults to Config::processConfig()

Fixes log_file when users set log_dir for example.

Removed stuff:
mibdir
dp_autocreate
base_url: setting http/https before config.php is loaded...
moved collectd setting to it's own config file

* add base_url mod back.
I thought that since definitions is called before config.php it was useless, but it changes the built in definition between http and https.
2018-04-03 15:53:25 +01:00
vivia11
b71febf372 device: Added WTI-MPC OS and mib (#8492)
* Add icon and initial discovery

* Added more discovery for wti-mpc. Add mib.

* Add snmp data and edit discovery

* Remove discovery due to weird mib[C

* Update wti-mpc.yaml
2018-04-01 21:38:47 +01:00
Tony Murray
214472ba89 refactor: rename array_sort() to avoid function collision (#8494) 2018-04-01 21:27:41 +01:00
Tony Murray
04e24d4671 webui: Alert builder layout optimsation (#8489)
* Alert builder: don't waste space
More space for the ui elements when the dialog is large.
Stop the import button from overlapping things when the dialog is extra small.

* Add divider to alert menubar
2018-03-29 20:57:41 +01:00
Wheel
b1ec1d14f0 webui: Added override default device grouping radius (#8485)
* Override default device grouping radius

Added an option to override the default group_radius 80. Usefull in fullscreenmap

* Update worldmap.inc.php

* Update worldmap.inc.php
2018-03-29 12:05:38 +01:00
vivia11
314a552437 devices: Add Phybridge OS support (#8456)
* OS yaml definition for Phybridge

* Add images and snmp data

* Removed width/height from svg and added more specific discovery for phybridge

* Minimized svg and inverted icon

* added json test file

* update to json file

* Changing os name: phybridge to phybridge-flex

* Update json file to phybridge-flex

* Remove unneeded test data
2018-03-28 23:54:02 -05:00