Skip to main content

Access point monitoring with Netdata

The ap collector visualizes data related to access points.

Example Netdata charts#

image

How it works#

It does the following:

  1. Runs iw dev searching for interfaces that have type AP.

    From the same output it collects the SSIDs each AP supports by looking for lines ssid NAME.

    Example:

# iw dev
phy#0
Interface wlan0
ifindex 3
wdev 0x1
addr 7c:dd:90:77:34:2a
ssid TSAOUSIS
type AP
channel 7 (2442 MHz), width: 20 MHz, center1: 2442 MHz
  1. For each interface found, it runs iw INTERFACE station dump.

    From the output is collects:

    • rx/tx bytes
    • rx/tx packets
    • tx retries
    • tx failed
    • signal strength
    • rx/tx bitrate
    • expected throughput

    Example:

# iw wlan0 station dump
Station 40:b8:37:5a:ed:5e (on wlan0)
inactive time: 910 ms
rx bytes: 15588897
rx packets: 127772
tx bytes: 52257763
tx packets: 95802
tx retries: 2162
tx failed: 28
signal: -43 dBm
signal avg: -43 dBm
tx bitrate: 65.0 MBit/s MCS 7
rx bitrate: 1.0 MBit/s
expected throughput: 32.125Mbps
authorized: yes
authenticated: yes
preamble: long
WMM/WME: yes
MFP: no
TDLS peer: no
  1. For each interface found, it creates 6 charts:

    • Number of Connected clients
    • Bandwidth for all clients
    • Packets for all clients
    • Transmit Issues for all clients
    • Average Signal among all clients
    • Average Bitrate (including average expected throughput) among all clients

Configuration#

Edit the charts.d/ap.conf configuration file using edit-config from the Netdata config directory, which is typically at /etc/netdata.

cd /etc/netdata # Replace this path with your Netdata config directory, if different
sudo ./edit-config charts.d/ap.conf

You can only set ap_update_every=NUMBER to change the data collection frequency.

Auto-detection#

The plugin is able to auto-detect if you are running access points on your linux box.

Did you find this document helpful?

Reach out

If you need help after reading this doc, search our community forum for an answer. There's a good chance someone else has already found a solution to the same issue.

Documentation

Community

Last updated on