munin-contrib/plugins/bsd/openbsd-memory

37 lines
805 B
Bash
Executable File

#!/bin/sh
if [ "$1" = "config" ]; then
echo "graph_title Memory usage (in MB)"
echo 'graph_category system'
echo "acti.label Active"
echo "used.label Used"
echo "total.label Total"
echo "free.label Free"
exit 0
fi
# Memory: Real: 14M/69M act/tot Free: 173M Swap: 0K/612M used/tot
top -un | nawk '
function scale(v) {
if (v ~ /G$/) { sub("G", "", v);v *= 1024 }
else if (v ~ /M$/) sub("M", "", v)
else if (v ~ /K$/) { sub("K", "", v);v /= 1024 }
else v /= 1024 * 1024;
return v;
}
function spliter(v, i) {
split(v, a, "/");
return(a[i]);
}
/^Memory/ {
acti = scale(spliter($3,1));
used = scale(spliter($3,2));
free = scale($6);
total = used + free;
print "acti.value", acti
print "used.value", used
print "total.value", total
print "free.value", free
}'