You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(5) |
Oct
(13) |
Nov
(16) |
Dec
(29) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(38) |
Feb
(51) |
Mar
(51) |
Apr
(115) |
May
(82) |
Jun
(30) |
Jul
(50) |
Aug
(68) |
Sep
(57) |
Oct
(160) |
Nov
(80) |
Dec
(78) |
| 2004 |
Jan
(71) |
Feb
(75) |
Mar
(108) |
Apr
(87) |
May
(79) |
Jun
(70) |
Jul
(69) |
Aug
(39) |
Sep
(52) |
Oct
(47) |
Nov
(50) |
Dec
(32) |
| 2005 |
Jan
(22) |
Feb
(122) |
Mar
(46) |
Apr
(76) |
May
(31) |
Jun
(51) |
Jul
(61) |
Aug
(70) |
Sep
(37) |
Oct
(46) |
Nov
(57) |
Dec
(83) |
| 2006 |
Jan
(55) |
Feb
(81) |
Mar
(51) |
Apr
(67) |
May
(77) |
Jun
(43) |
Jul
(106) |
Aug
(64) |
Sep
(47) |
Oct
(64) |
Nov
(60) |
Dec
(12) |
| 2007 |
Jan
(50) |
Feb
(93) |
Mar
(49) |
Apr
(56) |
May
(40) |
Jun
(63) |
Jul
(40) |
Aug
(47) |
Sep
(54) |
Oct
(37) |
Nov
(54) |
Dec
(37) |
| 2008 |
Jan
(35) |
Feb
(39) |
Mar
(26) |
Apr
(14) |
May
(23) |
Jun
(51) |
Jul
(43) |
Aug
(26) |
Sep
(29) |
Oct
(31) |
Nov
(24) |
Dec
(16) |
| 2009 |
Jan
(21) |
Feb
(30) |
Mar
(74) |
Apr
(26) |
May
(26) |
Jun
(43) |
Jul
(23) |
Aug
(23) |
Sep
(15) |
Oct
(27) |
Nov
(37) |
Dec
(10) |
| 2010 |
Jan
(16) |
Feb
(28) |
Mar
(16) |
Apr
(45) |
May
(8) |
Jun
(68) |
Jul
(45) |
Aug
(44) |
Sep
(51) |
Oct
(7) |
Nov
(20) |
Dec
(21) |
| 2011 |
Jan
(14) |
Feb
(17) |
Mar
(7) |
Apr
(7) |
May
(48) |
Jun
(23) |
Jul
(5) |
Aug
(33) |
Sep
(22) |
Oct
(14) |
Nov
(14) |
Dec
(5) |
| 2012 |
Jan
|
Feb
(10) |
Mar
(12) |
Apr
(51) |
May
(10) |
Jun
(8) |
Jul
(14) |
Aug
(22) |
Sep
(9) |
Oct
(24) |
Nov
(14) |
Dec
(13) |
| 2013 |
Jan
(12) |
Feb
(4) |
Mar
(14) |
Apr
(19) |
May
(2) |
Jun
(5) |
Jul
(13) |
Aug
(10) |
Sep
(4) |
Oct
(11) |
Nov
(13) |
Dec
(2) |
| 2014 |
Jan
(3) |
Feb
(14) |
Mar
(5) |
Apr
(10) |
May
(10) |
Jun
(11) |
Jul
(10) |
Aug
(3) |
Sep
(13) |
Oct
(22) |
Nov
(14) |
Dec
(32) |
| 2015 |
Jan
(8) |
Feb
(2) |
Mar
(17) |
Apr
(1) |
May
(24) |
Jun
|
Jul
(4) |
Aug
|
Sep
(9) |
Oct
(9) |
Nov
(5) |
Dec
(2) |
| 2016 |
Jan
(8) |
Feb
(6) |
Mar
(6) |
Apr
(9) |
May
(3) |
Jun
(2) |
Jul
(7) |
Aug
(6) |
Sep
|
Oct
|
Nov
(1) |
Dec
(6) |
| 2017 |
Jan
(9) |
Feb
(8) |
Mar
(6) |
Apr
|
May
|
Jun
(3) |
Jul
(13) |
Aug
(10) |
Sep
(8) |
Oct
|
Nov
(6) |
Dec
|
| 2018 |
Jan
|
Feb
(5) |
Mar
(7) |
Apr
(2) |
May
|
Jun
|
Jul
(3) |
Aug
(2) |
Sep
(9) |
Oct
(1) |
Nov
(1) |
Dec
(1) |
| 2019 |
Jan
(9) |
Feb
|
Mar
|
Apr
(10) |
May
(3) |
Jun
|
Jul
(7) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2020 |
Jan
(1) |
Feb
(1) |
Mar
(1) |
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2021 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(3) |
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2023 |
Jan
(3) |
Feb
|
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
(1) |
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2026 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <nic...@uk...> - 2005-12-08 12:30:50
|
By the way, when do you think the release will go out? -Nick Internet le...@ta...@lists.sourceforge.net - 08/12/2005 05:44 Please respond to wra...@li... Sent by: wra...@li... To: wrapper-user cc: Subject: Re: [Wrapper-user] RUN_AS_USER question Nick, nic...@uk... wrote: > Do you want me to do that? > I can do it and email it in a moment... > I actually have been working on it. I decided to change the way the setting of the user is handled completely so the script now recursively calls itself if the user has been set and needs to be changed. This simplifies the script and makes it easier to guarantee that everything is set up correctly. Neale, thanks for bringing up your thread from last year. It was useful to go back and see what I had been thinking at the time. From reading my response, it looks like I had thought it all out but had not been taking into account the possibility of running as a user which had a password from a non-root user. That should be handled correctly now. Here is a link to that thread: http://sourceforge.net/mailarchive/message.php?msg_id=8899364 Could you guys take a look at the new script that I have attached and give it a try? If there are any requested changes, now is the time to put them in. The only thing I don't like about it as is is that you will be prompted for a password even if the script will do nothing other than show its usage. Fixing that is possible, but it would complicate the script. Not really sure if it matters. Cheers, Leif #! /bin/sh # # Copyright (c) 1999, 2005 Tanuki Software Inc. # # Java Service Wrapper sh script. Suitable for starting and stopping # wrapped Java applications on UNIX platforms. # #----------------------------------------------------------------------------- # These settings can be modified to fit the needs of your application # Application APP_NAME="@app.name@" APP_LONG_NAME="@app.long.name@" # Wrapper WRAPPER_CMD="./wrapper" WRAPPER_CONF="../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 # 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'` # Change the current directory to the location of the script cd "`dirname "$REALPATH"`" REALDIR=`pwd` # 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 # 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" exit 0 fi # 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_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" 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 # Build the nice clause if [ "X$PRIORITY" = "X" ] then CMDNICE="" else CMDNICE="nice -$PRIORITY" fi getpid() { if [ -f $PIDFILE ] then if [ -r $PIDFILE ] then pid=`cat $PIDFILE` if [ "X$pid" != "X" ] then # Verify that a process with this pid is still running. pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1` if [ "X$pid" = "X" ] then # This is a stale pid file. rm -f $PIDFILE echo "Removed stale pid file: $PIDFILE" 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 fi } console() { echo "Running $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE else exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE fi else echo "$APP_LONG_NAME is already running." exit 1 fi } start() { echo "Starting $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.daemonize=TRUE else exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE wrapper.ignore_signals=TRUE wrapper.daemonize=TRUE fi 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') console ;; 'start') start ;; 'stop') stopit ;; 'restart') stopit start ;; 'status') status ;; 'dump') dump ;; *) echo "Usage: $0 { console | start | stop | restart | status | dump }" exit 1 ;; esac exit 0 This message and any attachments (the "message") is intended solely for the addressees and is confidential. If you receive this message in error, please delete it and immediately notify the sender. Any use not in accord with its purpose, any dissemination or disclosure, either whole or partial, is prohibited except formal approval. The internet can not guarantee the integrity of this message. BNP PARIBAS (and its subsidiaries) shall (will) not therefore be liable for the message if modified. ********************************************************************************************** BNP Paribas Private Bank London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Securities Services London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Fund Services UK Limited is authorised and regulated by the Financial Services Authority |
|
From: <nic...@uk...> - 2005-12-08 12:30:18
|
I am not too keen on having to enter the password in order to see usage.... (its a bit anti-social....) I notice that the "kill -9" is gone (if it timed out waiting for it to stop...) Is this no longer needed - or was there a problem with it? ========== // ========== The only other thing I have in my slightly customised wrapper script - which I think is required - is: #... handle relative PIDDIR # Same test for WRAPPER_CMD FIRST_CHAR=`echo $WRAPPER_CMD | cut -c1,1` if [ "$FIRST_CHAR" != "/" ] then WRAPPER_CMD=$REALDIR/$WRAPPER_CMD fi #... handle relative WRAPPER_CONF ========== // ========== Cheers, -Nick Internet le...@ta...@lists.sourceforge.net - 08/12/2005 05:44 Please respond to wra...@li... Sent by: wra...@li... To: wrapper-user cc: Subject: Re: [Wrapper-user] RUN_AS_USER question Nick, nic...@uk... wrote: > Do you want me to do that? > I can do it and email it in a moment... > I actually have been working on it. I decided to change the way the setting of the user is handled completely so the script now recursively calls itself if the user has been set and needs to be changed. This simplifies the script and makes it easier to guarantee that everything is set up correctly. Neale, thanks for bringing up your thread from last year. It was useful to go back and see what I had been thinking at the time. From reading my response, it looks like I had thought it all out but had not been taking into account the possibility of running as a user which had a password from a non-root user. That should be handled correctly now. Here is a link to that thread: http://sourceforge.net/mailarchive/message.php?msg_id=8899364 Could you guys take a look at the new script that I have attached and give it a try? If there are any requested changes, now is the time to put them in. The only thing I don't like about it as is is that you will be prompted for a password even if the script will do nothing other than show its usage. Fixing that is possible, but it would complicate the script. Not really sure if it matters. Cheers, Leif #! /bin/sh # # Copyright (c) 1999, 2005 Tanuki Software Inc. # # Java Service Wrapper sh script. Suitable for starting and stopping # wrapped Java applications on UNIX platforms. # #----------------------------------------------------------------------------- # These settings can be modified to fit the needs of your application # Application APP_NAME="@app.name@" APP_LONG_NAME="@app.long.name@" # Wrapper WRAPPER_CMD="./wrapper" WRAPPER_CONF="../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 # 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'` # Change the current directory to the location of the script cd "`dirname "$REALPATH"`" REALDIR=`pwd` # 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 # 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" exit 0 fi # 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_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" 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 # Build the nice clause if [ "X$PRIORITY" = "X" ] then CMDNICE="" else CMDNICE="nice -$PRIORITY" fi getpid() { if [ -f $PIDFILE ] then if [ -r $PIDFILE ] then pid=`cat $PIDFILE` if [ "X$pid" != "X" ] then # Verify that a process with this pid is still running. pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1` if [ "X$pid" = "X" ] then # This is a stale pid file. rm -f $PIDFILE echo "Removed stale pid file: $PIDFILE" 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 fi } console() { echo "Running $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE else exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE fi else echo "$APP_LONG_NAME is already running." exit 1 fi } start() { echo "Starting $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.daemonize=TRUE else exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE wrapper.ignore_signals=TRUE wrapper.daemonize=TRUE fi 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') console ;; 'start') start ;; 'stop') stopit ;; 'restart') stopit start ;; 'status') status ;; 'dump') dump ;; *) echo "Usage: $0 { console | start | stop | restart | status | dump }" exit 1 ;; esac exit 0 This message and any attachments (the "message") is intended solely for the addressees and is confidential. If you receive this message in error, please delete it and immediately notify the sender. Any use not in accord with its purpose, any dissemination or disclosure, either whole or partial, is prohibited except formal approval. The internet can not guarantee the integrity of this message. BNP PARIBAS (and its subsidiaries) shall (will) not therefore be liable for the message if modified. ********************************************************************************************** BNP Paribas Private Bank London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Securities Services London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Fund Services UK Limited is authorised and regulated by the Financial Services Authority |
|
From: Amad F. <af...@va...> - 2005-12-08 09:34:52
|
Hi, I am trying to run CruiseControl as service. There are few problems, 1. It only works in console mode but can't set the working.dir. It's always assumed to be Wrapper.exe's directory to be the working directory. 2. Service doesn't start. I get 1075 when starting service. Following is my wrapper.conf, #******************************************************************** # Wrapper Properties #******************************************************************** ###### Wrapper working dir see http://wrapper.tanukisoftware.org/doc/english/prop-working-dir.html ##### wrapper.working.dir=C:/Projects/cruise # Java Application wrapper.java.command=java # Java Main class 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=C:\cruisecontrol-2.3.1/main/lib/*.jar wrapper.java.classpath.2=C:\apache-ant-1.6.5\bin\../lib/*.jar wrapper.java.classpath.3=C:\cruisecontrol-2.3.1/main/dist/cruisecontrol.jar wrapper.java.classpath.4=C:\Program Files\Java\jdk1.5.0_06\jre/lib/*.jar wrapper.java.classpath.5=C:\cruisecontrol-2.3.1/contrib/NtServiceWrapper/lib /*.jar # Java Library Path (location of Wrapper.DLL or libwrapper.so) wrapper.java.library.path=C:/cruisecontrol-2.3.1/contrib/NtServiceWrapper/li b # Java Additional Parameters wrapper.java.additional.1=-Djavax.management.builder.initial=mx4j.server.MX4 JMBeanServerBuilder # Initial Java Heap Size (in MB) wrapper.java.initmemory=16 # Maximum Java Heap Size (in MB) wrapper.java.maxmemory=64 # Application parameters. Add parameters as needed starting from 1 wrapper.app.parameter.1=CruiseControl wrapper.app.parameter.2=-port wrapper.app.parameter.3=11024 wrapper.app.parameter.4=-configfile wrapper.app.parameter.5=C:\Projects\cruise\config.xml # Port which the native wrapper code will attempt to connect to wrapper.port=1777 #******************************************************************** # 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=DEBUG # Log file to use for wrapper output logging. wrapper.logfile=C:/Projects/cruise/logs/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=DEBUG # 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=10m # 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=10 # Log Level for sys/event log output. (See docs for log levels) wrapper.syslog.loglevel=ERROR #******************************************************************** # Wrapper NT 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=CruiseControl # Display name of the service wrapper.ntservice.displayname=CruiseControl Service (v2.3.1) # Description of the service wrapper.ntservice.description=Continuous integration builds and tests with JUnit, Ant and CruiseControl. # 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 # Priority at which the service is run. NORMAL, LOW, HIGH, or # REALTIME wrapper.ntservice.process_priority=NORMAL # Allow the service to interact with the desktop. wrapper.ntservice.interactive=false Any help would be appreciated. |
|
From: Leif M. <le...@ta...> - 2005-12-08 05:59:11
|
Elizabeth,
Yes, as I thought, it appears that the shutdown hook is not being
run when your
application calls System.exit. I did a Google search and am not yet
sure how this
could be happening as you are using java 1.4.2... :-/ From the logs, I
can see that
the wrapper's shutdown hook is indeed being registered:
INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: Registering
shutdown hook
Any idea on your end? I have never seen this in any JVM other than
old 1.2
versions. I'll post back if I find anything.
As a workaround, calling WrapperManager.stop() rather than System.exit()
will make sure the JVM exits correctly.
The problem is that if the JVM exits without its shutdown hook being
run, or if
the user code calls System.halt() then the Wrapper process will assume
that the
JVM crashed. This is why it is being restarted.
Cheers,
Leif
Elizabeth Cooper wrote:
> Leif:
>
> I have added the wrapper log, below.
>
> The way this program works is that it has a built in timer that exits
> the program after 2 minutes. It started at 21:55 and exited about 2
> minutes later. I deleted all the ping-ping stuff between the start and
> stop.
>
> I have commented out
> #wrapper.single_invocation=TRUE
> #wrapper.on_exit.default=SHUTDOWN
>
> in the configuration, but I made no other changes (other than
> wrapper.debug=true).
>
> You can see that the JVM restarted the application after it shut down.
>
> Any ideas about this?
>
> ----------- wrapper.log -----------
>
<snip>
|
|
From: Leif M. <le...@ta...> - 2005-12-08 05:44:10
|
Nick, nic...@uk... wrote: > Do you want me to do that? > I can do it and email it in a moment... > I actually have been working on it. I decided to change the way the setting of the user is handled completely so the script now recursively calls itself if the user has been set and needs to be changed. This simplifies the script and makes it easier to guarantee that everything is set up correctly. Neale, thanks for bringing up your thread from last year. It was useful to go back and see what I had been thinking at the time. From reading my response, it looks like I had thought it all out but had not been taking into account the possibility of running as a user which had a password from a non-root user. That should be handled correctly now. Here is a link to that thread: http://sourceforge.net/mailarchive/message.php?msg_id=8899364 Could you guys take a look at the new script that I have attached and give it a try? If there are any requested changes, now is the time to put them in. The only thing I don't like about it as is is that you will be prompted for a password even if the script will do nothing other than show its usage. Fixing that is possible, but it would complicate the script. Not really sure if it matters. Cheers, Leif |
|
From: Elizabeth C. <ec...@er...> - 2005-12-08 05:16:19
|
Leif: I have added the wrapper log, below. The way this program works is that it has a built in timer that exits the program after 2 minutes. It started at 21:55 and exited about 2 minutes later. I deleted all the ping-ping stuff between the start and stop. I have commented out #wrapper.single_invocation=TRUE #wrapper.on_exit.default=SHUTDOWN in the configuration, but I made no other changes (other than wrapper.debug=true). You can see that the JVM restarted the application after it shut down. Any ideas about this? ----------- wrapper.log ----------- STATUS | wrapper | 2005/12/07 21:55:09 | --> Wrapper Started as Console DEBUG | wrapper | 2005/12/07 21:55:09 | Using system timer. DEBUG | wrapperp | 2005/12/07 21:55:09 | server listening on port 32000. STATUS | wrapper | 2005/12/07 21:55:09 | Launching a JVM... DEBUG | wrapper | 2005/12/07 21:55:09 | command: "..\..\..\bin\jre\bin\java" -Dergovu.jarwatcher=1 -Djava.library.path="../lib;../" -classpath "../lib/wrapper.jar;../ErgoVU.jar;../OPCServer.jar;../comm/comm.jar;../log4j.jar;../;./" -Dwrapper.key="EVeOhFsEDOU2ZKlt" -Dwrapper.port=32000 -Dwrapper.debug="TRUE" -Dwrapper.use_system_time="TRUE" -Dwrapper.version="3.1.2" -Dwrapper.native_library="wrapper" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp com.ergotech.ergoviewer.ErgoViewer DEBUG | wrapper | 2005/12/07 21:55:09 | JVM started (PID=3776) INFO | jvm 1 | 2005/12/07 21:55:11 | WrapperManager class initialized by thread: main Using classloader: sun.misc.Launcher$AppClassLoader@e80a59 INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: JVM #1 INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: Registering shutdown hook INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: Using wrapper INFO | jvm 1 | 2005/12/07 21:55:11 | Loaded native library: wrapper.dll INFO | jvm 1 | 2005/12/07 21:55:11 | Calling native initialization method. INFO | jvm 1 | 2005/12/07 21:55:11 | Initializing WrapperManager native library. INFO | jvm 1 | 2005/12/07 21:55:11 | Java Executable: C:\ErgoTech\TransSECSOPCRB61_27May2005\bin\jre\bin\java.exe INFO | jvm 1 | 2005/12/07 21:55:11 | Windows version: 5.1.2600 INFO | jvm 1 | 2005/12/07 21:55:11 | Java Version : 1.4.2_04-b05 Java HotSpot(TM) Client VM INFO | jvm 1 | 2005/12/07 21:55:11 | Java VM Vendor : Sun Microsystems Inc. INFO | jvm 1 | 2005/12/07 21:55:11 | INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org INFO | jvm 1 | 2005/12/07 21:55:11 | INFO | jvm 1 | 2005/12/07 21:55:11 | WrapperManager.start(org.tanukisoftware.wrapper.WrapperSimpleApp@10ef90c, args[]) called by thread: main INFO | jvm 1 | 2005/12/07 21:55:11 | Open socket to wrapper... INFO | jvm 1 | 2005/12/07 21:55:11 | Opened Socket INFO | jvm 1 | 2005/12/07 21:55:11 | Send a packet KEY : EVeOhFsEDOU2ZKlt INFO | jvm 1 | 2005/12/07 21:55:11 | handleSocket(Socket[addr=/127.0.0.1,port=32000,localport=2928]) DEBUG | wrapperp | 2005/12/07 21:55:11 | accepted a socket from 127.0.0.1 on port 2928 DEBUG | wrapperp | 2005/12/07 21:55:11 | read a packet KEY : EVeOhFsEDOU2ZKlt DEBUG | wrapper | 2005/12/07 21:55:11 | Got key from JVM: EVeOhFsEDOU2ZKlt DEBUG | wrapperp | 2005/12/07 21:55:11 | send a packet LOW_LOG_LEVEL : 1 DEBUG | wrapperp | 2005/12/07 21:55:11 | send a packet PING_TIMEOUT : 30 DEBUG | wrapper | 2005/12/07 21:55:11 | Start Application. DEBUG | wrapperp | 2005/12/07 21:55:11 | send a packet START : start INFO | jvm 1 | 2005/12/07 21:55:11 | Received a packet LOW_LOG_LEVEL : 1 INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: LowLogLevel from Wrapper is 1 INFO | jvm 1 | 2005/12/07 21:55:11 | Received a packet PING_TIMEOUT : 30 INFO | jvm 1 | 2005/12/07 21:55:11 | Wrapper Manager: PingTimeout from Wrapper is 30000 INFO | jvm 1 | 2005/12/07 21:55:11 | Received a packet START : start INFO | jvm 1 | 2005/12/07 21:55:11 | calling listener.start() INFO | jvm 1 | 2005/12/07 21:55:11 | WrapperSimpleApp: start(args) INFO | jvm 1 | 2005/12/07 21:55:11 | WrapperSimpleApp: invoking main method INFO | jvm 1 | 2005/12/07 21:55:11 | ergovu.port:7116 INFO | jvm 1 | 2005/12/07 21:55:11 | synclock.timeout:0 INFO | jvm 1 | 2005/12/07 21:55:11 | htmlroot.dir:../htmlroot INFO | jvm 1 | 2005/12/07 21:55:11 | ergovu.fullscreen:false INFO | jvm 1 | 2005/12/07 21:55:11 | transsecs.deployOPC:1 INFO | jvm 1 | 2005/12/07 21:55:11 | servlet.port:7116 INFO | jvm 1 | 2005/12/07 21:55:11 | ergovu.jarwatcher:true INFO | jvm 1 | 2005/12/07 21:55:11 | debug.level:0 INFO | jvm 1 | 2005/12/07 21:55:11 | ergovu.dontscale:true INFO | jvm 1 | 2005/12/07 21:55:11 | ergovu.size:0 INFO | jvm 1 | 2005/12/07 21:55:11 | controller.classname:com.ergotech.ergoviewer.HeadlessController INFO | jvm 1 | 2005/12/07 21:55:11 | Executable "null" will be called to set the time INFO | jvm 1 | 2005/12/07 21:55:11 | ErgoVUController : bound INFO | jvm 1 | 2005/12/07 21:55:11 | Creation Date: Sep 6, 2005 2:52:11 PM INFO | jvm 1 | 2005/12/07 21:55:12 | [OPCServer.OPCServer > createServer( )]Dec 7, 2005 9:55:12 PM INFO | jvm 1 | 2005/12/07 21:55:12 | [OPCServer.OPCServer > OPCServer()]Dec 7, 2005 9:55:12 PM INFO | jvm 1 | 2005/12/07 21:55:13 | WrapperSimpleApp: start(args) end. Main Completed=false, exitCode=null INFO | jvm 1 | 2005/12/07 21:55:13 | returned from listener.start() INFO | jvm 1 | 2005/12/07 21:55:13 | Send a packet STARTED : DEBUG | wrapperp | 2005/12/07 21:55:13 | read a packet STARTED : DEBUG | wrapper | 2005/12/07 21:55:13 | JVM signalled that it was started. DEBUG | wrapperp | 2005/12/07 21:55:13 | send a packet PING : ping INFO | jvm 1 | 2005/12/07 21:55:13 | Received a packet PING : ping INFO | jvm 1 | 2005/12/07 21:55:13 | Send a packet PING : ok ... deleted all the ping transactions .... DEBUG | wrapperp | 2005/12/07 21:57:31 | send a packet PING : ping INFO | jvm 1 | 2005/12/07 21:57:32 | Received a packet PING : ping INFO | jvm 1 | 2005/12/07 21:57:32 | Send a packet PING : ok DEBUG | wrapperp | 2005/12/07 21:57:32 | read a packet PING : ok DEBUG | wrapper | 2005/12/07 21:57:32 | Got ping response from JVM INFO | jvm 1 | 2005/12/07 21:57:33 | Build Date:Tue Feb 15 17:08:25 2005 INFO | jvm 1 | 2005/12/07 21:57:33 | Creating UnilogServer StartedmanageOPCDAcat INFO | jvm 1 | 2005/12/07 21:57:33 | INFO | jvm 1 | 2005/12/07 21:57:33 | INFO | jvm 1 | 2005/12/07 21:57:33 | *** Eval Edition - Will time out in 2 minutes. *** INFO | jvm 1 | 2005/12/07 21:57:33 | DEBUG | wrapper | 2005/12/07 21:57:33 | JVM process exited with a code of 0, leaving the wrapper exit code set to 0. ERROR | wrapper | 2005/12/07 21:57:33 | JVM exited unexpectedly. DEBUG | wrapper | 2005/12/07 21:57:33 | JVM was only running for 143 seconds leading to a failed restart count of 1. DEBUG | wrapper | 2005/12/07 21:57:33 | Waiting 5 seconds before launching another JVM. STATUS | wrapper | 2005/12/07 21:57:37 | Launching a JVM... DEBUG | wrapper | 2005/12/07 21:57:37 | command: "..\..\..\bin\jre\bin\java" -Dergovu.jarwatcher=1 -Djava.library.path="../lib;../" -classpath "../lib/wrapper.jar;../ErgoVU.jar;../OPCServer.jar;../comm/comm.jar;../log4j.jar;../;./" -Dwrapper.key="UV3lZsP4vh9xaVkO" -Dwrapper.port=32000 -Dwrapper.debug="TRUE" -Dwrapper.use_system_time="TRUE" -Dwrapper.version="3.1.2" -Dwrapper.native_library="wrapper" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=2 org.tanukisoftware.wrapper.WrapperSimpleApp com.ergotech.ergoviewer.ErgoViewer DEBUG | wrapper | 2005/12/07 21:57:37 | JVM started (PID=3096) INFO | jvm 2 | 2005/12/07 21:57:38 | WrapperManager class initialized by thread: main Using classloader: sun.misc.Launcher$AppClassLoader@e80a59 INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper Manager: JVM #2 INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper Manager: Registering shutdown hook INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper Manager: Using wrapper INFO | jvm 2 | 2005/12/07 21:57:38 | Loaded native library: wrapper.dll INFO | jvm 2 | 2005/12/07 21:57:38 | Calling native initialization method. INFO | jvm 2 | 2005/12/07 21:57:38 | Initializing WrapperManager native library. INFO | jvm 2 | 2005/12/07 21:57:38 | Java Executable: C:\ErgoTech\TransSECSOPCRB61_27May2005\bin\jre\bin\java.exe INFO | jvm 2 | 2005/12/07 21:57:38 | Windows version: 5.1.2600 INFO | jvm 2 | 2005/12/07 21:57:38 | Java Version : 1.4.2_04-b05 Java HotSpot(TM) Client VM INFO | jvm 2 | 2005/12/07 21:57:38 | Java VM Vendor : Sun Microsystems Inc. INFO | jvm 2 | 2005/12/07 21:57:38 | INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper (Version 3.1.2) http://wrapper.tanukisoftware.org INFO | jvm 2 | 2005/12/07 21:57:38 | INFO | jvm 2 | 2005/12/07 21:57:38 | WrapperManager.start(org.tanukisoftware.wrapper.WrapperSimpleApp@10ef90c, args[]) called by thread: main INFO | jvm 2 | 2005/12/07 21:57:38 | Open socket to wrapper... INFO | jvm 2 | 2005/12/07 21:57:38 | Opened Socket INFO | jvm 2 | 2005/12/07 21:57:38 | Send a packet KEY : UV3lZsP4vh9xaVkO INFO | jvm 2 | 2005/12/07 21:57:38 | handleSocket(Socket[addr=/127.0.0.1,port=32000,localport=2929]) DEBUG | wrapperp | 2005/12/07 21:57:38 | accepted a socket from 127.0.0.1 on port 2929 DEBUG | wrapperp | 2005/12/07 21:57:38 | read a packet KEY : UV3lZsP4vh9xaVkO DEBUG | wrapper | 2005/12/07 21:57:38 | Got key from JVM: UV3lZsP4vh9xaVkO DEBUG | wrapperp | 2005/12/07 21:57:38 | send a packet LOW_LOG_LEVEL : 1 DEBUG | wrapperp | 2005/12/07 21:57:38 | send a packet PING_TIMEOUT : 30 DEBUG | wrapper | 2005/12/07 21:57:38 | Start Application. DEBUG | wrapperp | 2005/12/07 21:57:38 | send a packet START : start INFO | jvm 2 | 2005/12/07 21:57:38 | Received a packet LOW_LOG_LEVEL : 1 INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper Manager: LowLogLevel from Wrapper is 1 INFO | jvm 2 | 2005/12/07 21:57:38 | Received a packet PING_TIMEOUT : 30 INFO | jvm 2 | 2005/12/07 21:57:38 | Wrapper Manager: PingTimeout from Wrapper is 30000 INFO | jvm 2 | 2005/12/07 21:57:38 | Received a packet START : start INFO | jvm 2 | 2005/12/07 21:57:38 | calling listener.start() INFO | jvm 2 | 2005/12/07 21:57:38 | WrapperSimpleApp: start(args) INFO | jvm 2 | 2005/12/07 21:57:38 | WrapperSimpleApp: invoking main method INFO | jvm 2 | 2005/12/07 21:57:38 | ergovu.port:7116 INFO | jvm 2 | 2005/12/07 21:57:38 | synclock.timeout:0 INFO | jvm 2 | 2005/12/07 21:57:38 | htmlroot.dir:../htmlroot INFO | jvm 2 | 2005/12/07 21:57:38 | ergovu.fullscreen:false INFO | jvm 2 | 2005/12/07 21:57:38 | transsecs.deployOPC:1 INFO | jvm 2 | 2005/12/07 21:57:38 | servlet.port:7116 INFO | jvm 2 | 2005/12/07 21:57:38 | ergovu.jarwatcher:true INFO | jvm 2 | 2005/12/07 21:57:38 | debug.level:0 INFO | jvm 2 | 2005/12/07 21:57:38 | ergovu.dontscale:true INFO | jvm 2 | 2005/12/07 21:57:38 | ergovu.size:0 INFO | jvm 2 | 2005/12/07 21:57:38 | controller.classname:com.ergotech.ergoviewer.HeadlessController INFO | jvm 2 | 2005/12/07 21:57:38 | Executable "null" will be called to set the time INFO | jvm 2 | 2005/12/07 21:57:38 | ErgoVUController : bound INFO | jvm 2 | 2005/12/07 21:57:38 | Creation Date: Sep 6, 2005 2:52:11 PM INFO | jvm 2 | 2005/12/07 21:57:39 | [OPCServer.OPCServer > createServer( )]Dec 7, 2005 9:57:39 PM INFO | jvm 2 | 2005/12/07 21:57:39 | [OPCServer.OPCServer > OPCServer()]Dec 7, 2005 9:57:39 PM INFO | jvm 2 | 2005/12/07 21:57:40 | WrapperSimpleApp: start(args) end. Main Completed=false, exitCode=null INFO | jvm 2 | 2005/12/07 21:57:40 | returned from listener.start() INFO | jvm 2 | 2005/12/07 21:57:40 | Send a packet STARTED : DEBUG | wrapperp | 2005/12/07 21:57:40 | read a packet STARTED : DEBUG | wrapper | 2005/12/07 21:57:40 | JVM signalled that it was started. DEBUG | wrapperp | 2005/12/07 21:57:40 | send a packet PING : ping INFO | jvm 2 | 2005/12/07 21:57:40 | Received a packet PING : ping INFO | jvm 2 | 2005/12/07 21:57:40 | Send a packet PING : ok DEBUG | wrapperp | 2005/12/07 21:57:40 | read a packet PING : ok DEBUG | wrapper | 2005/12/07 21:57:40 | Got ping response from JVM DEBUG | wrapperp | 2005/12/07 21:57:44 | send a packet PING : ping INFO | jvm 2 | 2005/12/07 21:57:44 | Received a packet PING : ping INFO | jvm 2 | 2005/12/07 21:57:44 | Send a packet PING : ok DEBUG | wrapperp | 2005/12/07 21:57:44 | read a packet PING : ok DEBUG | wrapper | 2005/12/07 21:57:44 | Got ping response from JVM INFO | jvm 2 | 2005/12/07 21:57:45 | Got Control Signal 2->201 INFO | jvm 2 | 2005/12/07 21:57:45 | Handled signal INFO | jvm 2 | 2005/12/07 21:57:45 | Processing control event(WRAPPER_CTRL_CLOSE_EVENT) INFO | jvm 2 | 2005/12/07 21:57:45 | WrapperSimpleApp: controlEvent(201) Stopping INFO | jvm 2 | 2005/12/07 21:57:45 | WrapperManager.stop(0) called by thread: Wrapper-Control-Event-Monitor INFO | jvm 2 | 2005/12/07 21:57:45 | Send a packet STOP : 0 DEBUG | wrapperp | 2005/12/07 21:57:45 | read a packet STOP : 0 DEBUG | wrapper | 2005/12/07 21:57:45 | JVM requested a shutdown. (0) DEBUG | wrapper | 2005/12/07 21:57:45 | wrapperStopProcess(0) called. DEBUG | wrapper | 2005/12/07 21:57:45 | Sending stop signal to JVM DEBUG | wrapperp | 2005/12/07 21:57:45 | send a packet STOP : NULL INFO | jvm 2 | 2005/12/07 21:57:45 | Received a packet STOP : INFO | jvm 2 | 2005/12/07 21:57:46 | Thread, Wrapper-Control-Event-Monitor, handling the shutdown process. INFO | jvm 2 | 2005/12/07 21:57:46 | calling listener.stop() INFO | jvm 2 | 2005/12/07 21:57:46 | WrapperSimpleApp: stop(0) INFO | jvm 2 | 2005/12/07 21:57:46 | returned from listener.stop() INFO | jvm 2 | 2005/12/07 21:57:46 | Send a packet STOPPED : 0 DEBUG | wrapperp | 2005/12/07 21:57:46 | read a packet STOPPED : 0 DEBUG | wrapper | 2005/12/07 21:57:46 | JVM signalled that it was stopped. INFO | jvm 2 | 2005/12/07 21:57:47 | Closing socket. INFO | jvm 2 | 2005/12/07 21:57:47 | Closed socket: java.net.SocketException: socket closed DEBUG | wrapperp | 2005/12/07 21:57:47 | socket read no code (closed?). INFO | jvm 2 | 2005/12/07 21:57:47 | Server daemon shut down INFO | jvm 2 | 2005/12/07 21:57:47 | calling System.exit(0) INFO | jvm 2 | 2005/12/07 21:57:47 | Build Date:Tue Feb 15 17:08:25 2005 INFO | jvm 2 | 2005/12/07 21:57:47 | Creating UnilogServer StartedmanageOPCDAcat INFO | jvm 2 | 2005/12/07 21:57:47 | INFO | jvm 2 | 2005/12/07 21:57:47 | INFO | jvm 2 | 2005/12/07 21:57:47 | *** Eval Edition - Will time out in 2 minutes. *** INFO | jvm 2 | 2005/12/07 21:57:47 | STATUS | wrapper | 2005/12/07 21:57:47 | CTRL-C trapped. Forcing immediate shutdown. DEBUG | wrapper | 2005/12/07 21:57:47 | JVM process exited with a code of 0, leaving the wrapper exit code set to 0. INFO | wrapper | 2005/12/07 21:57:47 | JVM exited on its own while waiting to kill the application. STATUS | wrapper | 2005/12/07 21:57:48 | <-- Wrapper Stopped At 08:02 PM 12/7/2005, you wrote: >Elizabeth, > What version of Java are you using? Java 1.2 has this problem due to > its lack of >support for Shutdown hooks, but newer JVMs should all work correctly by >default >when System.exit is called. > > Could you please rerun your application with the wrapper.debug=true > property >set and then post the resulting wrapper.log file? >(Trim log entries from previous runs please.) > > Remove the wrapper.on_exit.default and wrapper.single_invocation > properties. >They are not relevant here. > > In the case of wrapper.on_exit.default, that is already the default value. > > The wrapper.single_invocation property is used to make sure that more than >one invocation of the same application are never started even if they are >located >in different directories. Most applications will fail on startup due to >port conflicts >etc anyway, but this makes it possible to output a more useful error message. > > You are probably looking for the wrapper.max_failed_invocations property. >But as I said, that should not be necessary so I would like to see what is >really >going on. > >Cheers, >Leif > >Elizabeth Cooper wrote: >>I have tried using >> >>wrapper.on_exit.default=SHUTDOWN >> >>but the wrapper restarts automatically anyway when it receives an exit >>from the program. >> >>Is there a way to prevent the wrapper from restarting the application >>when we stop the application using an exit() in the program? >> >>I have searched through all the configuration parameters and I cannot >>find anything obvious. >> >>Here is some of what my configuration file contains: >> >>wrapper.single_invocation=TRUE >>wrapper.on_exit.default=SHUTDOWN >>wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp >> >>wrapper.java.classpath.1=../lib/wrapper.jar >> >>wrapper.java.classpath.2=../Test.jar >>wrapper.java.library.path.1=../lib >> >>wrapper.app.parameter.1=Test >> >>wrapper.ntservice.name=Test >>wrapper.ntservice.starttype=AUTO_START >>wrapper.ntservice.interactive=false > > > >------------------------------------------------------- >This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >for problems? Stop! Download the new AJAX search engine that makes >searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >_______________________________________________ >Wrapper-user mailing list >Wra...@li... >https://lists.sourceforge.net/lists/listinfo/wrapper-user Elizabeth Cooper ErgoTech Systems, Inc. |
|
From: <nic...@uk...> - 2005-12-08 04:28:05
|
Looks like a lot of stuff in the next release :-) >> Ok, I'll go ahead and change this for the 3.2.0 release then Do you want me to do that? I can do it and email it in a moment... -Nick Internet le...@ta...@lists.sourceforge.net - 08/12/2005 03:26 Please respond to wra...@li... Sent by: wra...@li... To: wrapper-user cc: Subject: Re: [Wrapper-user] RUN_AS_USER question Nick, >>> I take it you agree with this? >>> > Yep. 100% > Most of our usage of RUN_AS_USER is so that the process has the correct > permissions. > It wont work running as anyone else (except root - which we dont have > access to) > Ok, I'll go ahead and change this for the 3.2.0 release then. I agree that is probably the functionality that makes the most sense. > On a different but related topic - what else is going into the next > release? > Actually, quite a bit. I have been terrible about getting things wrapped up for a release this year, but the rate of development has been pretty consistent. You can see the most recent change log in CVS here: http://cvs.sourceforge.net/viewcvs.py/wrapper/wrapper/doc/ Look at the revisions.txt file. This is a direct link to the current version, but it will quickly become old: http://cvs.sourceforge.net/viewcvs.py/wrapper/wrapper/doc/revisions.txt?rev=1.269&view=auto Cheers, Leif > -Nick > > > > > > > Internet > le...@ta...@lists.sourceforge.net - 08/12/2005 02:53 > > > Please respond to wra...@li... > > Sent by: wra...@li... > > > > To: wrapper-user > > cc: > > > Subject: Re: [Wrapper-user] RUN_AS_USER question > > > Nick, > The thinking here was that running in console mode would mainly be done > by developers > where as it would be run as a daemon process when being run as the > specific user. > > I have actually been reconsidering this as of late. If I have a user > "myapp" which the app > is being run as, then I attempt to run it in console mode as a test then > several files will be > created by "root" rather than "myapp". If I then go back and start the > application > as a daemon process, the files created in the previous run will not be > able to be accessed > as they were created as "root"... > > I am thinking of changing this behavior for the 3.2.0 release so that > the RUN_AS_USER > setting is always used. I take it you agree with this? Do you see > any potential > problems? I doubt that anyone will complain about this as anyone who > had been taking > advantage of the old behavior would likely have been running into the > problem that I > mentioned above. > > Cheers, > Leif > > nic...@uk... wrote: > >> What is the rationale behind RUN_AS_USER only being used when starting >> > the > >> wrapper? >> >> Why not when running in console - or when stopping? >> >> Given that wrapper seems to be a very well-thought out app I imagine >> > there > >> is a good reason - I am just not seeing it... >> >> -Nick >> >> >> >> This message and any attachments (the "message") is >> intended solely for the addressees and is confidential. >> If you receive this message in error, please delete it and >> immediately notify the sender. Any use not in accord with >> its purpose, any dissemination or disclosure, either whole >> or partial, is prohibited except formal approval. The internet >> can not guarantee the integrity of this message. >> BNP PARIBAS (and its subsidiaries) shall (will) not >> therefore be liable for the message if modified. >> >> >> > ********************************************************************************************** > > >> BNP Paribas Private Bank London Branch is authorised >> by CECEI & AMF and is regulated by the Financial Services >> Authority for the conduct of its investment business in >> the United Kingdom. >> >> BNP Paribas Securities Services London Branch is authorised >> by CECEI & AMF and is regulated by the Financial Services >> Authority for the conduct of its investment business in >> the United Kingdom. >> >> BNP Paribas Fund Services UK Limited is authorised and >> regulated by the Financial Services Authority >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: Splunk Inc. Do you grep through log >> > files > >> for problems? Stop! Download the new AJAX search engine that makes >> searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >> _______________________________________________ >> Wrapper-user mailing list >> Wra...@li... >> https://lists.sourceforge.net/lists/listinfo/wrapper-user >> >> >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log > files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Neale, R. <rs...@ve...> - 2005-12-08 03:31:53
|
I originally suggested this capability and from my perspective it has run pretty much as I had requested. Re: Need ability to become different user on wrapper launch 2004-07-07 00:47 The nice feature was the 'su' would prompt you for the password and then launch as the user. However, the 'stop' was not implemented the same way and this then requires you to become the user to terminate the process. Of course, I was not root which moots this point. My submitted prototype had this capability. I am sure there was a rational but since I saw this thread I thought I would throw out the idea again. Thanks for the tool/wrapper. I have used it in many ways. Rich -----Original Message----- From: wra...@li... [mailto:wra...@li...] On Behalf Of Leif Mortenson Sent: Wednesday, December 07, 2005 6:54 PM To: wra...@li... Subject: Re: [Wrapper-user] RUN_AS_USER question Nick, The thinking here was that running in console mode would mainly be done by developers where as it would be run as a daemon process when being run as the specific user. I have actually been reconsidering this as of late. If I have a user "myapp" which the app is being run as, then I attempt to run it in console mode as a test then several files will be created by "root" rather than "myapp". If I then go back and start the application as a daemon process, the files created in the previous run will not be able to be accessed as they were created as "root"... I am thinking of changing this behavior for the 3.2.0 release so that the RUN_AS_USER setting is always used. I take it you agree with this? Do you see=20 any potential problems? I doubt that anyone will complain about this as anyone who had been taking advantage of the old behavior would likely have been running into the problem that I mentioned above. Cheers, Leif nic...@uk... wrote: > What is the rationale behind RUN_AS_USER only being used when starting > the wrapper? > > Why not when running in console - or when stopping? > > Given that wrapper seems to be a very well-thought out app I imagine=20 > there is a good reason - I am just not seeing it... > > -Nick > > > > This message and any attachments (the "message") is intended solely=20 > for the addressees and is confidential. > If you receive this message in error, please delete it and immediately > notify the sender. Any use not in accord with its purpose, any=20 > dissemination or disclosure, either whole or partial, is prohibited=20 > except formal approval. The internet can not guarantee the integrity=20 > of this message. > BNP PARIBAS (and its subsidiaries) shall (will) not therefore be=20 > liable for the message if modified. > > ********************************************************************** > ************************ > > BNP Paribas Private Bank London Branch is authorised by CECEI & AMF=20 > and is regulated by the Financial Services Authority for the conduct=20 > of its investment business in the United Kingdom. > > BNP Paribas Securities Services London Branch is authorised by CECEI & > AMF and is regulated by the Financial Services Authority for the=20 > conduct of its investment business in the United Kingdom. > =20 > BNP Paribas Fund Services UK Limited is authorised and regulated by=20 > the Financial Services Authority > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log > files for problems? Stop! Download the new AJAX search engine that=20 > makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=3D7637&alloc_id=3D16865&op=3Dclick > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > =20 ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=3D7637&alloc_id=3D16865&op=3Dclick _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Leif M. <le...@ta...> - 2005-12-08 03:26:30
|
Nick, >>> I take it you agree with this? >>> > Yep. 100% > Most of our usage of RUN_AS_USER is so that the process has the correct > permissions. > It wont work running as anyone else (except root - which we dont have > access to) > Ok, I'll go ahead and change this for the 3.2.0 release then. I agree that is probably the functionality that makes the most sense. > On a different but related topic - what else is going into the next > release? > Actually, quite a bit. I have been terrible about getting things wrapped up for a release this year, but the rate of development has been pretty consistent. You can see the most recent change log in CVS here: http://cvs.sourceforge.net/viewcvs.py/wrapper/wrapper/doc/ Look at the revisions.txt file. This is a direct link to the current version, but it will quickly become old: http://cvs.sourceforge.net/viewcvs.py/wrapper/wrapper/doc/revisions.txt?rev=1.269&view=auto Cheers, Leif > -Nick > > > > > > > Internet > le...@ta...@lists.sourceforge.net - 08/12/2005 02:53 > > > Please respond to wra...@li... > > Sent by: wra...@li... > > > > To: wrapper-user > > cc: > > > Subject: Re: [Wrapper-user] RUN_AS_USER question > > > Nick, > The thinking here was that running in console mode would mainly be done > by developers > where as it would be run as a daemon process when being run as the > specific user. > > I have actually been reconsidering this as of late. If I have a user > "myapp" which the app > is being run as, then I attempt to run it in console mode as a test then > several files will be > created by "root" rather than "myapp". If I then go back and start the > application > as a daemon process, the files created in the previous run will not be > able to be accessed > as they were created as "root"... > > I am thinking of changing this behavior for the 3.2.0 release so that > the RUN_AS_USER > setting is always used. I take it you agree with this? Do you see > any potential > problems? I doubt that anyone will complain about this as anyone who > had been taking > advantage of the old behavior would likely have been running into the > problem that I > mentioned above. > > Cheers, > Leif > > nic...@uk... wrote: > >> What is the rationale behind RUN_AS_USER only being used when starting >> > the > >> wrapper? >> >> Why not when running in console - or when stopping? >> >> Given that wrapper seems to be a very well-thought out app I imagine >> > there > >> is a good reason - I am just not seeing it... >> >> -Nick >> >> >> >> This message and any attachments (the "message") is >> intended solely for the addressees and is confidential. >> If you receive this message in error, please delete it and >> immediately notify the sender. Any use not in accord with >> its purpose, any dissemination or disclosure, either whole >> or partial, is prohibited except formal approval. The internet >> can not guarantee the integrity of this message. >> BNP PARIBAS (and its subsidiaries) shall (will) not >> therefore be liable for the message if modified. >> >> >> > ********************************************************************************************** > > >> BNP Paribas Private Bank London Branch is authorised >> by CECEI & AMF and is regulated by the Financial Services >> Authority for the conduct of its investment business in >> the United Kingdom. >> >> BNP Paribas Securities Services London Branch is authorised >> by CECEI & AMF and is regulated by the Financial Services >> Authority for the conduct of its investment business in >> the United Kingdom. >> >> BNP Paribas Fund Services UK Limited is authorised and >> regulated by the Financial Services Authority >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: Splunk Inc. Do you grep through log >> > files > >> for problems? Stop! Download the new AJAX search engine that makes >> searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >> _______________________________________________ >> Wrapper-user mailing list >> Wra...@li... >> https://lists.sourceforge.net/lists/listinfo/wrapper-user >> >> >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log > files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > |
|
From: <nic...@uk...> - 2005-12-08 03:11:28
|
>> I am thinking of changing this behavior for the 3.2.0 release so that >> the RUN_AS_USER setting is always used. Excellent >> I take it you agree with this? Yep. 100% Most of our usage of RUN_AS_USER is so that the process has the correct permissions. It wont work running as anyone else (except root - which we dont have access to) >> Do you see any potential problems? Havent been able to think of any at all - hence the email :-) On a different but related topic - what else is going into the next release? -Nick Internet le...@ta...@lists.sourceforge.net - 08/12/2005 02:53 Please respond to wra...@li... Sent by: wra...@li... To: wrapper-user cc: Subject: Re: [Wrapper-user] RUN_AS_USER question Nick, The thinking here was that running in console mode would mainly be done by developers where as it would be run as a daemon process when being run as the specific user. I have actually been reconsidering this as of late. If I have a user "myapp" which the app is being run as, then I attempt to run it in console mode as a test then several files will be created by "root" rather than "myapp". If I then go back and start the application as a daemon process, the files created in the previous run will not be able to be accessed as they were created as "root"... I am thinking of changing this behavior for the 3.2.0 release so that the RUN_AS_USER setting is always used. I take it you agree with this? Do you see any potential problems? I doubt that anyone will complain about this as anyone who had been taking advantage of the old behavior would likely have been running into the problem that I mentioned above. Cheers, Leif nic...@uk... wrote: > What is the rationale behind RUN_AS_USER only being used when starting the > wrapper? > > Why not when running in console - or when stopping? > > Given that wrapper seems to be a very well-thought out app I imagine there > is a good reason - I am just not seeing it... > > -Nick > > > > This message and any attachments (the "message") is > intended solely for the addressees and is confidential. > If you receive this message in error, please delete it and > immediately notify the sender. Any use not in accord with > its purpose, any dissemination or disclosure, either whole > or partial, is prohibited except formal approval. The internet > can not guarantee the integrity of this message. > BNP PARIBAS (and its subsidiaries) shall (will) not > therefore be liable for the message if modified. > > ********************************************************************************************** > > BNP Paribas Private Bank London Branch is authorised > by CECEI & AMF and is regulated by the Financial Services > Authority for the conduct of its investment business in > the United Kingdom. > > BNP Paribas Securities Services London Branch is authorised > by CECEI & AMF and is regulated by the Financial Services > Authority for the conduct of its investment business in > the United Kingdom. > > BNP Paribas Fund Services UK Limited is authorised and > regulated by the Financial Services Authority > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Leif M. <le...@ta...> - 2005-12-08 03:02:34
|
Elizabeth,
What version of Java are you using? Java 1.2 has this problem due
to its lack of
support for Shutdown hooks, but newer JVMs should all work correctly by
default
when System.exit is called.
Could you please rerun your application with the wrapper.debug=true
property
set and then post the resulting wrapper.log file?
(Trim log entries from previous runs please.)
Remove the wrapper.on_exit.default and wrapper.single_invocation
properties.
They are not relevant here.
In the case of wrapper.on_exit.default, that is already the default
value.
The wrapper.single_invocation property is used to make sure that
more than
one invocation of the same application are never started even if they
are located
in different directories. Most applications will fail on startup due to
port conflicts
etc anyway, but this makes it possible to output a more useful error
message.
You are probably looking for the wrapper.max_failed_invocations
property.
But as I said, that should not be necessary so I would like to see what
is really
going on.
Cheers,
Leif
Elizabeth Cooper wrote:
> I have tried using
>
> wrapper.on_exit.default=SHUTDOWN
>
> but the wrapper restarts automatically anyway when it receives an exit
> from the program.
>
> Is there a way to prevent the wrapper from restarting the application
> when we stop the application using an exit() in the program?
>
> I have searched through all the configuration parameters and I cannot
> find anything obvious.
>
> Here is some of what my configuration file contains:
>
> wrapper.single_invocation=TRUE
> wrapper.on_exit.default=SHUTDOWN
> wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
>
> wrapper.java.classpath.1=../lib/wrapper.jar
>
> wrapper.java.classpath.2=../Test.jar
> wrapper.java.library.path.1=../lib
>
> wrapper.app.parameter.1=Test
>
> wrapper.ntservice.name=Test
> wrapper.ntservice.starttype=AUTO_START
> wrapper.ntservice.interactive=false
|
|
From: Leif M. <le...@ta...> - 2005-12-08 02:53:46
|
Nick, The thinking here was that running in console mode would mainly be done by developers where as it would be run as a daemon process when being run as the specific user. I have actually been reconsidering this as of late. If I have a user "myapp" which the app is being run as, then I attempt to run it in console mode as a test then several files will be created by "root" rather than "myapp". If I then go back and start the application as a daemon process, the files created in the previous run will not be able to be accessed as they were created as "root"... I am thinking of changing this behavior for the 3.2.0 release so that the RUN_AS_USER setting is always used. I take it you agree with this? Do you see any potential problems? I doubt that anyone will complain about this as anyone who had been taking advantage of the old behavior would likely have been running into the problem that I mentioned above. Cheers, Leif nic...@uk... wrote: > What is the rationale behind RUN_AS_USER only being used when starting the > wrapper? > > Why not when running in console - or when stopping? > > Given that wrapper seems to be a very well-thought out app I imagine there > is a good reason - I am just not seeing it... > > -Nick > > > > This message and any attachments (the "message") is > intended solely for the addressees and is confidential. > If you receive this message in error, please delete it and > immediately notify the sender. Any use not in accord with > its purpose, any dissemination or disclosure, either whole > or partial, is prohibited except formal approval. The internet > can not guarantee the integrity of this message. > BNP PARIBAS (and its subsidiaries) shall (will) not > therefore be liable for the message if modified. > > ********************************************************************************************** > > BNP Paribas Private Bank London Branch is authorised > by CECEI & AMF and is regulated by the Financial Services > Authority for the conduct of its investment business in > the United Kingdom. > > BNP Paribas Securities Services London Branch is authorised > by CECEI & AMF and is regulated by the Financial Services > Authority for the conduct of its investment business in > the United Kingdom. > > BNP Paribas Fund Services UK Limited is authorised and > regulated by the Financial Services Authority > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > |
|
From: <nic...@uk...> - 2005-12-08 02:32:46
|
What is the rationale behind RUN_AS_USER only being used when starting the wrapper? Why not when running in console - or when stopping? Given that wrapper seems to be a very well-thought out app I imagine there is a good reason - I am just not seeing it... -Nick This message and any attachments (the "message") is intended solely for the addressees and is confidential. If you receive this message in error, please delete it and immediately notify the sender. Any use not in accord with its purpose, any dissemination or disclosure, either whole or partial, is prohibited except formal approval. The internet can not guarantee the integrity of this message. BNP PARIBAS (and its subsidiaries) shall (will) not therefore be liable for the message if modified. ********************************************************************************************** BNP Paribas Private Bank London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Securities Services London Branch is authorised by CECEI & AMF and is regulated by the Financial Services Authority for the conduct of its investment business in the United Kingdom. BNP Paribas Fund Services UK Limited is authorised and regulated by the Financial Services Authority |
|
From: Leif M. <le...@ta...> - 2005-12-06 06:07:33
|
Robert,
This has been implemented in version 3.2.0 with the
wrapper.restart.reload_configuration.
Unfortunately this is currently only available by building from the
source in CVS.
Cheers,
Leif
Robert DiFalco wrote:
> Any advice on this? Any way to force the wrapper to re-read the
> configuration data for the next time it restarts the JVM?
>
> -----Original Message-----
> From: Robert DiFalco
> Sent: Tuesday, November 29, 2005 9:50 AM
> To: 'wra...@li...'
> Subject: JVM Restart, Reload conf?
>
> We remotely restart some of our agents with a System.exit. This causes
> the wrapper to restart the JVM. However, it will not re-read the conf
> files and start the JVM with any new properties. Is there a way to force
> the wrapper to re-read the conf files without having to restart the
> wrapper itself?
>
> R.
>
|
|
From: Leif M. <le...@ta...> - 2005-12-06 05:59:01
|
Alec,
From your wrapper.log, it looks like you have implemented the
WrapperListener
in your QuentinWrapper class and are using integration method #3. The
problem is that
your WrapperListener.start method is not implemented correctly. It is
critical that that
method return null or an Integer exit code within a short period of
time. If your
application has a main loop then it must be started in a background thread.
You can do this easily by simply starting the thread and returning,
but a
"more correct" way to it is to have your WrapperListener.start method
start the
main thread and then wait until it has entered a valid running state.
This gives your
application the chance to return an error code if there are any startup
failures.
By failing on startup instead of exiting later with an error, the
Windows service
will fail as it is starting rather than stopping after having been
started. This can
make a big difference if your service is required by other services.
Cheers,
Leif
Ale...@Qu... wrote:
> Hello again,
>
> I have managed to get my App to start up and run under the Java Service
> Wrapper. It starts up very nicely, and I can see that it is running: it
> outputs to a log file and provides HTTP access to its internal "console".
> However, after 30 seconds the Java wrapper decides that it is not
> responding to pings and forcibly terminates it. I have tried setting
> wrapper.request_thread_dump_on_failed_jvm_exit=TRUE to see whether any
> threads are tangled inside the system, but unfortunately there are too
> many threads running and the thread dump has not completed before the
> Wrapper terminates the JVM, cutting the thread dump off in mid flow.
>
> During the 30 seconds that the App is not responding to pings, CPU load
> settles down to 0 about 5 seconds after startup is completed, so that I
> know the ping is not being locked out by CPU overload.
>
> Can anybody suggest where I should look for the missing ping?
>
> Log from a single failed run is listed below.
>
> Alec Cawley
>
>
> STATUS | wrapper | 2005/12/01 14:12:31 | --> Wrapper Started as Console
> DEBUG | wrapper | 2005/12/01 14:12:31 | Using system timer.
> DEBUG | wrapperp | 2005/12/01 14:12:31 | server listening on port 32000.
> STATUS | wrapper | 2005/12/01 14:12:31 | Launching a JVM...
> DEBUG | wrapper | 2005/12/01 14:12:31 | command:
> "c:\j2sdk1.4.2_08\bin\java" -Xms128m -Xmx512m
> -Djava.library.path="F:\\dlls" -classpath
> "F:\\QuentinManager.jar;F:\\jars\wrapper-3.1.2.jar;F:\\jars\jacorb.jar;F:\\jars\mysql-connector-java-3.1.8-bin.jar;F:\\jars\jug-1.1.2.jar;F:\\jars\avalon-framework-4.1.5.jar;F:\\jars\logkit-1.2.jar"
> -Dwrapper.key="IcYMfSZTqNdo3jtq" -Dwrapper.port=32000
> -Dwrapper.debug="TRUE" -Dwrapper.use_system_time="TRUE"
> -Dwrapper.version="3.1.2" -Dwrapper.native_library="wrapper"
> -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1
> com.quantel.QuentinManager.QuentinWrapper quentin.properties
> DEBUG | wrapper | 2005/12/01 14:12:31 | JVM started (PID=2124)
> INFO | jvm 1 | 2005/12/01 14:12:32 | WrapperManager class initialized
> by thread: main Using classloader:
> sun.misc.Launcher$AppClassLoader@e80a59
> INFO | jvm 1 | 2005/12/01 14:12:32 | Wrapper Manager: JVM #1
> INFO | jvm 1 | 2005/12/01 14:12:32 | Wrapper Manager: Registering
> shutdown hook
> INFO | jvm 1 | 2005/12/01 14:12:32 | Wrapper Manager: Using wrapper
> INFO | jvm 1 | 2005/12/01 14:12:32 | Loaded native library:
> wrapper.dll
> INFO | jvm 1 | 2005/12/01 14:12:32 | Calling native initialization
> method.
> INFO | jvm 1 | 2005/12/01 14:12:32 | Initializing WrapperManager
> native library.
> INFO | jvm 1 | 2005/12/01 14:12:32 | Java Executable:
> c:\j2sdk1.4.2_08\bin\java.exe
> INFO | jvm 1 | 2005/12/01 14:12:32 | Windows version: 5.0.2195
> INFO | jvm 1 | 2005/12/01 14:12:32 | Java Version : 1.4.2_08-b03
> Java HotSpot(TM) Client VM
> INFO | jvm 1 | 2005/12/01 14:12:32 | Java VM Vendor : Sun
> Microsystems Inc.
> INFO | jvm 1 | 2005/12/01 14:12:32 |
> INFO | jvm 1 | 2005/12/01 14:12:32 | Wrapper (Version 3.1.2)
> http://wrapper.tanukisoftware.org
> INFO | jvm 1 | 2005/12/01 14:12:32 |
> INFO | jvm 1 | 2005/12/01 14:12:32 |
> WrapperManager.start(com.quantel.QuentinManager.QuentinWrapper@186db54,
> args["quentin.properties"]) called by thread: main
> INFO | jvm 1 | 2005/12/01 14:12:32 | Open socket to wrapper...
> INFO | jvm 1 | 2005/12/01 14:12:32 | Opened Socket
> INFO | jvm 1 | 2005/12/01 14:12:32 | Send a packet KEY :
> IcYMfSZTqNdo3jtq
> INFO | jvm 1 | 2005/12/01 14:12:32 |
> handleSocket(Socket[addr=/127.0.0.1,port=32000,localport=4003])
> DEBUG | wrapper | 2005/12/01 14:12:32 | Pause reading child output to
> share cycles.
> DEBUG | wrapperp | 2005/12/01 14:12:32 | accepted a socket from 127.0.0.1
> on port 4003
> DEBUG | wrapperp | 2005/12/01 14:12:32 | read a packet KEY :
> IcYMfSZTqNdo3jtq
> DEBUG | wrapper | 2005/12/01 14:12:32 | Got key from JVM:
> IcYMfSZTqNdo3jtq
> DEBUG | wrapperp | 2005/12/01 14:12:32 | send a packet LOW_LOG_LEVEL : 1
> DEBUG | wrapperp | 2005/12/01 14:12:32 | send a packet PING_TIMEOUT : 30
> DEBUG | wrapper | 2005/12/01 14:12:32 | Start Application.
> DEBUG | wrapperp | 2005/12/01 14:12:32 | send a packet START : start
> INFO | jvm 1 | 2005/12/01 14:12:32 | Received a packet LOW_LOG_LEVEL
> : 1
> INFO | jvm 1 | 2005/12/01 14:12:33 | Wrapper Manager: LowLogLevel
> from Wrapper is 1
> DEBUG | wrapper | 2005/12/01 14:12:33 | Pause reading child output to
> share cycles.
> INFO | jvm 1 | 2005/12/01 14:12:33 | Received a packet PING_TIMEOUT :
> 30
> DEBUG | wrapper | 2005/12/01 14:12:34 | Pause reading child output to
> share cycles.
> INFO | jvm 1 | 2005/12/01 14:12:34 | Wrapper Manager: PingTimeout
> from Wrapper is 30000
> INFO | jvm 1 | 2005/12/01 14:12:34 | Received a packet START : start
> INFO | jvm 1 | 2005/12/01 14:12:34 | calling listener.start()
> INFO | jvm 1 | 2005/12/01 14:12:34 | Not headless
> INFO | jvm 1 | 2005/12/01 14:12:34 | 01-Dec-2005 14:12:32 : SEVERE :
> QuentinManager C3.0.18.16
> INFO | jvm 1 | 2005/12/01 14:12:34 | 01-Dec-2005 14:12:33 : SEVERE :
> Invalid format 10000 in format table
> ERROR | wrapper | 2005/12/01 14:13:01 | Startup failed: Timed out
> waiting for signal from JVM.
> ERROR | wrapper | 2005/12/01 14:13:01 | JVM did not exit on request,
> terminated
> DEBUG | wrapper | 2005/12/01 14:13:02 | JVM was only running for 30
> seconds leading to a failed restart count of 1.
> FATAL | wrapper | 2005/12/01 14:13:02 | There were 1 failed launches in
> a row, each lasting less than 300 seconds. Giving up.
> FATAL | wrapper | 2005/12/01 14:13:02 | There may be a configuration
> problem: please check the logs.
> STATUS | wrapper | 2005/12/01 14:13:02 | <-- Wrapper Stopped
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems? Stop! Download the new AJAX search engine that makes
> searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
> _______________________________________________
> Wrapper-user mailing list
> Wra...@li...
> https://lists.sourceforge.net/lists/listinfo/wrapper-user
>
>
|
|
From: Elizabeth C. <ec...@er...> - 2005-12-05 17:41:18
|
I have tried using wrapper.on_exit.default=SHUTDOWN but the wrapper restarts automatically anyway when it receives an exit from the program. Is there a way to prevent the wrapper from restarting the application when we stop the application using an exit() in the program? I have searched through all the configuration parameters and I cannot find anything obvious. Here is some of what my configuration file contains: wrapper.single_invocation=TRUE wrapper.on_exit.default=SHUTDOWN wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp wrapper.java.classpath.1=../lib/wrapper.jar wrapper.java.classpath.2=../Test.jar wrapper.java.library.path.1=../lib wrapper.app.parameter.1=Test wrapper.ntservice.name=Test wrapper.ntservice.starttype=AUTO_START wrapper.ntservice.interactive=false |
|
From: Juergen H. <jh...@we...> - 2005-12-05 15:43:09
|
On=20Mon,=2005=20Dec=202005=2010:22:32=20+0100,=20Martin=20Keller=20wrote:= >>>wrapperjni_unix.o:=20relocation=20R_X86_64_32=20against=20 `handleInterrupt'=20can=20 >>>not=20be=20used=20when=20making=20a=20shared=20object;=20recompile=20wi= th=20-fPIC I=20didn't=20compile=20on=20a=2064=20bit=20system=20yet,=20but=202=20ideas= : 1.=20check=20(and=20maybe,=20set)=20WRAPPER_USE_SIGACTION,=20that=20might=20= help 2.=20maybe=20you=20need=20special=20linkage=20options=20for=20signal=20han= dlers,=20 i.e.=20the=20above=20function;=20do=20you=20get=20the=20same=20error=20for= =20 handleAlarm()=20etc.=20or=20not? Ciao,=20J=FCrgen |
|
From: Martin K. <mar...@un...> - 2005-12-05 09:22:43
|
Of course i tried that, but it didnt' change anything. Martin Juergen Hermann wrote: >On Fri, 02 Dec 2005 15:04:17 +0100, Martin Keller wrote: > > > >>wrapperjni_unix.o: relocation R_X86_64_32 against `handleInterrupt' can >>not be used when making a shared object; recompile with -fPIC >> >>Any idea? >> >> > >I don't know where I got that idea from, but have you considered >recompiling with -fPIC? > > > >Ciao, Jürgen > > > > > |
|
From: Juergen H. <jh...@we...> - 2005-12-05 08:22:57
|
On=20Fri,=2002=20Dec=202005=2015:04:17=20+0100,=20Martin=20Keller=20wrote:= >wrapperjni_unix.o:=20relocation=20R_X86_64_32=20against=20`handleInterrup= t'=20can=20 >not=20be=20used=20when=20making=20a=20shared=20object;=20recompile=20with= =20-fPIC > >Any=20idea? I=20don't=20know=20where=20I=20got=20that=20idea=20from,=20but=20have=20yo= u=20considered=20 recompiling=20with=20-fPIC? Ciao,=20J=FCrgen |
|
From: Raj P. <coo...@gm...> - 2005-12-02 20:11:18
|
I am running Windows XP Professional, though I get this on windows 2003 server as well. After I get an initial failure, I can launch additional tomcat containers from the command line using the default tomcat startup scripts. Would it help if I sent you a script to rapidly create 40+ tomcat containers configured to run on different ports? It woul= d be about a 100megs of stuff. Raj On 11/23/05, Leif Mortenson <le...@ta...> wrote: > > Raj, > Another user saw something like this in June. The mail was titled: > "Problems while starting multiple wrappers". I had tested 40 JVMs on > my own system without any problems and never came up with a solution > to the problem... > > For some reason, the Java.exe process is not able to load the jvm.dll > file. There is nothing about the Wrapper that I can think of which could > be causing this. What version of Windows are you using? Home, > Professional, or Server edition? My tests had been on a XP Pro system > with a simple Java app. I would run into memory issues running that > many Tomcats on my system. > > When your 18th JVM fails, what happens if you try to launch that > instance of Tomcat without the Wrapper? > > Are you running all 18 instances as services? What happens if you > run then in console windows. My thought is that there may be some > limitations on handles for a single user?? By default, all services are > run as the SYSTEM user. > > Anyone else have any ideas? > > Cheers, > Leif > > Raj Patel wrote: > > I'm getting this error when I load up a large number of tomcat > instances, > > the number it takes varies from machine to machine but it seems > > to be between 10-20 > > > > wrapper | JVM started (PID=3D19416) > > jvm 3 | Error loading: C:\j2sdk1.4.2_03\jre\bin\client\jvm.dll > > > > I currently have a machine with 17 instances, if I try to add another > > i get the above error. If I shut down one of the existing instances > > I can start the new one. Then if I reboot ALL instances startup > > just fine for a total of 18 instances. > > > > Any ideas? > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log > files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=3D7637&alloc_id=3D16865&op=3Dclick > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > |
|
From: Martin K. <mar...@un...> - 2005-12-02 14:04:27
|
Thank you for this helpful hint. Now I'm struggling with the next problem: /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4/../../../../x86_64-pc-linux-gnu/bin/ld: wrapperjni_unix.o: relocation R_X86_64_32 against `handleInterrupt' can not be used when making a shared object; recompile with -fPIC Any idea? Thanks, Martin Andreas Wendt wrote: >Hi Martin, > >adding the math library to the link line with -lm should do the job: > >wrapper: $(wrapper_SOURCE) > $(COMPILE) $(wrapper_SOURCE) -lm -o $(BIN)/wrapper > >Cheers, >Andreas > > > >>Hi, >> >>When compiling the service wrapper on an Linux/AMD64 box I get following >>errors: >> >>/tmp/ccWtwCwN.o: In function `wrapperStartPendingSignalled': >>wrapper.c:(.text+0x3d4c): undefined reference to `ceil' >>/tmp/ccWtwCwN.o: In function `wrapperStopPendingSignalled': >>wrapper.c:(.text+0x3e50): undefined reference to `ceil' >>/tmp/ccWtwCwN.o: In function `wrapperProtocolRead': >>wrapper.c:(.text+0x427c): undefined reference to `ceil' >> >>Has anybody a solution for this problem? >> >> >>Martin >> >> >> >>------------------------------------------------------- >>This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >>for problems? Stop! Download the new AJAX search engine that makes >>searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >>http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >>_______________________________________________ >>Wrapper-user mailing list >>Wra...@li... >>https://lists.sourceforge.net/lists/listinfo/wrapper-user >> >> > > > > >------------------------------------------------------- >This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >for problems? Stop! Download the new AJAX search engine that makes >searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >_______________________________________________ >Wrapper-user mailing list >Wra...@li... >https://lists.sourceforge.net/lists/listinfo/wrapper-user > > > |
|
From: Andreas W. <and...@em...> - 2005-12-02 12:47:53
|
Hi Martin, adding the math library to the link line with -lm should do the job: wrapper: $(wrapper_SOURCE) $(COMPILE) $(wrapper_SOURCE) -lm -o $(BIN)/wrapper Cheers, Andreas > > Hi, > > When compiling the service wrapper on an Linux/AMD64 box I get following > errors: > > /tmp/ccWtwCwN.o: In function `wrapperStartPendingSignalled': > wrapper.c:(.text+0x3d4c): undefined reference to `ceil' > /tmp/ccWtwCwN.o: In function `wrapperStopPendingSignalled': > wrapper.c:(.text+0x3e50): undefined reference to `ceil' > /tmp/ccWtwCwN.o: In function `wrapperProtocolRead': > wrapper.c:(.text+0x427c): undefined reference to `ceil' > > Has anybody a solution for this problem? > > > Martin > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Martin K. <mar...@un...> - 2005-12-02 10:38:54
|
Hi, When compiling the service wrapper on an Linux/AMD64 box I get following errors: /tmp/ccWtwCwN.o: In function `wrapperStartPendingSignalled': wrapper.c:(.text+0x3d4c): undefined reference to `ceil' /tmp/ccWtwCwN.o: In function `wrapperStopPendingSignalled': wrapper.c:(.text+0x3e50): undefined reference to `ceil' /tmp/ccWtwCwN.o: In function `wrapperProtocolRead': wrapper.c:(.text+0x427c): undefined reference to `ceil' Has anybody a solution for this problem? Martin |
|
From: Errol N. <en...@df...> - 2005-12-01 19:21:26
|
Thanks very much for the link..
I've managed to build wrapper.exe for the AMD64 platform, but I'm having
trouble building the dll. Here is my build log. Can someone help me
identify the issue?
------ Build started: Project: WrapperJNI, Configuration: Release64
Win32 ------
Compiling...
cl : Command line warning D9002 : ignoring unknown option '/YXstdafx.h'
wrapperjni_win.c
wrapperjni.c
wrapperjni_win.c : fatal error C1083: Cannot open program database file:
'c:\documents and
settings\eneal\desktop\wrapper_3.1.2_src\src\c\wrapperjni___win32_releas
e\vc80.idb': No error
Generating Code...
wrapperjni.c : fatal error C1083: Cannot open program database file:
'c:\documents and
settings\eneal\desktop\wrapper_3.1.2_src\src\c\wrapperjni___win32_releas
e\vc80.idb': No error
Build log was saved at "file://c:\Documents and
Settings\eneal\Desktop\wrapper_3.1.2_src\src\c\Release64\BuildLog.htm"
WrapperJNI - 2 error(s), 1 warning(s)
---------------------- Done ----------------------
Build: 0 succeeded, 1 failed, 0 skipped
Thanks in advance!=20
-----Original Message-----
From: wra...@li...
[mailto:wra...@li...] On Behalf Of Rune
Fauske
Sent: Thursday, November 24, 2005 3:06 AM
To: wra...@li...
Subject: Re: [Wrapper-user] Compiling on Win32 for AMD64
Hi Errol,
Check out this post from the archives,
http://sourceforge.net/mailarchive/message.php?msg_id=3D11130602, which
describes what I had to do in order to make the wrapper build under
Visual C++ .Net 2003:
I don't know if this is still valid.. haven't compiled the wrapper
source since back then.
--
Rune
On 11/24/05, Errol Neal <en...@df...> wrote:
> I'm going to attempt cross-compiling the source code on Windows XP,=20
> SP2 to produce an executable and dll on AMD64 that I can use with a=20
> 64-bit JVM. I'm trying first to compile it for just Win32 but I'm
stuck.
>
> ------ Build started: Project: Wrapper, Configuration: Release Win32
> ------
>
> Compiling...
> wrapper_win.c
> wrapper_win.c(2593) : error C2061: syntax error : identifier 'main'
> wrapper_win.c(2593) : error C2059: syntax error : ';'
> wrapper_win.c(2593) : error C2059: syntax error : 'type'
>
> Build log was saved at "file://c:\Documents and=20
> Settings\eneal\Desktop\wrapper_3.1.2_src\wrapper_3.1.2_src\src\c\Relea
> se
> \BuildLog.htm"
> Wrapper - 3 error(s), 0 warning(s)
>
>
> ---------------------- Done ----------------------
>
> Build: 0 succeeded, 1 failed, 0 skipped
>
>
> It doesn't like:
>
> ** SNIP **
>
> void _CRTAPI1 main(int argc, char **argv) {
> int result =3D 0;
> int i;
>
> ** END SNIP **
>
> Any ideas?
>
> I'm using Visual Studio .Net 2003
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log
> files for problems? Stop! Download the new AJAX search engine that=20
> makes searching your log files as easy as surfing the web. DOWNLOAD
SPLUNK!
> http://ads.osdn.com/?ad_idv37&alloc_id=16865&opclick
> _______________________________________________
> Wrapper-user mailing list
> Wra...@li...
> https://lists.sourceforge.net/lists/listinfo/wrapper-user
>
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log
files for problems? Stop! Download the new AJAX search engine that
makes searching your log files as easy as surfing the web. DOWNLOAD
SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id=16865&op=3Dick
_______________________________________________
Wrapper-user mailing list
Wra...@li...
https://lists.sourceforge.net/lists/listinfo/wrapper-user
|
|
From: Robert D. <rdi...@tr...> - 2005-12-01 17:03:01
|
Any advice on this? Any way to force the wrapper to re-read the configuration data for the next time it restarts the JVM?=20 -----Original Message----- From: Robert DiFalco=20 Sent: Tuesday, November 29, 2005 9:50 AM To: 'wra...@li...' Subject: JVM Restart, Reload conf? We remotely restart some of our agents with a System.exit. This causes the wrapper to restart the JVM. However, it will not re-read the conf files and start the JVM with any new properties. Is there a way to force the wrapper to re-read the conf files without having to restart the wrapper itself? =20 R. |