aprx-stat(8) System Manager's Manual aprx-stat(8)
NAME
aprx-stat - statistics utility for aprx(8)
SYNOPSIS
aprx-stat [-t] [-f/var/run/aprx.state] {-S|-x|-X}
DESCRIPTION
aprx-stat is a statistics utility for aprx(8) program.
OPTIONS
The aprx-stat has following runtime options:
-f /var/run/aprx.state
Turn on verbose debugging, outputs data to STDOUT.
-S SNMP data mode, current counter and gauge values.
-t Use UNIX time_t for timestamps, instead of human readable text
format.
-x Lattest of extended historical gauge values. This gives for
each input interface
• SNMP data
• last 90 of 1 minute values,
• 10 of 10 minute values,
• 3 of 60 minute values.
-X Full extended historical gauge values. This gives all the con-
tents of historical value data ring-buffers.
• SNMP data
• 1 minute resolution: 24 hours
• 10 minute resolution: 7 days
• 60 minute resolution: 3 months
SNMP DATA OUTPUT
For each interface feeding AX.25 packets and/or KISS frames to this
program, there are following kind of
SNMP /dev/ttyUSB1 798282 11088 0 0 3
SNMP ax0 798282 11088 0 0 7
SNMP ax1 798282 11088 0 0 94
where columns are:
• "SNMP" - keyword
• Interface (AX.25 IF name, or serial port device name)
• Received byte counter
• Received frame (packet) counter
• Dropped byte counter
• Dropped frame counter
• Age in seconds of last update of this statistics.
EXTENDED DATA OUTPUT
Extended data output gives formatted historical periodic accumulates of
interface traffic counters, and Erlang value estimates based on that.
SNMP /dev/ttyUSB1 816675 11332 0 0 15
1min data
2007-12-24 14:10 /dev/ttyUSB1 1m 374 6 0 0 0.047 0.000
2007-12-24 14:09 /dev/ttyUSB1 1m 377 5 0 0 0.047 0.000
2007-12-24 14:08 /dev/ttyUSB1 1m 347 5 0 0 0.043 0.000
2007-12-24 14:07 /dev/ttyUSB1 1m 140 2 0 0 0.018 0.000
•••
10min data
2007-12-24 14:10 /dev/ttyUSB1 10m 3829 55 0 0 0.048 0.000
2007-12-24 14:00 /dev/ttyUSB1 10m 2182 28 0 0 0.027 0.000
2007-12-24 13:50 /dev/ttyUSB1 10m 3205 44 0 0 0.040 0.000
2007-12-24 13:40 /dev/ttyUSB1 10m 3811 50 0 0 0.048 0.000
•••
60min data
2007-12-24 14:00 /dev/ttyUSB1 60m 22510 295 0 0 0.047 0.000
2007-12-24 13:00 /dev/ttyUSB1 60m 24886 347 0 0 0.052 0.000
•••
The output repeats for all interfaces.
The SNMP dataset is given in the beginning, and described above. Then
each extended output line has following fields:
• Timestamp is two fields, date and time (in minute resolution) is in
UTC.
• Alternate timestamp format is UNIX time_t as an integer, counting
seconds from epoch, and as single field.
• Interface name is same as in SNMP case.
• Data qualifier tells what integration period the data is valid for:
1m, 10m, 60m.
• Counter of received bytes on interface (including KISS flags etc.)
• Counter of received frames.
• Counter of dropped bytes.
• Counter of dropped frames.
• Reception Erlang value estimate.
• Dropped bytes Erlang value estimate.
TODO
BUGS
SEE ALSO
aprx(8)
CONFIGURATION FILE
There is no configuration file.
NOTES: ERLANG
The Erlang is telecom measurement of channel occupancy, and in this
application sense it does tell how much traffic there is on the radio
channel.
Most radio transmitters are not aware of all transmitters on channel,
and thus there can happen a collision causing loss of both messages.
The higher the channel activity, the more likely that collision is.
For further details, refer to statistical mathematics books, or perhaps
on Wikipedia.
In order to measure channel activity, the aprx program suite has these
built-in statistics counter and summary estimators.
The Erlag value that the estimators present are likely somewhat under-
estimating the true channel occupancy simply because it calculates
estimate of channel bit transmit rate, and thus a per-minute character
capacity. It does not know true frequency of bit-stuffing events of
the HDLC framing, nor each transmitter pre- and port frame PTT times.
The transmitters need to stabilize their transmit oscillators in many
cases, which may take up to around 500 ms! The counters are not aware
of this preamble-, nor postamble-times.
The HDLC bit stuffing ratio is guessed to be 8.2 bits for each 8 bits
of payload.
NOTES: SUID ROOT
This program needs probably to be run as suid-root ! It is considered
safe to do so, as this checks that the -f parameter file is of correct
"magic value", and will not try to create it if it does not exist, nor
modify that file under any circumstances, nor reveal content of "wrong
magic kind" of file.
AUTHOR
This little piece was written by Matti Aarnio, OH2MQK during a dark and
rainy fall and winter of 2007-2008 after a number of discussions grum-
bling about current breed of available software for APRS iGate use in
Linux (or of any UNIX) platforms. Fall and winter 2009-2010 saw
appearance of digipeater functionality.
Principal contributors and test users include: Pentti Gronlund, OH3BK,
Reijo Hakala, OH1GWK. Debian packaging by Kimmo Jukarinen, OH3GNU.
2.08 - 2014 March 11 aprx-stat(8)