diff options
Diffstat (limited to '')
-rwxr-xr-x | bin/kestrel-active-queues.sh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/bin/kestrel-active-queues.sh b/bin/kestrel-active-queues.sh new file mode 100755 index 0000000..9cf85ce --- /dev/null +++ b/bin/kestrel-active-queues.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +CLUSTER="${1:-kestrel.prod.low_sla}" + +for zone in atla smf1; do + echo "querying $zone/$CLUSTER" + + tmpfile=$(mktemp "/tmp/${CLUSTER}-${zone}.XXXXXX") + csvout="$(dirname $0)/${CLUSTER}-${zone}.csv" + + # first filter the metrics we want + cql -z "${zone}" k "${CLUSTER}" "sd.${CLUSTER}" | grep -e 'get_items_hit' > "${tmpfile}" + + # remove the csv output file if it exists + [ -e "${csvout}" ] && rm "${csvout}" + + # then we build the csv + for queue in $(cat "${tmpfile}"); do + total_hits=$(cql -z "${zone}" q -d 86400 "sum(default(0, rate(ts(sum, ${CLUSTER}, members(sd.${CLUSTER}), ${queue}))))"|awk '{sum+=$8} END{print sum}') + queue_name=$(echo ${queue} | sed -e 's/^q\/\(.*\)\/.*$/\1/') + echo "${queue_name};${total_hits}" >> "${csvout}" + done + + rm "${tmpfile}" +done |