aboutsummaryrefslogtreecommitdiff
path: root/heartbeat_hammer.sh
diff options
context:
space:
mode:
Diffstat (limited to 'heartbeat_hammer.sh')
-rw-r--r--heartbeat_hammer.sh30
1 files changed, 23 insertions, 7 deletions
diff --git a/heartbeat_hammer.sh b/heartbeat_hammer.sh
index 9b60171..de530f2 100644
--- a/heartbeat_hammer.sh
+++ b/heartbeat_hammer.sh
@@ -1,18 +1,34 @@
#!/bin/bash
-PRE="ruby -I lib ./bin/mauveclient localhost"
+PRE="ruby -I lib bin/mauveclient localhost"
+F=60
+n=$*
_host () {
- hostname="imaginary-$i.bytemark.co.uk"
+ hostname="imaginary-$i.example.com"
+ down="n"
+
while( true ) ; do
- sleep $((RANDOM/60))
- echo $hostname
- $PRE -o $hostname -i heartbeat -r +2m -c now -s "heartbeat failed" --detail="<p>The heartbeat wasn't sent for this host</p><p>This indicates that the host might be down</p>"
+
+ if [ "$down" == "n" ] ; then
+ $PRE -o $hostname -i heartbeat -r +$F -c now -s "heartbeat failed" --detail="<p>The heartbeat wasn't sent for this host</p><p>This indicates that the host might be down</p>"
+ sleep $((F - $RANDOM*5/32768 - 5))
+ else
+ sleep $((RANDOM*5/32768 + $F + 5))
+ fi
+
+ if [ $RANDOM -gt 30000 ] ; then
+ [ "$down" == "n" ] && echo "Host $hostname down"
+ down="y"
+ else
+ [ "$down" == "y" ] && echo "Host $hostname up"
+ down="n"
+ fi
done
}
-
-for i in `seq 1 50` ; do
+for i in `seq 1 500` ; do
_host $i &
+ sleep 0.2
done