Commit Graph

1582 Commits

Author SHA1 Message Date
Tony Murray
3cccb3aaf8 Changelog for 1.55 2019-09-03 04:19:00 +00:00
fbourqui
c73e9cbcfb add AIX detection running std snmpd or net-snmp (#10569)
* update IBM mibs
* add AIX detection running std snmpd or net-snmp
* simplifying  complex logical expression, codeclim.
2019-09-02 22:08:05 +02:00
rsys-dev
3cb971e33f Added Graylog to device overview and log level filter mechanism (#10509)
* Added Recent Graylog Entries to Device Overview (WIP)

* Improved "Recent Graylog" entries on device overview (WIP)
Added $config['graylog']['device-page']['rowCount'] to set maximum rows shown in "Recent Graylog" on device overview (Default: 10)
Added $config['graylog']['device-page']['maxLevel'] to set the maximum message level shown in "Recent Graylog" on device overview (Default: 7, validates value to be >= 0 and <= 7)

* Fixed code styling issue

* Added Log Level filter to Graylog widget
Added Log Level filter to Graylog pages (device pages and graylog overview)

* Added documentation for new configuration options

* Removed unneccesary (and already commented) using
Renamed "maxLevel" to "loglevel" as suggested by a colleague

* Added doc for $config['graylog']['loglevel']

* Removed includes/html/print-graylog.inc.php and inlined it in includes/html/pages/device/overview/graylog.inc.php
Removed comma in json object in resources/views/widgets/graylog.blade.php
Replaced translation strings in resources/views/widgets/settings/graylog.blade.php with existing translation strings

* log level -> minimum log level

* Use Config::get() default functionality

* Oops
2019-08-27 12:44:27 -05:00
Hans Erasmus
a9658e1af9 Update FAQ to clarify adding new device support or requesting new device support (#10513)
* Update FAQ.md

* Update FAQ.md

* Update FAQ.md
2019-08-22 22:26:32 +01:00
O Palivan
259fc28b05 Update Applications.md for mysql (#10549)
* Update Applications.md for mysql

Specified for Mysql the host 127.0.0.1 useful in some specific configs. Switched also the 6 <-> 7 steps, which makes more sens because of the package install (mysqli is needed for snmp extend).
2019-08-22 12:14:09 +02:00
PipoCanaja
e7a86add93 Allow num_oid to use OCTET STRING indexes (#10410)
* make index available as OCTET STRING converted to OID
* codeclimate
2019-08-21 10:04:16 +02:00
Jason Cheng
49310dc693 Allow adding custom quick links to device navigation (#10403)
* Add Open-Audit link display device asset details

* Add an external link using the template method

* Add external system link setting.

* Update device.inc.php

* Update Customizing-the-Web-UI.md
2019-08-20 20:49:59 +01:00
Tom van Leeuwen
c82cdf2a83 Fixed the invalid json of the example curl statement (#10537) 2019-08-20 13:55:28 +02:00
Hans Erasmus
cec10c1d37 Update Installation-CentOS-7-Apache to fix formatting (#10504)
* Update Installation-CentOS-7-Apache.md

Fixed formatting.

* Update Installation-CentOS-7-Apache.md
2019-08-09 21:55:14 +01:00
Zane C. Bowers-Hadley
535d820bd9 update the docs to reflect various updates to SNMP/local bits (#10507)
* cleanup apache and powerdns-dnsdist

* add the mysql stuff

* revert the powerdns bit, it was changed to mktemp
2019-08-08 21:18:15 -05:00
PipoCanaja
9dfae2ff14 Allow filtering of Health sensor discovery (#10485)
* Filter sensor types or by regexp

* codeclimate

* codeclimate
2019-08-07 20:01:58 -05:00
voipmeister
3fdfdbab84 Typo fix, minor textual changes in support docs (#10499) 2019-08-07 11:11:36 +02:00
Zane C. Bowers-Hadley
0a6ded9ba3 nfdump support for with NFSen (#10376)
* rework the nfsen stuff

* add the new netflow stats page

* update the docs for nfsen

* add the functions back in

* readd the defaults

* rework lowest_five_minutes into lowest_time

* nfsen_channel_rrds removed and will rework it in later post rewriting

* rework something that accidentally got nuked in merging

* rework formatting a bit

* remove a accidentaly added chunk of text =^.^=

* rework some tag capitalization

* remove a accidentally added [

* '='=>' = '
2019-08-06 19:16:34 -05:00
Jakub Vít
c6117f028a Fix installation instructions for Ubuntu-1804 (#10488)
* Fix installation instructions for Ubuntu-1804
2019-08-02 22:31:04 +02:00
FTBZ
267e07ed63 doc: Oxydized: Recover configuration of a disabled/removed device (#10469) 2019-07-31 22:53:45 +02:00
Munzy
a912abb186 Missing an I from Input (#10474) 2019-07-30 16:20:14 -05:00
Tony Murray
89fae9be1d Move API routing to Laravel (#10457)
* Add more api helper functions
to centralize code more

* Enable cors

* Initial Legacy route in Laravel

* Force api v0 responses to json
Add a couple more routes

* more paths, pretty print the json response
pass parameters to the api function

* devices basic functions

* Port generic graph function
check permissions function accepts callback to avoid lots of if statements

* move vlans

* links

* graphs

* fdb

* health

* wireless

* port graphs

* ip functions
split em up

* port_stack

* components

* compoment add/edit/delete

* get_device_groups

* port stats

* port graphs

* get_devices_by_group

* port_groups

* api_get_graph

* show_endpoints

* get_bill

* get_bill_graph

* get_bill_graphdata

* get_bill_history

* get_bill_history_graph

* remaining bill functions

* list_alerts

* ack/unmute alert

* Some cleanups

* Some cleanups

* list_alert_rules

* alert rule add/edit/delete

* inventory

* list_cbgp

* vrf

* list_ipsec

* list_fdb

* list_links (fix both usages)

* list_locations

* list_locations

* list_vlans

* list_ip_addresses

* list_arp

* list_ip_networks

* cleanup

* services

* list_logs and fix authlog.......

* cleanup

* cleanup 2

* remove slim

* don't load schema more than once

* basic test

* fix style

* downgrade laravel-cors to a version that supports PHP 7.1
2019-07-29 16:32:37 -05:00
Tony Murray
8e9ee223e1 Changelog for 1.54 2019-07-28 21:47:30 -05:00
rsys-dev
6394c35ce6 Graylog entry matching device if source is not hostname or primary ip (#10458)
* Added findByHostnameOrIp($hostnameOrIp) for devices.
    Returns Device or null
Fixed Graylog device links, "device" parameter in URL was IP or Hostname instead of device id before
Added Severity number to name conversion. Can be activated by setting $config['graylog']['severity-names'] = "true" in config
Added Facility number to name conversion. Can be activated by setting $config['graylog']['facility-names'] = "true" in config

* Added $config['graylog']['match-any-address']. To enable matching Graylog entries by any interface address set to "true"
Added code to match Graylog entries by any interface address instead of only hostname or primary address

* Fixed missing quotation marks in <script> block in includes/html/common/graylog.inc.php:46, causing graylog page only load header with empty table. Introduced in https://github.com/librenms/librenms/pull/10447

* Modified code to reduce complexity as mentioned by codeclimate

* Changed findByHostnameOrIp($hostnameOrIp) as mentioned by https://github.com/murrant

* Added Language File "syslog.php" for Syslog Severity and Facility
Merged functions "levelName($level)" and "facilityName($facility)" to "syslogPrioParser($type, $value)" where $type should be "facility" or "severity" and $value the numeric or text facility or severity. Returns "NUMBER (NAME)" if possible, otherwhise returns $value

* Shortened findByHostnameOrIp($hostnameOrIp) as mentioned by https://github.com/murrant

* Add shortcut ipv4 and ipv6 device relationships
Better code for adding source addresses
Only translate level and facility if they are numeric
Allow level and facility to be sortable
No need for device link if we know it won't work.  Before the code was punting to save sql queries.

* Cache devices
Took queries from 69 to 6 in my quick test.

* Added Documentation for $config['graylog']['match-any-address']

* Fixed missing quotation marks in app/ApiClients/GraylogApi.php:125
2019-07-26 15:13:35 -05:00
Derova
149b47d215 Update Network-Map.md (#10459)
Fixed broken links
2019-07-25 07:05:41 -05:00
ifred16
77d94a458b Allow filtering of getUserlist LDAP function (#10399)
* Modification of the getUserlist fonction to use ldap filter

* Modification of the getUserlist fonction to use ldap filter V2

* documentation of auth_ldap_Userlist_filter option

* documentation of auth_ldap_Userlist_filter option V2

* Allow filtering of getUserlist LDAP function
2019-07-23 22:57:16 -05:00
PipoCanaja
c5a915709c Transport API - Doc for placeholders (#10416)
* Transport API - Doc for placeholders

The available placeholders are the same as the Templates documentation but the syntax is not exactly identical.

* Update Transports.md

* Update Transports.md

* Update Transports.md
2019-07-23 12:32:13 -05:00
Cournut
c0c3ad296b Mistake in url API (#10455)
Correction of the url api in documentation
2019-07-21 14:41:04 -05:00
VVelox
06b85f5b07 docs: more md linting (#10371)
* clean 1-Minute-Polling.md formatting

* cleanup formatting for Adding-a-Device.md

* clean up formatting of Cleanup-options.md

* cleanup formatting some for CLI-Tools.md

* cleanup formatting for Syslog.md and Configuration.md

* cleanup formatting for Device-Sensors.md

* cleanup formatting for Device-Troubleshooting.md

* cleanup Discovery Support.md

* cleanup Environment-Variables.md

* cleanup Example-Hardware-Setup.md and FAQ.mg

* update Features.md, Install Validation.md, Perfermance.md, Poller Support.md, and index.md

* cleanup Remote-Monitoring-VPN.md, SNMP-Configuration-Examples.md, and SSL-Configuration.md

* lots of updates for Installation docs

* more installation doc cleanup

* more formatting cleanup

* clean Work-Map.md up some
2019-07-18 21:25:53 -05:00
Tony Murray
3ead462549 Enable CSRF protection (#10447)
* Enable CSRF protection

* fix style issues
2019-07-17 07:20:26 -05:00
Joe Clarke
8bbc69a878 Add support for using Markdown for the Ciscospark transport (#10442)
* Add support for using Markdown.

Alert templates can be written using Webex Teams (i.e., Spark) Markdown,
which makes for some richer alerts.  This option defaults to false to
maintain Principle of Least Astonishment.

* Update Cisco Spark docs.

* Mention that Cisco Spark is now called Webex Teams
* Add support for Markdown

* Refactor text.

Do not exceed 80 characters per line.

* Refactor code to meet style guidelines.

* Remove errant tabs and use spaces instead
* Correct type check
* Remove use of 'else'
2019-07-14 16:34:22 -05:00
Austin
a6ecff380b Fixed typo: Administartor (#10437)
Corrected spelling of "Administartor" to "Administrator".
2019-07-11 22:47:52 +02:00
SourceDoctor
a875c1d8a5 Added mdadm application documentation (#10430)
* Add mdadm application documentation
* Update Applications.md
2019-07-09 23:47:32 +02:00
PipoCanaja
71da38cdf5 Added skip_values operator and documentation (#10419)
* more operators

* os_schema

* discovery_schema

* doc

* doc
2019-07-09 15:47:02 +01:00
VVelox
12cd540a92 doc: make Applications.md more lint happy and add a section on sudo at the top (#10367)
* clean up Applications.md a bunch

* more cleanup and header depth

* add the sudo section
2019-07-06 17:51:27 +02:00
PipoCanaja
55f67f42fe Refactor Api transport to use Guzzle (and new variables syntax) (#10070)
* Allow new {{ $xxxx }} syntax

* Properly handle urlencode on variable values without braking the URL, and uses Blades

* Doc
Doc typo

* use Guzzle for HTTP requests

* Add Basic auth support

* Doc update

* clean

* Revert Blades, but keep the {{ $xxxx }} syntax

* Revert Blades, but keep the {{ $xxxx }} syntax

* Init Vars and comments

* Notifications

* api-options are not required

* Update notifications.rss
2019-07-04 16:55:29 +01:00
jozefrebjak
08cb2d0065 Smokeping BasicAuth (htaccess) configuration 2019-07-04 10:27:38 +02:00
N-Mi
88d5577bd1 Split 2017 and 2018 changelogs (#10404) 2019-07-02 15:37:05 +01:00
jozefrebjak
bdcd709b83 Update Portactivity Applications for suggest modules to install (#10394) 2019-07-02 13:37:21 +01:00
N-Mi
acae7e8d00 Fixed formatting of Changelog (#10402)
* Fix markdown in Changelog.md

* Escape html tag
2019-07-02 13:25:36 +01:00
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