mirror of https://github.com/apache/activemq.git
Fix for AMQ-1691 and AMQ-1694
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@652121 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
aa62069349
commit
22c63e65c7
|
@ -0,0 +1,538 @@
|
|||
#! /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.
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
# Application
|
||||
APP_NAME="ActiveMQ"
|
||||
APP_LONG_NAME="ActiveMQ Broker"
|
||||
ACTIVEMQ_HOME="../.."
|
||||
|
||||
# Wrapper
|
||||
WRAPPER_CMD="wrapper"
|
||||
WRAPPER_CONF="wrapper.conf"
|
||||
|
||||
# Priority at which to run the wrapper. See "man nice" for valid priorities.
|
||||
# nice is only used if a priority is specified.
|
||||
PRIORITY=
|
||||
|
||||
# Location of the pid file.
|
||||
PIDDIR="."
|
||||
|
||||
# If uncommented, causes the Wrapper to be shutdown using an anchor file.
|
||||
# When launched with the 'start' command, it will also ignore all INT and
|
||||
# TERM signals.
|
||||
#IGNORE_SIGNALS=true
|
||||
|
||||
# If specified, the Wrapper will be run as the specified user.
|
||||
# IMPORTANT - Make sure that the user has the required privileges to write
|
||||
# the PID file and wrapper.log files. Failure to be able to write the log
|
||||
# file will cause the Wrapper to exit without any way to write out an error
|
||||
# message.
|
||||
# NOTE - This will set the user which is used to run the Wrapper as well as
|
||||
# the JVM and is not useful in situations where a privileged resource or
|
||||
# port needs to be allocated prior to the user being changed.
|
||||
#RUN_AS_USER=
|
||||
|
||||
# The following two lines are used by the chkconfig command. Change as is
|
||||
# appropriate for your application. They should remain commented.
|
||||
# chkconfig: 2345 20 80
|
||||
# description: @app.long.name@
|
||||
|
||||
# Do not modify anything beyond this point
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
# Get the fully qualified path to the script
|
||||
case $0 in
|
||||
/*)
|
||||
SCRIPT="$0"
|
||||
;;
|
||||
*)
|
||||
PWD=`pwd`
|
||||
SCRIPT="$PWD/$0"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Resolve the true real path without any sym links.
|
||||
CHANGED=true
|
||||
while [ "X$CHANGED" != "X" ]
|
||||
do
|
||||
# Change spaces to ":" so the tokens can be parsed.
|
||||
SCRIPT=`echo $SCRIPT | sed -e 's; ;:;g'`
|
||||
# Get the real path to this script, resolving any symbolic links
|
||||
TOKENS=`echo $SCRIPT | sed -e 's;/; ;g'`
|
||||
REALPATH=
|
||||
for C in $TOKENS; do
|
||||
REALPATH="$REALPATH/$C"
|
||||
while [ -h "$REALPATH" ] ; do
|
||||
LS="`ls -ld "$REALPATH"`"
|
||||
LINK="`expr "$LS" : '.*-> \(.*\)$'`"
|
||||
if expr "$LINK" : '/.*' > /dev/null; then
|
||||
REALPATH="$LINK"
|
||||
else
|
||||
REALPATH="`dirname "$REALPATH"`""/$LINK"
|
||||
fi
|
||||
done
|
||||
done
|
||||
# Change ":" chars back to spaces.
|
||||
REALPATH=`echo $REALPATH | sed -e 's;:; ;g'`
|
||||
|
||||
if [ "$REALPATH" = "$SCRIPT" ]
|
||||
then
|
||||
CHANGED=""
|
||||
else
|
||||
SCRIPT="$REALPATH"
|
||||
fi
|
||||
done
|
||||
|
||||
# Change the current directory to the location of the script
|
||||
cd "`dirname "$REALPATH"`"
|
||||
REALDIR=`pwd`
|
||||
|
||||
# If the PIDDIR is relative, set its value relative to the full REALPATH to avoid problems if
|
||||
# the working directory is later changed.
|
||||
FIRST_CHAR=`echo $PIDDIR | cut -c1,1`
|
||||
if [ "$FIRST_CHAR" != "/" ]
|
||||
then
|
||||
PIDDIR=$REALDIR/$PIDDIR
|
||||
fi
|
||||
# Same test for WRAPPER_CMD
|
||||
FIRST_CHAR=`echo $WRAPPER_CMD | cut -c1,1`
|
||||
if [ "$FIRST_CHAR" != "/" ]
|
||||
then
|
||||
WRAPPER_CMD=$REALDIR/$WRAPPER_CMD
|
||||
fi
|
||||
# Same test for WRAPPER_CONF
|
||||
FIRST_CHAR=`echo $WRAPPER_CONF | cut -c1,1`
|
||||
if [ "$FIRST_CHAR" != "/" ]
|
||||
then
|
||||
WRAPPER_CONF=$REALDIR/$WRAPPER_CONF
|
||||
fi
|
||||
|
||||
# Process ID
|
||||
ANCHORFILE="$PIDDIR/$APP_NAME.anchor"
|
||||
PIDFILE="$PIDDIR/$APP_NAME.pid"
|
||||
LOCKDIR="/var/lock/subsys"
|
||||
LOCKFILE="$LOCKDIR/$APP_NAME"
|
||||
pid=""
|
||||
|
||||
# Resolve the location of the 'ps' command
|
||||
PSEXE="/usr/bin/ps"
|
||||
if [ ! -x $PSEXE ]
|
||||
then
|
||||
PSEXE="/bin/ps"
|
||||
if [ ! -x $PSEXE ]
|
||||
then
|
||||
echo "Unable to locate 'ps'."
|
||||
echo "Please report this message along with the location of the command on your system."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Resolve the os
|
||||
DIST_OS=`uname -s | tr [:upper:] [:lower:] | tr -d [:blank:]`
|
||||
case "$DIST_OS" in
|
||||
'sunos')
|
||||
DIST_OS="solaris"
|
||||
;;
|
||||
'hp-ux' | 'hp-ux64')
|
||||
DIST_OS="hpux"
|
||||
;;
|
||||
'darwin')
|
||||
DIST_OS="macosx"
|
||||
;;
|
||||
'unix_sv')
|
||||
DIST_OS="unixware"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Resolve the architecture
|
||||
DIST_ARCH=`uname -p 2>/dev/null | tr [:upper:] [:lower:] | tr -d [:blank:]`
|
||||
if [ "$DIST_ARCH" = "unknown" ] || [ "$DIST_ARCH" = "" ]
|
||||
then
|
||||
DIST_ARCH=`uname -m | tr [:upper:] [:lower:] | tr -d [:blank:]`
|
||||
fi
|
||||
case "$DIST_ARCH" in
|
||||
'amd64' | 'ia32' | 'ia64' | 'i386' | 'i486' | 'i586' | 'i686' | 'x86_64')
|
||||
DIST_ARCH="x86"
|
||||
;;
|
||||
'ip27')
|
||||
DIST_ARCH="mips"
|
||||
;;
|
||||
'power' | 'powerpc' | 'power_pc' | 'ppc64')
|
||||
DIST_ARCH="ppc"
|
||||
;;
|
||||
'pa_risc' | 'pa-risc')
|
||||
DIST_ARCH="parisc"
|
||||
;;
|
||||
'sun4u' | 'sparcv9')
|
||||
DIST_ARCH="sparc"
|
||||
;;
|
||||
'9000/800')
|
||||
DIST_ARCH="parisc"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Decide on the wrapper binary to use.
|
||||
# If a 32-bit wrapper binary exists then it will work on 32 or 64 bit
|
||||
# platforms, if the 64-bit binary exists then the distribution most
|
||||
# likely wants to use long names. Otherwise, look for the default.
|
||||
# For macosx, we also want to look for universal binaries.
|
||||
WRAPPER_TEST_CMD="$WRAPPER_CMD-$DIST_OS-$DIST_ARCH-32"
|
||||
if [ -x $WRAPPER_TEST_CMD ]
|
||||
then
|
||||
WRAPPER_CMD="$WRAPPER_TEST_CMD"
|
||||
else
|
||||
if [ "$DIST_OS" = "macosx" ]
|
||||
then
|
||||
WRAPPER_TEST_CMD="$WRAPPER_CMD-$DIST_OS-universal-32"
|
||||
if [ -x $WRAPPER_TEST_CMD ]
|
||||
then
|
||||
WRAPPER_CMD="$WRAPPER_TEST_CMD"
|
||||
else
|
||||
WRAPPER_TEST_CMD="$WRAPPER_CMD-$DIST_OS-$DIST_ARCH-64"
|
||||
if [ -x $WRAPPER_TEST_CMD ]
|
||||
then
|
||||
WRAPPER_CMD="$WRAPPER_TEST_CMD"
|
||||
else
|
||||
WRAPPER_TEST_CMD="$WRAPPER_CMD-$DIST_OS-universal-64"
|
||||
if [ -x $WRAPPER_TEST_CMD ]
|
||||
then
|
||||
WRAPPER_CMD="$WRAPPER_TEST_CMD"
|
||||
else
|
||||
if [ ! -x $WRAPPER_CMD ]
|
||||
then
|
||||
echo "Unable to locate any of the following binaries:"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-$DIST_ARCH-32"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-universal-32"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-$DIST_ARCH-64"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-universal-64"
|
||||
echo " $WRAPPER_CMD"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
else
|
||||
WRAPPER_TEST_CMD="$WRAPPER_CMD-$DIST_OS-$DIST_ARCH-64"
|
||||
if [ -x $WRAPPER_TEST_CMD ]
|
||||
then
|
||||
WRAPPER_CMD="$WRAPPER_TEST_CMD"
|
||||
else
|
||||
if [ ! -x $WRAPPER_CMD ]
|
||||
then
|
||||
echo "Unable to locate any of the following binaries:"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-$DIST_ARCH-32"
|
||||
echo " $WRAPPER_CMD-$DIST_OS-$DIST_ARCH-64"
|
||||
echo " $WRAPPER_CMD"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Build the nice clause
|
||||
if [ "X$PRIORITY" = "X" ]
|
||||
then
|
||||
CMDNICE=""
|
||||
else
|
||||
CMDNICE="nice -$PRIORITY"
|
||||
fi
|
||||
|
||||
# Build the anchor file clause.
|
||||
if [ "X$IGNORE_SIGNALS" = "X" ]
|
||||
then
|
||||
ANCHORPROP=
|
||||
IGNOREPROP=
|
||||
else
|
||||
ANCHORPROP=wrapper.anchorfile=$ANCHORFILE
|
||||
IGNOREPROP=wrapper.ignore_signals=TRUE
|
||||
fi
|
||||
|
||||
# Build the lock file clause. Only create a lock file if the lock directory exists on this platform.
|
||||
if [ -d $LOCKDIR ]
|
||||
then
|
||||
LOCKPROP=wrapper.lockfile=$LOCKFILE
|
||||
else
|
||||
LOCKPROP=
|
||||
fi
|
||||
|
||||
checkUser() {
|
||||
# Check the configured user. If necessary rerun this script as the desired user.
|
||||
if [ "X$RUN_AS_USER" != "X" ]
|
||||
then
|
||||
# Resolve the location of the 'id' command
|
||||
IDEXE="/usr/xpg4/bin/id"
|
||||
if [ ! -x $IDEXE ]
|
||||
then
|
||||
IDEXE="/usr/bin/id"
|
||||
if [ ! -x $IDEXE ]
|
||||
then
|
||||
echo "Unable to locate 'id'."
|
||||
echo "Please report this message along with the location of the command on your system."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "`$IDEXE -u -n`" = "$RUN_AS_USER" ]
|
||||
then
|
||||
# Already running as the configured user. Avoid password prompts by not calling su.
|
||||
RUN_AS_USER=""
|
||||
fi
|
||||
fi
|
||||
if [ "X$RUN_AS_USER" != "X" ]
|
||||
then
|
||||
# If LOCKPROP and $RUN_AS_USER are defined then the new user will most likely not be
|
||||
# able to create the lock file. The Wrapper will be able to update this file once it
|
||||
# is created but will not be able to delete it on shutdown. If $2 is defined then
|
||||
# the lock file should be created for the current command
|
||||
if [ "X$LOCKPROP" != "X" ]
|
||||
then
|
||||
if [ "X$2" != "X" ]
|
||||
then
|
||||
# Resolve the primary group
|
||||
RUN_AS_GROUP=`groups $RUN_AS_USER | awk '{print $3}' | tail -1`
|
||||
if [ "X$RUN_AS_GROUP" = "X" ]
|
||||
then
|
||||
RUN_AS_GROUP=RUN_AS_USER
|
||||
fi
|
||||
touch $LOCKFILE
|
||||
chown $RUN_AS_USER:$RUN_AS_GROUP $LOCKFILE
|
||||
fi
|
||||
fi
|
||||
|
||||
# Still want to change users, recurse. This means that the user will only be
|
||||
# prompted for a password once.
|
||||
su -m $RUN_AS_USER -c "$REALPATH $1"
|
||||
|
||||
# Now that we are the original user again, we may need to clean up the lock file.
|
||||
if [ "X$LOCKPROP" != "X" ]
|
||||
then
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
# Wrapper is not running so make sure the lock file is deleted.
|
||||
if [ -f $LOCKFILE ]
|
||||
then
|
||||
rm $LOCKFILE
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
getpid() {
|
||||
if [ -f $PIDFILE ]
|
||||
then
|
||||
if [ -r $PIDFILE ]
|
||||
then
|
||||
pid=`cat $PIDFILE`
|
||||
if [ "X$pid" != "X" ]
|
||||
then
|
||||
# It is possible that 'a' process with the pid exists but that it is not the
|
||||
# correct process. This can happen in a number of cases, but the most
|
||||
# common is during system startup after an unclean shutdown.
|
||||
# The ps statement below looks for the specific wrapper command running as
|
||||
# the pid. If it is not found then the pid file is considered to be stale.
|
||||
pidtest=`$PSEXE -p $pid -o args | grep $WRAPPER_CMD | tail -1`
|
||||
if [ "X$pidtest" = "X" ]
|
||||
then
|
||||
# This is a stale pid file.
|
||||
rm -f $PIDFILE
|
||||
echo "Removed stale pid file: $PIDFILE"
|
||||
pid=""
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Cannot read $PIDFILE."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
testpid() {
|
||||
pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1`
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
# Process is gone so remove the pid file.
|
||||
rm -f $PIDFILE
|
||||
pid=""
|
||||
fi
|
||||
}
|
||||
|
||||
console() {
|
||||
echo "Running $APP_LONG_NAME..."
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
COMMAND_LINE="$CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.syslog.ident=$APP_NAME wrapper.pidfile=$PIDFILE $ANCHORPROP $LOCKPROP"
|
||||
exec $COMMAND_LINE
|
||||
else
|
||||
echo "$APP_LONG_NAME is already running."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
echo "Starting $APP_LONG_NAME..."
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
COMMAND_LINE="$CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.syslog.ident=$APP_NAME wrapper.pidfile=$PIDFILE wrapper.daemonize=TRUE $ANCHORPROP $IGNOREPROP $LOCKPROP"
|
||||
exec $COMMAND_LINE
|
||||
else
|
||||
echo "$APP_LONG_NAME is already running."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
stopit() {
|
||||
echo "Stopping $APP_LONG_NAME..."
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
echo "$APP_LONG_NAME was not running."
|
||||
else
|
||||
if [ "X$IGNORE_SIGNALS" = "X" ]
|
||||
then
|
||||
# Running so try to stop it.
|
||||
kill $pid
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
# An explanation for the failure should have been given
|
||||
echo "Unable to stop $APP_LONG_NAME."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
rm -f $ANCHORFILE
|
||||
if [ -f $ANCHORFILE ]
|
||||
then
|
||||
# An explanation for the failure should have been given
|
||||
echo "Unable to stop $APP_LONG_NAME."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# We can not predict how long it will take for the wrapper to
|
||||
# actually stop as it depends on settings in wrapper.conf.
|
||||
# Loop until it does.
|
||||
savepid=$pid
|
||||
CNT=0
|
||||
TOTCNT=0
|
||||
while [ "X$pid" != "X" ]
|
||||
do
|
||||
# Show a waiting message every 5 seconds.
|
||||
if [ "$CNT" -lt "5" ]
|
||||
then
|
||||
CNT=`expr $CNT + 1`
|
||||
else
|
||||
echo "Waiting for $APP_LONG_NAME to exit..."
|
||||
CNT=0
|
||||
fi
|
||||
TOTCNT=`expr $TOTCNT + 1`
|
||||
|
||||
sleep 1
|
||||
|
||||
testpid
|
||||
done
|
||||
|
||||
pid=$savepid
|
||||
testpid
|
||||
if [ "X$pid" != "X" ]
|
||||
then
|
||||
echo "Failed to stop $APP_LONG_NAME."
|
||||
exit 1
|
||||
else
|
||||
echo "Stopped $APP_LONG_NAME."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
status() {
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
echo "$APP_LONG_NAME is not running."
|
||||
exit 1
|
||||
else
|
||||
echo "$APP_LONG_NAME is running ($pid)."
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
dump() {
|
||||
echo "Dumping $APP_LONG_NAME..."
|
||||
getpid
|
||||
if [ "X$pid" = "X" ]
|
||||
then
|
||||
echo "$APP_LONG_NAME was not running."
|
||||
|
||||
else
|
||||
kill -3 $pid
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Failed to dump $APP_LONG_NAME."
|
||||
exit 1
|
||||
else
|
||||
echo "Dumped $APP_LONG_NAME."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
|
||||
'console')
|
||||
checkUser $1 touchlock
|
||||
console
|
||||
;;
|
||||
|
||||
'start')
|
||||
checkUser $1 touchlock
|
||||
start
|
||||
;;
|
||||
|
||||
'stop')
|
||||
checkUser $1
|
||||
stopit
|
||||
;;
|
||||
|
||||
'restart')
|
||||
checkUser $1 touchlock
|
||||
stopit
|
||||
start
|
||||
;;
|
||||
|
||||
'status')
|
||||
checkUser $1
|
||||
status
|
||||
;;
|
||||
|
||||
'dump')
|
||||
checkUser $1
|
||||
dump
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage: $0 { console | start | stop | restart | status | dump }"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,139 @@
|
|||
# ------------------------------------------------------------------------
|
||||
# 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.
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
#********************************************************************
|
||||
# Wrapper Properties
|
||||
#********************************************************************
|
||||
|
||||
#wrapper.debug=TRUE
|
||||
set.default.ACTIVEMQ_HOME=../..
|
||||
set.default.ACTIVEMQ_BASE=../..
|
||||
wrapper.working.dir=.
|
||||
|
||||
# Java Application
|
||||
wrapper.java.command=java
|
||||
|
||||
# Java Main class. This class must implement the WrapperListener interface
|
||||
# or guarantee that the WrapperManager class is initialized. Helper
|
||||
# classes are provided to do this for you. See the Integration section
|
||||
# of the documentation for details.
|
||||
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
|
||||
|
||||
# Java Classpath (include wrapper.jar) Add class path elements as
|
||||
# needed starting from 1
|
||||
wrapper.java.classpath.1=%ACTIVEMQ_HOME%/bin/wrapper.jar
|
||||
wrapper.java.classpath.2=%ACTIVEMQ_HOME%/bin/run.jar
|
||||
|
||||
# Java Library Path (location of Wrapper.DLL or libwrapper.so)
|
||||
wrapper.java.library.path.1=%ACTIVEMQ_HOME%/bin/linux/
|
||||
|
||||
# Java Additional Parameters
|
||||
# note that n is the parameter number starting from 1.
|
||||
wrapper.java.additional.1=-Dactivemq.home=%ACTIVEMQ_HOME%
|
||||
wrapper.java.additional.2=-Dactivemq.base=%ACTIVEMQ_BASE%
|
||||
wrapper.java.additional.3=-Djavax.net.ssl.keyStorePassword=password
|
||||
wrapper.java.additional.4=-Djavax.net.ssl.trustStorePassword=password
|
||||
wrapper.java.additional.5=-Djavax.net.ssl.keyStore=%ACTIVEMQ_BASE%/conf/broker.ks
|
||||
wrapper.java.additional.6=-Djavax.net.ssl.trustStore=%ACTIVEMQ_BASE%/conf/broker.ts
|
||||
wrapper.java.additional.7=-Dcom.sun.management.jmxremote
|
||||
wrapper.java.additional.8=-Dorg.apache.activemq.UseDedicatedTaskRunner=true
|
||||
wrapper.java.additional.9=-Dderby.storage.fileSyncTransactionLog=true
|
||||
|
||||
# Uncomment to enable jmx
|
||||
#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.port=1616
|
||||
#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.authenticate=false
|
||||
#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.ssl=false
|
||||
|
||||
# Uncomment to enable YourKit profiling
|
||||
#wrapper.java.additional.n=-Xrunyjpagent
|
||||
|
||||
# Uncomment to enable remote debugging
|
||||
#wrapper.java.additional.n=-Xdebug -Xnoagent -Djava.compiler=NONE
|
||||
#wrapper.java.additional.n=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
|
||||
|
||||
# Initial Java Heap Size (in MB)
|
||||
#wrapper.java.initmemory=3
|
||||
|
||||
# Maximum Java Heap Size (in MB)
|
||||
wrapper.java.maxmemory=512
|
||||
|
||||
# Application parameters. Add parameters as needed starting from 1
|
||||
wrapper.app.parameter.1=org.apache.activemq.console.Main
|
||||
wrapper.app.parameter.2=start
|
||||
|
||||
#********************************************************************
|
||||
# Wrapper Logging Properties
|
||||
#********************************************************************
|
||||
# Format of output for the console. (See docs for formats)
|
||||
wrapper.console.format=PM
|
||||
|
||||
# Log Level for console output. (See docs for log levels)
|
||||
wrapper.console.loglevel=INFO
|
||||
|
||||
# Log file to use for wrapper output logging.
|
||||
wrapper.logfile=%ACTIVEMQ_BASE%/data/wrapper.log
|
||||
|
||||
# Format of output for the log file. (See docs for formats)
|
||||
wrapper.logfile.format=LPTM
|
||||
|
||||
# Log Level for log file output. (See docs for log levels)
|
||||
wrapper.logfile.loglevel=INFO
|
||||
|
||||
# Maximum size that the log file will be allowed to grow to before
|
||||
# the log is rolled. Size is specified in bytes. The default value
|
||||
# of 0, disables log rolling. May abbreviate with the 'k' (kb) or
|
||||
# 'm' (mb) suffix. For example: 10m = 10 megabytes.
|
||||
wrapper.logfile.maxsize=0
|
||||
|
||||
# Maximum number of rolled log files which will be allowed before old
|
||||
# files are deleted. The default value of 0 implies no limit.
|
||||
wrapper.logfile.maxfiles=0
|
||||
|
||||
# Log Level for sys/event log output. (See docs for log levels)
|
||||
wrapper.syslog.loglevel=NONE
|
||||
|
||||
#********************************************************************
|
||||
# Wrapper Windows Properties
|
||||
#********************************************************************
|
||||
# Title to use when running as a console
|
||||
wrapper.console.title=ActiveMQ
|
||||
|
||||
#********************************************************************
|
||||
# Wrapper Windows NT/2000/XP Service Properties
|
||||
#********************************************************************
|
||||
# WARNING - Do not modify any of these properties when an application
|
||||
# using this configuration file has been installed as a service.
|
||||
# Please uninstall the service before modifying this section. The
|
||||
# service can then be reinstalled.
|
||||
|
||||
# Name of the service
|
||||
wrapper.ntservice.name=ActiveMQ
|
||||
|
||||
# Display name of the service
|
||||
wrapper.ntservice.displayname=ActiveMQ
|
||||
|
||||
# Description of the service
|
||||
wrapper.ntservice.description=ActiveMQ Broker
|
||||
|
||||
# Service dependencies. Add dependencies as needed starting from 1
|
||||
wrapper.ntservice.dependency.1=
|
||||
|
||||
# Mode in which the service is installed. AUTO_START or DEMAND_START
|
||||
wrapper.ntservice.starttype=AUTO_START
|
||||
|
||||
# Allow the service to interact with the desktop.
|
||||
wrapper.ntservice.interactive=false
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue