Welcome to CollectD Madwifi Plugin

Status: working

CollectD Madwifi Plugin is a patch to CollectD, adding plugin for collecting statistics of Madwifi wireless driver. The patch is made against the stable version of CollectD (particularly version 4.6.2).

There are several data streams provided by Madwifi plugin, some are connected to network interface, some are connected to each node associated to that interface. Nodes represents other sides in wireless communication, for example on network interface in AP mode, there is one node for each associated station. Node data streams contain MAC address of the node as the last part of the type_instance field.

Inteface data streams:
	ath_nodes	The number of associated nodes
	ath_stat	Device statistic counters

Node data streams:
	node_octets	RX and TX data count (octets/bytes)
	node_rssi	Received RSSI of the node
	node_tx_rate	Reported TX rate to that node
	node_stat	Node statistic counters

Both statistic counters have type instances for each counter returned by Madwifi. See madwifi.h for content of ieee80211_nodestats, ieee80211_stats and ath_stats structures. Type instances use the same name as fields in these structures (like ns_rx_dup). Some fields are not reported, because they are not counters (like ns_tx_deauth_code or ast_tx_rssi). Fields ns_rx_bytes and ns_tx_bytes are reported as node_octets data stream instead of type instance of node_stat. Statistics are not logged when they are zero.

There are two sets of these counters - the first 'WatchList' is a set of counters that are individually logged. The second 'MiscList' is a set of counters that are summed together and the sum is logged. By default, the most important statistics are in the WatchList and many error statistics are in MiscList. There are also many statistics that are not in any of these sets, so they are not monitored by default. It is possible to alter these lists using configuration options:

	WatchAdd X	Adds X to WachList
	WatchRemove X	Removes X from WachList
	WatchSet All	Adds all statistics to WatchList
	WatchSet None	Removes all statistics from WachList

There are also Misc* variants fo these options, they modifies MiscList instead of WatchList.

	WatchSet None
	WatchAdd node_octets
	WatchAdd node_rssi
	WatchAdd is_rx_acl
	WatchAdd is_scan_active

That causes that just the four mentioned data streams are logged.

By default, madwifi plugin enumerates network interfaces using /sys filesystem. Configuration option DisableSysfs can change this to use /proc filesystem (which is useful for example when running on Linux 2.4). But without /sys filesystem, Madwifi plugin cannot check whether given interface is madwifi interface and there are private ioctls used, which may do something completely different on non-madwifi devices. Therefore, option DisableSysfs should be used together with option Interface, to limit found interfaces to madwifi interfaces only.