Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

executable file 50 lines (44 sloc) 1.512 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
#!/bin/bash

# Cloudkick plugin to count number of http connections.
# Alerts if no clients and/or no listeners.

# ----------------------------------------------------------------------------
# "THE BEER-WARE LICENSE" (Revision 42):
# <lo@petalphile.com> wrote this file. As long as you retain this notice you
# can do whatever you want with this stuff. If we meet some day, and you think
# this stuff is worth it, you can buy me a beer in return
# ----------------------------------------------------------------------------

if [ "$1" = "help" ]; then
echo "CloudKick check to return established, connected, and idle users, and ensure there is a listener (critical if there is not)
usage: $0 <threshold|help>
where
help prints this message
threshold is the number of minimum users. Below this number is a critical alert.
if no argument, threshold is 1."
exit
else
if [ "$1" ]; then
THRESHOLD=$1
else
THRESHOLD=1
fi
fi

NOW=`netstat -ano |grep :443`;
SIMULTANEOUS=`echo "$NOW" |grep -c :443`
ACTIVE=`echo "$NOW" |grep -c ESTABLISHED`
IDLE=`echo "$NOW" |grep -c TIME_WAIT`
#remove the listener
SIMULTANEOUS=$(($SIMULTANEOUS - 1))
if [ $SIMULTANEOUS -lt $THRESHOLD ]; then
if [ $SIMULTANEOUS -lt 0 ]; then
echo "status err no server listening!"
exit
else
echo "status err less than $THRESHOLD users connected!";
fi
exit
else
echo "status ok ok";
fi
echo "metric https_users int $SIMULTANEOUS";
echo "metric https_users_active int $ACTIVE";
echo "metric https_users_idle int $IDLE";

Something went wrong with that request. Please try again.