diff options
| author | Tony Garnock-Jones <tonyg@lshift.net> | 2008-07-03 13:35:11 +0100 |
|---|---|---|
| committer | Tony Garnock-Jones <tonyg@lshift.net> | 2008-07-03 13:35:11 +0100 |
| commit | 675869a27714307bce377638dfe8f6a5f069e757 (patch) | |
| tree | e4f9872242be02145702775f5c563f2b246f57ce /scripts/rabbitmq-server | |
| download | rabbitmq-server-git-675869a27714307bce377638dfe8f6a5f069e757.tar.gz | |
Initial commit, from repo-rebase-20080703121916_default (e96543d904a2)
Diffstat (limited to 'scripts/rabbitmq-server')
| -rwxr-xr-x | scripts/rabbitmq-server | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server new file mode 100755 index 0000000000..a44dd6da24 --- /dev/null +++ b/scripts/rabbitmq-server @@ -0,0 +1,72 @@ +#!/bin/sh +## The contents of this file are subject to the Mozilla Public License +## Version 1.1 (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.mozilla.org/MPL/ +## +## Software distributed under the License is distributed on an "AS IS" +## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +## License for the specific language governing rights and limitations +## under the License. +## +## The Original Code is RabbitMQ. +## +## The Initial Developers of the Original Code are LShift Ltd., +## Cohesive Financial Technologies LLC., and Rabbit Technologies Ltd. +## +## Portions created by LShift Ltd., Cohesive Financial Technologies +## LLC., and Rabbit Technologies Ltd. are Copyright (C) 2007-2008 +## LShift Ltd., Cohesive Financial Technologies LLC., and Rabbit +## Technologies Ltd.; +## +## All Rights Reserved. +## +## Contributor(s): ______________________________________. +## + +[ "x" = "x$NODENAME" ] && NODENAME=rabbit +[ "x" = "x$NODE_IP_ADDRESS" ] && NODE_IP_ADDRESS=0.0.0.0 +[ "x" = "x$NODE_PORT" ] && NODE_PORT=5672 + +ERL_ARGS="+K true +A30 -kernel inet_default_listen_options [{sndbuf,16384},{recbuf,4096}]" +CLUSTER_CONFIG_FILE=/etc/default/rabbitmq_cluster.config + +[ "x" = "x$LOG_BASE" ] && LOG_BASE=/var/log/rabbitmq +[ "x" = "x$MNESIA_BASE" ] && MNESIA_BASE=/var/lib/rabbitmq/mnesia +[ "x" = "x$MNESIA_DIR" ] && MNESIA_DIR=${MNESIA_BASE}/${NODENAME} +[ "x" = "x$NODE_ONLY" ] && START_RABBIT='-noinput -s rabbit' + +## Log rotation +LOGS="${LOG_BASE}/${NODENAME}.log" +SASL_LOGS="${LOG_BASE}/${NODENAME}-sasl.log" +BACKUP_EXTENSION=".bak" + +[ -f "${LOGS}" ] && cat "${LOGS}" >> "${LOGS}${BACKUP_EXTENSION}" +[ -f "${SASL_LOGS}" ] && cat "${SASL_LOGS}" >> "${SASL_LOGS}${BACKUP_EXTENSION}" + +if [ -f "$CLUSTER_CONFIG_FILE" ]; then + CLUSTER_CONFIG="-rabbit cluster_config \"$CLUSTER_CONFIG_FILE\"" +else + CLUSTER_CONFIG="" +fi + +erl \ + -pa $(dirname $0)/../ebin \ + ${START_RABBIT} \ + -sname ${NODENAME} \ + -boot start_sasl \ + +W w \ + ${ERL_ARGS} \ + -rabbit tcp_listeners '[{"'${NODE_IP_ADDRESS}'", '${NODE_PORT}'}]' \ + -sasl errlog_type error \ + -kernel error_logger '{file,"'${LOGS}'"}' \ + -sasl sasl_error_logger '{file,"'${SASL_LOGS}'"}' \ + -os_mon start_cpu_sup true \ + -os_mon start_disksup false \ + -os_mon start_memsup false \ + -os_mon start_os_sup false \ + -mnesia dir "\"${MNESIA_DIR}\"" \ + ${CLUSTER_CONFIG} \ + ${RABBIT_ARGS} \ + "$@" + |
