summaryrefslogtreecommitdiffstats
path: root/src/collectors/charts.d.plugin/ap
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-08-26 08:15:24 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-08-26 08:15:35 +0000
commitf09848204fa5283d21ea43e262ee41aa578e1808 (patch)
treec62385d7adf209fa6a798635954d887f718fb3fb /src/collectors/charts.d.plugin/ap
parentReleasing debian version 1.46.3-2. (diff)
downloadnetdata-f09848204fa5283d21ea43e262ee41aa578e1808.tar.xz
netdata-f09848204fa5283d21ea43e262ee41aa578e1808.zip
Merging upstream version 1.47.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/collectors/charts.d.plugin/ap')
l---------src/collectors/charts.d.plugin/ap/README.md1
-rw-r--r--src/collectors/charts.d.plugin/ap/ap.chart.sh179
-rw-r--r--src/collectors/charts.d.plugin/ap/ap.conf23
-rw-r--r--src/collectors/charts.d.plugin/ap/integrations/access_points.md174
-rw-r--r--src/collectors/charts.d.plugin/ap/metadata.yaml146
5 files changed, 0 insertions, 523 deletions
diff --git a/src/collectors/charts.d.plugin/ap/README.md b/src/collectors/charts.d.plugin/ap/README.md
deleted file mode 120000
index 5b6e75130..000000000
--- a/src/collectors/charts.d.plugin/ap/README.md
+++ /dev/null
@@ -1 +0,0 @@
-integrations/access_points.md \ No newline at end of file
diff --git a/src/collectors/charts.d.plugin/ap/ap.chart.sh b/src/collectors/charts.d.plugin/ap/ap.chart.sh
deleted file mode 100644
index 80c9dc602..000000000
--- a/src/collectors/charts.d.plugin/ap/ap.chart.sh
+++ /dev/null
@@ -1,179 +0,0 @@
-# shellcheck shell=bash
-# no need for shebang - this file is loaded from charts.d.plugin
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-# netdata
-# real-time performance and health monitoring, done right!
-# (C) 2016 Costa Tsaousis <costa@tsaousis.gr>
-#
-
-# _update_every is a special variable - it holds the number of seconds
-# between the calls of the _update() function
-ap_update_every=
-ap_priority=6900
-
-declare -A ap_devs=()
-
-# _check is called once, to find out if this chart should be enabled or not
-ap_check() {
- require_cmd iw || return 1
- local ev
- ev=$(run iw dev | awk '
- BEGIN {
- i = "";
- ssid = "";
- ap = 0;
- }
- /^[ \t]+Interface / {
- if( ap == 1 ) {
- print "ap_devs[" i "]=\"" ssid "\""
- }
-
- i = $2;
- ssid = "";
- ap = 0;
- }
- /^[ \t]+ssid / { ssid = $2; }
- /^[ \t]+type AP$/ { ap = 1; }
- END {
- if( ap == 1 ) {
- print "ap_devs[" i "]=\"" ssid "\""
- }
- }
- ')
- eval "${ev}"
-
- # this should return:
- # - 0 to enable the chart
- # - 1 to disable the chart
-
- [ ${#ap_devs[@]} -gt 0 ] && return 0
- error "no devices found in AP mode, with 'iw dev'"
- return 1
-}
-
-# _create is called once, to create the charts
-ap_create() {
- local ssid dev
-
- for dev in "${!ap_devs[@]}"; do
- ssid="${ap_devs[${dev}]}"
-
- # create the chart with 3 dimensions
- cat << EOF
-CHART ap_clients.${dev} '' "Connected clients to ${ssid} on ${dev}" "clients" ${dev} ap.clients line $((ap_priority + 1)) $ap_update_every '' '' 'ap'
-DIMENSION clients '' absolute 1 1
-
-CHART ap_bandwidth.${dev} '' "Bandwidth for ${ssid} on ${dev}" "kilobits/s" ${dev} ap.net area $((ap_priority + 2)) $ap_update_every '' '' 'ap'
-DIMENSION received '' incremental 8 1024
-DIMENSION sent '' incremental -8 1024
-
-CHART ap_packets.${dev} '' "Packets for ${ssid} on ${dev}" "packets/s" ${dev} ap.packets line $((ap_priority + 3)) $ap_update_every '' '' 'ap'
-DIMENSION received '' incremental 1 1
-DIMENSION sent '' incremental -1 1
-
-CHART ap_issues.${dev} '' "Transmit Issues for ${ssid} on ${dev}" "issues/s" ${dev} ap.issues line $((ap_priority + 4)) $ap_update_every '' '' 'ap'
-DIMENSION retries 'tx retries' incremental 1 1
-DIMENSION failures 'tx failures' incremental -1 1
-
-CHART ap_signal.${dev} '' "Average Signal for ${ssid} on ${dev}" "dBm" ${dev} ap.signal line $((ap_priority + 5)) $ap_update_every '' '' 'ap'
-DIMENSION signal 'average signal' absolute 1 1000
-
-CHART ap_bitrate.${dev} '' "Bitrate for ${ssid} on ${dev}" "Mbps" ${dev} ap.bitrate line $((ap_priority + 6)) $ap_update_every '' '' 'ap'
-DIMENSION receive '' absolute 1 1000
-DIMENSION transmit '' absolute -1 1000
-DIMENSION expected 'expected throughput' absolute 1 1000
-EOF
- done
-
- return 0
-}
-
-# _update is called continuously, to collect the values
-ap_update() {
- # the first argument to this function is the microseconds since last update
- # pass this parameter to the BEGIN statement (see below).
-
- # do all the work to collect / calculate the values
- # for each dimension
- # remember: KEEP IT SIMPLE AND SHORT
-
- for dev in "${!ap_devs[@]}"; do
- echo
- echo "DEVICE ${dev}"
- iw "${dev}" station dump
- done | awk '
- function zero_data() {
- dev = "";
- c = 0;
- rb = 0;
- tb = 0;
- rp = 0;
- tp = 0;
- tr = 0;
- tf = 0;
- tt = 0;
- rt = 0;
- s = 0;
- g = 0;
- e = 0;
- }
- function print_device() {
- if(dev != "" && length(dev) > 0) {
- print "BEGIN ap_clients." dev;
- print "SET clients = " c;
- print "END";
- print "BEGIN ap_bandwidth." dev;
- print "SET received = " rb;
- print "SET sent = " tb;
- print "END";
- print "BEGIN ap_packets." dev;
- print "SET received = " rp;
- print "SET sent = " tp;
- print "END";
- print "BEGIN ap_issues." dev;
- print "SET retries = " tr;
- print "SET failures = " tf;
- print "END";
-
- if( c == 0 ) c = 1;
- print "BEGIN ap_signal." dev;
- print "SET signal = " int(s / c);
- print "END";
- print "BEGIN ap_bitrate." dev;
- print "SET receive = " int(rt / c);
- print "SET transmit = " int(tt / c);
- print "SET expected = " int(e / c);
- print "END";
- }
- zero_data();
- }
- BEGIN {
- zero_data();
- }
- /^DEVICE / {
- print_device();
- dev = $2;
- }
- /^Station/ { c++; }
- /^[ \t]+rx bytes:/ { rb += $3; }
- /^[ \t]+tx bytes:/ { tb += $3; }
- /^[ \t]+rx packets:/ { rp += $3; }
- /^[ \t]+tx packets:/ { tp += $3; }
- /^[ \t]+tx retries:/ { tr += $3; }
- /^[ \t]+tx failed:/ { tf += $3; }
- /^[ \t]+signal:/ { x = $2; s += x * 1000; }
- /^[ \t]+rx bitrate:/ { x = $3; rt += x * 1000; }
- /^[ \t]+tx bitrate:/ { x = $3; tt += x * 1000; }
- /^[ \t]+expected throughput:(.*)Mbps/ {
- x=$3;
- sub(/Mbps/, "", x);
- e += x * 1000;
- }
- END {
- print_device();
- }
- '
-
- return 0
-}
diff --git a/src/collectors/charts.d.plugin/ap/ap.conf b/src/collectors/charts.d.plugin/ap/ap.conf
deleted file mode 100644
index 38fc157ce..000000000
--- a/src/collectors/charts.d.plugin/ap/ap.conf
+++ /dev/null
@@ -1,23 +0,0 @@
-# no need for shebang - this file is loaded from charts.d.plugin
-
-# netdata
-# real-time performance and health monitoring, done right!
-# (C) 2018 Costa Tsaousis <costa@tsaousis.gr>
-# GPL v3+
-
-# nothing fancy to configure.
-# this module will run
-# iw dev - to find wireless devices in AP mode
-# iw ${dev} station dump - to get connected clients
-# based on the above, it generates several charts
-
-# the data collection frequency
-# if unset, will inherit the netdata update frequency
-#ap_update_every=
-
-# the charts priority on the dashboard
-#ap_priority=6900
-
-# the number of retries to do in case of failure
-# before disabling the module
-#ap_retries=10
diff --git a/src/collectors/charts.d.plugin/ap/integrations/access_points.md b/src/collectors/charts.d.plugin/ap/integrations/access_points.md
deleted file mode 100644
index 7eea0f95a..000000000
--- a/src/collectors/charts.d.plugin/ap/integrations/access_points.md
+++ /dev/null
@@ -1,174 +0,0 @@
-<!--startmeta
-custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/ap/README.md"
-meta_yaml: "https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/ap/metadata.yaml"
-sidebar_label: "Access Points"
-learn_status: "Published"
-learn_rel_path: "Collecting Metrics/Linux Systems/Network"
-most_popular: False
-message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE"
-endmeta-->
-
-# Access Points
-
-
-<img src="https://netdata.cloud/img/network-wired.svg" width="150"/>
-
-
-Plugin: charts.d.plugin
-Module: ap
-
-<img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
-
-## Overview
-
-The ap collector visualizes data related to wireless access points.
-
-It uses the `iw` command line utility to detect access points. For each interface that is of `type AP`, it then runs `iw INTERFACE station dump` and collects statistics.
-
-This collector is only supported on the following platforms:
-
-- Linux
-
-This collector only supports collecting metrics from a single instance of this integration.
-
-
-### Default Behavior
-
-#### Auto-Detection
-
-The plugin is able to auto-detect if you are running access points on your linux box.
-
-#### Limits
-
-The default configuration for this integration does not impose any limits on data collection.
-
-#### Performance Impact
-
-The default configuration for this integration is not expected to impose a significant performance impact on the system.
-
-
-## Metrics
-
-Metrics grouped by *scope*.
-
-The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
-
-
-
-### Per wireless device
-
-These metrics refer to the entire monitored application.
-
-This scope has no labels.
-
-Metrics:
-
-| Metric | Dimensions | Unit |
-|:------|:----------|:----|
-| ap.clients | clients | clients |
-| ap.net | received, sent | kilobits/s |
-| ap.packets | received, sent | packets/s |
-| ap.issues | retries, failures | issues/s |
-| ap.signal | average signal | dBm |
-| ap.bitrate | receive, transmit, expected | Mbps |
-
-
-
-## Alerts
-
-There are no alerts configured by default for this integration.
-
-
-## Setup
-
-### Prerequisites
-
-#### Install charts.d plugin
-
-If [using our official native DEB/RPM packages](/packaging/installer/UPDATE.md#determine-which-installation-method-you-used), make sure `netdata-plugin-chartsd` is installed.
-
-
-#### `iw` utility.
-
-Make sure the `iw` utility is installed.
-
-
-### Configuration
-
-#### File
-
-The configuration file name for this integration is `charts.d/ap.conf`.
-
-
-You can edit the configuration file using the `edit-config` script from the
-Netdata [config directory](/docs/netdata-agent/configuration/README.md#the-netdata-config-directory).
-
-```bash
-cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
-sudo ./edit-config charts.d/ap.conf
-```
-#### Options
-
-The config file is sourced by the charts.d plugin. It's a standard bash file.
-
-The following collapsed table contains all the options that can be configured for the ap collector.
-
-
-<details open><summary>Config options</summary>
-
-| Name | Description | Default | Required |
-|:----|:-----------|:-------|:--------:|
-| ap_update_every | The data collection frequency. If unset, will inherit the netdata update frequency. | 1 | no |
-| ap_priority | Controls the order of charts at the netdata dashboard. | 6900 | no |
-| ap_retries | The number of retries to do in case of failure before disabling the collector. | 10 | no |
-
-</details>
-
-#### Examples
-
-##### Change the collection frequency
-
-Specify a custom collection frequence (update_every) for this collector
-
-```yaml
-# the data collection frequency
-# if unset, will inherit the netdata update frequency
-ap_update_every=10
-
-# the charts priority on the dashboard
-#ap_priority=6900
-
-# the number of retries to do in case of failure
-# before disabling the module
-#ap_retries=10
-
-```
-
-
-## Troubleshooting
-
-### Debug Mode
-
-To troubleshoot issues with the `ap` collector, run the `charts.d.plugin` with the debug option enabled. The output
-should give you clues as to why the collector isn't working.
-
-- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on
- your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.
-
- ```bash
- cd /usr/libexec/netdata/plugins.d/
- ```
-
-- Switch to the `netdata` user.
-
- ```bash
- sudo -u netdata -s
- ```
-
-- Run the `charts.d.plugin` to debug the collector:
-
- ```bash
- ./charts.d.plugin debug 1 ap
- ```
-
-
diff --git a/src/collectors/charts.d.plugin/ap/metadata.yaml b/src/collectors/charts.d.plugin/ap/metadata.yaml
deleted file mode 100644
index 6556b42ec..000000000
--- a/src/collectors/charts.d.plugin/ap/metadata.yaml
+++ /dev/null
@@ -1,146 +0,0 @@
-plugin_name: charts.d.plugin
-modules:
- - meta:
- plugin_name: charts.d.plugin
- module_name: ap
- monitored_instance:
- name: Access Points
- link: ""
- categories:
- - data-collection.linux-systems.network-metrics
- icon_filename: "network-wired.svg"
- related_resources:
- integrations:
- list: []
- info_provided_to_referring_integrations:
- description: ""
- keywords:
- - ap
- - access
- - point
- - wireless
- - network
- most_popular: false
- overview:
- data_collection:
- metrics_description: "The ap collector visualizes data related to wireless access points."
- method_description: "It uses the `iw` command line utility to detect access points. For each interface that is of `type AP`, it then runs `iw INTERFACE station dump` and collects statistics."
- supported_platforms:
- include: [Linux]
- exclude: []
- multi_instance: false
- additional_permissions:
- description: ""
- default_behavior:
- auto_detection:
- description: "The plugin is able to auto-detect if you are running access points on your linux box."
- limits:
- description: ""
- performance_impact:
- description: ""
- setup:
- prerequisites:
- list:
- - title: "Install charts.d plugin"
- description: |
- If [using our official native DEB/RPM packages](/packaging/installer/UPDATE.md#determine-which-installation-method-you-used), make sure `netdata-plugin-chartsd` is installed.
- - title: "`iw` utility."
- description: "Make sure the `iw` utility is installed."
- configuration:
- file:
- name: charts.d/ap.conf
- options:
- description: |
- The config file is sourced by the charts.d plugin. It's a standard bash file.
-
- The following collapsed table contains all the options that can be configured for the ap collector.
- folding:
- title: "Config options"
- enabled: true
- list:
- - name: ap_update_every
- description: The data collection frequency. If unset, will inherit the netdata update frequency.
- default_value: 1
- required: false
- - name: ap_priority
- description: Controls the order of charts at the netdata dashboard.
- default_value: 6900
- required: false
- - name: ap_retries
- description: The number of retries to do in case of failure before disabling the collector.
- default_value: 10
- required: false
- examples:
- folding:
- enabled: false
- title: "Config"
- list:
- - name: Change the collection frequency
- description: Specify a custom collection frequence (update_every) for this collector
- config: |
- # the data collection frequency
- # if unset, will inherit the netdata update frequency
- ap_update_every=10
-
- # the charts priority on the dashboard
- #ap_priority=6900
-
- # the number of retries to do in case of failure
- # before disabling the module
- #ap_retries=10
- troubleshooting:
- problems:
- list: []
- alerts: []
- metrics:
- folding:
- title: Metrics
- enabled: false
- description: ""
- availability: []
- scopes:
- - name: wireless device
- description: "These metrics refer to the entire monitored application."
- labels: []
- metrics:
- - name: ap.clients
- description: Connected clients to ${ssid} on ${dev}
- unit: "clients"
- chart_type: line
- dimensions:
- - name: clients
- - name: ap.net
- description: Bandwidth for ${ssid} on ${dev}
- unit: "kilobits/s"
- chart_type: area
- dimensions:
- - name: received
- - name: sent
- - name: ap.packets
- description: Packets for ${ssid} on ${dev}
- unit: "packets/s"
- chart_type: line
- dimensions:
- - name: received
- - name: sent
- - name: ap.issues
- description: Transmit Issues for ${ssid} on ${dev}
- unit: "issues/s"
- chart_type: line
- dimensions:
- - name: retries
- - name: failures
- - name: ap.signal
- description: Average Signal for ${ssid} on ${dev}
- unit: "dBm"
- chart_type: line
- dimensions:
- - name: average signal
- - name: ap.bitrate
- description: Bitrate for ${ssid} on ${dev}
- unit: "Mbps"
- chart_type: line
- dimensions:
- - name: receive
- - name: transmit
- - name: expected