Created
July 7, 2014 06:47
-
-
Save mp911de/69385b908d129a74b205 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# Licensed to the Apache Software Foundation (ASF) under one or more | |
# contributor license agreements. See the NOTICE file distributed with | |
# this work for additional information regarding copyright ownership. | |
# The ASF licenses this file to You 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. | |
# ----------------------------------------------------------------------------- | |
# Control Script for the CATALINA Server | |
# | |
# Environment Variable Prerequisites | |
# | |
# Do not set the variables in this script. Instead put them into a script | |
# setenv.sh in CATALINA_BASE/bin to keep your customizations separate. | |
# | |
# CATALINA_HOME May point at your Catalina "build" directory. | |
# | |
# CATALINA_BASE (Optional) Base directory for resolving dynamic portions | |
# of a Catalina installation. If not present, resolves to | |
# the same directory that CATALINA_HOME points to. | |
# | |
# CATALINA_OUT (Optional) Full path to a file where stdout and stderr | |
# will be redirected. | |
# Default is $CATALINA_BASE/logs/catalina.out | |
# | |
# CATALINA_OPTS (Optional) Java runtime options used when the "start", | |
# "run" or "debug" command is executed. | |
# Include here and not in JAVA_OPTS all options, that should | |
# only be used by Tomcat itself, not by the stop process, | |
# the version command etc. | |
# Examples are heap size, GC logging, JMX ports etc. | |
# | |
# CATALINA_TMPDIR (Optional) Directory path location of temporary directory | |
# the JVM should use (java.io.tmpdir). Defaults to | |
# $CATALINA_BASE/temp. | |
# | |
# JAVA_HOME Must point at your Java Development Kit installation. | |
# Required to run the with the "debug" argument. | |
# | |
# JRE_HOME Must point at your Java Runtime installation. | |
# Defaults to JAVA_HOME if empty. If JRE_HOME and JAVA_HOME | |
# are both set, JRE_HOME is used. | |
# | |
# JAVA_OPTS (Optional) Java runtime options used when any command | |
# is executed. | |
# Include here and not in CATALINA_OPTS all options, that | |
# should be used by Tomcat and also by the stop process, | |
# the version command etc. | |
# Most options should go into CATALINA_OPTS. | |
# | |
# JAVA_ENDORSED_DIRS (Optional) Lists of of colon separated directories | |
# containing some jars in order to allow replacement of APIs | |
# created outside of the JCP (i.e. DOM and SAX from W3C). | |
# It can also be used to update the XML parser implementation. | |
# Defaults to $CATALINA_HOME/endorsed. | |
# | |
# JPDA_TRANSPORT (Optional) JPDA transport used when the "jpda start" | |
# command is executed. The default is "dt_socket". | |
# | |
# JPDA_ADDRESS (Optional) Java runtime options used when the "jpda start" | |
# command is executed. The default is 8000. | |
# | |
# JPDA_SUSPEND (Optional) Java runtime options used when the "jpda start" | |
# command is executed. Specifies whether JVM should suspend | |
# execution immediately after startup. Default is "n". | |
# | |
# JPDA_OPTS (Optional) Java runtime options used when the "jpda start" | |
# command is executed. If used, JPDA_TRANSPORT, JPDA_ADDRESS, | |
# and JPDA_SUSPEND are ignored. Thus, all required jpda | |
# options MUST be specified. The default is: | |
# | |
# -agentlib:jdwp=transport=$JPDA_TRANSPORT, | |
# address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND | |
# | |
# CATALINA_PID (Optional) Path of the file which should contains the pid | |
# of the catalina startup java process, when start (fork) is | |
# used | |
# | |
# LOGGING_CONFIG (Optional) Override Tomcat's logging config file | |
# Example (all one line) | |
# LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties" | |
# | |
# LOGGING_MANAGER (Optional) Override Tomcat's logging manager | |
# Example (all one line) | |
# LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" | |
# ----------------------------------------------------------------------------- | |
# OS specific support. $var _must_ be set to either true or false. | |
cygwin=false | |
darwin=false | |
os400=false | |
case "`uname`" in | |
CYGWIN*) cygwin=true;; | |
Darwin*) darwin=true;; | |
OS400*) os400=true;; | |
esac | |
# resolve links - $0 may be a softlink | |
PRG="$0" | |
while [ -h "$PRG" ]; do | |
ls=`ls -ld "$PRG"` | |
link=`expr "$ls" : '.*-> \(.*\)$'` | |
if expr "$link" : '/.*' > /dev/null; then | |
PRG="$link" | |
else | |
PRG=`dirname "$PRG"`/"$link" | |
fi | |
done | |
# Get standard environment variables | |
PRGDIR=`dirname "$PRG"` | |
# Only set CATALINA_HOME if not already set | |
[ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." >/dev/null; pwd` | |
# Copy CATALINA_BASE from CATALINA_HOME if not already set | |
[ -z "$CATALINA_BASE" ] && CATALINA_BASE="$CATALINA_HOME" | |
# Ensure that any user defined CLASSPATH variables are not used on startup, | |
# but allow them to be specified in setenv.sh, in rare case when it is needed. | |
CLASSPATH= | |
if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then | |
. "$CATALINA_BASE/bin/setenv.sh" | |
elif [ -r "$CATALINA_HOME/bin/setenv.sh" ]; then | |
. "$CATALINA_HOME/bin/setenv.sh" | |
fi | |
# For Cygwin, ensure paths are in UNIX format before anything is touched | |
if $cygwin; then | |
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` | |
[ -n "$JRE_HOME" ] && JRE_HOME=`cygpath --unix "$JRE_HOME"` | |
[ -n "$CATALINA_HOME" ] && CATALINA_HOME=`cygpath --unix "$CATALINA_HOME"` | |
[ -n "$CATALINA_BASE" ] && CATALINA_BASE=`cygpath --unix "$CATALINA_BASE"` | |
[ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` | |
fi | |
# For OS400 | |
if $os400; then | |
# Set job priority to standard for interactive (interactive - 6) by using | |
# the interactive priority - 6, the helper threads that respond to requests | |
# will be running at the same priority as interactive jobs. | |
COMMAND='chgjob job('$JOBNAME') runpty(6)' | |
system $COMMAND | |
# Enable multi threading | |
export QIBM_MULTI_THREADED=Y | |
fi | |
# Get standard Java environment variables | |
if $os400; then | |
# -r will Only work on the os400 if the files are: | |
# 1. owned by the user | |
# 2. owned by the PRIMARY group of the user | |
# this will not work if the user belongs in secondary groups | |
. "$CATALINA_HOME"/bin/setclasspath.sh | |
else | |
if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then | |
. "$CATALINA_HOME"/bin/setclasspath.sh | |
else | |
echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh" | |
echo "This file is needed to run this program" | |
exit 1 | |
fi | |
fi | |
# Add on extra jar files to CLASSPATH | |
if [ ! -z "$CLASSPATH" ] ; then | |
CLASSPATH="$CLASSPATH": | |
fi | |
CLASSPATH="$CLASSPATH""$CATALINA_HOME"/bin/bootstrap.jar | |
if [ -z "$CATALINA_OUT" ] ; then | |
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out | |
fi | |
if [ -z "$CATALINA_TMPDIR" ] ; then | |
# Define the java.io.tmpdir to use for Catalina | |
CATALINA_TMPDIR="$CATALINA_BASE"/temp | |
fi | |
# Add tomcat-juli.jar to classpath | |
# tomcat-juli.jar can be over-ridden per instance | |
if [ -r "$CATALINA_BASE/bin/tomcat-juli.jar" ] ; then | |
CLASSPATH=$CLASSPATH:$CATALINA_BASE/bin/tomcat-juli.jar | |
else | |
CLASSPATH=$CLASSPATH:$CATALINA_HOME/bin/tomcat-juli.jar | |
fi | |
if [ -r "$CATALINA_BASE/bin/logstash-gelf-1.4.2.jar" ] ; then | |
CLASSPATH=$CLASSPATH:$CATALINA_BASE/bin/logstash-gelf-1.4.2.jar:$CATALINA_BASE/bin/json-simple-1.1.jar:$CATALINA_BASE/bin/jedis-2.5.1.jar:$CATALINA_BASE/bin/commons-pool2-2.0.jar | |
else | |
CLASSPATH=$CLASSPATH:$CATALINA_HOME/bin/logstash-gelf-1.4.2.jar:$CATALINA_HOME/bin/json-simple-1.1.jar:$CATALINA_HOME/bin/jedis-2.5.1.jar:$CATALINA_HOME/bin/commons-pool2-2.0.jar | |
fi | |
# Bugzilla 37848: When no TTY is available, don't output to console | |
have_tty=0 | |
if [ "`tty`" != "not a tty" ]; then | |
have_tty=1 | |
fi | |
# For Cygwin, switch paths to Windows format before running java | |
if $cygwin; then | |
JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"` | |
JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"` | |
CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"` | |
CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"` | |
CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"` | |
CLASSPATH=`cygpath --path --windows "$CLASSPATH"` | |
JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"` | |
fi | |
# Set juli LogManager config file if it is present and an override has not been issued | |
if [ -z "$LOGGING_CONFIG" ]; then | |
if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then | |
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties" | |
else | |
# Bugzilla 45585 | |
LOGGING_CONFIG="-Dnop" | |
fi | |
fi | |
if [ -z "$LOGGING_MANAGER" ]; then | |
LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" | |
fi | |
# Uncomment the following line to make the umask available when using the | |
# org.apache.catalina.security.SecurityListener | |
#JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`" | |
# ----- Execute The Requested Command ----------------------------------------- | |
# Bugzilla 37848: only output this if we have a TTY | |
if [ $have_tty -eq 1 ]; then | |
echo "Using CATALINA_BASE: $CATALINA_BASE" | |
echo "Using CATALINA_HOME: $CATALINA_HOME" | |
echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR" | |
if [ "$1" = "debug" ] ; then | |
echo "Using JAVA_HOME: $JAVA_HOME" | |
else | |
echo "Using JRE_HOME: $JRE_HOME" | |
fi | |
echo "Using CLASSPATH: $CLASSPATH" | |
if [ ! -z "$CATALINA_PID" ]; then | |
echo "Using CATALINA_PID: $CATALINA_PID" | |
fi | |
fi | |
if [ "$1" = "jpda" ] ; then | |
if [ -z "$JPDA_TRANSPORT" ]; then | |
JPDA_TRANSPORT="dt_socket" | |
fi | |
if [ -z "$JPDA_ADDRESS" ]; then | |
JPDA_ADDRESS="8000" | |
fi | |
if [ -z "$JPDA_SUSPEND" ]; then | |
JPDA_SUSPEND="n" | |
fi | |
if [ -z "$JPDA_OPTS" ]; then | |
JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND" | |
fi | |
CATALINA_OPTS="$CATALINA_OPTS $JPDA_OPTS" | |
shift | |
fi | |
if [ "$1" = "debug" ] ; then | |
if $os400; then | |
echo "Debug command not available on OS400" | |
exit 1 | |
else | |
shift | |
if [ "$1" = "-security" ] ; then | |
if [ $have_tty -eq 1 ]; then | |
echo "Using Security Manager" | |
fi | |
shift | |
exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ | |
-sourcepath "$CATALINA_HOME"/../../java \ | |
-Djava.security.manager \ | |
-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ | |
-Dcatalina.base="$CATALINA_BASE" \ | |
-Dcatalina.home="$CATALINA_HOME" \ | |
-Djava.io.tmpdir="$CATALINA_TMPDIR" \ | |
org.apache.catalina.startup.Bootstrap "$@" start | |
else | |
exec "$_RUNJDB" "$LOGGING_CONFIG" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ | |
-sourcepath "$CATALINA_HOME"/../../java \ | |
-Dcatalina.base="$CATALINA_BASE" \ | |
-Dcatalina.home="$CATALINA_HOME" \ | |
-Djava.io.tmpdir="$CATALINA_TMPDIR" \ | |
org.apache.catalina.startup.Bootstrap "$@" start | |
fi | |
fi | |
elif [ "$1" = "run" ]; then | |
shift | |
if [ "$1" = "-security" ] ; then | |
if [ $have_tty -eq 1 ]; then | |
echo "Using Security Manager" | |
fi | |
shift | |
eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Djava.security.manager \ | |
-Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap "$@" start | |
else | |
eval exec "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap "$@" start | |
fi | |
elif [ "$1" = "start" ] ; then | |
if [ ! -z "$CATALINA_PID" ]; then | |
if [ -f "$CATALINA_PID" ]; then | |
if [ -s "$CATALINA_PID" ]; then | |
echo "Existing PID file found during start." | |
if [ -r "$CATALINA_PID" ]; then | |
PID=`cat "$CATALINA_PID"` | |
ps -p $PID >/dev/null 2>&1 | |
if [ $? -eq 0 ] ; then | |
echo "Tomcat appears to still be running with PID $PID. Start aborted." | |
exit 1 | |
else | |
echo "Removing/clearing stale PID file." | |
rm -f "$CATALINA_PID" >/dev/null 2>&1 | |
if [ $? != 0 ]; then | |
if [ -w "$CATALINA_PID" ]; then | |
cat /dev/null > "$CATALINA_PID" | |
else | |
echo "Unable to remove or clear stale PID file. Start aborted." | |
exit 1 | |
fi | |
fi | |
fi | |
else | |
echo "Unable to read PID file. Start aborted." | |
exit 1 | |
fi | |
else | |
rm -f "$CATALINA_PID" >/dev/null 2>&1 | |
if [ $? != 0 ]; then | |
if [ ! -w "$CATALINA_PID" ]; then | |
echo "Unable to remove or write to empty PID file. Start aborted." | |
exit 1 | |
fi | |
fi | |
fi | |
fi | |
fi | |
shift | |
touch "$CATALINA_OUT" | |
if [ "$1" = "-security" ] ; then | |
if [ $have_tty -eq 1 ]; then | |
echo "Using Security Manager" | |
fi | |
shift | |
eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Djava.security.manager \ | |
-Djava.security.policy=="\"$CATALINA_BASE/conf/catalina.policy\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap "$@" start \ | |
>> "$CATALINA_OUT" 2>&1 "&" | |
else | |
eval "\"$_RUNJAVA\"" "\"$LOGGING_CONFIG\"" $LOGGING_MANAGER $JAVA_OPTS $CATALINA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap "$@" start \ | |
>> "$CATALINA_OUT" 2>&1 "&" | |
fi | |
if [ ! -z "$CATALINA_PID" ]; then | |
echo $! > "$CATALINA_PID" | |
fi | |
echo "Tomcat started." | |
elif [ "$1" = "stop" ] ; then | |
shift | |
SLEEP=5 | |
if [ ! -z "$1" ]; then | |
echo $1 | grep "[^0-9]" >/dev/null 2>&1 | |
if [ $? -gt 0 ]; then | |
SLEEP=$1 | |
shift | |
fi | |
fi | |
FORCE=0 | |
if [ "$1" = "-force" ]; then | |
shift | |
FORCE=1 | |
fi | |
if [ ! -z "$CATALINA_PID" ]; then | |
if [ -f "$CATALINA_PID" ]; then | |
if [ -s "$CATALINA_PID" ]; then | |
kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 | |
if [ $? -gt 0 ]; then | |
echo "PID file found but no matching process was found. Stop aborted." | |
exit 1 | |
fi | |
else | |
echo "PID file is empty and has been ignored." | |
fi | |
else | |
echo "\$CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted." | |
exit 1 | |
fi | |
fi | |
eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap "$@" stop | |
# stop failed. Shutdown port disabled? Try a normal kill. | |
if [ $? != 0 ]; then | |
if [ ! -z "$CATALINA_PID" ]; then | |
echo "The stop command failed. Attempting to signal the process to stop through OS signal." | |
kill -15 `cat "$CATALINA_PID"` >/dev/null 2>&1 | |
fi | |
fi | |
if [ ! -z "$CATALINA_PID" ]; then | |
if [ -f "$CATALINA_PID" ]; then | |
while [ $SLEEP -ge 0 ]; do | |
kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 | |
if [ $? -gt 0 ]; then | |
rm -f "$CATALINA_PID" >/dev/null 2>&1 | |
if [ $? != 0 ]; then | |
if [ -w "$CATALINA_PID" ]; then | |
cat /dev/null > "$CATALINA_PID" | |
# If Tomcat has stopped don't try and force a stop with an empty PID file | |
FORCE=0 | |
else | |
echo "The PID file could not be removed or cleared." | |
fi | |
fi | |
echo "Tomcat stopped." | |
break | |
fi | |
if [ $SLEEP -gt 0 ]; then | |
sleep 1 | |
fi | |
if [ $SLEEP -eq 0 ]; then | |
if [ $FORCE -eq 0 ]; then | |
echo "Tomcat did not stop in time. PID file was not removed. To aid diagnostics a thread dump has been written to standard out." | |
kill -3 `cat "$CATALINA_PID"` | |
fi | |
fi | |
SLEEP=`expr $SLEEP - 1 ` | |
done | |
fi | |
fi | |
KILL_SLEEP_INTERVAL=5 | |
if [ $FORCE -eq 1 ]; then | |
if [ -z "$CATALINA_PID" ]; then | |
echo "Kill failed: \$CATALINA_PID not set" | |
else | |
if [ -f "$CATALINA_PID" ]; then | |
PID=`cat "$CATALINA_PID"` | |
echo "Killing Tomcat with the PID: $PID" | |
kill -9 $PID | |
while [ $KILL_SLEEP_INTERVAL -ge 0 ]; do | |
kill -0 `cat "$CATALINA_PID"` >/dev/null 2>&1 | |
if [ $? -gt 0 ]; then | |
rm -f "$CATALINA_PID" >/dev/null 2>&1 | |
if [ $? != 0 ]; then | |
if [ -w "$CATALINA_PID" ]; then | |
cat /dev/null > "$CATALINA_PID" | |
else | |
echo "The PID file could not be removed." | |
fi | |
fi | |
# Set this to zero else a warning will be issued about the process still running | |
KILL_SLEEP_INTERVAL=0 | |
echo "The Tomcat process has been killed." | |
break | |
fi | |
if [ $KILL_SLEEP_INTERVAL -gt 0 ]; then | |
sleep 1 | |
fi | |
KILL_SLEEP_INTERVAL=`expr $KILL_SLEEP_INTERVAL - 1 ` | |
done | |
if [ $KILL_SLEEP_INTERVAL -gt 0 ]; then | |
echo "Tomcat has not been killed completely yet. The process might be waiting on some system call or might be UNINTERRUPTIBLE." | |
fi | |
fi | |
fi | |
fi | |
elif [ "$1" = "configtest" ] ; then | |
eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \ | |
-Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \ | |
-Dcatalina.base="\"$CATALINA_BASE\"" \ | |
-Dcatalina.home="\"$CATALINA_HOME\"" \ | |
-Djava.io.tmpdir="\"$CATALINA_TMPDIR\"" \ | |
org.apache.catalina.startup.Bootstrap configtest | |
result=$? | |
if [ $result -ne 0 ]; then | |
echo "Configuration error detected!" | |
fi | |
exit $result | |
elif [ "$1" = "version" ] ; then | |
"$_RUNJAVA" \ | |
-classpath "$CATALINA_HOME/lib/catalina.jar" \ | |
org.apache.catalina.util.ServerInfo | |
else | |
echo "Usage: catalina.sh ( commands ... )" | |
echo "commands:" | |
if $os400; then | |
echo " debug Start Catalina in a debugger (not available on OS400)" | |
echo " debug -security Debug Catalina with a security manager (not available on OS400)" | |
else | |
echo " debug Start Catalina in a debugger" | |
echo " debug -security Debug Catalina with a security manager" | |
fi | |
echo " jpda start Start Catalina under JPDA debugger" | |
echo " run Start Catalina in the current window" | |
echo " run -security Start in the current window with security manager" | |
echo " start Start Catalina in a separate window" | |
echo " start -security Start in a separate window with security manager" | |
echo " stop Stop Catalina, waiting up to 5 seconds for the process to end" | |
echo " stop n Stop Catalina, waiting up to n seconds for the process to end" | |
echo " stop -force Stop Catalina, wait up to 5 seconds and then use kill -KILL if still running" | |
echo " stop n -force Stop Catalina, wait up to n seconds and then use kill -KILL if still running" | |
echo " configtest Run a basic syntax check on server.xml - check exit code for result" | |
echo " version What version of tomcat are you running?" | |
echo "Note: Waiting for the process to end and use of the -force option require that \$CATALINA_PID is defined" | |
exit 1 | |
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Licensed to the Apache Software Foundation (ASF) under one or more | |
# contributor license agreements. See the NOTICE file distributed with | |
# this work for additional information regarding copyright ownership. | |
# The ASF licenses this file to You 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. | |
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, biz.paluch.logging.gelf.jul.GelfLogHandler | |
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, biz.paluch.logging.gelf.jul.GelfLogHandler | |
############################################################ | |
# Handler specific properties. | |
# Describes specific configuration info for Handlers. | |
############################################################ | |
biz.paluch.logging.gelf.jul.GelfLogHandler.host=udp:localhost | |
biz.paluch.logging.gelf.jul.GelfLogHandler.port=12201 | |
biz.paluch.logging.gelf.jul.GelfLogHandler.level=INFO | |
1catalina.org.apache.juli.FileHandler.level = FINE | |
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs | |
1catalina.org.apache.juli.FileHandler.prefix = catalina. | |
2localhost.org.apache.juli.FileHandler.level = FINE | |
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs | |
2localhost.org.apache.juli.FileHandler.prefix = localhost. | |
3manager.org.apache.juli.FileHandler.level = FINE | |
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs | |
3manager.org.apache.juli.FileHandler.prefix = manager. | |
4host-manager.org.apache.juli.FileHandler.level = FINE | |
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs | |
4host-manager.org.apache.juli.FileHandler.prefix = host-manager. | |
java.util.logging.ConsoleHandler.level = FINE | |
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter | |
############################################################ | |
# Facility specific properties. | |
# Provides extra control for each logger. | |
############################################################ | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler,biz.paluch.logging.gelf.jul.GelfLogHandler | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler,biz.paluch.logging.gelf.jul.GelfLogHandler | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO | |
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler,biz.paluch.logging.gelf.jul.GelfLogHandler | |
# For example, set the org.apache.catalina.util.LifecycleBase logger to log | |
# each component that extends LifecycleBase changing state: | |
#org.apache.catalina.util.LifecycleBase.level = FINE | |
# To see debug messages in TldLocationsCache, uncomment the following line: | |
#org.apache.jasper.compiler.TldLocationsCache.level = FINE |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment