Created
September 14, 2016 13:39
-
-
Save serac/ff717e61fd220ba5d34e35c5246e73fc to your computer and use it in GitHub Desktop.
Useful .jettyrc for conditionally enabling remote debugging, SSL trace, YourKit profiler, and GC debugging
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/bash | |
# Jetty shell configuration file | |
export JETTY_RUN=${TMPDIR}jetty | |
if [ ! -d $JETTY_RUN ]; then | |
mkdir -p $JETTY_RUN | |
fi | |
export JETTY_STATE=$JETTY_RUN/jetty.state | |
export JETTY_LOGS=$HOME/Library/Logs/jetty | |
# Check for garbage collection debugging flag | |
if [ "$JETTY_GCDBG_ENABLED" = "y" ]; then | |
JOPTS=$JOPTS" -verbose:gc" | |
JOPTS=$JOPTS" -XX:+PrintGCDateStamps" | |
JOPTS=$JOPTS" -XX:+PrintGCTimeStamps" | |
JOPTS=$JOPTS" -XX:+PrintGCDetails" | |
JOPTS=$JOPTS" -XX:+PrintTenuringDistribution" | |
JOPTS=$JOPTS" -XX:+PrintCommandLineFlags" | |
fi | |
# Check for Java remote debugging flag | |
if [ "$JETTY_DEBUG_ENABLED" = "y" ]; then | |
JOPTS=$JOPTS" -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket" | |
JOPTS=$JOPTS",address=$JETTY_DEBUG_PORT,server=y,suspend=n" | |
fi | |
# Check for YourKit profiler flag | |
if [ "$JETTY_YK_ENABLED" = "y" ]; then | |
JOPTS=$JOPTS" -agentpath:$YK_HOME/bin/mac/libyjpagent.jnilib" | |
JOPTS=$JOPTS"=listen=127.0.0.1:$YK_PORT,delay=10000" | |
JOPTS=$JOPTS",sessionname=$HOSTNAME" | |
fi | |
# Check for SSL trace flag | |
if [ "$JETTY_SSLTRACE_ENABLED" = "y" ]; then | |
JOPTS=$JOPTS" -Djavax.net.debug=ssl" | |
fi | |
BASHENV=$JETTY_BASE/bashenv | |
if [ -f $BASHENV ]; then | |
echo "Sourcing supplementary bash environment from $BASHENV" | |
source $BASHENV | |
fi | |
JAVA_OPTIONS="-Xmn256m -Xms768m -Xmx1024m $JOPTS" | |
# Arguments passed to jetty start.jar | |
JETTY_ARGS=$JETTY_ARGS" -Drequestlog.filename=$JETTY_LOGS/yyyy_mm_dd.request.log" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.logging.dir=$JETTY_LOGS" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.logs=$JETTY_LOGS" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.home=$JETTY_HOME" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.base=$JETTY_BASE" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.contexts=$JETTY_BASE/webapps" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.webapps=$JETTY_BASE/webapps" | |
JETTY_ARGS=$JETTY_ARGS" -Djetty.hostname=$HOSTNAME" | |
JETTY_ARGS=$JETTY_ARGS" -Djava.io.tmpdir=$TMPDIR" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment