tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Allen Williams <anw-d...@infoisland.net>
Subject Re: Console Output Not Going Anywhere
Date Sun, 09 Aug 2009 19:39:09 GMT
Debian 2.6.26, tomcat from the Debian package (apt-get, etc.), starting 
it with the init.d script.  I did find the startup command line had 
output and error directed to SYSLOG, but I changed that and directed to 
/var/log/tomcat6/stdout and  /var/log/tomcat6/stderr; although there's a 
few bytes in stderr.out, about non-persistent memory, there's none of my 
System.err.println output.

There's bound to be only a finite number of places where you can tell 
Tomcat where to put the standard output and error, right?  Or the other 
logs, for that matter.  I've been scratching my head over this for a 
week, and  just today discovered the command line issue redirecting to 
SYSLOG and changed that.  Still none of my output, though.

For thoroughness, here's the startup script, and thanks for the help:

#!/bin/sh
#
# /etc/init.d/tomcat6 -- startup script for the Tomcat 6 servlet engine
#
# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
# Modified for Debian GNU/Linux    by Ian Murdock <imurdock@gnu.ai.mit.edu>.
# Modified for Tomcat by Stefan Gybas <sgybas@debian.org>.
# Modified for Tomcat6 by Thierry Carrez <thierry.carrez@ubuntu.com>.
#
### BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Tomcat.
# Description:       Start the Tomcat servlet engine.
### END INIT INFO

set -e

PATH=/bin:/usr/bin:/sbin:/usr/sbin
NAME=tomcat6
DESC="Tomcat servlet engine"
DAEMON=/usr/bin/jsvc
CATALINA_HOME=/usr/share/$NAME
DEFAULT=/etc/default/$NAME
JVM_TMP=/tmp/tomcat6-temp

if [ `id -u` -ne 0 ]; then
    echo "You need root privileges to run this script"
    exit 1
fi
 
# Make sure tomcat is started with system locale
if [ -r /etc/default/locale ]; then
    . /etc/default/locale
    export LANG
fi

. /lib/lsb/init-functions
. /etc/default/rcS


# The following variables can be overwritten in $DEFAULT

# Run Tomcat 6 as this user ID
TOMCAT6_USER=tomcat6

# The first existing directory is used for JAVA_HOME (if JAVA_HOME is not
# defined in $DEFAULT)
JDK_DIRS="/usr/lib/jvm/java-6-openjdk /usr/lib/jvm/java-6-sun 
/usr/lib/jvm/java-1.5.0-sun /usr/lib/j2sdk1.5-sun /usr/lib/j2sdk1.5-ibm"

# Look for the right JVM to use
for jdir in $JDK_DIRS; do
    if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then
    JAVA_HOME="$jdir"
    fi
done
export JAVA_HOME

# Directory for per-instance configuration files and webapps
CATALINA_BASE=/var/lib/$NAME

# Use the Java security manager? (yes/no)
TOMCAT6_SECURITY=yes

# Default Java options
# Set java.awt.headless=true if JAVA_OPTS is not set so the
# Xalan XSL transformer can work without X11 display on JDK 1.4+
# It also looks like the default heap size of 64M is not enough for most 
cases
# so the maximum heap size is set to 128M
if [ -z "$JAVA_OPTS" ]; then
    JAVA_OPTS="-Djava.awt.headless=true -Xmx128M"
fi

# End of variables that can be overwritten in $DEFAULT

# overwrite settings from default file
if [ -f "$DEFAULT" ]; then
    . "$DEFAULT"
fi

if [ ! -f "$CATALINA_HOME/bin/bootstrap.jar" ]; then
    log_failure_msg "$NAME is not installed"
    exit 1
fi

if [ ! -f "$DAEMON" ]; then
    log_failure_msg "missing $DAEMON"
    exit 1
fi

POLICY_CACHE="$CATALINA_BASE/work/catalina.policy"

JAVA_OPTS="$JAVA_OPTS -Djava.endorsed.dirs=$CATALINA_HOME/endorsed 
-Dcatalina.base=$CATALINA_BASE -Dcatalina.home=$CATALINA_HOME 
-Djava.io.tmpdir=$JVM_TMP"

# Set the JSP compiler if set in the tomcat6.default file
if [ -n "$JSP_COMPILER" ]; then
    JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=$JSP_COMPILER"
fi

if [ "$TOMCAT6_SECURITY" = "yes" ]; then
    JAVA_OPTS="$JAVA_OPTS -Djava.security.manager 
-Djava.security.policy=$POLICY_CACHE"
fi

# Set juli LogManager if logging.properties is provided
if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then
  JAVA_OPTS="$JAVA_OPTS 
"-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" 
"-Djava.util.logging.config.file="$CATALINA_BASE/conf/logging.properties"
fi

# Define other required variables
CATALINA_PID="/var/run/$NAME.pid"
BOOTSTRAP_CLASS=org.apache.catalina.startup.Bootstrap
JSVC_CLASSPATH="/usr/share/java/commons-daemon.jar:$CATALINA_HOME/bin/bootstrap.jar"

# Look for Java Secure Sockets Extension (JSSE) JARs
if [ -z "${JSSE_HOME}" -a -r "${JAVA_HOME}/jre/lib/jsse.jar" ]; then
    JSSE_HOME="${JAVA_HOME}/jre/"
fi
export JSSE_HOME

case "$1" in
  start)
    if [ -z "$JAVA_HOME" ]; then
        log_failure_msg "no JDK found - please set JAVA_HOME"
        exit 1
    fi

    if [ ! -d "$CATALINA_BASE/conf" ]; then
        log_failure_msg "invalid CATALINA_BASE: $CATALINA_BASE"
        exit 1
    fi

    log_daemon_msg "Starting $DESC" "$NAME"
    if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
        --user $TOMCAT6_USER --startas "$JAVA_HOME/bin/java" \
        >/dev/null; then

        # Regenerate POLICY_CACHE file
        umask 022
        echo "// AUTO-GENERATED FILE from /etc/tomcat6/policy.d/" \
            > "$POLICY_CACHE"
        echo ""  >> "$POLICY_CACHE"
        cat $CATALINA_BASE/conf/policy.d/*.policy \
            >> "$POLICY_CACHE"

        # Remove / recreate JVM_TMP directory
        rm -rf "$JVM_TMP"
        mkdir "$JVM_TMP" || {
            log_failure_msg "could not create JVM temporary directory"
            exit 1
        }
        chown $TOMCAT6_USER "$JVM_TMP"
        cd "$JVM_TMP"

#        $DAEMON -user "$TOMCAT6_USER" -cp "$JSVC_CLASSPATH" \
#            -outfile SYSLOG -errfile SYSLOG \
#            -pidfile "$CATALINA_PID" $JAVA_OPTS "$BOOTSTRAP_CLASS"

        $DAEMON -user "$TOMCAT6_USER" -cp "$JSVC_CLASSPATH" \
            -outfile /var/log/tomcat6/stdout.log -errfile 
/var/log/tomcat6/stderr.log \
            -pidfile "$CATALINA_PID" $JAVA_OPTS "$BOOTSTRAP_CLASS"

        sleep 5
            if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
            --user $TOMCAT6_USER --startas "$JAVA_HOME/bin/java" \
            >/dev/null; then
            log_end_msg 1
        else
            log_end_msg 0
        fi
    else
            log_progress_msg "(already running)"
        log_end_msg 0
    fi
    ;;
  stop)
    log_daemon_msg "Stopping $DESC" "$NAME"
        if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
        --user "$TOMCAT6_USER" --startas "$JAVA_HOME/bin/java" \
        >/dev/null; then
        log_progress_msg "(not running)"
    else
        $DAEMON -cp "$JSVC_CLASSPATH" -pidfile "$CATALINA_PID" \
             -stop "$BOOTSTRAP_CLASS"
    fi
    rm -rf "$JVM_TMP"
    log_end_msg 0
    ;;
   status)
        if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
        --user $TOMCAT6_USER --startas "$JAVA_HOME/bin/java" \
        >/dev/null; then

        if [ -f "$CATALINA_PID" ]; then
            log_success_msg "$DESC is not running, but pid file exists."
            exit 1
        else
            log_success_msg "$DESC is not running."
            exit 3
        fi
    else
        log_success_msg "$DESC is running with pid `cat $CATALINA_PID`"
    fi
        ;;
  restart|force-reload)
        if start-stop-daemon --test --stop --pidfile "$CATALINA_PID" \
        --user $TOMCAT6_USER --startas "$JAVA_HOME/bin/java" \
        >/dev/null; then
        $0 stop
        sleep 1
    fi
    $0 start
    ;;
  try-restart)
        if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
        --user $TOMCAT6_USER --startas "$JAVA_HOME/bin/java" \
        >/dev/null; then
        $0 start
    fi
        ;;
  *)
    log_success_msg "Usage: $0 
{start|stop|restart|try-restart|force-reload|status}"
    exit 1
    ;;
esac

exit 0


Caldarale, Charles R wrote:
>> From: Allen Williams [mailto:anw-dist@infoisland.net]
>> Subject: Re: Console Output Not Going Anywhere
>>
>> It is the "standard" internal tomcat logging mechanism contained in the
>> distribution of tomcat 6, based on java.util.logging.
>>     
>
> 1) What platform (OS) are you running on?
>
> 2) Are you using a Tomcat downloaded from tomcat.apache.org, or some 3rd-party repackaged
version?
>
> 3) How are you starting Tomcat?
>
>  - Chuck
>
>
> THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and
is thus for use only by the intended recipient. If you received this in error, please contact
the sender and delete the e-mail and its attachments from all computers.
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message