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: Ramakrishna Bv S. <ram...@in...> - 2010-11-15 16:34:59
|
I am out of the office until 20/11/2010. I will respond to your message when I return. Note: This is an automated response to your message "Re: [Wrapper-user] wrapper hangs after logfile rotation" sent on 11/15/10 21:02:51. This is the only notification you will receive while this person is away. |
|
From: <wra...@ar...> - 2010-11-15 15:33:06
|
Leif, thank you for your help. I have switched off the debug level. The server is running fine (up to now). Arno On 11/11/2010 01:32 PM, wra...@ar... wrote: > The wrapper and the wrapped application are running fine so far. > The Logfile size is set to 64m. 'Sometimes' (is not predictable > and reproducable) after logfile rotation the system hangs. > The new logfile is created, but no new logs are written. > > The wrapped java process is still running some time, but after > a while the wrapped web application is not reacting anymore. > > Any hints? > > > > > MY ENVIRONMENT > > o Wrapper version: Java Service Wrapper Community Edition 64-bit 3.5.4 > o Linux 2.6.32-24-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 GNU/Linux > o Also detected on a SUSE 64bit Enterprise Server > o wrapped application is a Jira 4.1.1 on apache-tomcat-6.0.28 > o java-6-sun-1.6.0.22 > > > > WRAPPER SETUP > > > #encoding=UTF-8 > # Configuration files must begin with a line specifying the encoding > # of the the file. > > #******************************************************************** > # Wrapper License Properties (Ignored by Community Edition) > #******************************************************************** > # Professional and Standard Editions of the Wrapper require a valid > # License Key to start. Licenses can be purchased or a trial license > # requested on the following pages: > # http://wrapper.tanukisoftware.com/purchase > # http://wrapper.tanukisoftware.com/trial > > # Include file problems can be debugged by removing the first '#' > # from the following line: > ##include.debug > > # The Wrapper will look for either of the following optional files for a > # valid License Key. License Key properties can optionally be included > # directly in this configuration file. > #include ../conf/wrapper-license.conf > #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf > > # The following property will output information about which License Key(s) > # are being found, and can aid in resolving any licensing problems. > #wrapper.license.debug=TRUE > > #******************************************************************** > # Wrapper Localization > #******************************************************************** > # Specify the locale which the Wrapper should use. By default the system > # locale is used. > wrapper.lang=en_US # en_US or ja_JP > > # Specify the location of the Wrapper's language resources. If these are > # missing, the Wrapper will default to the en_US locale. > #wrapper.lang.folder=../lang > > #******************************************************************** > # Wrapper Java Properties > #******************************************************************** > # Java Application > # Locate the java binary on the system PATH: > #wrapper.java.command=java > # Specify a specific java binary: > > set.SI_HOME=/srv/jira4 > > set.CATALINA_BASE=%SI_HOME% > set.CATALINA_HOME=%SI_HOME%/tomcat/current > set.JAVA_HOME=%SI_HOME%/jvm/current > > wrapper.java.command=%JAVA_HOME%/bin/java > > # Tell the Wrapper to log the full generated Java command line. > wrapper.java.command.loglevel=INFO > > # Java Main class. This class must implement the WrapperListener interface > # or guarantee that the WrapperManager class is initialized. Helper > # classes are provided to do this for you. See the Integration section > # of the documentation for details. > 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=%CATALINA_BASE%/lib/wrapper.jar > wrapper.java.classpath.2=%CATALINA_HOME%/bin/bootstrap.jar > > # Java Library Path (location of Wrapper.DLL or libwrapper.so) > wrapper.java.library.path.1=%CATALINA_BASE%/lib > > # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. > wrapper.java.additional.auto_bits=TRUE > > # Java Additional Parameters > wrapper.java.additional.1=-Dcom.sun.management.jmxremote > wrapper.java.additional.2=-Dcom.sun.management.jmxremote.ssl=false > wrapper.java.additional.3=-Dcom.sun.management.jmxremote.authenticate=true > wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=98079 > wrapper.java.additional.5=-Dcom.sun.management.jmxremote.password.file=%CATALINA_BASE%/conf/jmxremote.password > wrapper.java.additional.6=-Dcom.sun.management.jmxremote.access.file=%CATALINA_BASE%/conf/jmxremote.access > wrapper.java.additional.7=-DVOID > wrapper.java.additional.8=-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager > wrapper.java.additional.9=-Djava.util.logging.config.file=%CATALINA_BASE%/conf/logging.properties > wrapper.java.additional.10=-Djava.endorsed.dirs=%CATALINA_HOME%/common/endorsed > wrapper.java.additional.11=-Dcatalina.base=%CATALINA_BASE% > wrapper.java.additional.12=-Dcatalina.home=%CATALINA_HOME% > wrapper.java.additional.13=-Djava.io.tmpdir=%CATALINA_BASE%/temp > wrapper.java.additional.14=-Djava.awt.headless=true > wrapper.java.additional.15=-Dmail.mime.decodeparameters=true > wrapper.java.additional.16=-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true > wrapper.java.additional.17=-Dfile.encoding=UTF-8 > wrapper.java.additional.18=-Dclient.encoding.override=UTF-8 > wrapper.java.additional.19=-verbose:gc > wrapper.java.additional.20=-XX:+PrintGCDetails > wrapper.java.additional.21=-XX:+PrintGCTimeStamps > wrapper.java.additional.22=-XX:+PrintHeapAtGC > wrapper.java.additional.23=-XX:+PrintClassHistogram > wrapper.java.additional.24=-XX:+PrintTenuringDistribution > wrapper.java.additional.25=-XX:+HeapDumpOnOutOfMemoryError > wrapper.java.additional.26=-Xloggc:%CATALINA_BASE%/logs/gclog.log > wrapper.java.additional.27=-XX:PermSize=192m > wrapper.java.additional.28=-XX:MaxPermSize=192m > wrapper.java.additional.29=-XX:HeapDumpPath=%CATALINA_BASE%/logs/ > #wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=%CATALINA_BASE%/apps/jira/current/WEB-INF/groovy > wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=/srv/svn/jira-deliver/modules/scripts/runtime/src/main/groovy > wrapper.java.additional.31=-DGROOVYSCRIPTS_LOG_LEVEL=INFO > > # Initial Java Heap Size (in MB) > wrapper.java.initmemory=512 > > # Maximum Java Heap Size (in MB) > wrapper.java.maxmemory=1024 > > # Application parameters. Add parameters as needed starting from 1 > wrapper.app.parameter.1=org.apache.catalina.startup.Bootstrap > wrapper.app.parameter.2=start > > #******************************************************************** > # Wrapper Logging Properties > #******************************************************************** > # Enables Debug output from the Wrapper. > wrapper.debug=TRUE > > # 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=INFO > > # Log file to use for wrapper output logging. > wrapper.logfile=%CATALINA_BASE%/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=INFO > > # 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=64m > > # 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=50 > > # Log Level for sys/event log output. (See docs for log levels) > wrapper.syslog.loglevel=NONE > > #******************************************************************** > # Wrapper General Properties > #******************************************************************** > # Allow for the use of non-contiguous numbered properties > wrapper.ignore_sequence_gaps=TRUE > > # Title to use when running as a console > wra...@ap...@ > > #******************************************************************** > # Wrapper JVM Checks > #******************************************************************** > # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) > wrapper.check.deadlock=TRUE > wrapper.check.deadlock.interval=60 > wrapper.check.deadlock.action=RESTART > wrapper.check.deadlock.output=FULL > > # Out Of Memory detection. > wrapper.filter.trigger.1000=java.lang.OutOfMemoryError > wrapper.filter.action.1000=RESTART > wrapper.filter.message.1000=The JVM has run out of memory. > > #******************************************************************** > # Wrapper Email Notifications. (Requires Professional Edition) > #******************************************************************** > # Common Event Email settings. > #wrapper.event.default.email.debug=TRUE > #wrapper.event.default.email.smtp.host=<SMTP_Host> > #wrapper.event.default.email.smtp.port=25 > #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRAPPER_EVENT_NAME%] Event Notification > #wrapper.event.default.email.sender=<Sender email> > #wrapper.event.default.email.recipient=<Recipient email> > > # Configure the log attached to event emails. > #wrapper.event.default.email.attach_log=TRUE > #wrapper.event.default.email.maillog.lines=50 > #wrapper.event.default.email.maillog.format=LPTM > #wrapper.event.default.email.maillog.loglevel=INFO > > # Enable specific event emails. > #wrapper.event.wrapper_start.email=TRUE > #wrapper.event.jvm_prelaunch.email=TRUE > #wrapper.event.jvm_start.email=TRUE > #wrapper.event.jvm_started.email=TRUE > #wrapper.event.jvm_deadlock.email=TRUE > #wrapper.event.jvm_stop.email=TRUE > #wrapper.event.jvm_stopped.email=TRUE > #wrapper.event.jvm_restart.email=TRUE > #wrapper.event.jvm_failed_invocation.email=TRUE > #wrapper.event.jvm_max_failed_invocations.email=TRUE > #wrapper.event.jvm_kill.email=TRUE > #wrapper.event.jvm_killed.email=TRUE > #wrapper.event.jvm_unexpected_exit.email=TRUE > #wrapper.event.wrapper_stop.email=TRUE > > # Specify custom mail content > wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n > > #******************************************************************** > # Wrapper Windows NT/2000/XP 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 > wra...@ap...@ > > # Display name of the service > wra...@ap...@ > > # Description of the service > wra...@ap...@ > > # Service dependencies. Add dependencies as needed starting from 1 > wrapper.ntservice.dependency.1= > > # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START > wrapper.ntservice.starttype=AUTO_START > > # Allow the service to interact with the desktop. > wrapper.ntservice.interactive=false > > > > |
|
From: Leif M. <le...@ta...> - 2010-11-12 08:22:05
|
Osiris, Thank you for your post on the other mail. I just wanted to close off this thread as well. This turns out to have been caused by a deadlock in the Wrapper that could happen whenever the log file was rolled IF and only if debug output was also enabled. This has been fixed in 3.5.6. From the release notes: "Fix a deadlock in the code that is used to send data to the Java process. It was only possible if debug level output was enabled and log file rolling was enabled. Introduced in 3.3.7." Cheers, Leif On Mon, Aug 16, 2010 at 4:51 PM, Leif Mortenson <lei...@ta...> wrote: > Osiris, > Could you please send me your wrapper.conf, and the full wrapper.log > file so I can review this in context. Initially I am interested in > what the various timeout values in your wrapper.conf are set to. I > would also like to see in more detail exactly what is and isn't > happening, and when. > > The first message is normal line of output when > wrapper.state_output=TRUE is set. The second line you sent is a > message from the JVM that is logged when it has not received any pings > from the Wrapper process for a long period of time. The fact that you > are seeing the message however shows that the Wrapper process is alive > to log it. > > As your CPU is low, one possible cause is when the system is > undergoing heavy swapping. Your iowait is low however. > > Is this a physical server or a virtual machine? > > Please feel free to contact su...@ta... directly with > your reply so we don't hit the list with the large log files. I will > update the thread when we figure out what is happening. > > Cheers, > Leif > > On Mon, Aug 16, 2010 at 4:34 PM, Osiris <os...@ia...> wrote: >> I am running the Linux Java Service Wrapper (3.5.3) and have been having the >> following problem for months: every few hours (randomly it seems), the >> wrapper does not ping the JVM for about 5 minutes: >> >> >> >> STATUS | wrapper | 2010/08/15 18:47:08 | Ticks=0001c8b5, >> WrapperState=STARTED, JVMState=STARTED JVMStateTimeoutTicks=0001c9ed (31s), >> Exit=false, RestartMode=0, Orphan=false >> >> INFO | jvm 1 | 2010/08/15 18:52:08 | WrapperManager Debug: Read >> Timed out. (Last Ping was 303,200 milliseconds ago) >> >> >> >> CPU usage is minimal during this time, and the server was given a hardware >> swap to rule out faulty hardware and there is no power management on the >> server. Has anyone seen this behaviour before? >> >> >> >> In the following sar output (logs every minute), there are some missing >> entries (18:49, 18:51), which might indicate CPU suspension for some reason: >> >> sar -s 18:48:00 -e 18:52:00 -f /var/log/sysstat/sa15 -u -d -r -n ALL >> >> >> >> 18:48:01 CPU %user %nice %system %iowait %steal >> %idle >> >> 18:50:01 all 0.10 0.00 0.16 0.01 0.00 >> 99.74 >> >> Average: all 0.10 0.00 0.16 0.01 0.00 >> 99.74 >> >> >> >> 18:48:01 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit >> %commit >> >> 18:50:01 3078524 1033780 25.14 144144 487128 665964 >> 3.19 >> >> Average: 3078524 1033780 25.14 144144 487128 665964 >> 3.19 >> >> >> >> 18:48:01 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz >> await svctm %util >> >> 18:50:01 dev8-0 22.40 0.00 307.20 13.71 0.14 >> 6.43 5.93 13.28 >> >> 18:50:01 dev8-16 22.40 0.00 307.20 13.71 0.14 >> 6.07 5.57 12.48 >> >> 18:50:01 dev9-0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 >> >> 18:50:01 dev9-1 25.60 0.00 204.80 8.00 0.00 >> 0.00 0.00 0.00 >> >> Average: dev8-0 22.40 0.00 307.20 13.71 0.14 >> 6.43 5.93 13.28 >> >> Average: dev8-16 22.40 0.00 307.20 13.71 0.14 >> 6.07 5.57 12.48 >> >> Average: dev9-0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 >> >> Average: dev9-1 25.60 0.00 204.80 8.00 0.00 >> 0.00 0.00 0.00 >> >> >> >> 18:48:01 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s >> txcmp/s rxmcst/s >> >> 18:50:01 lo 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 >> >> 18:50:01 eth0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 >> >> Average: lo 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 >> >> Average: eth0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 >> >> >> >> 18:48:01 IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s >> txcarr/s rxfram/s rxfifo/s txfifo/s >> >> 18:50:01 lo 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 >> >> 18:50:01 eth0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 >> >> Average: lo 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 >> >> Average: eth0 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 >> >> >> >> 18:48:01 call/s retrans/s read/s write/s access/s getatt/s >> >> 18:50:01 0.00 0.00 0.00 0.00 0.00 0.00 >> >> Average: 0.00 0.00 0.00 0.00 0.00 0.00 >> >> >> >> 18:48:01 scall/s badcall/s packet/s udp/s tcp/s hit/s >> miss/s sread/s swrite/s saccess/s sgetatt/s >> >> 18:50:01 0.00 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 0.00 >> >> Average: 0.00 0.00 0.00 0.00 0.00 0.00 >> 0.00 0.00 0.00 0.00 0.00 >> >> >> >> 18:48:01 totsck tcpsck udpsck rawsck ip-frag tcp-tw >> >> 18:50:01 105 12 2 0 0 0 >> >> Average: 105 12 2 0 0 0 -- Leif Mortenson Tanuki Software, Ltd. 6-16-7-1001 Nishi-Kasai, Edogawa-ku Tokyo 134-0088 Japan Tel/Fax: +81-3-3878-3211 http://www.tanukisoftware.com lei...@ta... |
|
From: Osiris <os...@ia...> - 2010-11-12 07:57:52
|
This is the exact problem I experienced and communicated in a different way a few months ago, but I did not know the cause. I was using version 3.5.3 and with debug logging enabled, the JVM would hang eventually after a random number of hours, and the new log file would be empty. In production mode this didn't happen. Glad to hear there was a fix for it! Dane -----Original Message----- From: Leif Mortenson [mailto:lei...@ta...] Sent: 11 November 2010 03:55 PM To: wra...@li... Subject: Re: [Wrapper-user] wrapper hangs after logfile rotation Arno, I am not aware of anything that would cause the system itself to hang. There was a deadlock problem that we discovered and fixed in the 3.5.6 release. From the release notes: --- Fix a deadlock in the code that is used to send data to the Java process. It was only possible if debug level output was enabled and log file rolling was enabled. Introduced in 3.3.7. --- As it happens when the rolling took place, this could be the cause. I see that you also have debug output enabled so all of the requirements to reproduce this problem are there. When the Wrapper process got into this state, the JVM would stop receiving pings from the Wrapper. It is designed to shut itself down after 3x the wrapper.ping.timeout has expired. This might be what you were seeing. Could you please try out 3.5.6 and then let me know how it works for you. Cheers, Leif On Thu, Nov 11, 2010 at 9:32 PM, <wra...@ar...> wrote: > The wrapper and the wrapped application are running fine so far. > The Logfile size is set to 64m. 'Sometimes' (is not predictable > and reproducable) after logfile rotation the system hangs. > The new logfile is created, but no new logs are written. > > The wrapped java process is still running some time, but after > a while the wrapped web application is not reacting anymore. > > Any hints? > > > > > MY ENVIRONMENT > > o Wrapper version: Java Service Wrapper Community Edition 64-bit 3.5.4 > o Linux 2.6.32-24-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 GNU/Linux > o Also detected on a SUSE 64bit Enterprise Server > o wrapped application is a Jira 4.1.1 on apache-tomcat-6.0.28 > o java-6-sun-1.6.0.22 > > > > WRAPPER SETUP > > > #encoding=UTF-8 > # Configuration files must begin with a line specifying the encoding > # of the the file. > > #******************************************************************** > # Wrapper License Properties (Ignored by Community Edition) > #******************************************************************** > # Professional and Standard Editions of the Wrapper require a valid > # License Key to start. Licenses can be purchased or a trial license > # requested on the following pages: > # http://wrapper.tanukisoftware.com/purchase > # http://wrapper.tanukisoftware.com/trial > > # Include file problems can be debugged by removing the first '#' > # from the following line: > ##include.debug > > # The Wrapper will look for either of the following optional files for a > # valid License Key. License Key properties can optionally be included > # directly in this configuration file. > #include ../conf/wrapper-license.conf > #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf > > # The following property will output information about which License Key(s) > # are being found, and can aid in resolving any licensing problems. > #wrapper.license.debug=TRUE > > #******************************************************************** > # Wrapper Localization > #******************************************************************** > # Specify the locale which the Wrapper should use. By default the system > # locale is used. > wrapper.lang=en_US # en_US or ja_JP > > # Specify the location of the Wrapper's language resources. If these are > # missing, the Wrapper will default to the en_US locale. > #wrapper.lang.folder=../lang > > #******************************************************************** > # Wrapper Java Properties > #******************************************************************** > # Java Application > # Locate the java binary on the system PATH: > #wrapper.java.command=java > # Specify a specific java binary: > > set.SI_HOME=/srv/jira4 > > set.CATALINA_BASE=%SI_HOME% > set.CATALINA_HOME=%SI_HOME%/tomcat/current > set.JAVA_HOME=%SI_HOME%/jvm/current > > wrapper.java.command=%JAVA_HOME%/bin/java > > # Tell the Wrapper to log the full generated Java command line. > wrapper.java.command.loglevel=INFO > > # Java Main class. This class must implement the WrapperListener interface > # or guarantee that the WrapperManager class is initialized. Helper > # classes are provided to do this for you. See the Integration section > # of the documentation for details. > 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=%CATALINA_BASE%/lib/wrapper.jar > wrapper.java.classpath.2=%CATALINA_HOME%/bin/bootstrap.jar > > # Java Library Path (location of Wrapper.DLL or libwrapper.so) > wrapper.java.library.path.1=%CATALINA_BASE%/lib > > # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. > wrapper.java.additional.auto_bits=TRUE > > # Java Additional Parameters > wrapper.java.additional.1=-Dcom.sun.management.jmxremote > wrapper.java.additional.2=-Dcom.sun.management.jmxremote.ssl=false > wrapper.java.additional.3=-Dcom.sun.management.jmxremote.authenticate=true > wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=98079 > wrapper.java.additional.5=-Dcom.sun.management.jmxremote.password.file=%CATA LINA_BASE%/conf/jmxremote.password > wrapper.java.additional.6=-Dcom.sun.management.jmxremote.access.file=%CATALI NA_BASE%/conf/jmxremote.access > wrapper.java.additional.7=-DVOID > wrapper.java.additional.8=-Djava.util.logging.manager=org.apache.juli.ClassL oaderLogManager > wrapper.java.additional.9=-Djava.util.logging.config.file=%CATALINA_BASE%/co nf/logging.properties > wrapper.java.additional.10=-Djava.endorsed.dirs=%CATALINA_HOME%/common/endor sed > wrapper.java.additional.11=-Dcatalina.base=%CATALINA_BASE% > wrapper.java.additional.12=-Dcatalina.home=%CATALINA_HOME% > wrapper.java.additional.13=-Djava.io.tmpdir=%CATALINA_BASE%/temp > wrapper.java.additional.14=-Djava.awt.headless=true > wrapper.java.additional.15=-Dmail.mime.decodeparameters=true > wrapper.java.additional.16=-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT _BUFFER=true > wrapper.java.additional.17=-Dfile.encoding=UTF-8 > wrapper.java.additional.18=-Dclient.encoding.override=UTF-8 > wrapper.java.additional.19=-verbose:gc > wrapper.java.additional.20=-XX:+PrintGCDetails > wrapper.java.additional.21=-XX:+PrintGCTimeStamps > wrapper.java.additional.22=-XX:+PrintHeapAtGC > wrapper.java.additional.23=-XX:+PrintClassHistogram > wrapper.java.additional.24=-XX:+PrintTenuringDistribution > wrapper.java.additional.25=-XX:+HeapDumpOnOutOfMemoryError > wrapper.java.additional.26=-Xloggc:%CATALINA_BASE%/logs/gclog.log > wrapper.java.additional.27=-XX:PermSize=192m > wrapper.java.additional.28=-XX:MaxPermSize=192m > wrapper.java.additional.29=-XX:HeapDumpPath=%CATALINA_BASE%/logs/ > #wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=%CATALINA_BASE%/apps/jira/c urrent/WEB-INF/groovy > wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=/srv/svn/jira-deliver/module s/scripts/runtime/src/main/groovy > wrapper.java.additional.31=-DGROOVYSCRIPTS_LOG_LEVEL=INFO > > # Initial Java Heap Size (in MB) > wrapper.java.initmemory=512 > > # Maximum Java Heap Size (in MB) > wrapper.java.maxmemory=1024 > > # Application parameters. Add parameters as needed starting from 1 > wrapper.app.parameter.1=org.apache.catalina.startup.Bootstrap > wrapper.app.parameter.2=start > > #******************************************************************** > # Wrapper Logging Properties > #******************************************************************** > # Enables Debug output from the Wrapper. > wrapper.debug=TRUE > > # 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=INFO > > # Log file to use for wrapper output logging. > wrapper.logfile=%CATALINA_BASE%/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=INFO > > # 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=64m > > # 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=50 > > # Log Level for sys/event log output. (See docs for log levels) > wrapper.syslog.loglevel=NONE > > #******************************************************************** > # Wrapper General Properties > #******************************************************************** > # Allow for the use of non-contiguous numbered properties > wrapper.ignore_sequence_gaps=TRUE > > # Title to use when running as a console > wra...@ap...@ > > #******************************************************************** > # Wrapper JVM Checks > #******************************************************************** > # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) > wrapper.check.deadlock=TRUE > wrapper.check.deadlock.interval=60 > wrapper.check.deadlock.action=RESTART > wrapper.check.deadlock.output=FULL > > # Out Of Memory detection. > wrapper.filter.trigger.1000=java.lang.OutOfMemoryError > wrapper.filter.action.1000=RESTART > wrapper.filter.message.1000=The JVM has run out of memory. > > #******************************************************************** > # Wrapper Email Notifications. (Requires Professional Edition) > #******************************************************************** > # Common Event Email settings. > #wrapper.event.default.email.debug=TRUE > #wrapper.event.default.email.smtp.host=<SMTP_Host> > #wrapper.event.default.email.smtp.port=25 > #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRA PPER_EVENT_NAME%] Event Notification > #wrapper.event.default.email.sender=<Sender email> > #wrapper.event.default.email.recipient=<Recipient email> > > # Configure the log attached to event emails. > #wrapper.event.default.email.attach_log=TRUE > #wrapper.event.default.email.maillog.lines=50 > #wrapper.event.default.email.maillog.format=LPTM > #wrapper.event.default.email.maillog.loglevel=INFO > > # Enable specific event emails. > #wrapper.event.wrapper_start.email=TRUE > #wrapper.event.jvm_prelaunch.email=TRUE > #wrapper.event.jvm_start.email=TRUE > #wrapper.event.jvm_started.email=TRUE > #wrapper.event.jvm_deadlock.email=TRUE > #wrapper.event.jvm_stop.email=TRUE > #wrapper.event.jvm_stopped.email=TRUE > #wrapper.event.jvm_restart.email=TRUE > #wrapper.event.jvm_failed_invocation.email=TRUE > #wrapper.event.jvm_max_failed_invocations.email=TRUE > #wrapper.event.jvm_kill.email=TRUE > #wrapper.event.jvm_killed.email=TRUE > #wrapper.event.jvm_unexpected_exit.email=TRUE > #wrapper.event.wrapper_stop.email=TRUE > > # Specify custom mail content > wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n > > #******************************************************************** > # Wrapper Windows NT/2000/XP 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 > wra...@ap...@ > > # Display name of the service > wra...@ap...@ > > # Description of the service > wra...@ap...@ > > # Service dependencies. Add dependencies as needed starting from 1 > wrapper.ntservice.dependency.1= > > # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START > wrapper.ntservice.starttype=AUTO_START > > # Allow the service to interact with the desktop. > wrapper.ntservice.interactive=false ---------------------------------------------------------------------------- -- Centralized Desktop Delivery: Dell and VMware Reference Architecture Simplifying enterprise desktop deployment and management using Dell EqualLogic storage and VMware View: A highly scalable, end-to-end client virtualization framework. Read more! http://p.sf.net/sfu/dell-eql-dev2dev _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Leif M. <lei...@ta...> - 2010-11-11 13:55:22
|
Arno, I am not aware of anything that would cause the system itself to hang. There was a deadlock problem that we discovered and fixed in the 3.5.6 release. From the release notes: --- Fix a deadlock in the code that is used to send data to the Java process. It was only possible if debug level output was enabled and log file rolling was enabled. Introduced in 3.3.7. --- As it happens when the rolling took place, this could be the cause. I see that you also have debug output enabled so all of the requirements to reproduce this problem are there. When the Wrapper process got into this state, the JVM would stop receiving pings from the Wrapper. It is designed to shut itself down after 3x the wrapper.ping.timeout has expired. This might be what you were seeing. Could you please try out 3.5.6 and then let me know how it works for you. Cheers, Leif On Thu, Nov 11, 2010 at 9:32 PM, <wra...@ar...> wrote: > The wrapper and the wrapped application are running fine so far. > The Logfile size is set to 64m. 'Sometimes' (is not predictable > and reproducable) after logfile rotation the system hangs. > The new logfile is created, but no new logs are written. > > The wrapped java process is still running some time, but after > a while the wrapped web application is not reacting anymore. > > Any hints? > > > > > MY ENVIRONMENT > > o Wrapper version: Java Service Wrapper Community Edition 64-bit 3.5.4 > o Linux 2.6.32-24-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 GNU/Linux > o Also detected on a SUSE 64bit Enterprise Server > o wrapped application is a Jira 4.1.1 on apache-tomcat-6.0.28 > o java-6-sun-1.6.0.22 > > > > WRAPPER SETUP > > > #encoding=UTF-8 > # Configuration files must begin with a line specifying the encoding > # of the the file. > > #******************************************************************** > # Wrapper License Properties (Ignored by Community Edition) > #******************************************************************** > # Professional and Standard Editions of the Wrapper require a valid > # License Key to start. Licenses can be purchased or a trial license > # requested on the following pages: > # http://wrapper.tanukisoftware.com/purchase > # http://wrapper.tanukisoftware.com/trial > > # Include file problems can be debugged by removing the first '#' > # from the following line: > ##include.debug > > # The Wrapper will look for either of the following optional files for a > # valid License Key. License Key properties can optionally be included > # directly in this configuration file. > #include ../conf/wrapper-license.conf > #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf > > # The following property will output information about which License Key(s) > # are being found, and can aid in resolving any licensing problems. > #wrapper.license.debug=TRUE > > #******************************************************************** > # Wrapper Localization > #******************************************************************** > # Specify the locale which the Wrapper should use. By default the system > # locale is used. > wrapper.lang=en_US # en_US or ja_JP > > # Specify the location of the Wrapper's language resources. If these are > # missing, the Wrapper will default to the en_US locale. > #wrapper.lang.folder=../lang > > #******************************************************************** > # Wrapper Java Properties > #******************************************************************** > # Java Application > # Locate the java binary on the system PATH: > #wrapper.java.command=java > # Specify a specific java binary: > > set.SI_HOME=/srv/jira4 > > set.CATALINA_BASE=%SI_HOME% > set.CATALINA_HOME=%SI_HOME%/tomcat/current > set.JAVA_HOME=%SI_HOME%/jvm/current > > wrapper.java.command=%JAVA_HOME%/bin/java > > # Tell the Wrapper to log the full generated Java command line. > wrapper.java.command.loglevel=INFO > > # Java Main class. This class must implement the WrapperListener interface > # or guarantee that the WrapperManager class is initialized. Helper > # classes are provided to do this for you. See the Integration section > # of the documentation for details. > 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=%CATALINA_BASE%/lib/wrapper.jar > wrapper.java.classpath.2=%CATALINA_HOME%/bin/bootstrap.jar > > # Java Library Path (location of Wrapper.DLL or libwrapper.so) > wrapper.java.library.path.1=%CATALINA_BASE%/lib > > # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. > wrapper.java.additional.auto_bits=TRUE > > # Java Additional Parameters > wrapper.java.additional.1=-Dcom.sun.management.jmxremote > wrapper.java.additional.2=-Dcom.sun.management.jmxremote.ssl=false > wrapper.java.additional.3=-Dcom.sun.management.jmxremote.authenticate=true > wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=98079 > wrapper.java.additional.5=-Dcom.sun.management.jmxremote.password.file=%CATALINA_BASE%/conf/jmxremote.password > wrapper.java.additional.6=-Dcom.sun.management.jmxremote.access.file=%CATALINA_BASE%/conf/jmxremote.access > wrapper.java.additional.7=-DVOID > wrapper.java.additional.8=-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager > wrapper.java.additional.9=-Djava.util.logging.config.file=%CATALINA_BASE%/conf/logging.properties > wrapper.java.additional.10=-Djava.endorsed.dirs=%CATALINA_HOME%/common/endorsed > wrapper.java.additional.11=-Dcatalina.base=%CATALINA_BASE% > wrapper.java.additional.12=-Dcatalina.home=%CATALINA_HOME% > wrapper.java.additional.13=-Djava.io.tmpdir=%CATALINA_BASE%/temp > wrapper.java.additional.14=-Djava.awt.headless=true > wrapper.java.additional.15=-Dmail.mime.decodeparameters=true > wrapper.java.additional.16=-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true > wrapper.java.additional.17=-Dfile.encoding=UTF-8 > wrapper.java.additional.18=-Dclient.encoding.override=UTF-8 > wrapper.java.additional.19=-verbose:gc > wrapper.java.additional.20=-XX:+PrintGCDetails > wrapper.java.additional.21=-XX:+PrintGCTimeStamps > wrapper.java.additional.22=-XX:+PrintHeapAtGC > wrapper.java.additional.23=-XX:+PrintClassHistogram > wrapper.java.additional.24=-XX:+PrintTenuringDistribution > wrapper.java.additional.25=-XX:+HeapDumpOnOutOfMemoryError > wrapper.java.additional.26=-Xloggc:%CATALINA_BASE%/logs/gclog.log > wrapper.java.additional.27=-XX:PermSize=192m > wrapper.java.additional.28=-XX:MaxPermSize=192m > wrapper.java.additional.29=-XX:HeapDumpPath=%CATALINA_BASE%/logs/ > #wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=%CATALINA_BASE%/apps/jira/current/WEB-INF/groovy > wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=/srv/svn/jira-deliver/modules/scripts/runtime/src/main/groovy > wrapper.java.additional.31=-DGROOVYSCRIPTS_LOG_LEVEL=INFO > > # Initial Java Heap Size (in MB) > wrapper.java.initmemory=512 > > # Maximum Java Heap Size (in MB) > wrapper.java.maxmemory=1024 > > # Application parameters. Add parameters as needed starting from 1 > wrapper.app.parameter.1=org.apache.catalina.startup.Bootstrap > wrapper.app.parameter.2=start > > #******************************************************************** > # Wrapper Logging Properties > #******************************************************************** > # Enables Debug output from the Wrapper. > wrapper.debug=TRUE > > # 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=INFO > > # Log file to use for wrapper output logging. > wrapper.logfile=%CATALINA_BASE%/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=INFO > > # 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=64m > > # 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=50 > > # Log Level for sys/event log output. (See docs for log levels) > wrapper.syslog.loglevel=NONE > > #******************************************************************** > # Wrapper General Properties > #******************************************************************** > # Allow for the use of non-contiguous numbered properties > wrapper.ignore_sequence_gaps=TRUE > > # Title to use when running as a console > wra...@ap...@ > > #******************************************************************** > # Wrapper JVM Checks > #******************************************************************** > # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) > wrapper.check.deadlock=TRUE > wrapper.check.deadlock.interval=60 > wrapper.check.deadlock.action=RESTART > wrapper.check.deadlock.output=FULL > > # Out Of Memory detection. > wrapper.filter.trigger.1000=java.lang.OutOfMemoryError > wrapper.filter.action.1000=RESTART > wrapper.filter.message.1000=The JVM has run out of memory. > > #******************************************************************** > # Wrapper Email Notifications. (Requires Professional Edition) > #******************************************************************** > # Common Event Email settings. > #wrapper.event.default.email.debug=TRUE > #wrapper.event.default.email.smtp.host=<SMTP_Host> > #wrapper.event.default.email.smtp.port=25 > #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRAPPER_EVENT_NAME%] Event Notification > #wrapper.event.default.email.sender=<Sender email> > #wrapper.event.default.email.recipient=<Recipient email> > > # Configure the log attached to event emails. > #wrapper.event.default.email.attach_log=TRUE > #wrapper.event.default.email.maillog.lines=50 > #wrapper.event.default.email.maillog.format=LPTM > #wrapper.event.default.email.maillog.loglevel=INFO > > # Enable specific event emails. > #wrapper.event.wrapper_start.email=TRUE > #wrapper.event.jvm_prelaunch.email=TRUE > #wrapper.event.jvm_start.email=TRUE > #wrapper.event.jvm_started.email=TRUE > #wrapper.event.jvm_deadlock.email=TRUE > #wrapper.event.jvm_stop.email=TRUE > #wrapper.event.jvm_stopped.email=TRUE > #wrapper.event.jvm_restart.email=TRUE > #wrapper.event.jvm_failed_invocation.email=TRUE > #wrapper.event.jvm_max_failed_invocations.email=TRUE > #wrapper.event.jvm_kill.email=TRUE > #wrapper.event.jvm_killed.email=TRUE > #wrapper.event.jvm_unexpected_exit.email=TRUE > #wrapper.event.wrapper_stop.email=TRUE > > # Specify custom mail content > wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n > > #******************************************************************** > # Wrapper Windows NT/2000/XP 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 > wra...@ap...@ > > # Display name of the service > wra...@ap...@ > > # Description of the service > wra...@ap...@ > > # Service dependencies. Add dependencies as needed starting from 1 > wrapper.ntservice.dependency.1= > > # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START > wrapper.ntservice.starttype=AUTO_START > > # Allow the service to interact with the desktop. > wrapper.ntservice.interactive=false |
|
From: <wra...@ar...> - 2010-11-11 12:32:29
|
The wrapper and the wrapped application are running fine so far. The Logfile size is set to 64m. 'Sometimes' (is not predictable and reproducable) after logfile rotation the system hangs. The new logfile is created, but no new logs are written. The wrapped java process is still running some time, but after a while the wrapped web application is not reacting anymore. Any hints? MY ENVIRONMENT o Wrapper version: Java Service Wrapper Community Edition 64-bit 3.5.4 o Linux 2.6.32-24-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 GNU/Linux o Also detected on a SUSE 64bit Enterprise Server o wrapped application is a Jira 4.1.1 on apache-tomcat-6.0.28 o java-6-sun-1.6.0.22 WRAPPER SETUP #encoding=UTF-8 # Configuration files must begin with a line specifying the encoding # of the the file. #******************************************************************** # Wrapper License Properties (Ignored by Community Edition) #******************************************************************** # Professional and Standard Editions of the Wrapper require a valid # License Key to start. Licenses can be purchased or a trial license # requested on the following pages: # http://wrapper.tanukisoftware.com/purchase # http://wrapper.tanukisoftware.com/trial # Include file problems can be debugged by removing the first '#' # from the following line: ##include.debug # The Wrapper will look for either of the following optional files for a # valid License Key. License Key properties can optionally be included # directly in this configuration file. #include ../conf/wrapper-license.conf #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf # The following property will output information about which License Key(s) # are being found, and can aid in resolving any licensing problems. #wrapper.license.debug=TRUE #******************************************************************** # Wrapper Localization #******************************************************************** # Specify the locale which the Wrapper should use. By default the system # locale is used. wrapper.lang=en_US # en_US or ja_JP # Specify the location of the Wrapper's language resources. If these are # missing, the Wrapper will default to the en_US locale. #wrapper.lang.folder=../lang #******************************************************************** # Wrapper Java Properties #******************************************************************** # Java Application # Locate the java binary on the system PATH: #wrapper.java.command=java # Specify a specific java binary: set.SI_HOME=/srv/jira4 set.CATALINA_BASE=%SI_HOME% set.CATALINA_HOME=%SI_HOME%/tomcat/current set.JAVA_HOME=%SI_HOME%/jvm/current wrapper.java.command=%JAVA_HOME%/bin/java # Tell the Wrapper to log the full generated Java command line. wrapper.java.command.loglevel=INFO # Java Main class. This class must implement the WrapperListener interface # or guarantee that the WrapperManager class is initialized. Helper # classes are provided to do this for you. See the Integration section # of the documentation for details. 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=%CATALINA_BASE%/lib/wrapper.jar wrapper.java.classpath.2=%CATALINA_HOME%/bin/bootstrap.jar # Java Library Path (location of Wrapper.DLL or libwrapper.so) wrapper.java.library.path.1=%CATALINA_BASE%/lib # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. wrapper.java.additional.auto_bits=TRUE # Java Additional Parameters wrapper.java.additional.1=-Dcom.sun.management.jmxremote wrapper.java.additional.2=-Dcom.sun.management.jmxremote.ssl=false wrapper.java.additional.3=-Dcom.sun.management.jmxremote.authenticate=true wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=98079 wrapper.java.additional.5=-Dcom.sun.management.jmxremote.password.file=%CATALINA_BASE%/conf/jmxremote.password wrapper.java.additional.6=-Dcom.sun.management.jmxremote.access.file=%CATALINA_BASE%/conf/jmxremote.access wrapper.java.additional.7=-DVOID wrapper.java.additional.8=-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager wrapper.java.additional.9=-Djava.util.logging.config.file=%CATALINA_BASE%/conf/logging.properties wrapper.java.additional.10=-Djava.endorsed.dirs=%CATALINA_HOME%/common/endorsed wrapper.java.additional.11=-Dcatalina.base=%CATALINA_BASE% wrapper.java.additional.12=-Dcatalina.home=%CATALINA_HOME% wrapper.java.additional.13=-Djava.io.tmpdir=%CATALINA_BASE%/temp wrapper.java.additional.14=-Djava.awt.headless=true wrapper.java.additional.15=-Dmail.mime.decodeparameters=true wrapper.java.additional.16=-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true wrapper.java.additional.17=-Dfile.encoding=UTF-8 wrapper.java.additional.18=-Dclient.encoding.override=UTF-8 wrapper.java.additional.19=-verbose:gc wrapper.java.additional.20=-XX:+PrintGCDetails wrapper.java.additional.21=-XX:+PrintGCTimeStamps wrapper.java.additional.22=-XX:+PrintHeapAtGC wrapper.java.additional.23=-XX:+PrintClassHistogram wrapper.java.additional.24=-XX:+PrintTenuringDistribution wrapper.java.additional.25=-XX:+HeapDumpOnOutOfMemoryError wrapper.java.additional.26=-Xloggc:%CATALINA_BASE%/logs/gclog.log wrapper.java.additional.27=-XX:PermSize=192m wrapper.java.additional.28=-XX:MaxPermSize=192m wrapper.java.additional.29=-XX:HeapDumpPath=%CATALINA_BASE%/logs/ #wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=%CATALINA_BASE%/apps/jira/current/WEB-INF/groovy wrapper.java.additional.30=-DGROOVYSCRIPTS_HOME=/srv/svn/jira-deliver/modules/scripts/runtime/src/main/groovy wrapper.java.additional.31=-DGROOVYSCRIPTS_LOG_LEVEL=INFO # Initial Java Heap Size (in MB) wrapper.java.initmemory=512 # Maximum Java Heap Size (in MB) wrapper.java.maxmemory=1024 # Application parameters. Add parameters as needed starting from 1 wrapper.app.parameter.1=org.apache.catalina.startup.Bootstrap wrapper.app.parameter.2=start #******************************************************************** # Wrapper Logging Properties #******************************************************************** # Enables Debug output from the Wrapper. wrapper.debug=TRUE # 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=INFO # Log file to use for wrapper output logging. wrapper.logfile=%CATALINA_BASE%/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=INFO # 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=64m # 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=50 # Log Level for sys/event log output. (See docs for log levels) wrapper.syslog.loglevel=NONE #******************************************************************** # Wrapper General Properties #******************************************************************** # Allow for the use of non-contiguous numbered properties wrapper.ignore_sequence_gaps=TRUE # Title to use when running as a console wra...@ap...@ #******************************************************************** # Wrapper JVM Checks #******************************************************************** # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) wrapper.check.deadlock=TRUE wrapper.check.deadlock.interval=60 wrapper.check.deadlock.action=RESTART wrapper.check.deadlock.output=FULL # Out Of Memory detection. wrapper.filter.trigger.1000=java.lang.OutOfMemoryError wrapper.filter.action.1000=RESTART wrapper.filter.message.1000=The JVM has run out of memory. #******************************************************************** # Wrapper Email Notifications. (Requires Professional Edition) #******************************************************************** # Common Event Email settings. #wrapper.event.default.email.debug=TRUE #wrapper.event.default.email.smtp.host=<SMTP_Host> #wrapper.event.default.email.smtp.port=25 #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRAPPER_EVENT_NAME%] Event Notification #wrapper.event.default.email.sender=<Sender email> #wrapper.event.default.email.recipient=<Recipient email> # Configure the log attached to event emails. #wrapper.event.default.email.attach_log=TRUE #wrapper.event.default.email.maillog.lines=50 #wrapper.event.default.email.maillog.format=LPTM #wrapper.event.default.email.maillog.loglevel=INFO # Enable specific event emails. #wrapper.event.wrapper_start.email=TRUE #wrapper.event.jvm_prelaunch.email=TRUE #wrapper.event.jvm_start.email=TRUE #wrapper.event.jvm_started.email=TRUE #wrapper.event.jvm_deadlock.email=TRUE #wrapper.event.jvm_stop.email=TRUE #wrapper.event.jvm_stopped.email=TRUE #wrapper.event.jvm_restart.email=TRUE #wrapper.event.jvm_failed_invocation.email=TRUE #wrapper.event.jvm_max_failed_invocations.email=TRUE #wrapper.event.jvm_kill.email=TRUE #wrapper.event.jvm_killed.email=TRUE #wrapper.event.jvm_unexpected_exit.email=TRUE #wrapper.event.wrapper_stop.email=TRUE # Specify custom mail content wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n #******************************************************************** # Wrapper Windows NT/2000/XP 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 wra...@ap...@ # Display name of the service wra...@ap...@ # Description of the service wra...@ap...@ # Service dependencies. Add dependencies as needed starting from 1 wrapper.ntservice.dependency.1= # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START wrapper.ntservice.starttype=AUTO_START # Allow the service to interact with the desktop. wrapper.ntservice.interactive=false |
|
From: Leif M. <lei...@ta...> - 2010-11-01 06:44:28
|
Hi all, One of our users reported a problem on AIX platforms where the Wrapper's shell script was failing to launch the Wrapper on system restart when it had been installed. This has been a problem since the install command was first added to the scripts back in 3.4.1. We are still a little ways off from the next release, so I wanted to make sure that this was searchable in case anyone else encountered it. Please use the attached script rather than the one released with 3.5.6. There are not any known issues for other platforms. Cheers, Leif |
|
From: Neeraja K. <nee...@in...> - 2010-10-16 14:40:52
|
I will be out of the office starting 10/11/2010 and will not return until 10/18/2010. I will respond to your email once I am back. In my absence you can contact my manager Charu Pandhare for any escalations. For other project related issues, please contact Sadanand Poorajan for MMC Shylender T Singh for Honda Srinivasa K Korada for Mercedes-Benz |
|
From: Leif M. <lei...@ta...> - 2010-10-16 12:46:25
|
Hi all, I would like to announce the release of 3.5.6 of the Java Service Wrapper. This version is primarily a bug fix release, but also includes some new features: *) The ability to reference the context directory from which the JVM was launched. Useful for command line applications Please see the release notes for a full list of changes: http://wrapper.tanukisoftware.org/doc/english/release-notes.html#3.5.6 The full release is available on the Wrapper site: http://wrapper.tanukisoftware.com/doc/english/download.jsp As always, please let us know how we can continue to improve the Wrapper to meet your needs. Sincerely, Leif Mortenson Tanuki Software, Ltd. http://www.tanukisoftware.com |
|
From: Christian M. <chr...@ta...> - 2010-10-11 04:44:30
|
Scott, what version (32 / 64 bit) are you rerferencing? I guess, you are using 32 bit versions of the wrapper... >From 3.5.0 to 3.5.4 the 32 bit binaries (not the 64) linked with gnu libiconv, the latest 3.5.5 release is now linking rather the systems native libiconv library. If that's not accurate, please send us the output running ldd & file on the wrapper binary. cheers, christian On Mon, Oct 11, 2010 at 12:06 PM, Scott Abernethy <sco...@av...> wrote: > Hi, > > I recently upgraded our application from wrapper 3.4.0 to 3.5.4. On > Solaris installations we now get the following error when attempting > service start: > > ld.so.1: XXXXXXXX/wrapper: fatal: libiconv.so.2: open failed: No such > file or directory > > A work-around for this issue is to download and install the Solaris > libiconv package and any dependencies. > > As libiconv doesn't seem to be part of the default Solaris 9 or 10 > install, this dependency is a real pain. > > Question: Is there any work-around that excludes installing new packages? > > Regards, > Scott. > > ------------------------------------------------------------------------------ > Beautiful is writing same markup. Internet Explorer 9 supports > standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. > Spend less time writing and rewriting code and more time creating great > experiences on the web. Be a part of the beta today. > http://p.sf.net/sfu/beautyoftheweb > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > |
|
From: Scott A. <sco...@av...> - 2010-10-11 03:22:05
|
Hi, I recently upgraded our application from wrapper 3.4.0 to 3.5.4. On Solaris installations we now get the following error when attempting service start: ld.so.1: XXXXXXXX/wrapper: fatal: libiconv.so.2: open failed: No such file or directory A work-around for this issue is to download and install the Solaris libiconv package and any dependencies. As libiconv doesn't seem to be part of the default Solaris 9 or 10 install, this dependency is a real pain. Question: Is there any work-around that excludes installing new packages? Regards, Scott. |
|
From: Leif M. <lei...@ta...> - 2010-10-04 13:26:45
|
Hi all, I would like to announce the release of 3.5.5 of the Java Service Wrapper. This version includes several important new features: *) The ability to use wildcards in filters. *) Configuration of Windows Service Manager Recovery features from the Wrapper configuration file. *) The ability to pass arguments directly from the command line through to the JVM. *) Ability to define a default commands in the Wrapper shell script. *) ... and much more. This release also contains a few bug fixes. Please see the release notes for a full list of changes: http://wrapper.tanukisoftware.org/doc/english/release-notes.html#3.5.5 The full release is available on the Wrapper site: http://wrapper.tanukisoftware.com/doc/english/download.jsp As always, please let us know how we can continue to improve the Wrapper to meet your needs. Sincerely, Leif Mortenson Tanuki Software, Ltd. http://www.tanukisoftware.com |
|
From: Leif M. <lei...@ta...> - 2010-10-01 21:20:54
|
Kapilashantha, Hmmm. The Wrapper will be running on both of your servers, so you really don't want to monitor that PID file. It is possible to tell the Wrapper to write out a number of other state files however. One is the JVM PID file. This will contain the PID of the JVM when it is running. It sounds like the way you have things set up now, the JVM will also always be running however. http://wrapper.tanukisoftware.com/doc/english/prop-java-pidfile.html We can also write out the status of both the Wrapper and Java processes. These are useful when you want to know exactly what state the processes are in internally. http://wrapper.tanukisoftware.com/doc/english/prop-statusfile.html http://wrapper.tanukisoftware.com/doc/english/prop-java-statusfile.html One feature that might be useful is the ability to "pause" the Wrapper. When paused, it can be configured to completely stop the JVM process and then wait for a signal to resume. When paused, the above JVM PID file and status files will be missing so your monitoring system could trigger off of this possibly. http://wrapper.tanukisoftware.com/doc/english/prop-pausable.html Now, to control the paused/resume state of the Wrapper, your can specify a command file. The Wrapper will poll this file and then take any action that is stored in the file. These can be commands like STOP, RESTART, PAUSE, RESUME, amongst others. http://wrapper.tanukisoftware.com/doc/english/prop-commandfile.html Would it be possible to set up your system to write these command files on the two servers to control their states? It is possible for your Java code to pause its own JVM by calling exiting with an exit code that you then tie to a PAUSE action with the on_exit property: http://wrapper.tanukisoftware.com/doc/english/prop-on-exit-n.html We have also added a new property to version 3.5.5 that will make it possible to start the Wrapper in a paused state so it will not launch its first JVM until it is resumed. wrapper.pause_on_startup=TRUE wrapper.pausable=TRUE Please let me know if you have any ideas of how you would ideally like the Wrapper to behave. We are always interested in finding ways to make the Wrapper more useful. Cheers, Leif On Tue, Sep 28, 2010 at 1:04 PM, kapilashantha rajapaksha <kap...@gm...> wrote: > Dear Sir, > > Thanks a lot your kind response, > > I'm using RHEL 5.4 operating system and my application is a transaction > server which is basically installing in banking system. > > So I have two servers mentioned LIVE and BACKUP > > And I'm using LINUX HA (heartbeat) to make a backup processes. > > Note : I extends the 'WrapperSimpleApp' in my application and using it > > > My issue is that my service (running on wrapper) something different not > like other service (For a example take httpd service) > > The reason is when starting failing of service (it means init() method > returns false ), The linux HA is still detecting that service is still > running status. > > Note : I'm using HA service monitoring option to monitor service status > > Then service will not move to the BACKUP server even if it is getting > failure in LIVE server. But same configuration I have been applying to httpd > service, so HA try to three attempts to start service on LIVE server if it > is failing there, the httpd service will move to the backup server. > > > My point is that when I run my service, imediatly it will create PID file > and others but application is still initializing. So HA now detecting > service is running > > Anyway i trust that you can understand my problem. > > > This is the using code > > ----------------------------------------------------------------------------- > > package com.epic.line.server; > > import org.tanukisoftware.wrapper.WrapperSimpleApp; > import com.epic.line.config.TLEConfig; > import com.epic.line.config.TLEInitAll; > > public class WrapperStart extends WrapperSimpleApp { > > protected WrapperStart(String[] arg0) { > > super(arg0); > > } > > > public static void main(String[] args) { > > try { > > TLEInitAll.init(); > > if (TLEConfig.INIT_ST){ > > System.out.println( "Epic_TLE startup passed." ); > new WrapperStart(args); > > > }else{ > > System.out.println( "Epic_TLE startup failed." ); > System.exit(0); > > } > } catch (Exception e) { > > > } > > > } > > > @Override > public int stop(int exitCode) { > > return super.stop(0); > } > > > } > > ----------------------------------------------------------------------------- > > Note : Passing my main method via args > > > And one thing with this code > > When calling 'TLEInitAll.init();' wrapper has created PID file and other > before calling 'new WrapperStart(args);' > > Thanks and regards > -Kapila > > > > On Mon, Sep 27, 2010 at 10:57 PM, > <wra...@li...> wrote: >> >> Send Wrapper-user mailing list submissions to >> wra...@li... >> >> To subscribe or unsubscribe via the World Wide Web, visit >> https://lists.sourceforge.net/lists/listinfo/wrapper-user >> or, via email, send a message with subject or body 'help' to >> wra...@li... >> >> You can reach the person managing the list at >> wra...@li... >> >> When replying, please edit your Subject line so it is more specific >> than "Re: Contents of Wrapper-user digest..." >> >> >> Today's Topics: >> >> 1. Taking chance to call my init() before running on JSW >> (kapilashantha rajapaksha) >> 2. Re: Taking chance to call my init() before running on JSW >> (Leif Mortenson) >> 3. Wrapper service failing immediately >> (GLOVER, MARK CSC) >> >> >> ---------------------------------------------------------------------- >> >> Message: 1 >> Date: Mon, 27 Sep 2010 13:09:50 +0530 >> From: kapilashantha rajapaksha <kap...@gm...> >> Subject: [Wrapper-user] Taking chance to call my init() before running >> on JSW >> To: Wra...@li... >> Message-ID: >> <AAN...@ma...> >> Content-Type: text/plain; charset="iso-8859-1" >> >> hi All, >> >> I'm using int JSW for my application. One thing I want to know. >> >> I want to run my init() method (There is an init() method in my >> application >> which used for checking initializing modules like dbconnection, some >> hardware status (HSM), remote socket connection status etc... ). If it is >> returning TRUE, the all modules are successfully loaded. If it is retuning >> FALSE, some failure has detected. >> >> What I want to know, >> >> Can I call my init() method before loading JSW ? >> >> If only TRUE returns , Then my application should be get started on JSW >> >> >> Regards >> -Kapila >> -------------- next part -------------- >> An HTML attachment was scrubbed... >> >> ------------------------------ >> >> Message: 2 >> Date: Mon, 27 Sep 2010 16:49:56 +0900 >> From: Leif Mortenson <lei...@ta...> >> Subject: Re: [Wrapper-user] Taking chance to call my init() before >> running on JSW >> To: wra...@li... >> Message-ID: >> <AAN...@ma...> >> Content-Type: text/plain; charset=ISO-8859-1 >> >> Kapila, >> You can do this in one of a number of ways. >> >> 1) The simplest is to write a simple class which does this check in >> its main method then calls the application's main class's main method >> if you really want to start the application. Call System.exit with >> an appropriate error code otherwise. >> You can then use the standard Integration Method #1 and make use of >> the WrapperSimpleApp helper class as usual: >> http://wrapper.tanukisoftware.com/doc/english/integrate.html#method1 >> >> 2) A more advanced option is to use Integration Method #3, and write >> your own WrapperListener implementation. In this case, you would do >> your initialization checks in the WrapperListener.start method and >> then return an error or call your main class start method as above. >> This method has the benefit of giving you more control over when the >> Wrapper things the application is "started": >> http://wrapper.tanukisoftware.com/doc/english/integrate.html#method3 >> >> Cheers, >> Leif >> >> On Mon, Sep 27, 2010 at 4:39 PM, kapilashantha rajapaksha >> <kap...@gm...> wrote: >> > hi All, >> > >> > I'm using int JSW for my application. One thing I want to know. >> > >> > I want to run my init() method (There is an init() method in my >> > application >> > which used for checking initializing modules like dbconnection, some >> > hardware status (HSM), remote socket connection status etc... ). If it >> > is >> > returning TRUE, the all modules are successfully loaded. If it is >> > retuning >> > FALSE, some failure? has detected. >> > >> > What I want to know, >> > >> > Can I call my init() method before loading JSW ? >> > >> > If only TRUE returns , Then my application should be get started on JSW >> > >> > >> > Regards >> > -Kapila >> >> >> >> ------------------------------ >> >> Message: 3 >> Date: Mon, 27 Sep 2010 13:26:51 -0400 >> From: "GLOVER, MARK CSC" <MAR...@UT...> >> Subject: [Wrapper-user] Wrapper service failing immediately >> To: <wra...@li...> >> Message-ID: >> <8D3...@UU...> >> Content-Type: text/plain; charset="iso-8859-1" >> >> What might cause a wrapper to exit before trying to start? >> >> Running from console doesn't seem to indicate error. >> >> C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>wrapper.exe >> -c ..\conf\MarkTestWrapperApp.conf >> >> n See wrapper.log for results. >> >> >> >> The service is not waiting 30000 milliseconds for a process to start. >> >> The service failing immediately. >> >> M/S documentation suggests error code WIN32_EXIT_CODE : 0 (0x0) is >> caused by a bug before the process is starting. >> >> >> >> C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>InstallMarkTestWrapperApp-NT.bat >> >> wrapper | Service command: "C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin\wrapper.exe" >> -s "C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\conf\wrapper.conf" >> >> wrapper | MarkTestWrapperApp service installed. >> >> >> >> C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>wrapper.exe >> -t ..\conf\MarkTestWrapperApp.conf >> >> wrapper | Starting the MarkTestWrapperApp service... >> >> wrapper | Unable to start the MarkTestWrapperApp service - The service >> did not respond to the start or control request in a timely fashion. (0x41d) >> >> >> >> C:\Documents and >> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>sc query >> MarkTestWrapperApp >> >> >> >> SERVICE_NAME: MarkTestWrapperApp >> >> TYPE : 10 WIN32_OWN_PROCESS >> >> STATE : 1 STOPPED >> >> >> (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) >> >> WIN32_EXIT_CODE : 0 (0x0) >> >> SERVICE_EXIT_CODE : 0 (0x0) >> >> CHECKPOINT : 0x0 >> >> WAIT_HINT : 0x0 >> >> >> >> >> >> >> >> Mark Glover >> >> UTC Power >> >> 195 Governors Highway >> >> South Windsor CT 06074 >> >> 860 727 2253 |
|
From: Leif M. <lei...@ta...> - 2010-10-01 06:58:48
|
Mark, I was just going back to give you an update on this issue and realized that the following mail was still in my drafts.. Sorry about that. We have added a queue which allows for up to 25 control codes per 10ms cycle of the Wrapper to be enqueued. This should be far more than enough. This has been implemented for the upcoming 3.5.5 release. Please give it a try when it comes out. Cheers, Leif Message in draft.... --- Mark, I did some more investigation of this. Sorry. This is a slightly different problem than what I mentioned the other day. Starting with version 3.5.1, we reworked the way signal handlers in general are implemented so they now do as little possible within the interrupt. This was needed to avoid very rare deadlocks in logging code and mallocs. The problem is that the signal handler now makes a note of the most recent signal and then the main loop processes it. As it is written, if you get more than one service control code per loop of the main method, you will see a warning like the one you are seeing. I have made some changes for the next release to make this much more robust. In the mean time, if this is a big problem for you, version 3.4.1 may be the best temporary solution as that version has been very stable as well. Cheers, Leif On Tue, Sep 21, 2010 at 5:40 PM, Wardell, Mark <Mar...@co...> wrote: > (resending as last message was scrubbed) > > Hi Leif > > Many thanks for the response - I didn't actually receive it though as > our mail filters probably were over-zealous. > > I have run the process in debug mode as you suggested and have attached > the logs below. > > We have been running a very old version (3.2.3) of the wrapper which is > why we have not seen this before. After looking a bit deeper, I do not > see the issue if I run it on my workstation, only on our servers. Is it > possible that monitoring software could be causing this? > > Regards > Mark > > 2010/09/15 08:49:03.921 | Allocating a console for the service. > 2010/09/15 08:49:03.936 | Found console window. > 2010/09/15 08:49:03.936 | --> Wrapper Started as Service > 2010/09/15 08:49:03.936 | Java Service Wrapper Community Edition 32-bit > 3.5.3 > 2010/09/15 08:49:03.936 | Copyright (C) 1999-2010 Tanuki Software, > Ltd. All Rights Reserved. > 2010/09/15 08:49:03.936 | http://wrapper.tanukisoftware.com > 2010/09/15 08:49:03.936 | > 2010/09/15 08:49:03.936 | Release time: 2010/08/03 00:00:00 > 2010/09/15 08:49:03.936 | Build time: 2010/08/04 02:02:00 > 2010/09/15 08:49:03.936 | Timezone: GMT Standard Time (GMT Daylight > Time) Offset: 0, hasDaylight: 1 > 2010/09/15 08:49:03.936 | Using tick timer. <snip> |
|
From: Jeremy F. <jer...@ya...> - 2010-09-30 15:16:41
|
Hi LeifThanks for clarifying where I can get things and the lie of the land.. To start Archiva - which was your option 1 I type: archiva consoleThere is a wrapper.jar as you indicate in the lib folder (86K)There are .so/.jni files. But it appears the 64 bit OSX files are missing One think I omitted was the fact that Archiva 1.3.1 uses wrapper 3.2.3From looking here:http://wrapper.tanukisoftware.com/downloads/3.2.3/it appears Archiva is using an old edition of the JSW >From this I can infer they ought to be using 3.3.0 or later...http://wrapper.tanukisoftware.com/downloads/3.3.0/ I'll post a thread back on Archiva forum linking to this message. Many thanks for your help.Jeremy --- On Thu, 30/9/10, Leif Mortenson <lei...@ta...> wrote: From: Leif Mortenson <lei...@ta...> Subject: Re: [Wrapper-user] Where do I get the Mac OS X jni libraries? To: wra...@li... Date: Thursday, 30 September, 2010, 15:20 Jeremy, The Java Service Wrapper is a tool that not only launches a Java process, but also has several features to guarantee that your application will stay up and running in case of a critical JVM error. It has 3 main components. 1) A "wrapper" binary which is what you are most likely launching when you start the application. 2) A "wrapper.jar" file which contains the Java side of the Wrapper. 3) A "libwrapper.so" or "libwrapper.jnilib" file which is the native component of the wrapper.jar. I do not know how Archiva is set up, you should really ask them about this issue so they fix their deployment. Most likely it is missing the libwrapper.jnilib file. Please try running your "bin/wrapper -v". This will tell you the version of the Wrapper being used. Then go to the following page to download the specific version of the 64-bit MacOSX release: http://wrapper.tanukisoftware.com/downloads Take a look in the apache-archiva-1.3.1/lib directory. Do you see a bunch of libwrapper-*.* platform specific files? Or a single libwrapper.so file? Unzip the downloaded distribution and then copy the lib/libwrapper.jnilib file into the apache-archiva-1.3.1/lib directory. If the other files have platform specific naming, then rename it libwrapper-macosx-universal-64.jnilib. That should fix it for you. Cheers, Leif On Thu, Sep 30, 2010 at 11:00 PM, Jeremy Flowers <jer...@ya...> wrote: I downloaded Archiva 1.3.1 earlier today. (zip version).It appears to be utilising your software and I get the following: WARNING - Unable to load the Wrapper's native library because none of the following files:libwrapper-macosx-x86-64.jniliblibwrapper-macosx-universal-64.jniliblibwrapper.jnilib could be located on the following java.library.path: /opt/apache-archiva-1.3.1/lib Please see the documentation for the wrapper.java.library.path configuration property. System signals will not be handled correctly. === java -version yields:java version "1.6.0_20"Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065)Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode)=== Java Preferences in Utilities section:It stipulates : Java Applications, Web Start applications and command line tools use 'this order' to determine the most appropriate version to use..The panel has the 64 bit version listed above the 32 bit one. So I'd assume 64 bit was being chosen. === Searching on the term wrapper.java.library.path yielded a file in the archiva conf folder called wrapper.conf.That has a slew of 20 jars and excludes the ones the message relates to.Don't know where I'd get these (or why I need them) === Can someone enlighten me? === Also what's the deal with system signals? Are some sort of event listeners supposed to make use of these? See this thread http://mail-archives.apache.org/mod_mbox/archiva-users/201009.mbox/%3c4...@we...%3e -----Inline Attachment Follows----- ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev -----Inline Attachment Follows----- _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: Leif M. <lei...@ta...> - 2010-09-30 14:20:36
|
Jeremy, The Java Service Wrapper is a tool that not only launches a Java process, but also has several features to guarantee that your application will stay up and running in case of a critical JVM error. It has 3 main components. 1) A "wrapper" binary which is what you are most likely launching when you start the application. 2) A "wrapper.jar" file which contains the Java side of the Wrapper. 3) A "libwrapper.so" or "libwrapper.jnilib" file which is the native component of the wrapper.jar. I do not know how Archiva is set up, you should really ask them about this issue so they fix their deployment. Most likely it is missing the libwrapper.jnilib file. Please try running your "bin/wrapper -v". This will tell you the version of the Wrapper being used. Then go to the following page to download the specific version of the 64-bit MacOSX release: http://wrapper.tanukisoftware.com/downloads Take a look in the apache-archiva-1.3.1/lib directory. Do you see a bunch of libwrapper-*.* platform specific files? Or a single libwrapper.so file? Unzip the downloaded distribution and then copy the lib/libwrapper.jnilib file into the apache-archiva-1.3.1/lib directory. If the other files have platform specific naming, then rename it libwrapper-macosx-universal-64.jnilib. That should fix it for you. Cheers, Leif On Thu, Sep 30, 2010 at 11:00 PM, Jeremy Flowers < jer...@ya...> wrote: > I downloaded Archiva 1.3.1 earlier today. (zip version). > It appears to be utilising your software and I get the following: > > WARNING - Unable to load the Wrapper's native library because none of the > following files: > > libwrapper-macosx-x86-64.jnilib > > libwrapper-macosx-universal-64.jnilib > > libwrapper.jnilib > > could be located on the following java.library.path: > > /opt/apache-archiva-1.3.1/lib > > Please see the documentation for the wrapper.java.library.path > configuration property. > System signals will not be handled correctly. > > > === > > > java -version yields:java version "1.6.0_20"Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065)Java > HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode) > > === > > > Java Preferences in Utilities section:It stipulates : Java Applications, > Web Start applications and command line tools use 'this order' to determine the most appropriate version to use..The panel has the 64 bit version listed above the 32 bit one. So I'd assume 64 bit was being chosen. > > > === > > Searching on the term wrapper.java.library.path yielded a file in the archiva conf folder called wrapper.conf.That has a slew of 20 jars and excludes > the ones the message relates to.Don't know where I'd get these (or why I need them) > > > === > > Can someone enlighten me? > === > > Also what's the deal with system signals? > Are some sort of event listeners supposed to make use of these? > > See this thread > > > http://mail-archives.apache.org/mod_mbox/archiva-users/201009.mbox/%3c4...@we...%3e > > > |
|
From: Jeremy F. <jer...@ya...> - 2010-09-30 14:00:30
|
I downloaded Archiva 1.3.1 earlier today. (zip version).It appears to be utilising your software and I get the following: WARNING - Unable to load the Wrapper's native library because none of the following files:libwrapper-macosx-x86-64.jniliblibwrapper-macosx-universal-64.jniliblibwrapper.jnilib could be located on the following java.library.path: /opt/apache-archiva-1.3.1/lib Please see the documentation for the wrapper.java.library.path configuration property. System signals will not be handled correctly. === java -version yields:java version "1.6.0_20"Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065)Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode)=== Java Preferences in Utilities section:It stipulates : Java Applications, Web Start applications and command line tools use 'this order' to determine the most appropriate version to use..The panel has the 64 bit version listed above the 32 bit one. So I'd assume 64 bit was being chosen. === Searching on the term wrapper.java.library.path yielded a file in the archiva conf folder called wrapper.conf.That has a slew of 20 jars and excludes the ones the message relates to.Don't know where I'd get these (or why I need them) === Can someone enlighten me? === Also what's the deal with system signals?Are some sort of event listeners supposed to make use of these? See this thread http://mail-archives.apache.org/mod_mbox/archiva-users/201009.mbox/%3c4...@we...%3e |
|
From: Christian <chr...@ta...> - 2010-09-29 08:39:43
|
mark,
I'm sorry for the delay.
I was compiling your test application and trying to run it on my x86
windows xp machine.
I did a few changes to the conf file, but this shouldn't affect the
test.
I actually had no problems running your application with the wrapper
even as service.
the output of sc query MarkTestWrapperApp you posted doesn't indicate
any problem.
Is something outputted in the logs when you try running the wrapper with
your application as service?
also what windows version are you using?
Cheers,
christian
-----Original Message-----
From: GLOVER, MARK CSC <MAR...@UT...>
Reply-to: wra...@li...
To: wra...@li...
Subject: [Wrapper-user] Wrapper service failing immediately
Date: Mon, 27 Sep 2010 13:26:51 -0400
What might cause a wrapper to exit before trying to start?
Running from console doesn't seem to indicate error.
C:\Documents and Settings\gloverm\src\java\wrapper-windows
\MarkTestWrapperApp\bin>wrapper.exe -c ..\conf\MarkTestWrapperApp.conf
n See wrapper.log for results.
The service is not waiting 30000 milliseconds for a process to start.
The service failing immediately.
M/S documentation suggests error code WIN32_EXIT_CODE : 0 (0x0) is
caused by a bug before the process is starting.
C:\Documents and Settings\gloverm\src\java\wrapper-windows
\MarkTestWrapperApp\bin>InstallMarkTestWrapperApp-NT.bat
wrapper | Service command: "C:\Documents and Settings\gloverm\src\java
\wrapper-windows\MarkTestWrapperApp\bin\wrapper.exe" -s "C:\Documents
and Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\conf
\wrapper.conf"
wrapper | MarkTestWrapperApp service installed.
C:\Documents and Settings\gloverm\src\java\wrapper-windows
\MarkTestWrapperApp\bin>wrapper.exe -t ..\conf\MarkTestWrapperApp.conf
wrapper | Starting the MarkTestWrapperApp service...
wrapper | Unable to start the MarkTestWrapperApp service - The service
did not respond to the start or control request in a timely fashion.
(0x41d)
C:\Documents and Settings\gloverm\src\java\wrapper-windows
\MarkTestWrapperApp\bin>sc query MarkTestWrapperApp
SERVICE_NAME: MarkTestWrapperApp
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
Mark Glover
UTC Power
195 Governors Highway
South Windsor CT 06074
860 727 2253
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user
|
|
From: Christian M. <chr...@ta...> - 2010-09-29 04:04:24
|
Sudhir, your conf file looks fine to me. How are you calling the wrapper? what happens if you run "java -jar ./BI_DATALAYER.jar" from your console? I will keep researching on this and come back to you after hearing back or finding out more. sincerely, christian On Wed, Sep 29, 2010 at 5:12 AM, Sudhir Shetty <sud...@ho... > wrote: > Hi, > I am using the wrapper-windows-x86-32-3.5.4-st edition. > I have a runnable jar and am using integration method 4 for running my > application > > I get the following Exception. > > it looks like its unable to read the Manifest file, my manifest file does > have the entries, I have atached the conf and the log files. > Please let me know , what I need to do to fix this issue. > i am using windows 7 32 bit edition. > > INFO | wrapper | 2010/09/28 16:01:13 | Command: > "C:\jdk1.6.0_21\bin\java" -Djava.library.path="../lib;../BI_DATALAYER.jar" > -classpath "../lib/wrapper.jar" > -Dwrapper.key="9812MAXQBjAn7g_8awxvEQzj_RyVFluG" -Dwrapper.port=32000 > -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=5856 > -Dwrapper.version="3.5.4-st" -Dwrapper.native_library="wrapper" > -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1 -Dwrapper.lang.domain=wrapper > -Dwrapper.lang.folder=../lang org.tanukisoftware.wrapper.WrapperJarApp > ../BI_DATALAYER.jar > INFO | jvm 1 | 2010/09/28 16:01:13 | WrapperManager: Initializing... > INFO | jvm 1 | 2010/09/28 16:01:14 | Missing attributes for > JarRsrcLoader in Manifest (Rsrc-Main-Class, Rsrc-Class-Path) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp: > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: Encountered > an error running main: > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: > java.lang.NullPointerException > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:46) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > java.lang.reflect.Method.invoke(Method.java:597) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > org.tanukisoftware.wrapper.WrapperJarApp.run(WrapperJarApp.java:367) > INFO | jvm 1 | 2010/09/28 16:01:14 | WrapperJarApp Error: at > java.lang.Thread.run(Thread.java:619) > STATUS | wrapper | 2010/09/28 16:01:16 | <-- Wrapper Stopped > > > > ------------------------------------------------------------------------------ > Start uncovering the many advantages of virtual appliances > and start using them to simplify application deployment and > accelerate your shift to cloud computing. > http://p.sf.net/sfu/novell-sfdev2dev > _______________________________________________ > Wrapper-user mailing list > Wra...@li... > https://lists.sourceforge.net/lists/listinfo/wrapper-user > > |
|
From: Sudhir S. <sud...@ho...> - 2010-09-28 20:12:59
|
#encoding=UTF-8 # Configuration files must begin with a line specifying the encoding # of the the file. #******************************************************************** # Wrapper License Properties (Ignored by Community Edition) #******************************************************************** # Professional and Standard Editions of the Wrapper require a valid # License Key to start. Licenses can be purchased or a trial license # requested on the following pages: # http://wrapper.tanukisoftware.com/purchase # http://wrapper.tanukisoftware.com/trial # Include file problems can be debugged by removing the first '#' # from the following line: ##include.debug # The Wrapper will look for either of the following optional files for a # valid License Key. License Key properties can optionally be included # directly in this configuration file. #include ../conf/wrapper-license.conf #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf # The following property will output information about which License Key(s) # are being found, and can aid in resolving any licensing problems. wrapper.license.debug=TRUE #******************************************************************** # Wrapper Localization #******************************************************************** # Specify the locale which the Wrapper should use. By default the system # locale is used. #wrapper.lang=en_US # en_US or ja_JP # Specify the location of the Wrapper's language resources. If these are # missing, the Wrapper will default to the en_US locale. wrapper.lang.folder=../lang #******************************************************************** # Wrapper Java Properties #******************************************************************** # Java Application # Locate the java binary on the system PATH: #wrapper.java.command=java # Specify a specific java binary: #set.JAVA_HOME=/java/path wrapper.java.command=%JAVA_HOME%/bin/java # Tell the Wrapper to log the full generated Java command line. wrapper.java.command.loglevel=INFO # Java Main class. This class must implement the WrapperListener interface # or guarantee that the WrapperManager class is initialized. Helper # classes are provided to do this for you. See the Integration section # of the documentation for details. wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperJarApp # Java Classpath (include wrapper.jar) Add class path elements as # needed starting from 1 wrapper.java.classpath.1=../lib/wrapper.jar # Java Library Path (location of Wrapper.DLL or libwrapper.so) wrapper.java.library.path.1=../lib wrapper.java.library.path.2=../BI_DATALAYER.jar # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. wrapper.java.additional.auto_bits=TRUE # Java Additional Parameters #wrapper.java.additional.1= # Initial Java Heap Size (in MB) #wrapper.java.initmemory=3 # Maximum Java Heap Size (in MB) #wrapper.java.maxmemory=64 # Application parameters. Add parameters as needed starting from 1 wrapper.app.parameter.1=../BI_DATALAYER.jar #******************************************************************** # Wrapper Logging Properties #******************************************************************** # Enables Debug output from the Wrapper. # wrapper.debug=TRUE # 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=INFO # Log file to use for wrapper output logging. wrapper.logfile=../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=INFO # 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=0 # 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=0 # Log Level for sys/event log output. (See docs for log levels) wrapper.syslog.loglevel=NONE #******************************************************************** # Wrapper General Properties #******************************************************************** # Allow for the use of non-contiguous numbered properties wrapper.ignore_sequence_gaps=TRUE # Title to use when running as a console wra...@ap...@ #******************************************************************** # Wrapper JVM Checks #******************************************************************** # Detect DeadLocked Threads in the JVM. (Requires Standard Edition) wrapper.check.deadlock=TRUE wrapper.check.deadlock.interval=60 wrapper.check.deadlock.action=RESTART wrapper.check.deadlock.output=FULL # Out Of Memory detection. wrapper.filter.trigger.1000=java.lang.OutOfMemoryError wrapper.filter.action.1000=RESTART wrapper.filter.message.1000=The JVM has run out of memory. #******************************************************************** # Wrapper Email Notifications. (Requires Professional Edition) #******************************************************************** # Common Event Email settings. #wrapper.event.default.email.debug=TRUE #wrapper.event.default.email.smtp.host=<SMTP_Host> #wrapper.event.default.email.smtp.port=25 #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME%:%WRAPPER_EVENT_NAME%] Event Notification #wrapper.event.default.email.sender=<Sender email> #wrapper.event.default.email.recipient=<Recipient email> # Configure the log attached to event emails. #wrapper.event.default.email.attach_log=TRUE #wrapper.event.default.email.maillog.lines=50 #wrapper.event.default.email.maillog.format=LPTM #wrapper.event.default.email.maillog.loglevel=INFO # Enable specific event emails. #wrapper.event.wrapper_start.email=TRUE #wrapper.event.jvm_prelaunch.email=TRUE #wrapper.event.jvm_start.email=TRUE #wrapper.event.jvm_started.email=TRUE #wrapper.event.jvm_deadlock.email=TRUE #wrapper.event.jvm_stop.email=TRUE #wrapper.event.jvm_stopped.email=TRUE #wrapper.event.jvm_restart.email=TRUE #wrapper.event.jvm_failed_invocation.email=TRUE #wrapper.event.jvm_max_failed_invocations.email=TRUE #wrapper.event.jvm_kill.email=TRUE #wrapper.event.jvm_killed.email=TRUE #wrapper.event.jvm_unexpected_exit.email=TRUE #wrapper.event.wrapper_stop.email=TRUE # Specify custom mail content wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease check on its status.\n #******************************************************************** # Wrapper Windows NT/2000/XP 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.name=BI_DATALAYER # Display name of the service wrapper.displayname=BI_DATALAYER name # Description of the service wrapper.description=BI_DATALAYER description # Service dependencies. Add dependencies as needed starting from 1 wrapper.ntservice.dependency.1= # Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START wrapper.ntservice.starttype=AUTO_START # Allow the service to interact with the desktop. wrapper.ntservice.interactive=false |
|
From: kapilashantha r. <kap...@gm...> - 2010-09-28 04:04:28
|
Dear Sir,
Thanks a lot your kind response,
I'm using RHEL 5.4 operating system and my application is a transaction
server which is basically installing in banking system.
So I have two servers mentioned LIVE and BACKUP
And I'm using LINUX HA (heartbeat) to make a backup processes.
Note : I extends the 'WrapperSimpleApp' in my application and using it
My issue is that my service (running on wrapper) something different not
like other service (For a example take httpd service)
The reason is when starting failing of service (it means init() method
returns false ), The linux HA is still detecting that service is still
running status.
Note : I'm using HA service monitoring option to monitor service status
Then service will not move to the BACKUP server even if it is getting
failure in LIVE server. But same configuration I have been applying to httpd
service, so HA try to three attempts to start service on LIVE server if it
is failing there, the httpd service will move to the backup server.
My point is that when I run my service, imediatly it will create PID file
and others but application is still initializing. So HA now detecting
service is running
Anyway i trust that you can understand my problem.
This is the using code
-----------------------------------------------------------------------------
package com.epic.line.server;
import org.tanukisoftware.wrapper.WrapperSimpleApp;
import com.epic.line.config.TLEConfig;
import com.epic.line.config.TLEInitAll;
public class WrapperStart extends WrapperSimpleApp {
protected WrapperStart(String[] arg0) {
super(arg0);
}
public static void main(String[] args) {
try {
TLEInitAll.init();
if (TLEConfig.INIT_ST){
System.out.println( "Epic_TLE startup passed." );
new WrapperStart(args);
}else{
System.out.println( "Epic_TLE startup failed." );
System.exit(0);
}
} catch (Exception e) {
}
}
@Override
public int stop(int exitCode) {
return super.stop(0);
}
}
-----------------------------------------------------------------------------
Note : Passing my main method via args
And one thing with this code
When calling 'TLEInitAll.init();' wrapper has created PID file and other
before calling 'new WrapperStart(args);'
Thanks and regards
-Kapila
On Mon, Sep 27, 2010 at 10:57 PM, <
wra...@li...> wrote:
> Send Wrapper-user mailing list submissions to
> wra...@li...
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://lists.sourceforge.net/lists/listinfo/wrapper-user
> or, via email, send a message with subject or body 'help' to
> wra...@li...
>
> You can reach the person managing the list at
> wra...@li...
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Wrapper-user digest..."
>
>
> Today's Topics:
>
> 1. Taking chance to call my init() before running on JSW
> (kapilashantha rajapaksha)
> 2. Re: Taking chance to call my init() before running on JSW
> (Leif Mortenson)
> 3. Wrapper service failing immediately
> (GLOVER, MARK CSC)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 27 Sep 2010 13:09:50 +0530
> From: kapilashantha rajapaksha <kap...@gm...>
> Subject: [Wrapper-user] Taking chance to call my init() before running
> on JSW
> To: Wra...@li...
> Message-ID:
> <AAN...@ma...>
> Content-Type: text/plain; charset="iso-8859-1"
>
> hi All,
>
> I'm using int JSW for my application. One thing I want to know.
>
> I want to run my init() method (There is an init() method in my application
> which used for checking initializing modules like dbconnection, some
> hardware status (HSM), remote socket connection status etc... ). If it is
> returning TRUE, the all modules are successfully loaded. If it is retuning
> FALSE, some failure has detected.
>
> What I want to know,
>
> Can I call my init() method before loading JSW ?
>
> If only TRUE returns , Then my application should be get started on JSW
>
>
> Regards
> -Kapila
> -------------- next part --------------
> An HTML attachment was scrubbed...
>
> ------------------------------
>
> Message: 2
> Date: Mon, 27 Sep 2010 16:49:56 +0900
> From: Leif Mortenson <lei...@ta...>
> Subject: Re: [Wrapper-user] Taking chance to call my init() before
> running on JSW
> To: wra...@li...
> Message-ID:
> <AAN...@ma...>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Kapila,
> You can do this in one of a number of ways.
>
> 1) The simplest is to write a simple class which does this check in
> its main method then calls the application's main class's main method
> if you really want to start the application. Call System.exit with
> an appropriate error code otherwise.
> You can then use the standard Integration Method #1 and make use of
> the WrapperSimpleApp helper class as usual:
> http://wrapper.tanukisoftware.com/doc/english/integrate.html#method1
>
> 2) A more advanced option is to use Integration Method #3, and write
> your own WrapperListener implementation. In this case, you would do
> your initialization checks in the WrapperListener.start method and
> then return an error or call your main class start method as above.
> This method has the benefit of giving you more control over when the
> Wrapper things the application is "started":
> http://wrapper.tanukisoftware.com/doc/english/integrate.html#method3
>
> Cheers,
> Leif
>
> On Mon, Sep 27, 2010 at 4:39 PM, kapilashantha rajapaksha
> <kap...@gm...> wrote:
> > hi All,
> >
> > I'm using int JSW for my application. One thing I want to know.
> >
> > I want to run my init() method (There is an init() method in my
> application
> > which used for checking initializing modules like dbconnection, some
> > hardware status (HSM), remote socket connection status etc... ). If it is
> > returning TRUE, the all modules are successfully loaded. If it is
> retuning
> > FALSE, some failure? has detected.
> >
> > What I want to know,
> >
> > Can I call my init() method before loading JSW ?
> >
> > If only TRUE returns , Then my application should be get started on JSW
> >
> >
> > Regards
> > -Kapila
>
>
>
> ------------------------------
>
> Message: 3
> Date: Mon, 27 Sep 2010 13:26:51 -0400
> From: "GLOVER, MARK CSC" <MAR...@UT...>
> Subject: [Wrapper-user] Wrapper service failing immediately
> To: <wra...@li...>
> Message-ID:
> <8D3...@UU...>
> Content-Type: text/plain; charset="iso-8859-1"
>
> What might cause a wrapper to exit before trying to start?
>
> Running from console doesn't seem to indicate error.
>
> C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>wrapper.exe
> -c ..\conf\MarkTestWrapperApp.conf
>
> n See wrapper.log for results.
>
>
>
> The service is not waiting 30000 milliseconds for a process to start.
>
> The service failing immediately.
>
> M/S documentation suggests error code WIN32_EXIT_CODE : 0 (0x0) is
> caused by a bug before the process is starting.
>
>
>
> C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>InstallMarkTestWrapperApp-NT.bat
>
> wrapper | Service command: "C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin\wrapper.exe"
> -s "C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\conf\wrapper.conf"
>
> wrapper | MarkTestWrapperApp service installed.
>
>
>
> C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>wrapper.exe
> -t ..\conf\MarkTestWrapperApp.conf
>
> wrapper | Starting the MarkTestWrapperApp service...
>
> wrapper | Unable to start the MarkTestWrapperApp service - The service did
> not respond to the start or control request in a timely fashion. (0x41d)
>
>
>
> C:\Documents and
> Settings\gloverm\src\java\wrapper-windows\MarkTestWrapperApp\bin>sc query
> MarkTestWrapperApp
>
>
>
> SERVICE_NAME: MarkTestWrapperApp
>
> TYPE : 10 WIN32_OWN_PROCESS
>
> STATE : 1 STOPPED
>
>
> (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
>
> WIN32_EXIT_CODE : 0 (0x0)
>
> SERVICE_EXIT_CODE : 0 (0x0)
>
> CHECKPOINT : 0x0
>
> WAIT_HINT : 0x0
>
>
>
>
>
>
>
> Mark Glover
>
> UTC Power
>
> 195 Governors Highway
>
> South Windsor CT 06074
>
> 860 727 2253
>
>
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> -------------- next part --------------
> A non-text attachment was scrubbed...
> Name: src.zip
> Type: application/x-zip-compressed
> Size: 2167 bytes
> Desc: src.zip
> -------------- next part --------------
> A non-text attachment was scrubbed...
> Name: wrapper.log.zip
> Type: application/x-zip-compressed
> Size: 3967 bytes
> Desc: wrapper.log.zip
> -------------- next part --------------
> A non-text attachment was scrubbed...
> Name: MarkTestWrapperApp.conf.zip
> Type: application/x-zip-compressed
> Size: 2791 bytes
> Desc: MarkTestWrapperApp.conf.zip
>
> ------------------------------
>
>
> ------------------------------------------------------------------------------
> Start uncovering the many advantages of virtual appliances
> and start using them to simplify application deployment and
> accelerate your shift to cloud computing.
> http://p.sf.net/sfu/novell-sfdev2dev
>
> ------------------------------
>
> _______________________________________________
> Wrapper-user mailing list
> Wra...@li...
> https://lists.sourceforge.net/lists/listinfo/wrapper-user
>
>
> End of Wrapper-user Digest, Vol 52, Issue 10
> ********************************************
>
|
|
From: Leif M. <lei...@ta...> - 2010-09-27 07:50:04
|
Kapila, You can do this in one of a number of ways. 1) The simplest is to write a simple class which does this check in its main method then calls the application's main class's main method if you really want to start the application. Call System.exit with an appropriate error code otherwise. You can then use the standard Integration Method #1 and make use of the WrapperSimpleApp helper class as usual: http://wrapper.tanukisoftware.com/doc/english/integrate.html#method1 2) A more advanced option is to use Integration Method #3, and write your own WrapperListener implementation. In this case, you would do your initialization checks in the WrapperListener.start method and then return an error or call your main class start method as above. This method has the benefit of giving you more control over when the Wrapper things the application is "started": http://wrapper.tanukisoftware.com/doc/english/integrate.html#method3 Cheers, Leif On Mon, Sep 27, 2010 at 4:39 PM, kapilashantha rajapaksha <kap...@gm...> wrote: > hi All, > > I'm using int JSW for my application. One thing I want to know. > > I want to run my init() method (There is an init() method in my application > which used for checking initializing modules like dbconnection, some > hardware status (HSM), remote socket connection status etc... ). If it is > returning TRUE, the all modules are successfully loaded. If it is retuning > FALSE, some failure has detected. > > What I want to know, > > Can I call my init() method before loading JSW ? > > If only TRUE returns , Then my application should be get started on JSW > > > Regards > -Kapila |
|
From: kapilashantha r. <kap...@gm...> - 2010-09-27 07:39:56
|
hi All, I'm using int JSW for my application. One thing I want to know. I want to run my init() method (There is an init() method in my application which used for checking initializing modules like dbconnection, some hardware status (HSM), remote socket connection status etc... ). If it is returning TRUE, the all modules are successfully loaded. If it is retuning FALSE, some failure has detected. What I want to know, Can I call my init() method before loading JSW ? If only TRUE returns , Then my application should be get started on JSW Regards -Kapila |
|
From: GLOVER, M. C. <MAR...@UT...> - 2010-09-24 15:37:58
|
How long should the Windows XP System await a response before replying: 'The service is not responding to the control function'? Should the system return immediately, or should there be a short delay while the process starts? Can this awaiting response time be manipulated? Thanks, Mark -----Original Message----- From: Leif Mortenson [mailto:lei...@ta...] Sent: Thursday, September 23, 2010 12:43 PM To: wra...@li... Subject: Re: [Wrapper-user] Help Please: The service is not responding to the control function Mark, 1) The application is exiting right away when run from the command line because its main method simply returns. Java will shut itself down when there are no non-daemon threads running. 2) The install as a service looks fine. 3) The attempt to start the service is saying that the Service Manager is trying to start the Wrapper, but it does not respond that it has started up. Could you please send me your wrapper.conf, as well as the wrapper.log file when wrapper.debug=true is set? This should tell me what exactly is happening when you try to start the service. In most cases, you do not need to implement your own WrapperListener implementation. Most applications will work fine if launched using our WrapperSimpleApp helper class. Its use is described as Integration Method #1. This will let you get up and running without any Java code. Cheers, Leif On Thu, Sep 23, 2010 at 9:15 PM, GLOVER, MARK CSC <MAR...@ut...> wrote: > Hi, > > Using wrapper-windows-x86-32-3.5.4 on XP Professional. > > An application ‘Main’ executes, then exits when run from the command line. > > The application will successfully install and uninstall as a service. > > The application will fail to run as a service with error expression ‘The > service is not responding to the control function’. > > Any Suggestions? > > > > Command Line > > > > > > C:\wrapper-windows\MainApp\bin>wrapper.exe -c ..\conf\wrapper.conf > > wrapper | --> Wrapper Started as Console > > wrapper | Java Service Wrapper Community Edition 32-bit 3.5.4 > > wrapper | Copyright (C) 1999-2010 Tanuki Software, Ltd. All Rights > Reserved. > > wrapper | http://wrapper.tanukisoftware.com > > wrapper | > > wrapper | Launching a JVM... > > jvm 1 | WrapperManager: Initializing... > > jvm 1 | [MyApp Constructor] We're here! We're Here! WE'RE HERE! > > jvm 1 | [MyApp Stop] We're here! We're Here! WE'RE HERE! > > wrapper | <-- Wrapper Stopped > > > > Installing as Service > > C:\wrapper-windows\MainApp\bin>InstallMainApp-NT.bat > > wrapper | MarkTestWrapperApp service installed. > > > > > > ---------------------------------------------- > > Running as Service – FAILURE > > > > C:\wrapper-windows\MainApp\bin>net start MarkTestWrapperApp > > The service is not responding to the control function. > > > > More help is available by typing NET HELPMSG 2186. > > > > > > Source Code for MAIN application > > > > import org.tanukisoftware.wrapper.WrapperManager; > > import org.tanukisoftware.wrapper.WrapperListener; > > > > public class Main > > implements WrapperListener > > { > > private MyApp m_app; > > > > > > private Main() > > { } > > > > /*--------------------------------------------------------------- > > * WrapperListener Methods > > *-------------------------------------------------------------*/ > > public Integer start( String[] args ) > > { > > m_app = new MyApp( args ); > > WrapperManager.signalStarting( 6543 ); > > > > return null; > > } > > > > public int stop( int exitCode ) > > { > > m_app.stop(); > > > > return exitCode; > > } > > > > public void controlEvent( int event ) > > { > > if ( ( event == WrapperManager.WRAPPER_CTRL_LOGOFF_EVENT ) > > && ( WrapperManager.isLaunchedAsService() || > WrapperManager.isIgnoreUserLogoffs() ) ) > > { > > // Ignore > > } > > else > > { > > WrapperManager.stop( 0 ); > > // Will not get here. > > } > > } > > > > /*--------------------------------------------------------------- > > * Main Method > > *-------------------------------------------------------------*/ > > public static void main( String[] args ) > > { > > WrapperManager.start( new Main(), args ); > > } > > } > > > > > > MyApp Source code; > > > > public class MyApp { > > > > public MyApp(String [] args){ > > System.out.println("[MyApp Constructor] We're here! We're Here! > WE'RE HERE!"); > > } > > > > public static void main(String [] args){ > > System.out.println("[MyApp main] We're here! We're Here! WE'RE > HERE!"); > > } > > > > public Integer start(){ > > System.out.println("[MyApp Start]We're here! We're Here! WE'RE > HERE!"); > > return null; > > } > > > > public int stop(){ > > System.out.println("[MyApp Stop] We're here! We're Here! WE'RE > HERE!"); > > return 0; > > } > > > > } ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |
|
From: GLOVER, M. C. <MAR...@UT...> - 2010-09-23 17:44:47
|
Thank you for responding. I have been struggling with this for days. I've attached wrapper.conf and wrapper.log file. Note that builds are done using Java 1.5.0_20 on Windows XP Regards, Mark -----Original Message----- From: Leif Mortenson [mailto:lei...@ta...] Sent: Thursday, September 23, 2010 12:43 PM To: wra...@li... Subject: Re: [Wrapper-user] Help Please: The service is not responding to the control function Mark, 1) The application is exiting right away when run from the command line because its main method simply returns. Java will shut itself down when there are no non-daemon threads running. 2) The install as a service looks fine. 3) The attempt to start the service is saying that the Service Manager is trying to start the Wrapper, but it does not respond that it has started up. Could you please send me your wrapper.conf, as well as the wrapper.log file when wrapper.debug=true is set? This should tell me what exactly is happening when you try to start the service. In most cases, you do not need to implement your own WrapperListener implementation. Most applications will work fine if launched using our WrapperSimpleApp helper class. Its use is described as Integration Method #1. This will let you get up and running without any Java code. Cheers, Leif On Thu, Sep 23, 2010 at 9:15 PM, GLOVER, MARK CSC <MAR...@ut...> wrote: > Hi, > > Using wrapper-windows-x86-32-3.5.4 on XP Professional. > > An application ‘Main’ executes, then exits when run from the command line. > > The application will successfully install and uninstall as a service. > > The application will fail to run as a service with error expression ‘The > service is not responding to the control function’. > > Any Suggestions? > > > > Command Line > > > > > > C:\wrapper-windows\MainApp\bin>wrapper.exe -c ..\conf\wrapper.conf > > wrapper | --> Wrapper Started as Console > > wrapper | Java Service Wrapper Community Edition 32-bit 3.5.4 > > wrapper | Copyright (C) 1999-2010 Tanuki Software, Ltd. All Rights > Reserved. > > wrapper | http://wrapper.tanukisoftware.com > > wrapper | > > wrapper | Launching a JVM... > > jvm 1 | WrapperManager: Initializing... > > jvm 1 | [MyApp Constructor] We're here! We're Here! WE'RE HERE! > > jvm 1 | [MyApp Stop] We're here! We're Here! WE'RE HERE! > > wrapper | <-- Wrapper Stopped > > > > Installing as Service > > C:\wrapper-windows\MainApp\bin>InstallMainApp-NT.bat > > wrapper | MarkTestWrapperApp service installed. > > > > > > ---------------------------------------------- > > Running as Service – FAILURE > > > > C:\wrapper-windows\MainApp\bin>net start MarkTestWrapperApp > > The service is not responding to the control function. > > > > More help is available by typing NET HELPMSG 2186. > > > > > > Source Code for MAIN application > > > > import org.tanukisoftware.wrapper.WrapperManager; > > import org.tanukisoftware.wrapper.WrapperListener; > > > > public class Main > > implements WrapperListener > > { > > private MyApp m_app; > > > > > > private Main() > > { } > > > > /*--------------------------------------------------------------- > > * WrapperListener Methods > > *-------------------------------------------------------------*/ > > public Integer start( String[] args ) > > { > > m_app = new MyApp( args ); > > WrapperManager.signalStarting( 6543 ); > > > > return null; > > } > > > > public int stop( int exitCode ) > > { > > m_app.stop(); > > > > return exitCode; > > } > > > > public void controlEvent( int event ) > > { > > if ( ( event == WrapperManager.WRAPPER_CTRL_LOGOFF_EVENT ) > > && ( WrapperManager.isLaunchedAsService() || > WrapperManager.isIgnoreUserLogoffs() ) ) > > { > > // Ignore > > } > > else > > { > > WrapperManager.stop( 0 ); > > // Will not get here. > > } > > } > > > > /*--------------------------------------------------------------- > > * Main Method > > *-------------------------------------------------------------*/ > > public static void main( String[] args ) > > { > > WrapperManager.start( new Main(), args ); > > } > > } > > > > > > MyApp Source code; > > > > public class MyApp { > > > > public MyApp(String [] args){ > > System.out.println("[MyApp Constructor] We're here! We're Here! > WE'RE HERE!"); > > } > > > > public static void main(String [] args){ > > System.out.println("[MyApp main] We're here! We're Here! WE'RE > HERE!"); > > } > > > > public Integer start(){ > > System.out.println("[MyApp Start]We're here! We're Here! WE'RE > HERE!"); > > return null; > > } > > > > public int stop(){ > > System.out.println("[MyApp Stop] We're here! We're Here! WE'RE > HERE!"); > > return 0; > > } > > > > } ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Wrapper-user mailing list Wra...@li... https://lists.sourceforge.net/lists/listinfo/wrapper-user |