### # ============LICENSE_START======================================================= # LogParser # ================================================================================ # Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============LICENSE_END========================================================= ### #!/bin/sh # # init script for a Java application # #Arguments for application SERVER=http://localhost:8070/pap/ LOGTYPE=PAP LOGPATH="/var/lib/servers/pap/logs/catalina.out" PARSERLOGPATH="$POLICY_HOME/logs/parserlog.log" JDBC_URL="jdbc:h2:tcp://localhost:9092/log" JDBC_USER="sa" JDBC_DRIVER="org.h2.Driver" JDBC_PASSWORD="" SERVICE="LogParser.jar" # Check the application status # # This function checks if the application is running check_status() { # Running pgrep with some arguments to check if the PID exists if pgrep -f "$SERVICE $SERVER $LOGTYPE" ; then RESULT=$(pgrep -f ${SERVICE}) return $RESULT fi return 0 # In any another case, return 0 } # Starts the application start() { # At first checks if the application is already started calling the check_status # function check_status # $? is a special variable that hold the "exit status of the most recently executed # foreground pipeline" pid=$? if [ $pid -ne 0 ] ; then echo "The application is already started" exit 1 fi # If the application isn't running, starts it echo -n "Starting application: " # Redirects default and error output to a log file java -jar LogParser.jar $SERVER $LOGTYPE $LOGPATH $PARSERLOGPATH $JDBC_URL $JDBC_USER $JDBC_DRIVER $JDBC_PASSWORD>> $POLICY_HOME/logs/parserlog.log 2>&1 & echo "OK" } # Stops the application stop() { # Like as the start function, checks the application status check_status pid=$? if [ $pid -eq 0 ] ; then echo "Application is already stopped" exit 1 fi # Kills the application process echo -n "Stopping application: " kill -9 $pid & echo "OK" } # Show the application status status() { # The check_status function, again... check_status # If the PID was returned means the application is running if [ $? -ne 0 ] ; then echo "Application is started" else echo "Application is stopped" fi } # Main logic, a simple case to call functions case "$1" in start) start ;; stop) stop ;; status) status ;; restart|reload) stop start ;; *) echo "Usage: $0 {start|stop|restart|reload|status}" exit 1 esac exit 0