summaryrefslogtreecommitdiffstats
path: root/charms/trusty/cassandra/files
diff options
context:
space:
mode:
authorStuart Mackie <wsmackie@juniper.net>2016-10-07 12:24:58 -0700
committerStuart Mackie <wsmackie@juniper.net>2016-10-07 12:24:58 -0700
commit4faa7f927149a5c4ef7a03523f7bc14523cb9baa (patch)
tree0be55aa0809cc395e45baeae63db660b4e72fe83 /charms/trusty/cassandra/files
parent82f1a7eb5535b30a95b1e71ff18c315d40d1e6f0 (diff)
Charms for Contrail 3.1 with Mitaka
Change-Id: Id37f3b9743d1974e31fcd7cd9c54be41bb0c47fb Signed-off-by: Stuart Mackie <wsmackie@juniper.net>
Diffstat (limited to 'charms/trusty/cassandra/files')
-rw-r--r--charms/trusty/cassandra/files/check_cassandra_heap.sh36
1 files changed, 36 insertions, 0 deletions
diff --git a/charms/trusty/cassandra/files/check_cassandra_heap.sh b/charms/trusty/cassandra/files/check_cassandra_heap.sh
new file mode 100644
index 0000000..395aa06
--- /dev/null
+++ b/charms/trusty/cassandra/files/check_cassandra_heap.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+#---------------------------------------------------
+# This file is Juju managed
+#---------------------------------------------------
+
+# Copyright (C) 2012 Canonical Ltd.
+# Author: Liam Young
+#
+# Script used to check Cassandra is alive and that it has space left in the heap
+
+set -u
+
+if [[ $# -lt 3 ]]; then
+ echo "$0 <jmx-ipadress> <warnpct> <criticalpct>"
+ exit 1
+fi
+WARN_PCT=$2
+CRIT_PCT=$3
+
+NODE_INF0="$(nodetool -h $1 info 2>/dev/null)"
+if [[ $? -ne 0 ]]; then
+ echo "ERROR: Failed to connect to Cassandra"
+ exit 2
+fi
+PCT_USED=$(echo "$NODE_INF0" | awk 'BEGIN {FS=":"} $1 ~ /^Heap Memory/ {print $2}' | awk '{ printf("%i\n", $1*100/$3) }')
+USAGE_INFO="${PCT_USED}% of heap memory used"
+if [[ $PCT_USED -lt $WARN_PCT ]]; then
+ echo "OK: ${USAGE_INFO}"
+ exit 0
+elif [[ $PCT_USED -lt $CRIT_PCT ]]; then
+ echo "WARNING: ${USAGE_INFO}"
+ exit 1
+else
+ echo "CRITICAL: ${USAGE_INFO}"
+ exit 1
+fi