docs, tweaks

This commit is contained in:
Patrick Stadler
2015-03-22 18:01:27 +01:00
parent c4246b9ab0
commit 7af294388b
10 changed files with 186 additions and 35 deletions

View File

@@ -11,33 +11,33 @@ defaults () {
}
start () {
readonly __disk_io_fifo=$TEMP_DIR/$(unique_id)
mkfifo $__disk_io_fifo
readonly fifo=$TEMP_DIR/$(unique_id)
mkfifo $fifo
if is_osx; then
__disk_io_bgproc () {
bg_proc () {
iostat -K -d -w $INTERVAL $DISK_IO_MOUNTPOINT | while read line; do
echo $line | awk '{ print $3 }' > $__disk_io_fifo
echo $line | awk '{ print $3 }' > $fifo
done
}
else
__disk_io_bgproc () {
bg_proc () {
iostat -y -m -d $INTERVAL $DISK_IO_MOUNTPOINT | while read line; do
echo $line | awk '/[0-9.]/{ print $3 }' > $__disk_io_fifo
echo $line | awk '/[0-9.]/{ print $3 }' > $fifo
done
}
fi
__disk_io_bgproc &
bg_proc &
}
collect () {
report $(cat $__disk_io_fifo)
report $(cat $fifo)
}
stop () {
if [ ! -z $__disk_io_fifo ] && [ -p $__disk_io_fifo ]; then
rm $__disk_io_fifo
if [ ! -z $fifo ] && [ -p $fifo ]; then
rm $fifo
fi
}

View File

@@ -11,35 +11,35 @@ defaults () {
}
start () {
readonly __network_io_divisor=$(($INTERVAL * 1024))
readonly divisor=$(($INTERVAL * 1024))
if is_osx; then
get_netstat () {
get_sample () {
netstat -b -I $NETWORK_IO_INTERFACE | awk '{ print $7" "$10 }' | tail -n 1
}
else
get_netstat () {
get_sample () {
cat /proc/net/dev | awk -v iface_regex="$NETWORK_IO_INTERFACE:" \
'$0 ~ iface_regex { print $2" "$10 }'
}
fi
calc_kBps() {
echo $1 $2 | awk -v divisor=$__network_io_divisor \
echo $1 $2 | awk -v divisor=$divisor \
'{ printf "%.2f", ($1 - $2) / divisor }'
}
}
collect () {
local sample
sample=$(get_netstat)
if [ ! -z "$__network_io_sample" ]; then
sample=$(get_sample)
if [ ! -z "$previous_sample" ]; then
report "in" $(calc_kBps $(echo $sample | awk '{print $1}') \
$(echo $__network_io_sample | awk '{print $1}'))
$(echo $previous_sample | awk '{print $1}'))
report "out" $(calc_kBps $(echo $sample | awk '{print $2}') \
$(echo $__network_io_sample | awk '{print $2}'))
$(echo $previous_sample | awk '{print $2}'))
fi
__network_io_sample="$sample"
previous_sample="$sample"
}
docs () {

View File

@@ -2,8 +2,8 @@
start () {
if [ -z $PING_REMOTE_HOST ]; then
echo "Error: ping metric requires \$PING_REMOTE_HOST to be specified"
exit 1
echo "Warning: ping requires \$PING_REMOTE_HOST to be specified"
return 1
fi
}