Skip to content

Instantly share code, notes, and snippets.

@ifrost
Created June 17, 2021 13:26
Show Gist options
  • Save ifrost/29e5b4041b0362e968b82ff459360065 to your computer and use it in GitHub Desktop.
Save ifrost/29e5b4041b0362e968b82ff459360065 to your computer and use it in GitHub Desktop.
#!/bin/bash
baseline=30
graphite_cpu() {
local date=$(date -v$1S +%s)
echo "apps.prod.application1.requests.count $2 ${date}" | nc localhost 2103
echo "apps.prod.application2.requests.count $3 ${date}" | nc localhost 2103
echo "apps.prod.application3.requests.count $4 ${date}" | nc localhost 2103
echo "apps.test.application1.requests.count $5 ${date}" | nc localhost 2103
echo "apps.test.application2.requests.count $6 ${date}" | nc localhost 2103
echo "appsstats;environment=prod;application=application1 $2 ${date}" | nc localhost 2103
echo "appsstats;environment=prod;application=application2 $3 ${date}" | nc localhost 2103
echo "appsstats;environment=prod;application=application3 $4 ${date}" | nc localhost 2103
echo "appsstats;environment=test;application=application1 $5 ${date}" | nc localhost 2103
echo "appsstats;environment=test;application=application2 $6 ${date}" | nc localhost 2103
}
send() {
local relSeconds=$1
local s1=$((baseline + $RANDOM % 10))
local s2=$((baseline + $RANDOM % 10))
local s3=$((baseline + $RANDOM % 10))
local s4=$((baseline + $RANDOM % 10))
local s5=$((baseline + $RANDOM % 10))
graphite_cpu $relSeconds $s1 $s2 $s3 $s4 $5
}
echo "Sending past data. Please wait..."
for (( x = -700; x <= 0; x += 5)); do send $x;done
uparrow=$'\x1b[A'
downarrow=$'\x1b[B'
echo "Random metrics are generated with value of the baseline + random number between 0-10."
while true
do
x=""
echo "Current baseline=${baseline}. Press up/down arrows to change it."
read -s -n3 -t5 x
case "$x" in
$uparrow)
baseline=$((baseline+10))
;;
$downarrow)
baseline=$((baseline-10))
;;
esac
send -0
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment