source: npl/syn3/syn3-scripts/scripts/syn3-status @ 9ec1a22

perl-5.22
Last change on this file since 9ec1a22 was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100755
File size: 1.1 KB
RevLine 
[c5c522c]1#!/bin/bash
2#Syn-3 state handling script (C)DatuX
3
4source /etc/alert.conf || exit 1
5
6[ -e "$ALERTDIR" ] || exit 0
7
8if tty -s </dev/fd/1;  then
9 BACK_UP="\033[1K\033[0G"
10 NORMAL="\033[0m"
11 WARN="\033[33;1m"
12 BAD="\033[31;1m"       
13 BOLD="\033[1m"
14 GOOD="\033[32;1m"
15fi 2>/dev/null
16
17
18#read options
19while [ "${1:0:2}" == "--" ]; do
20        #if options are valueless fill them with 1.
21        if echo $1|grep = >/dev/null; then
22                eval "${1:2}"
23        else
24                eval "${1:2}"=1
25        fi
26        shift
27done
28
29
30cd $ALERTDIR
31for FACILITY in *; do
32        STATE=`cat $FACILITY/state 2>/dev/null`         
33        ACK=`cat $FACILITY/ack 2>/dev/null`     
34
35        #skip OK and confirmed if not in verbose mode.
36        if ! [[ "$verbose" ]] && ( [[ "$STATE" == "OK" ]] || [[ "$ACK" ]] ); then
37                continue;
38        fi
39
40        MSG=`cat $FACILITY/msg 2>/dev/null`     
41
42        echo -en "$BOLD$FACILITY: $NORMAL"
43
44
45        if [[ "$STATE" == "OK" ]]; then
46                echo -en "$GOOD";
47        elif [[ "$ACK" ]]; then
48                echo -en "$NORMAL(confirmed by $ACK) "
49        elif [[ "$STATE" == "CAUTION" ]]; then
50                echo -en "$WARN";
51        elif [[ "$STATE" == "ALERT" ]]; then
52                echo -en "$BAD";
53        fi
54        echo -en "$STATE$NORMAL "
55
56        echo "$MSG";
57done
58
59
60
61
62
Note: See TracBrowser for help on using the repository browser.