You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flume.apache.org by jm...@apache.org on 2011/09/22 23:04:19 UTC

svn commit: r1174389 - in /incubator/flume/trunk/bin: flume flume-daemon.sh

Author: jmhsieh
Date: Thu Sep 22 21:04:19 2011
New Revision: 1174389

URL: http://svn.apache.org/viewvc?rev=1174389&view=rev
Log:
FLUME-766: the location and name of the flume's PID file needs to be tweakable (Roman Shaposhnik)
FLUME-765: flume-daemon.sh output on where logging goes is misleading (Roman Shaposhnik)

Modified:
    incubator/flume/trunk/bin/flume
    incubator/flume/trunk/bin/flume-daemon.sh

Modified: incubator/flume/trunk/bin/flume
URL: http://svn.apache.org/viewvc/incubator/flume/trunk/bin/flume?rev=1174389&r1=1174388&r2=1174389&view=diff
==============================================================================
--- incubator/flume/trunk/bin/flume (original)
+++ incubator/flume/trunk/bin/flume Thu Sep 22 21:04:19 2011
@@ -24,6 +24,13 @@
 # TODO (jon) This assumes CLASSPATH has $JAVA_HOME/lib/tools.jar in it
 # (jetty requires this to compile jsps.  In future will precompile
 # jsps to make this requirement go away.)
+#
+# This scripts honors the folling env variables:
+#   FLUME_PID_DIR      -- subdirectory where PID files 
+#                            flume-$FLUME_IDENT_STRING-master.pid
+#                         will be deposited
+#   FLUME_IDENT_STRING -- a unique qualifier for the process owning the PID
+#                         typically a user name running the process
 
 function usage {
   echo "usage: flume command [args...]"
@@ -58,7 +65,8 @@ CMDPATH=`dirname $CMDPATH`
 
 FLUME=$CMDPATH/bin/flume
 
-MASTERPID=${FLUME_PID_DIR:="/tmp"}/flumemaster.pid
+MASTERPID=${FLUME_PID_DIR:="/tmp"}/flume-$FLUME_IDENT_STRING-master.pid
+NODEPID=${FLUME_PID_DIR:="/tmp"}/flume-$FLUME_IDENT_STRING-node.pid
 
 CMD="$1"
 if [ -z "$CMD" ]; then
@@ -234,8 +242,8 @@ WATCHDOG_CLASS=com.cloudera.flume.watchd
 MASTER_WATCHDOG="java ${JOPTS} -Dpid=$$ -Dpidfile=$MASTERPID $WATCHDOG_CLASS"
 MASTERI_WATCHDOG="java ${JOPTS} -Dpid=$$ -Dpidfile=$MASTERPID  $WATCHDOG_CLASS"
 
-NODE_WATCHDOG="java ${JOPTS} -Dpid=$$ -Dpidfile=${FLUME_PID_DIR}/flumenode-$$.pid $WATCHDOG_CLASS"
-NODEI_WATCHDOG="java ${JOPTS} -Dfwdstdin=true -Dpid=$$ -Dpidfile=${FLUME_PID_DIR}/flumenode-$$.pid $WATCHDOG_CLASS"
+NODE_WATCHDOG="java ${JOPTS} -Dpid=$$ -Dpidfile=$NODEPID $WATCHDOG_CLASS"
+NODEI_WATCHDOG="java ${JOPTS} -Dfwdstdin=true -Dpid=$$ -Dpidfile=$NODEPID $WATCHDOG_CLASS"
 
 if [ -n "$FLUME_VERBOSE" ]; then
     if [ -n "$FLUME_VERBOSE_JAVA" ]; then

Modified: incubator/flume/trunk/bin/flume-daemon.sh
URL: http://svn.apache.org/viewvc/incubator/flume/trunk/bin/flume-daemon.sh?rev=1174389&r1=1174388&r2=1174389&view=diff
==============================================================================
--- incubator/flume/trunk/bin/flume-daemon.sh (original)
+++ incubator/flume/trunk/bin/flume-daemon.sh Thu Sep 22 21:04:19 2011
@@ -66,7 +66,7 @@ if [ "$FLUME_NICENESS" = "" ]; then
 fi 
 
 if [ "$FLUME_PID_DIR" = "" ]; then
-  FLUME_PID_DIR=/var/run/flume
+  export FLUME_PID_DIR=/var/run/flume
 fi
 
 if [ "$FLUME_IDENT_STRING" = "" ]; then
@@ -89,14 +89,15 @@ case $startStop in
       if kill -0 `cat $pid` > /dev/null 2>&1; then
         echo $command running as process `cat $pid`.  Stop it first.
         exit 1
+      else # must be a stale PID file
+        rm -f $pid
       fi
     fi
 
     flume_rotate_log $log
-    echo starting $command, logging to $log
+    echo starting $command, logging to $FLUME_LOG_DIR/$FLUME_LOGFILE
     cd "$FLUME_HOME"
     nohup  nice -n ${FLUME_NICENESS} "${FLUME_HOME}"/bin/flume $command "$@" > "$log" 2>&1 < /dev/null &
-    echo $! > $pid
     sleep 1; head "$log"
     ;;