Improve Markdown syntax in Document (#12949)

* Use GitLab instead of Gitlab

Only change text part, the Alert.Transport.Gitlab class left as is.

* Fix href in document

* Move section in document

The agent list in this document is sorted by alphabetical order,
"SDFS info" is the only exception.

* Remove trailing spaces in document

* Align code in document

* Fix Markdown in document

- Escape underline
- Add syntax highlight
- Add two space in the end of line to make it a newline
- Add newline before list or code section

* Update LibreNMS/Alert/Transport/Gitlab.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
This commit is contained in:
Sean
2021-06-17 03:16:21 +08:00
committed by GitHub
parent 7edc302f34
commit bcedc0ed77
39 changed files with 281 additions and 264 deletions

View File

@@ -82,6 +82,6 @@ If you want to restrict which network adapter the agent listens on, do the follo
## Windows
1. Grab version 1.2.6b5 of the check_mk agent from the check_mk github repo (exe/msi or compile it yourself depending on your usage): https://github.com/tribe29/checkmk/tree/v1.2.6b5/agents/windows
1. Grab version 1.2.6b5 of the check_mk agent from the check_mk github repo (exe/msi or compile it yourself depending on your usage): <https://github.com/tribe29/checkmk/tree/v1.2.6b5/agents/windows>
2. Run the msi / exe
3. Make sure your LibreNMS instance can reach TCP port 6556 on your target.

View File

@@ -113,7 +113,7 @@ by following the steps under the `SNMP Extend` heading.
1. [NTP Client](#ntp-client) - SNMP extend
1. [NTP Server/NTPD](#ntp-server-aka-ntpd) - SNMP extend
1. [Nvidia GPU](#nvidia-gpu) - SNMP extend
1. [Open Grid Scheduler](#opengridscheduler) - SNMP extend
1. [Open Grid Scheduler](#open-grid-scheduler) - SNMP extend
1. [Opensips](#opensips) - SNMP extend
1. [OS Updates](#os-updates) - SNMP extend
1. [PHP-FPM](#php-fpm) - SNMP extend
@@ -126,7 +126,7 @@ by following the steps under the `SNMP Extend` heading.
1. [PowerDNS dnsdist](#powerdns-dnsdist) - SNMP extend
1. [PowerMon](#powermon) - SNMP extend
1. [Proxmox](#proxmox) - SNMP extend
1. [Puppet Agent](#puppet_agent) - SNMP extend
1. [Puppet Agent](#puppet-agent) - SNMP extend
1. [PureFTPd](#pureftpd) - SNMP extend
1. [Raspberry PI](#raspberry-pi) - SNMP extend
1. [Redis](#redis) - SNMP extend
@@ -374,6 +374,7 @@ via `wget https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/
A small python3 script that checks age and remaining validity of certificates
This script needs following packages on Debian/Ubuntu Systems:
* python3
* python3-openssl
@@ -495,7 +496,7 @@ wget https://github.com/librenms/librenms-agent/raw/master/snmp/docker-stats.sh
4: Edit your snmpd.conf file (usually /etc/snmp/snmpd.conf) and add:
```
extend docker /etc/snmp/docker-stats.sh
extend docker /etc/snmp/docker-stats.sh
```
5: Restart snmpd on your host
@@ -951,7 +952,7 @@ Extend` heading top of page.
To create your own custom munin scripts, please see this example:
```
```bash
#!/bin/bash
if [ "$1" = "config" ]; then
echo 'graph_title Some title'
@@ -1022,7 +1023,7 @@ Verify it is working by running `/usr/lib/check_mk_agent/local/mysql`
## SNMP extend
1: Copy the mysql script to the desired host.
1: Copy the mysql script to the desired host.
```
wget https://github.com/librenms/librenms-agent/raw/master/snmp/mysql -O /etc/snmp/mysql
```
@@ -1053,10 +1054,10 @@ configuration responsible for the localhost server:
```text
location /nginx-status {
stub_status on;
access_log off;
access_log off;
allow 127.0.0.1;
allow ::1;
deny all;
deny all;
}
```
@@ -1568,7 +1569,7 @@ script which method to use. The are several options to assist with testing, see
### Initial setup
1. Download the python script onto the host:
1. Download the python script onto the host:
```
wget https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/powermon-snmp.py -O /usr/local/bin/powermon-snmp.py
```
@@ -1866,6 +1867,33 @@ SNMP extend script to monitor your (remote) RRDCached via snmp
extend rrdcached /etc/snmp/rrdcached
```
# SDFS info
A small shell script that exportfs SDFS volume info.
## SNMP Extend
1: Download the script onto the desired host (the host must be added
to LibreNMS devices)
```
wget https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/sdfsinfo -O /etc/snmp/sdfsinfo
```
2: Make the script executable (chmod +x /etc/snmp/sdfsinfo)
3: Edit your snmpd.conf file (usually /etc/snmp/snmpd.conf) and add:
```
extend sdfsinfo /etc/snmp/sdfsinfo
```
4: Restart snmpd on your host
The application should be auto-discovered as described at the top of
the page. If it is not, please follow the steps set out under `SNMP
Extend` heading top of page.
# Seafile
SNMP extend script to monitor your Seafile Server
@@ -2108,7 +2136,7 @@ The application should be auto-discovered as described at the top of
the page. If it is not, please follow the steps set out under `SNMP
Extend` heading top of page.
# Option 2: Agent
## Option 2: Agent
[Install the agent](#agent-setup) on this device if it isn't already
and copy the `unbound.sh` script to `/usr/lib/check_mk_agent/local/`
@@ -2168,33 +2196,6 @@ The application should be auto-discovered as described at the top of
the page. If it is not, please follow the steps set out under `SNMP
Extend` heading top of page.
# SDFS info
A small shell script that exportfs SDFS volume info.
## SNMP Extend
1: Download the script onto the desired host (the host must be added
to LibreNMS devices)
```
wget https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/sdfsinfo -O /etc/snmp/sdfsinfo
```
2: Make the script executable (chmod +x /etc/snmp/sdfsinfo)
3: Edit your snmpd.conf file (usually /etc/snmp/snmpd.conf) and add:
```
extend sdfsinfo /etc/snmp/sdfsinfo
```
4: Restart snmpd on your host
The application should be auto-discovered as described at the top of
the page. If it is not, please follow the steps set out under `SNMP
Extend` heading top of page.
# Voip-monitor
Shell script that reports cpu-load/memory/open-files files stats of Voip Monitor

View File

@@ -257,12 +257,12 @@ then need to assign the relevant permissions unless you set
`$config['radius']['userlevel']` to be something other than 1.
```php
$config['radius']['hostname'] = 'localhost';
$config['radius']['port'] = '1812';
$config['radius']['secret'] = 'testing123';
$config['radius']['timeout'] = 3;
$config['radius']['users_purge'] = 14;//Purge users who haven't logged in for 14 days.
$config['radius']['default_level'] = 1;//Set the default user level when automatically creating a user.
$config['radius']['hostname'] = 'localhost';
$config['radius']['port'] = '1812';
$config['radius']['secret'] = 'testing123';
$config['radius']['timeout'] = 3;
$config['radius']['users_purge'] = 14; // Purge users who haven't logged in for 14 days.
$config['radius']['default_level'] = 1; // Set the default user level when automatically creating a user.
```
## Old account cleanup
@@ -297,16 +297,16 @@ This will then assign the userlevel for guest to all authenticated users.
Config option: `ad-authorization`
This module is a combination of ___http-auth___ and ___active_directory___
This module is a combination of ___http-auth___ and ___active\_directory___
LibreNMS will expect the user to have authenticated via your
webservice already (e.g. using Kerberos Authentication in Apache) but
will use Active Directory lookups to determine and assign the
userlevel of a user. The userlevel will be calculated by using AD
group membership information as the ___active_directory___ module
group membership information as the ___active\_directory___ module
does.
The configuration is the same as for the ___active_directory___ module
The configuration is the same as for the ___active\_directory___ module
with two extra, optional options: auth_ad_binduser and
auth_ad_bindpassword. These should be set to a AD user with read
capabilities in your AD Domain in order to be able to perform
@@ -428,7 +428,7 @@ supply environment variables or headers.
### User Attribute
If for some reason your relying party doesn't store the username in
___REMOTE_USER___, you can override this choice.
___REMOTE\_USER___, you can override this choice.
```php
$config['sso']['user_attr'] = 'HTTP_UID';
@@ -483,9 +483,9 @@ $config['sso']['level_attr'] = "entitlement";
If your Relying Party is capable of calculating the necessary
privilege level, you can configure the module to read the privilege
number straight from an attribute. ___sso_level_attr___ should contain
number straight from an attribute. ___sso\_level\_attr___ should contain
the name of the attribute that the Relying Party exposes to LibreNMS -
as long as ___sso_mode___ is correctly set, the mechanism should find
as long as ___sso\_mode___ is correctly set, the mechanism should find
the value.
#### Group Map
@@ -500,14 +500,14 @@ $config['sso']['group_delimiter'] = ';';
```
The mechanism expects to find a delimited list of groups within the
attribute that ___sso_group_attr___ points to. This should be an
attribute that ___sso\_group\_attr___ points to. This should be an
associative array of group name keys, with privilege levels as
values. The mechanism will scan the list and find the ___highest___
privilege level that the user is entitled to, and assign that value to
the user.
This format may be specific to Shibboleth; other relying party
software may need changes to the mechanism (e.g. ___mod_auth_mellon___
software may need changes to the mechanism (e.g. ___mod\_auth\_mellon___
may create pseudo arrays).
There is an optional value for sites with large numbers of groups:

View File

@@ -108,7 +108,7 @@ Enabled by default.
This includes FDP, CDP and LLDP support based on the device type.
The LLDP/xDP links with neighbours will always be discovered as soon as the discovery module is enabled.
However, LibreNMS will only try to add the new devices discovered with LLDP/xDP if `$config['autodiscovery']['xdp'] = true`;
However, LibreNMS will only try to add the new devices discovered with LLDP/xDP if `$config['autodiscovery']['xdp'] = true;`.
Devices may be excluded from xdp discovery by sysName and sysDescr.
@@ -187,4 +187,5 @@ optional arguments:
# Discovered devices
Newly discovered devices will be added to the `default_poller_group`, this value defaults to 0 if unset.
When using distributed polling, this value can be changed locally by setting `$config['default_poller_group`]` in config.php or globally by using `lnms config:set`.
When using distributed polling, this value can be changed locally by setting `$config['default_poller_group']` in config.php or globally by using `lnms config:set`.

View File

@@ -16,7 +16,7 @@ LibreNMS has a whole list of Widgets to select from.
- Alerts Widget: Displays all alert notifications.
- Availability Map: Displays all devices with colored tiles, green up,
yellow for warning (device has been restarted in last 24 hours),red
yellow for warning (device has been restarted in last 24 hours), red
for down. You can also list all services and ignored/disabled
devices in this widget.
- Components Status: List all components Ok state, Warning state, Critical state.
@@ -42,8 +42,8 @@ LibreNMS has a whole list of Widgets to select from.
from override sysLocation.
List of Widgets:
![List of Widgets][image of widgets]
![List of Widgets][image of widgets]
[image of widgets]: /img/list-widgets.png "List of the widgets"
## Dashboard Permissions
@@ -82,7 +82,7 @@ Also some web pages may not support html embedded or iframe.
In the dashboard, you want to create an interface graph select the widget called
'Graph' then select "Port" "Bits"
'Graph' then select "Port" -> "Bits"
![port-bits-graph](/img/port-bits-graph.png)
Note: you can map the port by description or the alias or by port

View File

@@ -6,7 +6,7 @@ path: blob/master/doc/
> Status: Release Candidate
The LibreNMS dispatcher service (`librenms-service.py`) is a new method
of running the poller service at set times. It does not replace the php scripts,
of running the poller service at set times. It does not replace the php scripts,
just the cron entries running them.
# External Requirements
@@ -47,7 +47,7 @@ system. See <https://redis.io/topics/security>
LibreNMS can still use memcached as a locking mechanism when using
distributed polling. So you can configure memcached for this purpose
unless you have updates disabled.
unless you have updates disabled.
See `Locking Mechanisms` at
<https://docs.librenms.org/Extensions/Distributed-Poller/>
@@ -133,7 +133,7 @@ $config['distributed_poller_group'] = 0; # Which grou
```
### Tuning the number of workers
See https://your_librenms_install/poller
See https://your_librenms_install/poller
You want to keep Consumed Worker Seconds comfortably below Maximum Worker Seconds. The closer the values are to each other, the flatter the CPU graph of the poller machine. Meaning that you are utilizing your CPU resources well. As long as Consumed WS stays below Maximum WS and Devices Pending is 0, you should be ok.

View File

@@ -9,10 +9,10 @@ A normal install contains all parts of LibreNMS:
- RRD (Time series data store) *
- Database *
- Webserver (Web UI/API) *
\* may only be installed on one server (however, some can be clustered)
Distributed Polling allows the workers to be spread across additional
Distributed Polling allows the workers to be spread across additional
servers for horizontal scaling. Distributed polling is not intended for
remote polling.
@@ -23,7 +23,7 @@ All pollers need to write to the same set of RRD files, preferably via
RRDcached.
It is also a requirement that at least one locking service is in place
to which all pollers can connect. There are currently three locking
to which all pollers can connect. There are currently three locking
mechanisms available
- memcached
@@ -67,7 +67,7 @@ time.
## Using REDIS
In your `.env` file you will need to specify a redis server, port and
In your `.env` file you will need to specify a redis server, port and
the driver.
```
@@ -85,7 +85,7 @@ memcached host and port, and then in your `.env` file you will need to add:
CACHE_DRIVER=memcached
```
If you want to use memcached, you will also need to install an additional
Python 3 python-memcached package.
Python 3 python-memcached package.
## Example Setup
@@ -180,7 +180,7 @@ Depending on your setup will depend on how you configure your discovery processe
**Cron based polling**
It's not necessary to run discovery services on all pollers. In fact, you should
It's not necessary to run discovery services on all pollers. In fact, you should
only run one discovery process per poller group.
Designate a single poller to run discovery (or a separate server if required).

View File

@@ -23,7 +23,7 @@ Collection](../Alerting/Rules.md#alert-rules-collection).
1: If you are using [RRDCached](../Extensions/RRDCached.md), stop the service.
- This will flush all pending writes so that the rrdstep.php script can change the steps.
2: Change the ping_rrd_step setting in config.php
```

View File

@@ -49,7 +49,7 @@ Timezone must be PHP supported timezones, available at:
## Graylog Version
If you are running a version earlier than Graylog then please set
```php
```php
$config['graylog']['version']
```
to the version number of your Graylog
@@ -57,12 +57,12 @@ install. Earlier versions than 2.1 use the default port `12900`
## URI
If you have altered the default uri for your Graylog setup then you
can override the default of `/api/` using
can override the default of `/api/` using
```php
$config['graylog']['base_uri'] = '/somepath/';
```
## User Credentials
## User Credentials
If you choose to use another user besides the admin user, please note
that currently you must give the user "admin" permissions from within
Graylog, "read" permissions alone are not sufficient.
@@ -72,7 +72,7 @@ If you have enabled TLS for the Graylog API and you are using a
self-signed certificate, please make sure that the certificate is
trusted by your LibreNMS host, otherwise the connection will
fail. Additionally, the certificate's Common Name (CN) has to match
the FQDN or IP address specified in
the FQDN or IP address specified in
```php
$config['graylog']['server']
```
@@ -81,7 +81,7 @@ $config['graylog']['server']
If you want to match the source address of the log entries against any
IP address of a device instead of only against the primary address and
the host name to assign the log entries to a device, you can activate
this function using
this function using
```php
$config['graylog']['match-any-address'] = 'true';
@@ -90,13 +90,13 @@ $config['graylog']['match-any-address'] = 'true';
## Recent Devices
There are 2 configuration parameters to influence the behaviour of the
"Recent Graylog" table on the overview page of the
devices.
devices.
```php
$config['graylog']['device-page']['rowCount']
```
```
Sets the maximum number of rows to be displayed (default: 10)
Sets the maximum number of rows to be displayed (default: 10)
@@ -106,11 +106,11 @@ $config['graylog']['device-page']['loglevel']
```
You can set which loglevels that should be displayed on the overview page. (default: 7, min:
0, max: 7)
0, max: 7)
```php
$config['graylog']['device-page']['loglevel'] = 4
```
```
Shows only entries with a log level less than or equal to 4 (Emergency,
Alert, Critical, Error, Warning).

View File

@@ -37,8 +37,8 @@ Option | Default-Value | Notes
`$config['irc_pass']` | | Optional; This sends the IRC-PASS Sequence to IRC-Servers that require Password on Connect
`$config['irc_port']` | `6667` | Required; To enable SSL append a `+` before the Port. (Example: `+6697`)
`$config['irc_ctcp']` | `false` | Optional; Enable/disable ctcp-replies from the bot (currently VERSION, PING and TIME).
`$config['irc_ctcp_version']` | `LibreNMS IRCbot. https://www.librenms.org/` | Optional: Reply-string to CTCP VERSION requests
`$config['irc_auth']` | | Optional: Array of hostmasks that are automatically authenticated.
`$config['irc_ctcp_version']` | `LibreNMS IRCbot. https://www.librenms.org/` | Optional; Reply-string to CTCP VERSION requests
`$config['irc_auth']` | | Optional; Array of hostmasks that are automatically authenticated.
### IRC-Commands
@@ -57,7 +57,7 @@ Command | Description
`.status <type>` | Prints status information for given `type`. Type can be `devices`, `services`, `ports`. Shorthands are: `dev`,`srv`,`prt`
`.version` | Prints `$this->config['project_name_version']`.
( __/!\__ All commands are case-_insensitive_ but their arguments are case-_sensitive_)
( __/!\\__ All commands are case-_insensitive_ but their arguments are case-_sensitive_)
# Examples

View File

@@ -84,4 +84,5 @@ to support the parsing of interface infor.
There are no changes to be made or additions to install for the polling librenms.
Now you can set up your [keywords](#keywords) in your `/etc/network/interfaces`
``//Add more distributions than just Debian based``

View File

@@ -10,12 +10,12 @@ path: blob/master/doc/
The following is the configuration that can be used:
```php
$config['nfsen_enable'] = 1;
$config['nfsen_split_char'] = '_';
$config['nfsen_rrds'][] = '/var/nfsen/profiles-stat/live/';
$config['nfsen_rrds'][] = '/var/nfsen/profiles-stat';
$config['nfsen_base'][] = '/var/nfsen/';
$config['nfsen_suffix'] = "_yourdomain_com";
$config['nfsen_enable'] = 1;
$config['nfsen_split_char'] = '_';
$config['nfsen_rrds'][] = '/var/nfsen/profiles-stat/live/';
$config['nfsen_rrds'][] = '/var/nfsen/profiles-stat';
$config['nfsen_base'][] = '/var/nfsen/';
$config['nfsen_suffix'] = "_yourdomain_com";
```
Set `$config['nfsen_enable'] = 1;` to enable NFSen support.
@@ -78,9 +78,9 @@ the same name.
Below are the default settings used with nfdump for stats.
For more defaulted information on that, please see nfdump(1).
For more defaulted information on that, please see nfdump(1).
The default location for nfdump is `/usr/bin/nfdump`. If nfdump
is located elsewhere, set it with
is located elsewhere, set it with
`$config['nfdump'] = '/usr/local/bin/nfdump';` for example.
@@ -143,7 +143,7 @@ $config['nfsen_stat_default']='srcip';
The above sets default stat type to use from the drop down.
```
record Flow Records
record Flow Records
ip Any IP Address
srcip SRC IP Address
dstip DST IP Address

View File

@@ -26,8 +26,9 @@ Groups can be drawn with Network Map.
# Network Map Configurator
This link will show you all the options and explain what they
do. [Link](https://visjs.github.io/vis-network/docs/network/)
[This link](https://visjs.github.io/vis-network/docs/network/) will
show you all the options and explain what they do.
You may also access the dynamic configuration interface [example
here](https://visjs.github.io/vis-network/examples/network/other/configuration.html)
from within LibreNMS by adding the following to config.php

View File

@@ -150,12 +150,12 @@ To edit an existing map, you must use the index to override it.
```bash
lnms config:get oxidized.maps.os.os
array (
0 =>
0 =>
array (
'match' => 'airos-af-ltu',
'value' => 'airfiber',
),
1 =>
1 =>
array (
'match' => 'airos-af',
'value' => 'airfiber',
@@ -245,8 +245,8 @@ ensure they are used in the correct location.
# Accessing configuration of a disabled/removed device
When you're disabling or removing a device from LibreNMS, the
configuration will no longer be available via the LibreNMS web interface.
When you're disabling or removing a device from LibreNMS, the
configuration will no longer be available via the LibreNMS web interface.
You can gain access to these configurations directly in the Git repository of
Oxidized (if using Git for version control).
@@ -271,7 +271,7 @@ git cat-file -p <object id>
```
# Remove disabled/removed device
If you want to purge saved config of a device that is not in LibreNMS anymore, you can run the following command:
If you want to purge saved config of a device that is not in LibreNMS anymore, you can run the following command:
```
git rm --cached <object id>

View File

@@ -12,7 +12,7 @@ tune over rrdcached. To enable this set the following config:
```php
$config['rrdtool_version'] = '1.5.5';
```
This setting has to be the exact version of rrdtool you are running.
This setting has to be the exact version of rrdtool you are running.
NOTE: This feature requires your client version of rrdtool to be 1.5.5
or newer, in addition to your rrdcached version.
@@ -24,10 +24,10 @@ Shared FS: Is a shared filesystem required?
Features: Supported features in the version indicated.
```
G = Graphs.
C = Create RRD files.
U = Update RRD files.
T = Tune RRD files.
G = Graphs.
C = Create RRD files.
U = Update RRD files.
T = Tune RRD files.
```
| Version | Shared FS | Features |
@@ -48,7 +48,7 @@ so you can view the disk I/O usage delta.
1. [RRDCached installation Debian Stretch](#rrdcached-installation-debian-stretch)
1. [RRDCached installation CentOS 7 or 8](#rrdcached-installation-centos-7-or-8)
1. [RRDCached installation CentOS 6](#rrdcached-installation-centos-6)
1. [Securing RRCached](#Securing-RRCached)
1. [Securing RRCached](#securing-rrcached)
## RRDCached installation Ubuntu 16
@@ -129,7 +129,7 @@ chown librenms:librenms /var/lib/rrdcached/journal/
4: Restart the rrdcached service
```bash
systemctl restart rrdcached.service
systemctl restart rrdcached.service
```
5: Edit /opt/librenms/config.php to include:
@@ -187,7 +187,7 @@ chown librenms:librenms /var/lib/rrdcached/journal/
4: Restart the rrdcached service
```bash
systemctl restart rrdcached.service
systemctl restart rrdcached.service
```
5: Edit /opt/librenms/config.php to include:

View File

@@ -3,9 +3,9 @@ path: blob/master/doc/
# SNMP trap handling
Currently, LibreNMS supports a lot of trap handlers. You can check them on
Currently, LibreNMS supports a lot of trap handlers. You can check them on
GitHub [here](https://github.com/librenms/librenms/tree/master/LibreNMS/Snmptrap/Handlers).
To add more see [Adding new SNMP Trap handlers](../Developing/SNMP-Traps.md). Traps are handled via snmptrapd.
To add more see [Adding new SNMP Trap handlers](../Developing/SNMP-Traps.md). Traps are handled via snmptrapd.
snmptrapd is an SNMP application that receives and logs SNMP TRAP and INFORM messages.
> The default is to listen on UDP port 162 on all IPv4 interfaces. Since 162 is a
@@ -35,11 +35,11 @@ To enable snmptrapd to properly parse traps, we will need to add MIBs to service
Make the folder `/etc/systemd/system/snmptrapd.service.d/` and edit
the file `/etc/systemd/system/snmptrapd.service.d/mibs.conf` and add
the following content.
the following content.
You may want to tweak to add vendor directories
for devices you care about. In the example below, standard and cisco
directories are defined, and only IF-MIB is loaded.
directories are defined, and only IF-MIB is loaded.
```ini
[Service]
@@ -85,7 +85,7 @@ Here is a list of snmptrapd options:
| -f | Do not fork from the shell |
| -n | Use numeric addresses instead of attempting hostname lookups (no DNS) [OPTIONAL] |
| -m | MIBLIST: use MIBLIST (`FILE1-MIB:FILE2-MIB`). `ALL` = Load all MIBS in DIRLIST. (usually fails) |
| -M | DIRLIST: use DIRLIST as the list of locations to look for MIBs. Option is not recursive, so you need to specify each DIR individually, separated by `:`. (For example: /opt/librenms/mibs:/opt/librenms/mibs/cisco:/opt/librenms/mibs/edgecos)|
| -M | DIRLIST: use DIRLIST as the list of locations to look for MIBs. Option is not recursive, so you need to specify each DIR individually, separated by `:`. (For example: /opt/librenms/mibs:/opt/librenms/mibs/cisco:/opt/librenms/mibs/edgecos)|
Good practice is to avoid `-m ALL` because then it will try to load all the MIBs in DIRLIST, which
will typically fail (snmptrapd cannot load that many mibs). Better is to specify the
@@ -116,7 +116,7 @@ sudo systemctl enable snmptrapd
sudo systemctl restart snmptrapd
```
## Testing
## Testing
The easiest test is to generate a trap from your device. Usually, changing the configuration on a network device, or
plugging/unplugging a network cable (LinkUp, LinkDown) will generate a trap. You can confirm it using a with `tcpdump`, `tshark` or `wireshark`.
@@ -137,7 +137,7 @@ Using OID's:
snmptrap -v 2c -c public localhost '' 1.3.6.1.4.1.8072.2.3.0.1 1.3.6.1.4.1.8072.2.3.2.1 i 123456
```
If you have configured logging of traps to ```/var/log/snmptrap/traps.log``` then you will see in `traps.log` new entry:
If you have configured logging of traps to ```/var/log/snmptrap/traps.log``` then you will see in `traps.log` new entry:
```
2020-03-09 16:22:59 localhost [UDP: [127.0.0.1]:58942->[127.0.0.1]:162]:

View File

@@ -9,7 +9,7 @@ perform additional monitoring outside of SNMP. Services can also be used
in conjunction with your SNMP monitoring for larger monitoring functionality.
**Services must be tied to a device to function properly. A good generic
option is to use `localhost`, but it is suggested to attach the check to
option is to use `localhost`, but it is suggested to attach the check to
the device you are monitoring.**
## Nagios plugins source
@@ -75,8 +75,8 @@ $config['discover_services_templates'] = true;
Service checks are now distributable if you run a distributed
setup. To leverage this, use the `dispatch` service. Alternatively,
you could also replace `check-services.php` with `services-wrapper.py` in
cron instead to run across all polling nodes.
you could also replace `check-services.php` with `services-wrapper.py` in
cron instead to run across all polling nodes.
If you need to debug the output of services-wrapper.py then you can
add `-d` to the end of the command - it is NOT recommended to do this
@@ -217,28 +217,28 @@ $config['service_poller_enabled'] = true;
$config['service_poller_workers'] = 16;
```
```php
$config['service_poller_frequency'] = 300;
$config['service_poller_frequency'] = 300;
```
```php
$config['service_poller_down_retry'] = 5;
$config['service_poller_down_retry'] = 5;
```
```php
$config['service_discovery_enabled'] = true;
$config['service_discovery_enabled'] = true;
```
```php
$config['service_discovery_workers'] = 16;
$config['service_discovery_workers'] = 16;
```
```php
$config['service_discovery_frequency'] = 3600;
$config['service_discovery_frequency'] = 3600;
```
```php
$config['service_services_enabled'] = true;
$config['service_services_enabled'] = true;
```
```php
$config['service_services_workers'] = 16;
$config['service_services_workers'] = 16;
```
```php
$config['service_services_frequency'] = 60;
$config['service_services_frequency'] = 60;
```
## Service checks polling logic

View File

@@ -202,9 +202,9 @@ Add the following configuration to your `/etc/nginx/conf.d/librenms` config file
The following will configure Nginx to respond to `http://yourlibrenms/smokeping`:
```
#Browsing to `http://librenms.xxx/smokeping/` should bring up the smokeping web interface
# Browsing to `http://yourlibrenms/smokeping/` should bring up the smokeping web interface
location = /smokeping/ {
location = /smokeping/ {
fastcgi_intercept_errors on;
fastcgi_param SCRIPT_FILENAME /usr/lib/cgi-bin/smokeping.cgi;
@@ -228,17 +228,17 @@ The following will configure Nginx to respond to `http://yourlibrenms/smokeping`
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}
location ^~ /smokeping/ {
alias /usr/share/smokeping/www/;
index smokeping.cgi;
gzip off;
}
location ^~ /smokeping/ {
alias /usr/share/smokeping/www/;
index smokeping.cgi;
gzip off;
}
```
After saving the configuration file, verify your Nginx configuration file syntax
is OK with `sudo nginx -t`, then restart Nginx with `sudo systemctl restart nginx`
You should be able to load the Smokeping web interface at `http://yourhost/smokeping`
You should be able to load the Smokeping web interface at `http://yourlibrenms/smokeping`
#### Nginx Password Authentication

View File

@@ -11,17 +11,14 @@ integrating syslog with LibreNMS.
### syslog-ng
For Debian / Ubuntu:
```ssh
apt-get install syslog-ng
```
For CentOS / RedHat
```ssh
yum install syslog-ng
```
=== "Debian / Ubuntu"
```ssh
apt-get install syslog-ng
```
=== "CentOS / RedHat"
```ssh
yum install syslog-ng
```
Once syslog-ng is installed, edit the relevant config file (most
likely /etc/syslog-ng/syslog-ng.conf) and paste the following:

View File

@@ -139,7 +139,7 @@ DAEMON_OPTS="-p thread_pool_min=5 -p thread_pool_max=500 -p thread_pool_timeout=
Edit librenms.conf and modify the Apache Virtual Host listening port.
- Modify:`<VirtualHost *:80>` to: `<VirtualHost *:8080>`
- Modify: `<VirtualHost *:80>` to `<VirtualHost *:8080>`
```bash
vim /etc/httpd/conf.d/librenms.conf
@@ -147,7 +147,7 @@ vim /etc/httpd/conf.d/librenms.conf
Varnish can not share a port with Apache. Change the Apache listening port to 8080.
- Modify:`Listen 80` to:`Listen 8080`
- Modify: `Listen 80` to `Listen 8080`
```bash
vim /etc/httpd/conf/httpd.conf

View File

@@ -3,10 +3,8 @@ path: blob/master/doc/
# Network-WeatherMap with LibreNMS
Integrating LibreNMS with Network-Weathermap, allows you to build network
Integrating LibreNMS with [Network-Weathermap](https://network-weathermap.com/), allows you to build network
maps to help visulaize network traffic flow rates.
[Link](https://network-weathermap.com/) to Network-Wearthermap Official
Website
## Prerequisites
@@ -19,17 +17,27 @@ Network-WeatherMap requires php pear to work.
Extract to your LibreNMS plugins directory `/opt/librenms/html/plugins`
so you should see something like `/opt/librenms/html/plugins/Weathermap/`
The best way to do this is via git. Go to your install directory and
then `/opt/librenms/html/plugins`
Enter:
`git clone https://github.com/librenms-plugins/Weathermap.git`
then `/opt/librenms/html/plugins` enter:
```bash
git clone https://github.com/librenms-plugins/Weathermap.git
```
## Step 2
Inside the html/plugins directory, change the ownership of the
Weathermap directory by typing `chown -R librenms:librenms Weathermap/`
Make the configs directory writeable `chmod 775 /opt/librenms/html/plugins/Weathermap/configs`
Note if you are using SELinux you need to input the following
command `chcon -R -t httpd_cache_t Weathermap/`
Make the configs directory writeable.
```bash
chmod 775 /opt/librenms/html/plugins/Weathermap/configs
```
Note if you are using SELinux you need to input the following command
```bash
chcon -R -t httpd_cache_t Weathermap/
```
## Step 3
@@ -42,7 +50,7 @@ Enable the cron process by editing your current LibreNMS cron file
## Step 4
Enable the plugin from LibreNMS Web UI in OverView ->Plugins -> Plugin Admin menu.
Enable the plugin from LibreNMS Web UI in OverView -> Plugins -> Plugin Admin menu.
## Step 5
@@ -50,15 +58,15 @@ Now you should see Weathermap Overview -> Plugins -> Weathermap
Create your maps, please note when you create a MAP, please click Map
Style, ensure Overlib is selected for HTML Style and click submit.
Also, ensure you set an output image filename and output HTML filename in Map Properties.
I'd recommend you use the output folder as this is excluded from git
updates (i.e enter output/mymap.png and output/mymap.html).
I'd recommend you use the `output` folder as this is excluded from git
updates (i.e. use `output/mymap.png` and `output/mymap.html`).
Optional: If your install is in another directory than standard, set
`$basehref` within `map-poller.php`.
# WeatherMapper
Automatically generate weathermaps from a LibreNMS database using WeatherMapper [Link](https://github.com/pblasquez/weathermapper)
Automatically generate weathermaps from a LibreNMS database using [WeatherMapper](https://github.com/pblasquez/weathermapper).
![Example Network Weather Map](/img/network-weather-map.png)

View File

@@ -77,21 +77,21 @@ $config['leaflet']['group_radius'] = 1;
# Geocode engine config
```php
$config['geoloc']['engine'] = "google";// Valid options are google, mapquest or bing
$config['geoloc']['engine'] = "google"; // Valid options are google, mapquest or bing
$config['geoloc']['api_key'] = "abcdefghijklmnopqrstuvwxyz";
```
Google:
Pros: fast, accurate
Google:
Pros: fast, accurate
Cons: requires a credit card even for a free account
MapQuest:
Pros: free, no credit card required
MapQuest:
Pros: free, no credit card required
Cons: inaccurate: most addresses are returned as locations at the center of the US
Bing:
Pros: free, no credit card required, accurate
Cons: Microsoft(debatable)
Bing:
Pros: free, no credit card required, accurate
Cons: Microsoft (debatable)
# Jquery-Mapael config
@@ -100,11 +100,11 @@ world, set default coordinates of where the map will zoom and the zoom
level by default. An example of this is:
```php
$config['map']['engine'] = "jquery-mapael";
$config['mapael']['default_map'] = 'mapael-maps/united_kingdom/united_kingdom.js';
$config['mapael']['map_width'] = 400;
$config['mapael']['default_lat'] = '50.898482';
$config['mapael']['default_lng'] = '-3.401402';
$config['map']['engine'] = "jquery-mapael";
$config['mapael']['default_map'] = 'mapael-maps/united_kingdom/united_kingdom.js';
$config['mapael']['map_width'] = 400;
$config['mapael']['default_lat'] = '50.898482';
$config['mapael']['default_lng'] = '-3.401402';
$config['mapael']['default_zoom'] = 20;
```