mirror of
https://github.com/netdata/netdata.git
synced 2025-04-12 08:48:12 +00:00
remove deprecated fping.plugin in accordance with v1.37.0 deprecation notice (#14073)
This commit is contained in:
parent
ab28a99a48
commit
4322b1973d
23 changed files with 3 additions and 539 deletions
.github
.gitignorebuild_external/scenarios
collectors
configure.achealth
packaging
system
tests/alarm_repetition
web/gui
4
.github/labeler.yml
vendored
4
.github/labeler.yml
vendored
|
@ -88,10 +88,6 @@ collectors/ebpf:
|
||||||
- collectors/ebpf.plugin/*
|
- collectors/ebpf.plugin/*
|
||||||
- collectors/ebpf.plugin/**/*
|
- collectors/ebpf.plugin/**/*
|
||||||
|
|
||||||
collectors/fping:
|
|
||||||
- collectors/fping.plugin/*
|
|
||||||
- collectors/fping.plugin/**/*
|
|
||||||
|
|
||||||
collectors/freebsd:
|
collectors/freebsd:
|
||||||
- collectors/freebsd.plugin/*
|
- collectors/freebsd.plugin/*
|
||||||
- collectors/freebsd.plugin/**/*
|
- collectors/freebsd.plugin/**/*
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -137,7 +137,6 @@ claim/netdata-claim.sh
|
||||||
collectors/tc.plugin/tc-qos-helper.sh
|
collectors/tc.plugin/tc-qos-helper.sh
|
||||||
collectors/charts.d.plugin/charts.d.plugin
|
collectors/charts.d.plugin/charts.d.plugin
|
||||||
collectors/python.d.plugin/python.d.plugin
|
collectors/python.d.plugin/python.d.plugin
|
||||||
collectors/fping.plugin/fping.plugin
|
|
||||||
collectors/ioping.plugin/ioping.plugin
|
collectors/ioping.plugin/ioping.plugin
|
||||||
collectors/go.d.plugin
|
collectors/go.d.plugin
|
||||||
web/netdata-switch-dashboard.sh
|
web/netdata-switch-dashboard.sh
|
||||||
|
|
|
@ -80,7 +80,6 @@
|
||||||
# go.d = yes
|
# go.d = yes
|
||||||
# apps = yes
|
# apps = yes
|
||||||
# charts.d = yes
|
# charts.d = yes
|
||||||
# fping = yes
|
|
||||||
# python.d = yes
|
# python.d = yes
|
||||||
# perf = yes
|
# perf = yes
|
||||||
# ioping = yes
|
# ioping = yes
|
||||||
|
@ -251,10 +250,6 @@
|
||||||
# update every = 1
|
# update every = 1
|
||||||
# command options =
|
# command options =
|
||||||
|
|
||||||
[plugin:fping]
|
|
||||||
# update every = 1
|
|
||||||
# command options =
|
|
||||||
|
|
||||||
[plugin:python.d]
|
[plugin:python.d]
|
||||||
# update every = 1
|
# update every = 1
|
||||||
# command options =
|
# command options =
|
||||||
|
|
|
@ -25,7 +25,6 @@ errors flood protection period = 0
|
||||||
apps = no
|
apps = no
|
||||||
go.d = no
|
go.d = no
|
||||||
perf = no
|
perf = no
|
||||||
fping = no
|
|
||||||
python.d = no
|
python.d = no
|
||||||
charts.d = no
|
charts.d = no
|
||||||
nfacct = no
|
nfacct = no
|
||||||
|
|
|
@ -410,7 +410,7 @@ The Netdata Agent can collect these system- and hardware-level metrics using a v
|
||||||
### Networks
|
### Networks
|
||||||
|
|
||||||
- [Access points](/collectors/charts.d.plugin/ap/README.md): Visualizes data related to access points.
|
- [Access points](/collectors/charts.d.plugin/ap/README.md): Visualizes data related to access points.
|
||||||
- [fping.plugin](fping.plugin/README.md): Measure network latency, jitter and packet loss between the monitored node
|
- [Ping](https://learn.netdata.cloud/docs/agent/collectors/go.d.plugin/modules/ping/): Measure network latency, jitter and packet loss between the monitored node
|
||||||
and any number of remote network end points.
|
and any number of remote network end points.
|
||||||
- [Netfilter](/collectors/nfacct.plugin/README.md): Collect netfilter firewall, connection tracker, and accounting
|
- [Netfilter](/collectors/nfacct.plugin/README.md): Collect netfilter firewall, connection tracker, and accounting
|
||||||
metrics using `libmnl` and `libnetfilter_acct`.
|
metrics using `libmnl` and `libnetfilter_acct`.
|
||||||
|
|
|
@ -10,7 +10,6 @@ SUBDIRS = \
|
||||||
cups.plugin \
|
cups.plugin \
|
||||||
diskspace.plugin \
|
diskspace.plugin \
|
||||||
timex.plugin \
|
timex.plugin \
|
||||||
fping.plugin \
|
|
||||||
ioping.plugin \
|
ioping.plugin \
|
||||||
freebsd.plugin \
|
freebsd.plugin \
|
||||||
freeipmi.plugin \
|
freeipmi.plugin \
|
||||||
|
|
|
@ -93,7 +93,6 @@ This section features a list of Netdata's plugins, with a boolean setting to ena
|
||||||
# enable running new plugins = yes
|
# enable running new plugins = yes
|
||||||
# check for new plugins every = 60
|
# check for new plugins every = 60
|
||||||
# slabinfo = no
|
# slabinfo = no
|
||||||
# fping = yes
|
|
||||||
# ioping = yes
|
# ioping = yes
|
||||||
# python.d = yes
|
# python.d = yes
|
||||||
# go.d = yes
|
# go.d = yes
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
AUTOMAKE_OPTIONS = subdir-objects
|
|
||||||
MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
|
|
||||||
|
|
||||||
CLEANFILES = \
|
|
||||||
fping.plugin \
|
|
||||||
$(NULL)
|
|
||||||
|
|
||||||
include $(top_srcdir)/build/subst.inc
|
|
||||||
SUFFIXES = .in
|
|
||||||
|
|
||||||
dist_plugins_SCRIPTS = \
|
|
||||||
fping.plugin \
|
|
||||||
$(NULL)
|
|
||||||
|
|
||||||
dist_noinst_DATA = \
|
|
||||||
fping.plugin.in \
|
|
||||||
README.md \
|
|
||||||
$(NULL)
|
|
||||||
|
|
||||||
dist_libconfig_DATA = \
|
|
||||||
fping.conf \
|
|
||||||
$(NULL)
|
|
|
@ -1,110 +0,0 @@
|
||||||
<!--
|
|
||||||
title: "fping.plugin"
|
|
||||||
custom_edit_url: https://github.com/netdata/netdata/edit/master/collectors/fping.plugin/README.md
|
|
||||||
-->
|
|
||||||
|
|
||||||
# fping.plugin
|
|
||||||
|
|
||||||
The fping plugin supports monitoring latency, packet loss and uptime of any number of network end points,
|
|
||||||
by pinging them with `fping`.
|
|
||||||
|
|
||||||
This plugin requires version 5.1 or newer of `fping` (earlier versions may or may not work). Our static builds and
|
|
||||||
Docker images come bundled with a known working version of `fping`. Native packages and local builds will need to
|
|
||||||
have a working version installed before the plugin is usable.
|
|
||||||
|
|
||||||
## Installing fping locally
|
|
||||||
|
|
||||||
If your distribution’s repositories do not include a working version of `fping`, the supplied plugin can install
|
|
||||||
it, by running:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
/usr/libexec/netdata/plugins.d/fping.plugin install
|
|
||||||
```
|
|
||||||
|
|
||||||
The above will download, build and install the right version as `/usr/local/bin/fping`. This requires a working C
|
|
||||||
compiler, GNU autotools (at least autoconf and automake), and GNU make. On Debian or Ubuntu, you can pull in most
|
|
||||||
of the required tools by installing the `build-essential` package (this should include everything except automake
|
|
||||||
and autoconf).
|
|
||||||
|
|
||||||
## Configuration
|
|
||||||
|
|
||||||
Then you need to edit `/etc/netdata/fping.conf` (to edit it on your system run
|
|
||||||
`/etc/netdata/edit-config fping.conf`) like this:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
# set here all the hosts you need to ping
|
|
||||||
# I suggest to use hostnames and put their IPs in /etc/hosts
|
|
||||||
hosts="host1 host2 host3"
|
|
||||||
|
|
||||||
# override the chart update frequency - the default is inherited from Netdata
|
|
||||||
update_every=1
|
|
||||||
|
|
||||||
# time in milliseconds (1 sec = 1000 ms) to ping the hosts
|
|
||||||
# 200 = 5 pings per second
|
|
||||||
ping_every=200
|
|
||||||
|
|
||||||
# other fping options - these are the defaults
|
|
||||||
fping_opts="-R -b 56 -i 1 -r 0 -t 5000"
|
|
||||||
```
|
|
||||||
|
|
||||||
## alarms
|
|
||||||
|
|
||||||
Netdata will automatically attach a few alarms for each host.
|
|
||||||
Check the [latest versions of the fping alarms](https://raw.githubusercontent.com/netdata/netdata/master/health/health.d/fping.conf)
|
|
||||||
|
|
||||||
## Additional Tips
|
|
||||||
|
|
||||||
### Customizing Amount of Pings Per Second
|
|
||||||
|
|
||||||
For example, to update the chart every 10 seconds and use 2 pings every 10 seconds, use this:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
# Chart Update Frequency (Time in Seconds)
|
|
||||||
update_every=10
|
|
||||||
|
|
||||||
# Time in Milliseconds (1 sec = 1000 ms) to Ping the Hosts
|
|
||||||
# The Following Example Sends 1 Ping Every 5000 ms
|
|
||||||
# Calculation Formula: ping_every = (update_every * 1000 ) / 2
|
|
||||||
ping_every=5000
|
|
||||||
```
|
|
||||||
|
|
||||||
### Multiple fping Plugins With Different Settings
|
|
||||||
|
|
||||||
You may need to run multiple fping plugins with different settings for different end points.
|
|
||||||
For example, you may need to ping a few hosts 10 times per second, and others once per second.
|
|
||||||
|
|
||||||
Netdata allows you to add as many `fping` plugins as you like.
|
|
||||||
|
|
||||||
Follow this procedure:
|
|
||||||
|
|
||||||
**1. Create New fping Configuration File**
|
|
||||||
|
|
||||||
```sh
|
|
||||||
# Step Into Configuration Directory
|
|
||||||
cd /etc/netdata
|
|
||||||
|
|
||||||
# Copy Original fping Configuration File To New Configuration File
|
|
||||||
cp fping.conf fping2.conf
|
|
||||||
```
|
|
||||||
|
|
||||||
Edit `fping2.conf` and set the settings and the hosts you need for the seconds instance.
|
|
||||||
|
|
||||||
**2. Soft Link Original fping Plugin to New Plugin File**
|
|
||||||
|
|
||||||
```sh
|
|
||||||
# Become root (If The Step Step Is Performed As Non-Root User)
|
|
||||||
sudo su
|
|
||||||
|
|
||||||
# Step Into The Plugins Directory
|
|
||||||
cd /usr/libexec/netdata/plugins.d
|
|
||||||
|
|
||||||
# Link fping.plugin to fping2.plugin
|
|
||||||
ln -s fping.plugin fping2.plugin
|
|
||||||
```
|
|
||||||
|
|
||||||
That's it. Netdata will detect the new plugin and start it.
|
|
||||||
|
|
||||||
You can name the new plugin any name you like.
|
|
||||||
Just make sure the plugin and the configuration file have the same name.
|
|
||||||
|
|
||||||
|
|
|
@ -1,44 +0,0 @@
|
||||||
# no need for shebang - this file is sourced from fping.plugin
|
|
||||||
|
|
||||||
# fping.plugin requires a recent version of fping.
|
|
||||||
#
|
|
||||||
# You can get it on your system, by running:
|
|
||||||
#
|
|
||||||
# /usr/libexec/netdata/plugins.d/fping.plugin install
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
# configuration options
|
|
||||||
|
|
||||||
# The fping binary to use. We need one that can output netdata friendly info
|
|
||||||
# (supporting: -N). If you have multiple versions, put here the full filename
|
|
||||||
# of the right one
|
|
||||||
|
|
||||||
#fping="/usr/local/bin/fping"
|
|
||||||
|
|
||||||
|
|
||||||
# a space separated list of hosts to fping
|
|
||||||
# we suggest to put names here and the IPs of these names in /etc/hosts
|
|
||||||
|
|
||||||
hosts=""
|
|
||||||
|
|
||||||
|
|
||||||
# The update frequency of the chart - the default is inherited from netdata
|
|
||||||
|
|
||||||
#update_every=2
|
|
||||||
|
|
||||||
|
|
||||||
# The time in milliseconds (1 sec = 1000 ms) to ping the hosts
|
|
||||||
# by default 5 pings per host per iteration
|
|
||||||
# fping will not allow this to be below 20ms
|
|
||||||
|
|
||||||
#ping_every="200"
|
|
||||||
|
|
||||||
|
|
||||||
# other fping options - defaults:
|
|
||||||
# -R = send packets with random data
|
|
||||||
# -b 56 = the number of bytes per packet
|
|
||||||
# -i 1 = 1 ms when sending packets to others hosts (switching hosts)
|
|
||||||
# -r 0 = never retry packets
|
|
||||||
# -t 5000 = per packet timeout at 5000 ms
|
|
||||||
|
|
||||||
#fping_opts="-R -b 56 -i 1 -r 0 -t 5000"
|
|
|
@ -1,202 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# netdata
|
|
||||||
# real-time performance and health monitoring, done right!
|
|
||||||
# (C) 2017 Costa Tsaousis <costa@tsaousis.gr>
|
|
||||||
# GPL v3+
|
|
||||||
#
|
|
||||||
# This plugin requires a latest version of fping.
|
|
||||||
# You can compile it from source, by running me with option: install
|
|
||||||
|
|
||||||
export PATH="${PATH}:/sbin:/usr/sbin:/usr/local/sbin"
|
|
||||||
export LC_ALL=C
|
|
||||||
|
|
||||||
if [ "${1}" = "install" ]
|
|
||||||
then
|
|
||||||
[ "${UID}" != 0 ] && echo >&2 "Please run me as root. This will install a single binary file: /usr/local/bin/fping." && exit 1
|
|
||||||
|
|
||||||
[ -z "${2}" ] && fping_version="5.1" || fping_version="${2}"
|
|
||||||
|
|
||||||
run() {
|
|
||||||
printf >&2 " > "
|
|
||||||
printf >&2 "%q " "${@}"
|
|
||||||
printf >&2 "\n"
|
|
||||||
"${@}" || exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
download() {
|
|
||||||
local curl="$(which curl 2>/dev/null || command -v curl 2>/dev/null)"
|
|
||||||
[ ! -z "${curl}" ] && run curl -s -L "${1}" && return 0
|
|
||||||
|
|
||||||
local wget="$(which wget 2>/dev/null || command -v wget 2>/dev/null)"
|
|
||||||
[ ! -z "${wget}" ] && run wget -q -O - "${1}" && return 0
|
|
||||||
|
|
||||||
echo >&2 "Cannot find 'curl' or 'wget' in this system." && exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
[ ! -d /usr/src ] && run mkdir -p /usr/src
|
|
||||||
[ ! -d /usr/local/bin ] && run mkdir -p /usr/local/bin
|
|
||||||
|
|
||||||
run cd /usr/src
|
|
||||||
|
|
||||||
if [ -d "fping-${fping_version}" ]
|
|
||||||
then
|
|
||||||
run rm -rf "fping-${fping_version}" || exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
download "https://github.com/schweikert/fping/releases/download/v${fping_version}/fping-${fping_version}.tar.gz" | run tar -zxvpf -
|
|
||||||
[ $? -ne 0 ] && exit 1
|
|
||||||
run cd "fping-${fping_version}" || exit 1
|
|
||||||
|
|
||||||
run ./configure --prefix=/usr/local
|
|
||||||
run make clean
|
|
||||||
run make
|
|
||||||
if [ -f /usr/local/bin/fping ]
|
|
||||||
then
|
|
||||||
run mv -f /usr/local/bin/fping /usr/local/bin/fping.old
|
|
||||||
fi
|
|
||||||
run mv src/fping /usr/local/bin/fping
|
|
||||||
run chown root:root /usr/local/bin/fping
|
|
||||||
run chmod 4755 /usr/local/bin/fping
|
|
||||||
echo >&2
|
|
||||||
echo >&2 "All done, you have a compatible fping now at /usr/local/bin/fping."
|
|
||||||
echo >&2
|
|
||||||
|
|
||||||
fping="$(which fping 2>/dev/null || command -v fping 2>/dev/null)"
|
|
||||||
if [ "${fping}" != "/usr/local/bin/fping" ]
|
|
||||||
then
|
|
||||||
echo >&2 "You have another fping installed at: ${fping}."
|
|
||||||
echo >&2 "Please set:"
|
|
||||||
echo >&2
|
|
||||||
echo >&2 " fping=\"/usr/local/bin/fping\""
|
|
||||||
echo >&2
|
|
||||||
echo >&2 "at /etc/netdata/fping.conf"
|
|
||||||
echo >&2
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
PROGRAM_NAME="$(basename "${0}")"
|
|
||||||
|
|
||||||
logdate() {
|
|
||||||
date "+%Y-%m-%d %H:%M:%S"
|
|
||||||
}
|
|
||||||
|
|
||||||
log() {
|
|
||||||
local status="${1}"
|
|
||||||
shift
|
|
||||||
|
|
||||||
echo >&2 "$(logdate): ${PROGRAM_NAME}: ${status}: ${*}"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
warning() {
|
|
||||||
log WARNING "${@}"
|
|
||||||
}
|
|
||||||
|
|
||||||
error() {
|
|
||||||
log ERROR "${@}"
|
|
||||||
}
|
|
||||||
|
|
||||||
info() {
|
|
||||||
log INFO "${@}"
|
|
||||||
}
|
|
||||||
|
|
||||||
fatal() {
|
|
||||||
log FATAL "${@}"
|
|
||||||
echo "DISABLE"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
debug=0
|
|
||||||
debug() {
|
|
||||||
[ $debug -eq 1 ] && log DEBUG "${@}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
# store in ${plugin} the name we run under
|
|
||||||
# this allows us to copy/link fping.plugin under a different name
|
|
||||||
# to have multiple fping plugins running with different settings
|
|
||||||
plugin="${PROGRAM_NAME/.plugin/}"
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
# the frequency to send info to netdata
|
|
||||||
# passed by netdata as the first parameter
|
|
||||||
update_every="${1-1}"
|
|
||||||
|
|
||||||
# the netdata configuration directory
|
|
||||||
# passed by netdata as an environment variable
|
|
||||||
[ -z "${NETDATA_USER_CONFIG_DIR}" ] && NETDATA_USER_CONFIG_DIR="@configdir_POST@"
|
|
||||||
[ -z "${NETDATA_STOCK_CONFIG_DIR}" ] && NETDATA_STOCK_CONFIG_DIR="@libconfigdir_POST@"
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
# configuration options
|
|
||||||
# can be overwritten at /etc/netdata/fping.conf
|
|
||||||
|
|
||||||
# the fping binary to use
|
|
||||||
# we need one that can output netdata friendly info (supporting: -N)
|
|
||||||
# if you have multiple versions, put here the full filename of the right one
|
|
||||||
fping="$( which fping 2>/dev/null || command -v fping 2>/dev/null )"
|
|
||||||
|
|
||||||
# a space separated list of hosts to fping
|
|
||||||
# we suggest to put names here and the IPs of these names in /etc/hosts
|
|
||||||
hosts=""
|
|
||||||
|
|
||||||
# the time in milliseconds (1 sec = 1000 ms)
|
|
||||||
# to ping the hosts - by default 5 pings per host per iteration
|
|
||||||
ping_every="$((update_every * 1000 / 5))"
|
|
||||||
|
|
||||||
# fping options
|
|
||||||
fping_opts="-R -b 56 -i 1 -r 0 -t 5000"
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
# load the configuration files
|
|
||||||
|
|
||||||
for CONFIG in "${NETDATA_STOCK_CONFIG_DIR}/${plugin}.conf" "${NETDATA_USER_CONFIG_DIR}/${plugin}.conf"
|
|
||||||
do
|
|
||||||
if [ -f "${CONFIG}" ]
|
|
||||||
then
|
|
||||||
info "Loading config file '${CONFIG}'..."
|
|
||||||
source "${CONFIG}"
|
|
||||||
[ $? -ne 0 ] && error "Failed to load config file '${CONFIG}'."
|
|
||||||
else
|
|
||||||
warning "Cannot find file '${CONFIG}'."
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -z "${hosts}" ]
|
|
||||||
then
|
|
||||||
fatal "no hosts configured - nothing to do."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "${fping}" ]
|
|
||||||
then
|
|
||||||
fatal "fping command is not found. Please set its full path in '${NETDATA_USER_CONFIG_DIR}/${plugin}.conf'"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -x "${fping}" ]
|
|
||||||
then
|
|
||||||
fatal "fping command '${fping}' is not executable - cannot proceed."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ${ping_every} -lt 20 ]
|
|
||||||
then
|
|
||||||
warning "ping every was set to ${ping_every} but 20 is the minimum for non-root users. Setting it to 20 ms."
|
|
||||||
ping_every=20
|
|
||||||
fi
|
|
||||||
|
|
||||||
# the fping options we will use
|
|
||||||
options=( -N -l -Q ${update_every} -p ${ping_every} ${fping_opts} ${hosts} )
|
|
||||||
|
|
||||||
# execute fping
|
|
||||||
info "starting fping: ${fping} ${options[*]}"
|
|
||||||
exec "${fping}" "${options[@]}"
|
|
||||||
|
|
||||||
# if we cannot execute fping, stop
|
|
||||||
fatal "command '${fping} ${options[*]}' failed to be executed (returned code $?)."
|
|
|
@ -15,7 +15,6 @@ from external processes, thus allowing Netdata to use **external plugins**.
|
||||||
|[apps.plugin](/collectors/apps.plugin/README.md)|`C`|linux, freebsd|monitors the whole process tree on Linux and FreeBSD and breaks down system resource usage by **process**, **user** and **user group**.|
|
|[apps.plugin](/collectors/apps.plugin/README.md)|`C`|linux, freebsd|monitors the whole process tree on Linux and FreeBSD and breaks down system resource usage by **process**, **user** and **user group**.|
|
||||||
|[charts.d.plugin](/collectors/charts.d.plugin/README.md)|`BASH`|all|a **plugin orchestrator** for data collection modules written in `BASH` v4+.|
|
|[charts.d.plugin](/collectors/charts.d.plugin/README.md)|`BASH`|all|a **plugin orchestrator** for data collection modules written in `BASH` v4+.|
|
||||||
|[cups.plugin](/collectors/cups.plugin/README.md)|`C`|all|monitors **CUPS**|
|
|[cups.plugin](/collectors/cups.plugin/README.md)|`C`|all|monitors **CUPS**|
|
||||||
|[fping.plugin](/collectors/fping.plugin/README.md)|`C`|all|measures network latency, jitter and packet loss between the monitored node and any number of remote network end points.|
|
|
||||||
|[ioping.plugin](/collectors/ioping.plugin/README.md)|`C`|all|measures disk latency.|
|
|[ioping.plugin](/collectors/ioping.plugin/README.md)|`C`|all|measures disk latency.|
|
||||||
|[freeipmi.plugin](/collectors/freeipmi.plugin/README.md)|`C`|linux|collects metrics from enterprise hardware sensors, on Linux servers.|
|
|[freeipmi.plugin](/collectors/freeipmi.plugin/README.md)|`C`|linux|collects metrics from enterprise hardware sensors, on Linux servers.|
|
||||||
|[nfacct.plugin](/collectors/nfacct.plugin/README.md)|`C`|linux|collects netfilter firewall, connection tracker and accounting metrics using `libmnl` and `libnetfilter_acct`.|
|
|[nfacct.plugin](/collectors/nfacct.plugin/README.md)|`C`|linux|collects netfilter firewall, connection tracker and accounting metrics using `libmnl` and `libnetfilter_acct`.|
|
||||||
|
@ -71,7 +70,6 @@ Example:
|
||||||
# check for new plugins every = 60
|
# check for new plugins every = 60
|
||||||
|
|
||||||
# charts.d = yes
|
# charts.d = yes
|
||||||
# fping = yes
|
|
||||||
# ioping = yes
|
# ioping = yes
|
||||||
# python.d = yes
|
# python.d = yes
|
||||||
```
|
```
|
||||||
|
|
|
@ -1702,7 +1702,6 @@ AC_CONFIG_FILES([
|
||||||
collectors/charts.d.plugin/Makefile
|
collectors/charts.d.plugin/Makefile
|
||||||
collectors/diskspace.plugin/Makefile
|
collectors/diskspace.plugin/Makefile
|
||||||
collectors/timex.plugin/Makefile
|
collectors/timex.plugin/Makefile
|
||||||
collectors/fping.plugin/Makefile
|
|
||||||
collectors/ioping.plugin/Makefile
|
collectors/ioping.plugin/Makefile
|
||||||
collectors/freebsd.plugin/Makefile
|
collectors/freebsd.plugin/Makefile
|
||||||
collectors/freeipmi.plugin/Makefile
|
collectors/freeipmi.plugin/Makefile
|
||||||
|
|
|
@ -42,7 +42,6 @@ dist_healthconfig_DATA = \
|
||||||
health.d/dockerd.conf \
|
health.d/dockerd.conf \
|
||||||
health.d/entropy.conf \
|
health.d/entropy.conf \
|
||||||
health.d/exporting.conf \
|
health.d/exporting.conf \
|
||||||
health.d/fping.conf \
|
|
||||||
health.d/geth.conf \
|
health.d/geth.conf \
|
||||||
health.d/ioping.conf \
|
health.d/ioping.conf \
|
||||||
health.d/gearman.conf \
|
health.d/gearman.conf \
|
||||||
|
|
|
@ -52,7 +52,7 @@ Navigate to the health configuration directory to see all the available files an
|
||||||
cd /usr/lib/netdata/conf.d/health.d/
|
cd /usr/lib/netdata/conf.d/health.d/
|
||||||
ls
|
ls
|
||||||
adaptec_raid.conf entropy.conf memory.conf squid.conf
|
adaptec_raid.conf entropy.conf memory.conf squid.conf
|
||||||
am2320.conf fping.conf mongodb.conf
|
am2320.conf mongodb.conf
|
||||||
apache.conf mysql.conf swap.conf
|
apache.conf mysql.conf swap.conf
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
|
@ -1,64 +0,0 @@
|
||||||
|
|
||||||
template: fping_last_collected_secs
|
|
||||||
families: *
|
|
||||||
on: fping.latency
|
|
||||||
class: Latency
|
|
||||||
type: Other
|
|
||||||
component: Network
|
|
||||||
calc: $now - $last_collected_t
|
|
||||||
units: seconds ago
|
|
||||||
every: 10s
|
|
||||||
warn: $this > (($status >= $WARNING) ? ($update_every) : ( 5 * $update_every))
|
|
||||||
crit: $this > (($status == $CRITICAL) ? ($update_every) : (60 * $update_every))
|
|
||||||
delay: down 5m multiplier 1.5 max 1h
|
|
||||||
info: number of seconds since the last successful data collection
|
|
||||||
to: sysadmin
|
|
||||||
|
|
||||||
template: fping_host_reachable
|
|
||||||
families: *
|
|
||||||
on: fping.latency
|
|
||||||
class: Errors
|
|
||||||
type: Other
|
|
||||||
component: Network
|
|
||||||
calc: $average != nan
|
|
||||||
units: up/down
|
|
||||||
every: 10s
|
|
||||||
crit: $this == 0
|
|
||||||
delay: down 30m multiplier 1.5 max 2h
|
|
||||||
info: reachability status of the network host (0: unreachable, 1: reachable)
|
|
||||||
to: sysadmin
|
|
||||||
|
|
||||||
template: fping_host_latency
|
|
||||||
families: *
|
|
||||||
on: fping.latency
|
|
||||||
class: Latency
|
|
||||||
type: Other
|
|
||||||
component: Network
|
|
||||||
lookup: average -10s unaligned of average
|
|
||||||
units: ms
|
|
||||||
every: 10s
|
|
||||||
green: 500
|
|
||||||
red: 1000
|
|
||||||
warn: $this > $green OR $max > $red
|
|
||||||
crit: $this > $red
|
|
||||||
delay: down 30m multiplier 1.5 max 2h
|
|
||||||
info: average latency to the network host over the last 10 seconds
|
|
||||||
to: sysadmin
|
|
||||||
|
|
||||||
template: fping_packet_loss
|
|
||||||
families: *
|
|
||||||
on: fping.quality
|
|
||||||
class: Errors
|
|
||||||
type: System
|
|
||||||
component: Network
|
|
||||||
lookup: average -10m unaligned of returned
|
|
||||||
calc: 100 - $this
|
|
||||||
green: 1
|
|
||||||
red: 10
|
|
||||||
units: %
|
|
||||||
every: 10s
|
|
||||||
warn: $this > $green
|
|
||||||
crit: $this > $red
|
|
||||||
delay: down 30m multiplier 1.5 max 2h
|
|
||||||
info: packet loss ratio to the network host over the last 10 minutes
|
|
||||||
to: sysadmin
|
|
|
@ -76,9 +76,6 @@ RUN mkdir -p /opt/src /var/log/netdata && \
|
||||||
ln -sf /dev/stdout /var/log/netdata/access.log && \
|
ln -sf /dev/stdout /var/log/netdata/access.log && \
|
||||||
ln -sf /dev/stdout /var/log/netdata/debug.log && \
|
ln -sf /dev/stdout /var/log/netdata/debug.log && \
|
||||||
ln -sf /dev/stderr /var/log/netdata/error.log && \
|
ln -sf /dev/stderr /var/log/netdata/error.log && \
|
||||||
# fping from alpine apk is on a different location. Moving it.
|
|
||||||
ln -snf /usr/sbin/fping /usr/local/bin/fping && \
|
|
||||||
chmod 4755 /usr/local/bin/fping && \
|
|
||||||
# Add netdata user
|
# Add netdata user
|
||||||
addgroup -g ${NETDATA_GID} -S "${DOCKER_GRP}" && \
|
addgroup -g ${NETDATA_GID} -S "${DOCKER_GRP}" && \
|
||||||
adduser -S -H -s /usr/sbin/nologin -u ${NETDATA_GID} -h /etc/netdata -G "${DOCKER_GRP}" "${DOCKER_USR}"
|
adduser -S -H -s /usr/sbin/nologin -u ${NETDATA_GID} -h /etc/netdata -G "${DOCKER_GRP}" "${DOCKER_USR}"
|
||||||
|
|
|
@ -218,12 +218,6 @@ if [ -f "usr/libexec/netdata/plugins.d/go.d.plugin" ] && command -v setcap 1>/de
|
||||||
run setcap "cap_net_admin+epi cap_net_raw=eip" "usr/libexec/netdata/plugins.d/go.d.plugin"
|
run setcap "cap_net_admin+epi cap_net_raw=eip" "usr/libexec/netdata/plugins.d/go.d.plugin"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# fix the fping binary
|
|
||||||
if [ -f bin/fping ]; then
|
|
||||||
run chown root:${NETDATA_GROUP} bin/fping
|
|
||||||
run chmod 4750 bin/fping
|
|
||||||
fi
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
echo "Configure TLS certificate paths"
|
echo "Configure TLS certificate paths"
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# shellcheck source=packaging/makeself/functions.sh
|
|
||||||
. "$(dirname "${0}")/../functions.sh" "${@}" || exit 1
|
|
||||||
|
|
||||||
version="5.1"
|
|
||||||
|
|
||||||
# shellcheck disable=SC2015
|
|
||||||
[ "${GITHUB_ACTIONS}" = "true" ] && echo "::group::Building fping" || true
|
|
||||||
|
|
||||||
fetch "fping-${version}" "https://fping.org/dist/fping-${version}.tar.gz" \
|
|
||||||
1ee5268c063d76646af2b4426052e7d81a42b657e6a77d8e7d3d2e60fd7409fe fping
|
|
||||||
|
|
||||||
export CFLAGS="-static -I/openssl-static/include -pipe"
|
|
||||||
export LDFLAGS="-static -L/openssl-static/lib"
|
|
||||||
export PKG_CONFIG_PATH="/openssl-static/lib/pkgconfig"
|
|
||||||
|
|
||||||
if [ "${CACHE_HIT:-0}" -eq 0 ]; then
|
|
||||||
run ./configure \
|
|
||||||
--prefix="${NETDATA_INSTALL_PATH}" \
|
|
||||||
--enable-ipv4 \
|
|
||||||
--enable-ipv6 \
|
|
||||||
--disable-dependency-tracking
|
|
||||||
|
|
||||||
cat > doc/Makefile <<-EOF
|
|
||||||
all:
|
|
||||||
clean:
|
|
||||||
install:
|
|
||||||
EOF
|
|
||||||
|
|
||||||
run make clean
|
|
||||||
run make -j "$(nproc)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
run make install
|
|
||||||
|
|
||||||
store_cache fping "${NETDATA_MAKESELF_PATH}/tmp/fping-${version}"
|
|
||||||
|
|
||||||
if [ "${NETDATA_BUILD_WITH_DEBUG}" -eq 0 ]; then
|
|
||||||
run strip "${NETDATA_INSTALL_PATH}"/bin/fping
|
|
||||||
fi
|
|
||||||
|
|
||||||
# shellcheck disable=SC2015
|
|
||||||
[ "${GITHUB_ACTIONS}" = "true" ] && echo "::endgroup::" || true
|
|
|
@ -52,7 +52,7 @@ CapabilityBoundingSet=CAP_SYS_ADMIN CAP_PERFMON
|
||||||
CapabilityBoundingSet=CAP_SYS_PTRACE
|
CapabilityBoundingSet=CAP_SYS_PTRACE
|
||||||
# is required for ebpf plugin
|
# is required for ebpf plugin
|
||||||
CapabilityBoundingSet=CAP_SYS_RESOURCE
|
CapabilityBoundingSet=CAP_SYS_RESOURCE
|
||||||
# is required for fping app
|
# is required for go.d/ping app
|
||||||
CapabilityBoundingSet=CAP_NET_RAW
|
CapabilityBoundingSet=CAP_NET_RAW
|
||||||
# is required for cgroups plugin
|
# is required for cgroups plugin
|
||||||
CapabilityBoundingSet=CAP_SYS_CHROOT
|
CapabilityBoundingSet=CAP_SYS_CHROOT
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
nfacct = no
|
nfacct = no
|
||||||
python.d = no
|
python.d = no
|
||||||
apps = no
|
apps = no
|
||||||
fping = no
|
|
||||||
cups = no
|
cups = no
|
||||||
|
|
||||||
[health]
|
[health]
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
nfacct = no
|
nfacct = no
|
||||||
python.d = no
|
python.d = no
|
||||||
apps = no
|
apps = no
|
||||||
fping = no
|
|
||||||
cups = no
|
cups = no
|
||||||
|
|
||||||
[health]
|
[health]
|
||||||
|
|
|
@ -297,12 +297,6 @@ netdataDashboard.menu = {
|
||||||
info: 'Docker containers state and disk usage.'
|
info: 'Docker containers state and disk usage.'
|
||||||
},
|
},
|
||||||
|
|
||||||
'fping': {
|
|
||||||
title: 'fping',
|
|
||||||
icon: '<i class="fas fa-exchange-alt"></i>',
|
|
||||||
info: 'Network latency statistics, via <b>fping</b>. <b>fping</b> is a program to send ICMP echo probes to network hosts, similar to <code>ping</code>, but much better performing when pinging multiple hosts. fping versions after 3.15 can be directly used as netdata plugins.'
|
|
||||||
},
|
|
||||||
|
|
||||||
'ping': {
|
'ping': {
|
||||||
title: 'Ping',
|
title: 'Ping',
|
||||||
icon: '<i class="fas fa-exchange-alt"></i>',
|
icon: '<i class="fas fa-exchange-alt"></i>',
|
||||||
|
@ -4648,19 +4642,6 @@ netdataDashboard.context = {
|
||||||
info: 'Statistics about RetroShare\'s DHT. These values are estimated!'
|
info: 'Statistics about RetroShare\'s DHT. These values are estimated!'
|
||||||
},
|
},
|
||||||
|
|
||||||
// ------------------------------------------------------------------------
|
|
||||||
// fping
|
|
||||||
|
|
||||||
'fping.quality': {
|
|
||||||
colors: NETDATA.colors[10],
|
|
||||||
height: 0.5
|
|
||||||
},
|
|
||||||
|
|
||||||
'fping.packets': {
|
|
||||||
height: 0.5
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
// containers
|
// containers
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue