3106b8630c7713652eaa3ea61d3509784d408d15
[anna.git] / example / diameter / launcher / deployments / st-client / checkStatus.sh
1 #!/bin/bash
2 # Result code: 1 (miss instances (and connections)), 2 (miss connections)
3 ADML_CONNECTIONS=`cat .st_conf_adml_connections 2>/dev/null`
4 ADML_INSTANCES=`cat .st_conf_adml_instances 2>/dev/null`
5 RESULT_CODE=0
6
7 cd $(dirname $0)
8 if [ -z "$ADML_CONNECTIONS" -o -z "$ADML_INSTANCES" ]
9 then
10   echo
11   echo "Run './configure.sh' first !"
12   echo
13   exit 3
14 fi
15
16 echo -n "Checking instances ... "
17 ADML_INSTANCES_ALIVE=$(pgrep "ADML-[0-9]" | wc -l)
18 echo -n "$ADML_INSTANCES_ALIVE instances alive"
19 if [ $ADML_INSTANCES_ALIVE -lt $ADML_INSTANCES ]
20 then
21   echo " ! (expected $ADML_INSTANCES configured)"
22   RESULT_CODE=1
23 else
24   echo
25 fi
26
27 cmd="netstat -a | grep :diameter | grep ESTABLISHED | wc -l"
28 echo -n "Checking connections ... "
29 ADML_CONNECTIONS_ALIVE=$(eval $cmd)
30 ADML_TOTAL_CONNECTIONS=$((ADML_CONNECTIONS*ADML_INSTANCES))
31 echo -n "$ADML_CONNECTIONS_ALIVE connections established (using '$cmd')"
32 if [ $ADML_CONNECTIONS_ALIVE -ne $ADML_TOTAL_CONNECTIONS ]
33 then
34   echo " ! (expected $ADML_TOTAL_CONNECTIONS configured)"
35   [ $RESULT_CODE -ne 1 ] && RESULT_CODE=2
36 else
37   echo
38 fi
39
40 exit $RESULT_CODE
41