Commit Graph

437 Commits

Author SHA1 Message Date
Misha Komarovskiy
df731c165c refactor: Rename cisco-vrf to vrf and enable discovery for junos os (#8033)
* device: Enable cisco-vrf discovery for junos os

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

* refactor: Rename cisco-vrf module into vrf

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2018-01-17 12:09:19 +00:00
Neil Lathwood
0a7ec12fd9 fix: Fixed the default fping config + changed variable name (#8060)
* fix: Fixed the default fping config and added docs on caveats to changing timeout

* millisec -> interval

* removed retries config option, no needed

* Update Performance.md
2018-01-09 20:16:48 +00:00
Maikel de Boer
7e2cfb03bc bug: Allow setting array or strings for interface description parsing
bug: Allow setting array or strings for interface description parsing
2017-12-15 20:45:52 +00:00
Tony Murray
c22c879983 fix: Remove faulty memcached code (not related to distributed polling) (#7881) 2017-12-10 20:40:45 +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
Adam Bishop
1c6b7a967f Single Sign-On Authentication Mechanism (#7601)
* Allow the URL a user is sent to after logging out to be customised
This is required for any authentication system that has a magic URL for logging out (e.g. /Shibboleth.sso/Logout).

* Allow auth plugins to return a username

This is a bit cleaner than the current auth flow, which special cases e.g. http authentication

* Add some tests, defaults and documentation

* Add single sign-on authentication mechanism

* Make HTTPAuth use the authExternal/getExternalUsername methods

* Add to acknowledgements

* Add reset method to Auth
2017-11-28 20:40:17 -06:00
Tony Murray
fb45f00340 fix: ping fails on servers that don't set PATH in cron (#7603)
* fix: ping fails on servers that don't set PATH in cron
Find the full path to fping and persist it in the database.
Adds the ability to persist settings with Config::set()

* Add ability to set webui settings.
No display of for paths, because it would be inconsistent.
2017-11-01 21:56:47 +00:00
barryodonovan
e968e37cdc docs: Updated default list of modules in poller and discovery support docs. (#7532)
* updated default list of modules in poller and discovery support docs.

*  changed PollerSupport.md and DiscoverySupport.md to relect config.php as the correct location for local per-os module overrides

* removed 'tnms-nbi' module from docs and from defaults file. Removed 'wifi' from docs.
2017-10-26 11:43:09 +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
FTBZ
163d0b4f88 fix: Errors in the documentations for CentOS 7 (#7510)
* fix: Erros in the documentations for CentOS 7

* fix: Erros in the documentations for CentOS 7

* fix: Erros in the documentations for CentOS 7

* fix: Erros in the documentations for CentOS 7

* Some corrections to make docs work as intended.

* re-add httpd_execmem for nginx
2017-10-18 14:38:56 -05:00
Yunchih Chen
82fb20cc19 feature: Configurable 95th percentile (#7442)
See issue #7406 for detail.
2017-10-11 13:21:11 +01:00
Neil Lathwood
1be550826e api: Added ability to supports CORS for API (#7357)
* Update defaults.inc.php

* api: Added ability to supports CORS for API

* added acknowledge

* Update Configuration.md
2017-09-21 18:07:31 +01:00
Neil Lathwood
f97b0b87a3 refactor: Updated ldap auth to allow configurable uidnumber field (#7302) 2017-09-08 12:04:59 -05:00
Neil Lathwood
edae33507a feature: Added script to generate config for new OS (#7161)
* feature: Added script to generate config for new OS

* scrut fixes
2017-09-04 21:38:09 +01:00
yac01
38cf424417 webui: Added ability for users to configure selectable times for graphs (#7193)
* feat:add links for librenms graph

* added widescreen config
2017-08-25 20:11:01 +01:00
Tony Murray
5f8729b1a0 refactor: update the default config generated by install.php (#6914) 2017-06-29 07:09:22 +01:00
rzig
1ba6381d61 security: Enable support for secure cookies (#6868)
* Enable secure cookies for authentication

Enables secure cookies for authentication when HTTPS is used.

* Add line with example secure session cookies

* Fix comment line that's too long

* Remove session secure cookie config

* Added secure cookie config to init.php

Commented out because having this enabled will prevent the server from sending cookies over HTTPS.

* Enable secure cookies if config value provided

* Make code formatting consistent

* Remove secure cookie config

* Use $config['secure_cookies'] to set cookies

* Add default option to turn secure cookies on

* Fix formatting issues

* Set secure cookies to default to false

* Add info about secure cookies

* Fix formatting

* Remove trailing whitespace

* move secure cookie default config to defaults.inc.php

* Remove trailing whitespace

* Fix formatting

* Remove empty line by rrd config

* Remove whitespace
2017-06-26 14:21:21 +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
Olen
127c4b84bd feature: Added Irc ctcp support to IRCBot (#6766)
* Handle basic CTCP-support

* Add an option to toggle ctcp on and off in the config

* Fix whitespace-issue

* Fix null/NULL

* Updating docs, default config and fixing a few whitespace-issues

* Fixing the last whitespace-issues.  Now with "pre-commit.php" as a standard...
2017-06-05 22:45:18 +01:00
crcro
5af3048a76 fix: Ensure rrdtool web settings aren't overwrote by defaults (#6698)
* fix for web settings

* revert db config

* revert description

* ensure rrdtool path is set
2017-05-30 19:44:40 +01:00
Tony Murray
b6e18db766 fix: page/graph load speed: part 1 (#6611)
* fix: page/graph load speed: part 1
Speed up load_all_os() by caching the full $config['os'] array
Function time goes from 1.13648s -> 0.00073s
The cache is updated during discovery, but only if it is >22hrs old.
Additionally, the cache is not used and a full yaml load is forced if the cache is >24hrs old.
The cache time is controlled by $config['os_def_cache_time'], I don't see any reason anyone would change that time.

* Delete Session.php

* Include the cache directory.
2017-05-10 08:57:10 +01:00
Neil Lathwood
6734e84382 feature: Added ability to whitelist ifDescr values from being ignored with good_if (#6584)
* feature: Added ability to whitelist ifDescr values from being ignored with good_if

* added ras to enterasys yaml
2017-05-05 15:18:33 -05: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
Tony Murray
e521b39a7d refactor: move rfc1628_compat into os yaml (#6424) 2017-04-17 21:57:27 +01:00
Xavier Beaudouin
0997ebaa10 Fix #6187 with some missing definitions. (#6403)
* 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 !

* Fix missing information for the TNMS #6187
2017-04-12 13:26:12 -05:00
Tony Murray
b1a414e785 feature: support non-standard unix socket (#5724)
* Add support for custom MySQL unix-socket

* NULL must be lowercase!

* Naive edit of html/install.php

* fixup

* Refactor dbConnect
Use it everywhere

* $config needs to be global
Don't need to set $database_link

* small cleanups
2017-04-06 22:02:37 +01:00
Neil Lathwood
90be6d1f68 feature: Added cisco-vpdn to poller modules (#6300) 2017-03-30 22:13:36 +01:00
Falk Stern
affe5090f4 feature: Send collected data to graphite server (#6201)
* Initial support for graphite

* Enable graphite include

* fixed typos.

* Fixed port naming to graphite metric names

* Added documentation for Graphite

* added documentation for graphite

* fixed style

* replace / with _ in interface names for graphite

* sets default graphite port

* adds rrd-name tags to the metric, otherwise metrics get lost

* add suggested storage schema for graphite

* add whitespace

* Updated to show some output

* bad english
2017-03-22 10:35:44 -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
VVelox
bbbb70e2f9 newdevice: ignore FreeBSD Linux compat procfs and sysfs mounts (#6220)
* ignore FreeBSD Linux compat procfs stuff

* Add sysfs mounts
2017-03-22 00:58:03 -05: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
Neil Lathwood
dde32667f0 removed default values for rrd step + heartbeat, rely on db (#5997) 2017-02-24 18:40:16 +00:00
Neil Lathwood
fad5aca1b7 feature: Allow customisation of rrd step/heartbeat when creating new rrd files (#5947)
* feature: Allow customisation of rrd step/heartbeat when creating new rrd files

* revert defaults

* added docs + webui config option

* Move RrdDefinition to an Object to make them easier to create and remove the possibility of typos.

* Fix style/lint issues and missing use statements

* 3 more missing use statements

* updated doc + moved schema file
2017-02-23 22:45:50 +00:00
Neil Lathwood
0b3451bd27 refactor: Updated some default disco/poller modules to be disabled/enabled (#5564) 2017-01-27 23:31:03 +00:00
David Bell
5dd030f438 refactor: Added config option for database port (#5517) 2017-01-27 23:16:04 +00:00
Richard Mayhew
998750ddd9 WebUI: Allows one to view a map of the SNMP location set for a device (#5495) 2017-01-24 09:53:25 +00:00
Aaron Daniels
de45d8d6b4 newdevice: Added loadbalancer information from F5 LTM (#5205) 2017-01-19 08:19:11 +00:00
Neil Lathwood
da5783d917 feature: Add mysql failed query logging + fixed queries that break ONLY_FULL_GROUP_BY (#5327)
* feature: Add mysql failed query logging + fixed queries that break ONLY_FULL_GROUP_BY

* fix all schema errors and update system
2017-01-07 11:32:38 -06:00
Neil Lathwood
f5ce3c509a Revert "Trust PHP session and remove remember me cookie" (#5252) 2016-12-27 20:37:03 +00:00
Eldon Koyle
3b198243d5 refactor: Trust PHP session and remove remember me cookie (#4608) 2016-12-26 23:11:00 +00:00
barryodonovan
4898617ef5 newdevice: removed all references to 'multimatics' and instead added generex OS 2016-12-21 08:01:01 +00:00
Søren Rosiak
17f5cfef90 Revert "F5 LTM" (#5199) 2016-12-20 09:30:49 +00:00
Aaron Daniels
efa0747564 newdevice: Added additional support for F5 BigIP LTM objects 2016-12-19 19:50:44 +00:00
Neil Lathwood
8cc66ece9b refactor: update some devices to disable poller/disco modules by default (#5010) 2016-12-12 14:26:06 +00:00
Neil Lathwood
7bb329661f Set allow_duplicate_sysName to be false by default (#5027) 2016-11-27 22:03:01 +00:00
Tony Murray
9a33464c52 refactor: Centralize includes and initialization (#4991) 2016-11-21 20:12:59 +00:00