2015-02-19 20:15:38 +01:00
|
|
|
#!/bin/sh
|
|
|
|
|
2015-02-21 18:18:27 +01:00
|
|
|
# config
|
2015-03-08 12:30:00 +01:00
|
|
|
INTERVAL=1
|
2015-03-12 20:59:09 +01:00
|
|
|
REPORTER=stdout # TODO: handle multiple reporters
|
2015-03-08 17:51:15 +01:00
|
|
|
|
|
|
|
|
2015-03-11 22:02:00 +01:00
|
|
|
# handle opts
|
2015-03-12 20:59:09 +01:00
|
|
|
opts_spec=":dhvr:"
|
2015-03-11 22:02:00 +01:00
|
|
|
opt_docs=false
|
|
|
|
opt_verbose=false
|
|
|
|
|
|
|
|
usage () {
|
2015-03-12 20:59:09 +01:00
|
|
|
echo "usage: $0 [-d] [-h] [-v] [-r]"
|
2015-03-11 22:02:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
help () {
|
|
|
|
echo "TODO"
|
|
|
|
}
|
|
|
|
|
|
|
|
while getopts "$opts_spec" opt; do
|
|
|
|
case "${opt}" in
|
|
|
|
d)
|
|
|
|
opt_docs=true
|
|
|
|
;;
|
|
|
|
h)
|
|
|
|
help
|
|
|
|
exit
|
|
|
|
;;
|
2015-03-12 20:59:09 +01:00
|
|
|
v)
|
|
|
|
opt_verbose=true
|
|
|
|
;;
|
|
|
|
r)
|
|
|
|
REPORTER=$OPTARG
|
|
|
|
;;
|
2015-03-11 22:02:00 +01:00
|
|
|
*)
|
|
|
|
usage
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
shift $((OPTIND-1))
|
|
|
|
|
|
|
|
|
|
|
|
# run
|
2015-03-08 20:37:56 +01:00
|
|
|
source ./lib/main.sh
|
2015-03-11 22:02:00 +01:00
|
|
|
|
|
|
|
if [ $opt_verbose = "true" ]; then
|
|
|
|
verbose_on
|
|
|
|
verbose "Started in verbose mode"
|
|
|
|
fi
|
|
|
|
verbose "OS detected: $OS_TYPE"
|
|
|
|
|
2015-03-08 20:37:56 +01:00
|
|
|
main_load
|
2015-03-11 22:02:00 +01:00
|
|
|
verbose "Metrics loaded: ${__METRICS[@]}"
|
2015-03-12 20:59:09 +01:00
|
|
|
verbose "Reporters loaded: ${REPORTER}"
|
2015-03-11 22:02:00 +01:00
|
|
|
|
|
|
|
if [ "$opt_docs" = true ]; then
|
|
|
|
main_docs
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
2015-03-08 20:37:56 +01:00
|
|
|
main_init
|
2015-03-11 22:02:00 +01:00
|
|
|
verbose "Metrics initialized"
|
|
|
|
|
|
|
|
verbose "Collecting metrics every $INTERVAL second(s)"
|
2015-03-08 20:37:56 +01:00
|
|
|
main_collect
|