Replace LOGPATH with LOGSUFFIX
[policy/engine.git] / packages / base / src / files / install / elk / init.d / elkd
1 #!/bin/bash
2
3 ELK_BASE=${POLICY_HOME}/elk/
4 ELK_RUNNING="^$JAVA_HOME/bin/java .* -cp .* org.elasticsearch.bootstrap.Elasticsearch -d$"
5 COMPONENT=elk
6
7 JMX_JAVA_OPTS="${JMX_JAVA_OPTS} -Dcom.sun.management.jmxremote"
8 JMX_JAVA_OPTS="${JMX_JAVA_OPTS} -Dcom.sun.management.jmxremote.port=${{ELK_JMX_PORT}}"
9 JMX_JAVA_OPTS="${JMX_JAVA_OPTS} -Dcom.sun.management.jmxremote.ssl=false" 
10 JMX_JAVA_OPTS="${JMX_JAVA_OPTS} -Dcom.sun.management.jmxremote.authenticate=false"
11
12 CMD_JAVA_OPTS="${CMD_JAVA_OPTS} -DPOLICY_LOGS=${POLICY_LOGS}"
13
14 RETVAL=0
15
16 function update_monitor() {
17         COMPONENT=$1
18         STATUS=$2
19         if [[ -f ${POLICY_HOME}/etc/monitor/monitor.cfg ]]; then
20                 /bin/sed -i.bak \
21                         -e "s/^${COMPONENT}=.*/${COMPONENT}=${STATUS}/g" \
22                         ${POLICY_HOME}/etc/monitor/monitor.cfg  
23         fi
24 }
25
26 function stop() {
27         pkill -u ${POLICY_USER} -f "${ELK_RUNNING}" -TERM
28         RETVAL=$?
29         if [[ ${RETVAL} != 0 ]]; then
30                 sleep 2
31                 pkill -u ${POLICY_USER} -f "${ELK_RUNNING}" -KILL
32                 RETVAL=$?
33     fi
34     update_monitor ${COMPONENT} off     
35     sleep 1
36 }
37
38 function start() {
39         export ES_JAVA_OPTS="${JAVA_OPTS} ${JMX_JAVA_OPTS} ${CMD_JAVA_OPTS}" 
40         $POLICY_HOME/elk/bin/elasticsearch -d
41         RETVAL=$?
42         if [[ ${RETVAL} != 0 ]]; then
43                 update_monitor ${COMPONENT} off
44         else
45                 update_monitor ${COMPONENT} on
46         fi      
47 }
48
49 # main
50
51 . ${POLICY_HOME}/etc/profile.d/env.sh
52
53 case "$1" in
54     status)
55         pid=$(pgrep -f -u ${POLICY_USER} "${ELK_RUNNING}" 2> /dev/null)
56         RETVAL=$?
57         if [ $RETVAL -eq 0 ]; then
58                 echo "running with pid ${pid}"
59         else
60                 echo "stopped"
61         fi
62         ;;
63         restart)
64                 stop
65         sleep 2
66         start
67         ;;
68         start)
69         start
70         ;;
71         stop)
72                 stop
73         ;;        
74     *)
75         echo "error: invalid option $@"
76         RETVAL=1
77         ;;
78 esac
79
80 exit ${RETVAL}