Commit Graph

515 Commits

Author SHA1 Message Date
SourceDoctor a1f4b1b88f Get Colors from getColorState function, for Transport Slack (#10957) 2019-12-18 23:49:22 +01:00
SourceDoctor b24bf02c2a Move alert state color definition to config (#10958) 2019-12-18 11:08:32 +01:00
SourceDoctor f835198a45 Globalize getColorForState function (#10944)
* globalize getColorForState function
2019-12-17 22:27:08 +01:00
cjwbath c2603e789f More appropriate state colours for MS Teams alerts (#10911)
* More appropriate state colours for MS Teams alerts
* Split colour lookup to new function to keep Code Climate happy
* Remove bits of whitespace
2019-12-13 16:51:34 +01:00
Tony Murray cd044addc4 Add authentication category (#10880) 2019-12-03 17:37:02 +01:00
Tony Murray ddff6dba6d Avoid null device error in deviceLink (#10882) 2019-11-26 08:14:09 -06:00
CrazyMax 58459ff0c5 Detect if LibreNMS is installed from the official Docker image (librenms/docker#46) (#10879) 2019-11-25 14:05:34 +00:00
Tony Murray 2de39f58b3 Bump version to 1.58 2019-11-25 04:54:18 +00:00
PipoCanaja 1ab645c75c Fix regression on HW discovery for Cisco Catalyst chassis (#10877)
* Catalyst fix for HW

* Try to avoid issue with stacks, chassis or standalone boxes

* formatCiscoHardware iosxe for humans

* codeclimate
2019-11-24 01:17:00 +00:00
louis-oui ef562f607e LDAP Add option to authenticate user independtly of OU (#10873)
* Add option to authenticate user independtly of OU
* Set config option in webui
* Compatibility with bind username option
* ran ./lnms translation:generate
* update doc
2019-11-22 19:29:47 +01:00
louis-oui ab2f909a9d Fix LDAP slow login and unable to login (#10872)
* Fix LDAP slow login
* Keep getUserList as is and implement fix in getUser function
* Split getUser function for CodeClimate
* Rewrite GetUser
* Fix no ldap auth when bind user configured - https://community.librenms.org/t/ldap-authentication-problem-with-webui/6115/2
2019-11-22 15:38:42 +01:00
louis-oui f19bbcab41 Revert "Fix LDAP slow login (#10760)" (#10855)
This reverts commit baab9596a0.
2019-11-20 22:58:06 +00:00
louis-oui baab9596a0 Fix LDAP slow login (#10760)
* Fix LDAP slow login
* Keep getUserList as is and implement fix in getUser function
* Split getUser function for CodeClimate
* Rewrite GetUser
2019-11-19 14:16:07 +01:00
PipoCanaja bf181b9dc2 Added support for routing table collection in discovery (#10182)
* Clean broken VRF lite code
* Change DB table for route discovery
* Add VRF simple support
* add port_id to db and discovery
* static-fy the translation arrays
* sort and search cleaning
* Sorting refactor and validation
* formatItem shortened
* Handle ifIndex==0 meaning no next hop defined (MPLS)
* Sync all create/updates
* purge in daily
* remove old route table
* get rid of inetCidrRouteNextHop_device_id
* fix wonky column orders
* add route snmprec
* fix sorting by interface
* Move to new config
* rename to route the new table
* Properly display ipv6 compressed addresses
* Translation before merge ./lnms translation:generate
* Update manifest
2019-11-17 16:30:43 +01:00
Tony Murray 138dc24f64 Fix system style setting (#10820) 2019-11-17 05:13:48 +00:00
Tony Murray 4aff04041b Fix DeviceCache method calls (#10823)
missed from when it was a static class...
2019-11-15 22:48:42 +01:00
Tony Murray dec9a498ee Updated device cache support (#10795)
* Device Cache
also some additional device related models

* attribs from cache

* replace common attribute functions

* remove legacy cache usage
tidy up some collection manipulation
remove some unused or single use functions

* cleanup some items

* always return a device, to prevent bugs

* clear device cache when testing after each test

* fix double assignment

* Clean up function to take advantage of null object
2019-11-14 21:56:06 +00:00
Chris A. Evans 5bdfd57b84 Add check_oracle service include file and make 'packet_loss_' macro alerts not use radio buttons (#10807)
* - Adjust Alerting Query Builder logic to not use boolean/radio buttons for 'packet_loss_' macros
- Add nagios check script for "check_oracle", which fails on the fallback logic because it does not accept IP/hostname via the '-H' flag

* Update check_oracle.inc.php
2019-11-14 18:45:00 +00:00
Jozef Rebjak c69efb3444 Added support for Mikrotik LTE Modem (#10805)
* Added support for Mikrotik LTE Modem

* Deleted mistaken file

* Travis fix

* Another Travis fix
2019-11-13 11:31:32 +00:00
SourceDoctor ce628399a9 Allow user activation/deactivation (MySQL auth) (#10511)
* user deactivation feature

* update db_schema.yaml

* travis fix

* readd sqlfile with alter statement

* ..

* revert force push

* combine all queries

* fix query

* user enable/disable only visible on mysql authorization

* Update form.blade.php

* Update index.blade.php

* disable 'enabled' on own profile

* bootstraping checkboxes
2019-11-08 06:32:57 +00:00
Vitali Kari 76318c8811 fix broken relationship of local Service ID with SDP Service ID (#10713)
* fix broken relationship of local Service ID with SDP Service ID

* just trigger scruntinizer
2019-11-02 13:44:48 +01:00
mendoza-conicet 0ea346113a Add Headers and body to API Transports (#10614)
* Add Headers and body
add PUT Method

* fix check length of headers

* bad commit

* style check

* better body description

* Descr and RFC enforcement on 'PUT' and body

Only PUT can accept a statically defined body. GET will ignore it (RFC) and POST body is generated with the parameters.

* Process the variables as well for headers

* Update Api.php

* update docs
2019-11-01 09:00:26 +01:00
Tony Murray 48323262a5 Additional release notes categories (#10761) 2019-10-29 15:01:23 -07:00
Tony Murray 00baac54df Bump version to 1.57 2019-10-28 17:40:17 -07:00
Tony Murray 9b4406ec9e Add Graylog settings (#10740)
* Add Graylog settings
Fix order of settings
Don't clobber text input when validation fails
fixed spacing for setting reset/undo buttons and help

* fix style
2019-10-26 00:29:47 +00:00
Tony Murray e6423852ef Remove $_SESSION usage, except install (#10745)
* Remove $_SESSION usage, except install
Fixes issue with device debug capture
Removes secure_cookies setting, use the .env variable SESSION_SECURE_COOKIE instead.  Reminder secure cookies requires cookies are transported over https, if everything is already transported via https, the setting won't make a difference.

* Fix availability map controls
2019-10-26 00:29:12 +00:00
PipoCanaja d72c722075 Alerts - Add features + serial in alerts-> table (#10747)
* Alerts - Add features + serial for device

* doc
2019-10-26 00:28:36 +00:00
Tony Murray fe0506c04c Add missing import (#10741) 2019-10-24 13:37:18 +00:00
Jellyfrog d3994b3671 Return directly if user doesn't have access (#10730) 2019-10-21 17:04:23 +00:00
Tony Murray 0c1060f397 Fix setting smtp server (#10731)
Also allow email format that includes display name for email types
2019-10-21 14:41:57 +00:00
Tony Murray 9b994d0562 Support cellular RSSI on IOS XE (#10726)
Move Cisco cellular RSSI to a trait and add it to IOS XE
2019-10-21 11:38:21 +00:00
Ngo Quang Hoa caaa6a97bc Update Alerta.php (#10684) 2019-10-21 00:50:11 +00:00
Tony Murray 1d7347dd62 Validate config schema, add types to all (#10723)
* Vaildate config_definitions.json schema

* finish adding types and other cleanups
2019-10-20 23:08:40 +00:00
Tony Murray 70bef05c97 Allow different config sources to completely override a setting from the previous (#10719)
* Allow different config sources to completely override a setting from the previous
This is an issue with array settings.  The previous code would merge the two arrays together, possibly leaving artifacts behind.

* Missed one
2019-10-19 05:24:07 +00:00
Tony Murray 31dad0aaa7 Add lnms commands to get and set config settings (#10534)
* add lnms commands to get and set config settings
lnms config:get and lnms config:set
Note: you cannot override settings in config.php

* Update to check setting exists and value validation rules.
2019-10-17 17:22:43 +00:00
hartred 3c25551a93 Update Slack.php add emoji and username support (#10695)
* Update Slack.php add emoji and username support

* Update

* Update
2019-10-16 23:52:36 +02:00
Tony Murray 699aa8a042 Consolidate configuration settings and implement dynamic webui settings (#9809)
* initial db/defaults dump

* numeric values

* Remove $config['time']

* Use config_definitions.json

* try setting definition as a complete array

* a little more

* fix format

* WIP converting dynamic setting pages

* rewriting the webui

* remove legacy and add translations

* finish email section

* improve navigation
update js a bit

* Import the remaining existing settings

* Update backend still some wip
migration

* fix config loading (db not overriding defaults)

* some cleanup

* more array collapsing

* update settings

* Settings search

* add purge settings to ui, order groups and sections

* collapse more arrays

* Auth definitions WIP

* remove needless slash escapes

* add warning to json

* moving settings from defaults.inc

* remove slow_statistics

* Move rrdtool settings to the poller section

* Use translations more consistently

* removing more settings from defaults.inc.php

* show setting name in tooltip

* allow help text to be shown on mobile

* disable settings that are set in config.php

* Implement undo and reset to default.

* Vue.js functional

* Vue.js WIP

* Implement tabs component

* accordion WIP

* lodash ver update

* two items

* Accordion somewhat working

* hash navigation

* Refine Accordion

* Fix up tab styling a bit

* Cleaner tab selected property
Hide html while loading

* spinner?

* Icon support
property for accordion to active

* WIP

* Tabs/Sections from ajax

* Setting Component skeletons

* Dynamic Component resolution

* Basic functionality

* toggle class

* Refactor components

* translate tabs and accordions

* simple array attempt

* improve readonly tooltip

* array styling

* array value editing

* organize snmp info

* Handle initial tab/section in url

* Use Laravel to parse tab/section, dump old

* Draggable array entries

* v-tooltip, for clickable (and touch) help tooltips
disable draggable

* Navigation WIP

* Navigation WIP

* groups computed

* filter settings

* fix event reference

* vue.js i18n initial

* missing description = just setting name

* en fallback

* tidy up the language support and js generation

* persist value to db

* fix issue with 0

* Delete settings from DB instead of setting them to default

* ldap-groups
fixup style

* Default dashboard selection

* fix array of options instead of object

* allow custom validation for settings

* translate options in SettingSelect

* SNMP v3 WIP

* fix setting arrays

* Split persist out of set

* Hook up events for SNMP v3 Auth
correct Config::persist behaviour with arrays

* dependent settings (primitive for now)
actually update the settings values in the LibrenmsSettings component

* more complex "when" behaviour

* remove un-needed seeder

* add poller_modules.cisco-qfp

* remove en.json (disable warning)

* don't set default for log_dir or log_file, otherwise it won't be processed correctly

* Fix module order
add some missing settings

* more config corrections

* correct graphs
correct loading values set to null (although it should have no difference)
remove project_name_version

* Add nfsen settings.  Docs are very confusing, so might have flubbed something
remove option for array definition of select option as numeric indexes messes it up

* Correct more upstream config differences

* Config cleanup after a bunch of merges.

* Fixes

* add version tags to js/css files
remove old js

* Print out full settings list read-only

* Add http_proxy setting
fix indents in config_definitions.json

* repeaters default is 0 (aka 20)

* cleanups

* rewrite the dynamic config docs

* add language docs

* Don't show snmp v3 auth add/remove if disabled by config.php
2019-10-16 21:22:05 +00:00
Tony Murray 750b19f3e8 Fix issue when non-existent plugin is enabled (#10699) 2019-10-16 21:18:17 +00:00
Tony Murray 63442e8b4a Refactor tests (#10625)
* Refactor tests
Boot Laravel for all tests.
Config use private static property for storage instead of global

* Backup/restore modules

* disable snmpsim log

* Fixing DBTestCase

* Fix macros loading to the wrong place

* trap and other tests should check if db is available

* don't include snmp.inc.php if mock.snmp.inc.php is already included...

* fix migration

* if we don't reset the db, run migrations at least.

* set vars for migrate too

* Fix style

* ignore issues with undefined indexes in legacy code
2019-10-13 13:40:38 +00:00
dGs- 80e138fa40 removed the ksort block as it was not working (#10674) 2019-10-11 01:32:25 +00:00
jozefrebjak f07651a2eb Added Teltonika Rutos-2xx wireless sensors (#10646)
* CodeClimate Fix

* Added Teltonika Wireless Sensors

* Removed HiveOS local changes

* cleanup

* Update Rutos2xx.php

* typo fix

* Blank Line Fix

* Travis FIX

* White Space Fix
2019-10-07 13:16:51 +00:00
Tony Murray be04388137 Store config data serialized (#10651)
* Store config data serialized
This way we can store null, booleans, and more reliably.

* Use model to get the mutated output.

* fix whitespace and unused function

* use json_encode/decode and casts
migration to transfer

* json_encode JSON_UNESCAPED_SLASHES

* Use JSON_UNESCAPED_SLASHES.  That is only relevant if you are printing into an HTML page.

* pre-encode the seed...

* filter other fields besides config_value
2019-10-06 21:51:22 +00:00
Tony Murray 7482422614 When sending email alerts use CRLF for windows clients (#10563)
* When sending email alerts use CRLF for windows clients

* Convert hard \r\n into line return in templates

* there is no down really
2019-10-02 14:08:10 +00:00
Tony Murray ef4e6de867 Fix device_groups in alert/group builder (#10643) 2019-10-02 13:54:54 +00:00
bewing 74724a4618 Add redis sentinel support to dispatcher service (#10598)
* Add redis sentinel support to dispatcher service

* Update docs for redis sentinel support

* Don't re-raise python exception in service
2019-10-01 06:51:07 +00:00
Tony Murray 4c075a3484 Bump version to 1.56 2019-09-30 11:07:05 +00:00
pobradovic08 91ac7aff7f Removed ambiguity in Component filter query (#10638)
In case we try to filter the component by it's `id`, we ran into ambiguity issue because both `component` and `component_prefs` tables have column `id`. Fixed by filtering explicitly on `component` table.
2019-09-29 19:23:53 +02:00
soto2080 2139eed306 Add EdgeCore ECS4110-28T Support (#10525)
* Add ECS4110 cpu usage

* Add cpu usage oid for ECS4110
* TESTED

* Fix EdgeCore ifOperStatus does not follow the Cisco convention
* Since EdgeCore use "lowerLayerDown" in ifOperStatus when port is unplugged
* On the other way, Cisco use briefly "down".
* So change "lowerLayerDown" to "down" to workaround the bug that will make port always show as up/up

* Refactor Edgecos cpu usage oid
* Codeclimate is unhappy about it maybe the refactor will make it happy.

* Add EgdeCore ECS4110 MIB

Just got MIB from EdgeCore

* Refactor Egdecos Mempool

* a bit refactor of Mempool discover and polling
* add support for ECS4110 via MIB

* Modify ECS-4110 MIB

* MODULE-IDENTITY change from ECS4110-52P-MIB to ECS4110-MIB
* strip off syntax error part(time range)

* Add EdgeCore ECS-4110 OS polling

* polling OS and Hardware via MIBs

* Fix typo

* Sorry that I am dazzled

* Fix Syntax Check

* Codeclimate is a bit aggressive

* Update edgecos.inc.php

* Update edgecos.inc.php

* Revert "Fix EdgeCore ifOperStatus does not follow the Cisco convention"

This reverts commit 27971b34a8.

* Add snmprec file for unit testing.

* Create edgecos_ecs4110-28t.json
2019-09-28 03:18:24 +00:00
pobradovic08 f672c12bcc discovery: Added Cisco QFP processor (#10622)
* Added Cisco QFP processor discovery

* Fix QFP index loop variable name

* Add test data for IOS-XE processors (from ASR1001-HX)

* set the right variable
2019-09-28 01:22:06 +00:00
Tony Murray 31eced4875 Fix creating device groups issue (#10521)
* Fix creating device groups issue
Not being able to write the device relationships file should not be fatal

* remove @

* bootstrap.php calls this, Laravel isn't booted yet

* d_echo does not include \n
2019-09-25 06:41:18 +00:00