Commit Graph

1697 Commits

Author SHA1 Message Date
Tony Murray 9962fd8b2f Changelog for 1.53 2019-07-01 00:07:00 -05:00
N-Mi 5021eeb864 Fix markdown in Changelog (#10387)
* Fix markdown in Changelog.md

* Escape html tag
2019-06-29 20:33:49 -05:00
Kevin Krumm 82ea43a5e1 docs: update and fix link for Migrating from Observium (#10377)
docs: update and fix link for Migrating from Observium
Fix the link and point to web archive. And added notes.
2019-06-25 22:09:08 +02:00
Martijn Schmidt 048fd0f6ed Remove guessed limits for some health sensors, documentation for sensor classes (#10327)
* Default to null for group yaml discovery.

* Update test data for a154bda yaml group null fix.

* Changes to guessed limit functions for sensors.

Original behaviour
===================

The file `includes/discovery/functions.inc.php` contains
`sensor_limit_low()` and `sensor_limit()` which both attempt to
guess a sane value for sensors when no explicitly defined
low_limit or high_limit can be found during discovery.

Both switch control structures used in those two functions
have empty case statements which means that if one of those matches,
it's going to fall through and run the code for each subsequent
case until a `break` is reached.

For example, when we call `function sensor_low_limit(dbm, -13.036)`
it will return the value `-12.3842` instead of `null`. That is
because there will be a match at `case 'dbm':` which falls through
all the way to `case 'cooling':`, where it performs
`$limit = -13.036 * 0.95` before hitting a `break`.

Changed behaviour
===================

Removed `power_consumed` and `count` guessed low_limit and
high_limit, I personally added those sensor classes in PR #9471
when I didn't understand that a switch control structure has
fall-through behaviour so I can guarantee that guessing limits for
those is a mistake on my behalf. It should not be there, only
power_factor can have guessed limits. Apologies for the issue,
I'm still a beginning programmer!

Furthermore, I removed guessed high_limit values for `current`
and `power` because these are supposed to draw higher values as
more devices or components are installed on for example a PDU or
a chassis.

Finally, I removed guessed low_limit and high_limit for `dbm`
sensors, there is a much too large variance in power budget on
commercially available optical transceivers for there to be a
sensible window where you can guess these values.

* Documentation on adding sensor classes.

* Update test data - sensor limit changes @ 30212d2
2019-06-21 09:03:27 -05:00
VVelox 6575042f5f go through making lots of the docs more lint happy (#10342)
* clean up all but header incrementing in Creating-Transport.md

* make Device-Dependencies.md mdl happy

* make Entities.md as mdl happy as possible... one long table line left

* make mdl as happy as possible for index.md

* clean up Introduction.md as much as possible

* minor formatting cleanup... move each icon onto its own row

* make ack and notes the same style

* clean Macros.md up

* clean Rules.md up as much as possible

* tweak one line a bit to get it to format a bit nicer

* a bit more format tweaking, making sure it does not sure with >

* clean up as much as possible for Templates.md

* make Testing.md as mdl happy as possibly

* clean Transports.md up as much as possible

* clean as many issues as possible for Alerts.md

* clean up as much of ARP.md as possible

* clean up as much as possible for Bills.md

* make DeviceGroups.md as mdl happy as possible

* cleanup Devices.md

* make as mdl happy as possible Inventory.md and index.md

* mdl cleanup for Logs.md and PortGroups.md

* make Ports.md and Routing.md as happy as possible

* clean up Services.md, Switching.md, and Systems.md as much as possible

* more markup cleanup

* lots more md cleanup udner Devloping/

* reapply bits from #10343 that accidentally got removed when merging
2019-06-20 13:53:44 -05:00
Tony Murray 1a60c44eb0 Device groups rewrite (#10346)
* Device Groups rewrite
Updated web ui
Static or dynamic groups allowed
Alert rule query builder
Translation support
Permissions support

* cleanup, make relationship save, and validate it

* builder WIP

* rules builder and rules saving/loading

* Parse query builder to Laravel Fluent query

* Upgrade existing groups when editing.
Properly update only dynamic groups when polling.

* remove unused old code
Update API and other places to use Eloquent

* debug output in poller restored

* Fix up some things
creating static
improved validation
fix js error on creation
Fix static groups in polling

* hide pattern for static group

* Implement authorization
Use in the menu too

* update schema

* fix rollback

* Don't abort on invalid queries

* fixes to query builder

* add test data, looks like macros aren't handled (omitted them because groups don't use them generally)

* Add macro support for QueryBuilderFluentParser

* add test for macro that accepts value

* More space in forms
Retain rules when converted to static
no duplicate names allowed

* Better error feedback
Update related devices on save

* Add button icon

* format

* update docs

* fix tests

* Fix some QueryBuilderFluentParser issues with OR
updated/more test data

* Show device groups runtime
fix querybuilder.json format

* Store table joins in the rules to minimize polling time
Update group joins in daily.sh (and when they are saved)

* Update daily.php

* Add units to time
2019-06-19 16:01:53 -05:00
JoshWeepie d8931e1946 Fixed multiple typos in SNMP Trap doc (#10343)
* Fix multiple typos in doc
* Update SNMP-Traps.md
2019-06-17 23:23:44 +02:00
Tony Murray c2b09b8f80 Revert "Rewritten device groups (including static) (#10295)" (#10340)
This reverts commit cfc51d51f5.
2019-06-16 21:52:57 -05:00
Tony Murray cfc51d51f5 Rewritten device groups (including static) (#10295)
* Device Groups rewrite
Updated web ui
Static or dynamic groups allowed
Alert rule query builder
Translation support
Permissions support

* cleanup, make relationship save, and validate it

* builder WIP

* rules builder and rules saving/loading

* Parse query builder to Laravel Fluent query

* Upgrade existing groups when editing.
Properly update only dynamic groups when polling.

* remove unused old code
Update API and other places to use Eloquent

* debug output in poller restored

* Fix up some things
creating static
improved validation
fix js error on creation
Fix static groups in polling

* hide pattern for static group

* Implement authorization
Use in the menu too

* update schema

* fix rollback

* Don't abort on invalid queries

* fixes to query builder

* add test data, looks like macros aren't handled (omitted them because groups don't use them generally)

* Add macro support for QueryBuilderFluentParser

* add test for macro that accepts value

* More space in forms
Retain rules when converted to static
no duplicate names allowed

* Better error feedback
Update related devices on save

* Add button icon

* format

* update docs

* fix tests
2019-06-16 08:27:22 -05:00
Tony Murray 0baeb07754 Split install steps into git clone and composer install (#10249)
* Split install steps into git clone and composer install
This gives the admin a little more knowledge about how to maintain the system, showing them composer_wrapper.php and su - librenms
They will get errors if composer_wrapper doesn't work because of a proxy or no internet connection

We lose stats on packagist.org (https://packagist.org/packages/librenms/librenms/stats)
If we wanted to keep stats, we could use:
```
COMPOSER_ALLOW_SUPERUSER=1 composer create-project --no-dev --no-install --keep-vcs librenms/librenms librenms dev-master
```
not sure that is worth it.

* fix composer_wrapper.php path
2019-06-12 00:21:32 -05:00
jozefrebjak fd7defd5ec Example SNMP Trap handler class (#10311)
* Update SNMP-Traps.md

* Update SNMP-Traps.md
2019-06-12 00:19:55 -05:00
jozefrebjak 47be799234 update syslog.md (#10309) 2019-06-05 22:21:53 -05:00
Llarian 9c837bee87 Added aggregate config option to Billing 95th percentile calculations (#10202)
* Added configuration options to aggregate input and output bits before making 95th percentile billing calculations

* Changed aggregate to per-bill instead of global.  Added config options for making aggregate the default selected option.  Refactored out mres() calls in touched files.  Changed to Config::get where appropriate.

* Fixed documentation typo

* Fixed scope of aggregate default config option to be under billing
2019-05-27 21:44:02 -05:00
Tony Murray c5d48592c1 Changelog for 1.52 2019-05-27 20:20:11 -05:00
Michael Ducharme 38bbf0b55b Instructions for logstash (#10252)
* Instructions for logstash

How to configure logstash to send syslog to LibreNMS

* remove silly ssh syntax tags

* Fixed date formatting issue for afternoon times
2019-05-24 07:36:36 -05:00
Tony Murray 604a200891 Python dispatcher service v2 (#10050)
* Refactor LibreNMS service
add ping

* services ported
remote legacy stats collection

* alerting

* implement unique queues

* update discovery queue manager

* remove message

* more cleanup

* Don't shuffle queue

* clean up imports

* don't try to discover ping only devices

* Fix for discovery not running timer

* Update docs a bit and and add some additional config options.
Intentionally undocumented.

* Wait until the device is marked up by the poller before discovering

* Handle loosing connection to db gracefully

* Attempt to release master after 5 db failures

* Sleep to give other nodes a chance to acquire

* Update docs and rename the doc to Dispatcher Service to more accurately reflect its function.

* add local notification
2019-05-20 11:35:47 -05:00
jozefrebjak 2221eead51 Updated location of graphs in documentation(#10238) 2019-05-20 13:50:12 +02:00
PipoCanaja f9527ba5d2 Update Installation-CentOS-7-Apache.md (#10191) 2019-05-13 23:18:04 -05:00
Tony Murray 9ede688d13 Replace legacy menu with new Blade generated one (#10173)
* Remove legacy index php file

* fix routing page missing data

* WIP

* fix $navbar global usage

* remove global use of $locations

* ObjectCache again...

* move vars.inc.php to init.php for legacy ajax

* navbar is more local than I thought before.  Fix it.

* Fix some sensors tables escaping

* restore custom menu functionality, but with blade
and docs

* cleanup

* tidy menu @if checks

* Fix up the rest of the global variables and remove print-menubar.php

* consolidate some counting in the menu

* filter out empty custom port descr types

* Fix up custom port groups

* Fix up apps menu

* Fix services menu when all are ok

* Limit cached data to the user it is for

* Fix style

* A few clean ups

* fix pseudowire bug
2019-05-10 11:02:39 -05:00
pobradovic08 2d246097d4 Documentation: Fix broken links and anchors (#10194)
* documentation: Fix broken Templates.md link

* Update AUTHORS.md

* docs: Fix broken anchor in Fast-Ping-Check.md

* docs: Changed Alerting link in Configuration.md
2019-05-06 21:50:45 -05:00
Tony Murray a46fc9d329 Fix alerting redirect (#10193) 2019-05-06 17:19:40 +02:00
Leo Winter 4c8e8b72fc docs: add 'software-properties-common' (#10092)
* Add 'software-properties-common'

Running 'add-apt-repository universe' only work with 'software-properties-common' already installed.

* Update Installation-Ubuntu-1804-Apache.md
2019-04-29 22:17:04 -05:00
Tony Murray 9d47476e31 Changelog for 1.51 2019-04-29 16:36:19 -05:00
pobradovic08 b774bb6900 Updated Code-Structure.md (#10156)
* documentation: Fix html/includes directory path

- Changed `html/includes` to `includes/html`
- Added overview of directories mentioned on the page

* documentation: Cleanup Code-Structure.md

- Reorganized document
- Added `includes/html/graphs` on the list
- Changed terminology (from folder to directory)
- Removed part referencing old auth method using authenticate.inc.php (changed in #8702)
2019-04-27 23:02:57 +02:00
Mihai Petracovici 2df2956817 Improved option naming & validation for smseagle (#10141)
* Relax validation for smseagle hostname
* Update property description and documentation
2019-04-27 09:08:16 +02:00
TheGreatDoc ea8f0de330 Fix formatting (#10135) 2019-04-24 10:09:48 +02:00
Tony Murray 6e6e54cb98 New User Management (#9348)
* Rewrite user management.

Error management

Revert edituser legacy page

Connect user permissions button to legacy page for now.

Implement user creation
Refine form

Remove PingCheck.php accidental add :)

Fixes for redirection and deletion

More fixes: realname accidental validation setting, hide can modify for read-only auths

Use a panel to improve style

Add icon to panel-title

Not allowed to delete own user (at least via the click of a button)

Use request validation to reduce complexity of controller.
Improve protection against users doing things they should not.

Switch to horizontal form and not nearly as wide of layout :)

delete without refresh.
Fix for buttons

Include all users (not just from this auth)
Hide the auth column if there is only one auth type

Show username if real name isn't set

Don't allow creation of demo users via the webui

a fix to the lnms user:add command, it didn't set auth_id

update edituser.inc.php to current
just redirect to users page

* Remove TwoFactorTest for now

* Update edituser.inc.php

* Update .env.dusk.testing

* Enable 2fa for 2fa test...
2019-04-22 19:01:39 -05:00
pobradovic08 69a453adf0 documentation: Fix paths of custom graph examples (#10128)
Change `html/includes/` path to `includes/html/`
2019-04-20 08:44:40 -05:00
TheGreatDoc f63d7a8bfe Update Example-Hardware-Setup.md (#10115)
* Update Example-Hardware-Setup.md

* Restore DB type
2019-04-17 22:51:49 +02:00
TheGreatDoc 75e11a7d3f Update Templates.md (#10120) 2019-04-17 16:28:55 +02:00
KodApa85 bb883501a9 fix: corrected markup (#10117)
Hadn't noticed the formatting was a little broken...
Looks a lot better now
2019-04-16 22:38:00 +02:00
Misha Komarovskiy 7b4c63a2f4 Added API call to list all ports FDB (#10020)
Add FDB API calls to resolve this [forum request](https://community.librenms.org/t/fdb-table-search-via-api-mac-ip-switch-port/1772/4) 

DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2019-04-09 13:51:01 +01:00
Andrew Imeson dd2faa2634 Minor word usage corrections (#10073) 2019-04-05 17:09:08 -05:00
mattie47 64897c273c Updated Smokeping.md (#10064)
Fixed a couple more things after #9731 and #10045 make some changes.
2019-04-03 15:02:24 +02:00
dmeiser 4e36805eaa Updated SNMP-Configuration-Examples (#10063)
Update snmpd instructions for Linux to reflect the ability to use @reboot declaration in the crontab. This is probably preferable to rc.local, which is apparently not supported or possible deprecated in Ubuntu or CentOS7.
2019-04-03 13:39:02 +02:00
Tony Murray d628afcc27 LibreNMS python service doc updates (#10044) 2019-04-01 12:23:53 -05:00
Tony Murray c03ed12d29 Changelog for 1.50 2019-03-31 22:43:59 -05:00
Freddie Cash a4513e9372 Fix path in Smokeping conf file (#10045)
Fix path in Smokeping conf file
2019-03-31 11:18:55 +02:00
TheGreatDoc 8f718f5c78 Update Fast-Ping-Check.md (#10022)
Fixed documentation formatting issues
2019-03-25 10:07:04 +01:00
Tony Murray f5209332b5 Update index.md 2019-03-19 15:16:29 -05:00
Misha Komarovskiy 55f4870b91 Added resources/sensors api call to list all sensors (#9837)
* Added resources/sensors api call to list all sensors

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

* Use global read permission check

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

* fix typo

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

* fix another typo

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

* Use laravel style for call

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2019-03-19 08:22:39 -05:00
kiwibrew db9c3c9456 Update documentation to reflect matching behaviour (#9955)
* Update documentation to reflect matching behaviour

Added a note to help users with matching patterns for Oxidized OS matching patterns.

* Update Oxidized.md
2019-03-18 22:25:13 -05:00
sorano 3f5d8e3633 Add HTML transport example for ms teams (#9969)
and fix missing " in Processor Alert with Graph example.
2019-03-17 20:39:20 -05:00
Tony Murray 1cfe4ea5fd Don't enable secure cookies when they won't work (#9971)
* Ignore session.cookie_secure errors
They happen if the session is already started.

* Don't allow secure cookies to be enabled when not accessing via https

* Completely remove the setting
2019-03-17 16:25:59 -05:00
PipoCanaja ceabfb8ef7 Update Getting-Started.md (#9976)
* Update Getting-Started.md

* Update Getting-Started.md
2019-03-16 21:34:51 -05:00
TheGreatDoc 0cc5de695d Custom storage warning percentage (#9975)
* Custom storage warning percentage

* Fixed permissions

* Restored line removed by accident

* Fixed permissions v2

* Set correctly the config var

* style
2019-03-16 23:53:05 +01:00
Yann Gauteron d15fda3693 Optional automatic sensor limits (#9973)
* Automatic sensor limits are now optional. Set ['discovery']['sensors']['autolimit'] = false to disable.
* Changing new config variable name from discovery.sensors.autolimit to sensors.guess_limits
* Updated documentation: ['sensors']['guess_limits'] value added
2019-03-16 11:51:09 +01:00
Tony Murray 19612cf38d Documentation for setting a development environment (#9944)
* Documentation for setting a development environment

* Fixed indentation
2019-03-13 21:09:58 +01:00
PipoCanaja f1221b42dc Add new template syntax into the FAQ, pointing to the documentation (#9942) 2019-03-13 00:21:13 -05:00
koocotte 35e24d9b2e Add Debian instruction (#9788)
Install instruction for the poller service under Debian
2019-03-05 00:48:01 -06:00