mirror of
https://github.com/pstadler/metrics.sh.git
synced 2025-07-08 16:42:15 -04:00
add commands for osx
This commit is contained in:
parent
a827a71513
commit
8957cb4387
12
lib/utils.sh
12
lib/utils.sh
@ -1,3 +1,5 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
# http://stackoverflow.com/a/1369211/183097
|
# http://stackoverflow.com/a/1369211/183097
|
||||||
copy_function () {
|
copy_function () {
|
||||||
declare -F $1 > /dev/null || return 1
|
declare -F $1 > /dev/null || return 1
|
||||||
@ -6,4 +8,12 @@ copy_function () {
|
|||||||
|
|
||||||
is_function () {
|
is_function () {
|
||||||
[ "`type -t $1`" == 'function' ]
|
[ "`type -t $1`" == 'function' ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
OS_TYPE=$(case "$OSTYPE" in
|
||||||
|
(solaris*) echo solaris;;
|
||||||
|
(darwin*) echo osx;;
|
||||||
|
(linux*) echo linux;;
|
||||||
|
(bsd*) echo bsd;;
|
||||||
|
(*) echo unknown;;
|
||||||
|
esac)
|
@ -1,5 +1,21 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
collect () {
|
if [ $OS_TYPE == "osx" ]; then
|
||||||
echo $(free | awk '/buffers\/cache/{print $4/($3+$4) * 100.0;}')
|
|
||||||
}
|
# FIXME: total_memory leaks out
|
||||||
|
total_memory=$(sysctl -n hw.memsize)
|
||||||
|
|
||||||
|
collect () {
|
||||||
|
echo $(vm_stat | awk -v total_memory=$total_memory \
|
||||||
|
'BEGIN {FS=" *"; pages=0}
|
||||||
|
/Pages (free|inactive|speculative)/ {pages+=$2}
|
||||||
|
END {printf "%.2f", 100 - (pages * 4096) / total_memory * 100.0}')
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
collect () {
|
||||||
|
echo $(free | awk '/buffers\/cache/{printf "%.2f", $4 / ($3 + $4) * 100.0}')
|
||||||
|
}
|
||||||
|
|
||||||
|
fi
|
@ -1,5 +1,15 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
collect () {
|
if [ $OS_TYPE == "osx" ]; then
|
||||||
echo $(free | awk '/Swap/{print $3/$2 * 100.0;}')
|
|
||||||
}
|
collect () {
|
||||||
|
echo $(sysctl -n vm.swapusage | awk '{printf "%.2f", $6 / $3 * 100.0}')
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
collect () {
|
||||||
|
echo $(free | awk '/Swap/{printf "%.2f", $3/$2 * 100.0;}')
|
||||||
|
}
|
||||||
|
|
||||||
|
fi
|
Loading…
x
Reference in New Issue
Block a user