moved nginx, graylog to podman
This commit is contained in:
133
ansible/roles/podman/files/graylog/graylogctl
Normal file
133
ansible/roles/podman/files/graylog/graylogctl
Normal file
@@ -0,0 +1,133 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
CMD=$1
|
||||
NOHUP=${NOHUP:=$(which nohup)}
|
||||
PS=${PS:=$(which ps)}
|
||||
|
||||
# default java
|
||||
JAVA_CMD=${JAVA_CMD:=$(which java)}
|
||||
|
||||
get_pid() {
|
||||
cat "${GRAYLOG_PID}" 2> /dev/null
|
||||
}
|
||||
|
||||
pid_running() {
|
||||
kill -0 $1 2> /dev/null
|
||||
}
|
||||
|
||||
die() {
|
||||
echo $*
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ -n "$JAVA_HOME" ]
|
||||
then
|
||||
# try to use $JAVA_HOME
|
||||
if [ -x "$JAVA_HOME"/bin/java ]
|
||||
then
|
||||
JAVA_CMD="$JAVA_HOME"/bin/java
|
||||
else
|
||||
die "$JAVA_HOME"/bin/java is not executable
|
||||
fi
|
||||
fi
|
||||
|
||||
# resolve links - $0 may be a softlink
|
||||
GRAYLOGCTL="$0"
|
||||
|
||||
while [ -h "$GRAYLOGCTL" ]; do
|
||||
ls=$(ls -ld "$GRAYLOGCTL")
|
||||
link=$(expr "$ls" : '.*-> \(.*\)$')
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
GRAYLOGCTL="$link"
|
||||
else
|
||||
GRAYLOGCTL=$(dirname "$GRAYLOGCTL")/"$link"
|
||||
fi
|
||||
done
|
||||
|
||||
# take variables from environment if set
|
||||
GRAYLOGCTL_DIR=${GRAYLOGCTL_DIR:=$(dirname "$GRAYLOGCTL")}
|
||||
GRAYLOG_SERVER_JAR=${GRAYLOG_SERVER_JAR:=graylog.jar}
|
||||
GRAYLOG_CONF=${GRAYLOG_CONF:=/etc/graylog/server/server.conf}
|
||||
GRAYLOG_PID=${GRAYLOG_PID:=/tmp/graylog.pid}
|
||||
LOG_FILE=${LOG_FILE:=log/graylog-server.log}
|
||||
LOG4J=${LOG4J:=}
|
||||
DEFAULT_JAVA_OPTS="-Djava.net.preferIPv4Stack=true -Dlog4j2.formatMsgNoLookups=true -Djdk.tls.acknowledgeCloseNotify=true -Xms1g -Xmx1g -XX:NewRatio=1 -server -XX:+ResizeTLAB -XX:-OmitStackTraceInFastThrow"
|
||||
if $JAVA_CMD -XX:+PrintFlagsFinal 2>&1 |grep -q UseParNewGC; then
|
||||
DEFAULT_JAVA_OPTS="${DEFAULT_JAVA_OPTS} -XX:+UseParNewGC"
|
||||
fi
|
||||
if $JAVA_CMD -XX:+PrintFlagsFinal 2>&1 |grep -q UseConcMarkSweepGC; then
|
||||
DEFAULT_JAVA_OPTS="${DEFAULT_JAVA_OPTS} -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:+CMSClassUnloadingEnabled"
|
||||
fi
|
||||
|
||||
JAVA_OPTS="${JAVA_OPTS:="$DEFAULT_JAVA_OPTS"}"
|
||||
|
||||
start() {
|
||||
echo "Starting graylog-server ..."
|
||||
cd "$GRAYLOGCTL_DIR/.."
|
||||
"${NOHUP}" "${JAVA_CMD}" ${JAVA_OPTS} ${LOG4J} -jar "${GRAYLOG_SERVER_JAR}" server -f "${GRAYLOG_CONF}" -p "${GRAYLOG_PID}" >> "${LOG_FILE}" 2>> "${LOG_FILE}" &
|
||||
}
|
||||
|
||||
run() {
|
||||
echo "Running graylog-server ..."
|
||||
cd "$GRAYLOGCTL_DIR/.."
|
||||
exec "${JAVA_CMD}" ${JAVA_OPTS} ${LOG4J} -jar "${GRAYLOG_SERVER_JAR}" server -f "${GRAYLOG_CONF}" -p "${GRAYLOG_PID}"
|
||||
}
|
||||
|
||||
stop() {
|
||||
if [ ! -f "${GRAYLOG_PID}" ]; then
|
||||
die "Not stopping. PID file not found: ${GRAYLOG_PID}"
|
||||
fi
|
||||
|
||||
PID=$(get_pid)
|
||||
|
||||
echo "Stopping graylog-server ($PID) ..."
|
||||
echo "Waiting for graylog-server to halt."
|
||||
|
||||
kill $PID
|
||||
|
||||
while "$PS" -p $PID > /dev/null; do sleep 1; done;
|
||||
rm -f "${GRAYLOG_PID}"
|
||||
|
||||
echo "graylog-server stopped"
|
||||
}
|
||||
|
||||
restart() {
|
||||
echo "Restarting graylog-server ..."
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
status() {
|
||||
PID=$(get_pid)
|
||||
if [ ! -z $PID ]; then
|
||||
if pid_running $PID; then
|
||||
echo "graylog-server running with PID ${PID}"
|
||||
return 0
|
||||
else
|
||||
rm "${GRAYLOG_PID}"
|
||||
die "Removed stale PID file ${GRAYLOG_PID} with ${PID}."
|
||||
fi
|
||||
fi
|
||||
|
||||
die "graylog-server not running"
|
||||
}
|
||||
|
||||
case "$CMD" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
restart
|
||||
;;
|
||||
status)
|
||||
status
|
||||
;;
|
||||
run)
|
||||
run
|
||||
;;
|
||||
*)
|
||||
echo "Usage $0 {start|stop|restart|status|run}"
|
||||
esac
|
||||
Reference in New Issue
Block a user