Page 1 of 7

IBM®

     

ibm.com home Solutions Services Products Support & downloads My IBM Home Profiles Groups Blogs Bookmarks Activities Files Wikis Sign in English ▼ Help

       

  

  

developerWorks My developerWorks Connect

My developerWorks: Blogs
  

Browse Blogs My Blog My Updates Search

Select search scope Public Blogs▼ Search Search

+Tags ?
Tags: ▼ Χ
Submit search

John's Random Musings

Page 2 of 7 32bit aix heap java jvm memory native support troubleshooting  View as cloud | list Follow this blog Follow this blog 30 Followers Join now Create a mydW profile Learn. share and network! Create a profile to grow your technical skills and connections + Similar Entries New FAQ available Blog:  MDM Workbench jamest_ibm Updated Yesterday 11:25 PM Ratings 0 Comments 0 John's Random Musings .

....Page 3 of 7 Understanding How To.. Blog:  WebSphere and... MichaelGlenn Updated Yesterday 10:03 PM Ratings 1 Comments 0 Managing message flo. Blog:  WebSphere and... Blog:  IBMers' Blog . neekrish Updated Nov 20 Ratings 1 Comments 0 When are expired Web.... neekrish Updated Nov 13 Ratings 1 Comments 1 + Archive                November 2010 September 2010 August 2010 July 2010 June 2010 April 2010 March 2010 February 2010 January 2010 December 2009 November 2009 October 2009 September 2009 August 2009 July 2009 + Blog Authors Previous John's Random Musings . ValerieLampkin Updated Nov 17 Ratings 1 Comments 0 IBM Software Univers..... Blog:  IBMers' Blog .

there is no way for WebSphere to make certain of this since it does not know the expected transaction length for the operations the thread is performing at the time. For the purposes of this discussion. Hang detection works only with WebSphere managed threads (e. WebSphere Application Server provides a feature that detects hung threads or that is to say.Page 4 of 7 photo JohnPape Next 1 .  A hung thread is a thread that is being blocked by a blocking call or is waiting on a monitor ( sync locked object) to be releases so that it can use it. thread pools) and does NOT monitor user created threads. This message simply indicates that a thread MAY be hung but. Let's just stop here for a moment to clarify some terms and concepts. The hung thread detection code will also notify you (via output in the SystemOut log file) that a previously reported hung thread actually completed its work.1 of 1 authors John's Random Musings Hung thread detection in WebSphere Application Server JohnPape | Oct 23 2009 | Tags: serviceability thread detection hang troubleshooting jvm locking websphere | Comments (0) | Visits (1. It's goal is simply to tell you about it so you can investigate it. we'll focus on the latter method.log) that indicate potentially hung threads. or 2. threads that have been active passed a certain time threshold and are suspected of being hung.379) Hung thread detection in WebSphere Application Server We've probably all see a hung JVM at one time or another and chances are you've figured this out in one of two was if you're dealing with WebSphere Application Server: 1. the users are complaining that the browser just “spins” and never returns a web page. you've noticed output in the WebSphere logs (SystemOut.g.    John's Random Musings . WebSphere Application Server will output messages in the SystemOut log file with a message ID of WSVR0605W. This message ID is WSVR0606W.

Using this event type. Likewise. But before we go there. let's talk for a minute about what happens when the hang detection feature fires off a warning in the log.Page 5 of 7 So let's look at an example : WSVR0605W: Thread "WebContainer : 1" has been active for 612.ibm. Ratings WSVR0607W: Too many thread hangs have been falsely reported. you could code a JMX listener that could take some sort of action whenever it received notification of a hung thread. if you wanted to take some action when the notification about the thread clearing up (if it ever does) you could listen for the JMX event type TYPE_THREAD_MONITOR_THREAD_CLEAR .000 milliseconds and may be hung. So the message above tells us that the thread named “ WebContainer : 1” has been doing something for 612 seconds or about 10 minutes and that there 3 other threads active in the JVM that my also hung (been active for longer than the threshold time) An obvious question you may ask at this point is : “How long does a thread have to be active before the hang detection feature identifies the thread and tells me about it?”. OK. The hang detection feature also attempts to self-tune based on the number of hang warnings and subsequent clearing messages that it emits. at the same time a JMX event is emitted from the server of the type TYPE_THREAD_MONITOR_THREAD_HUNG . let's look at how to tune the hang detection feature to match our needs. The good news is that the hang detection feature can be tuned a bit to better suit your needs. by default. as we've already seen.websphere. It will attempt to adjust the trigger threshold (10 mins by default) to a higher or lower value in order to minimize the false positives seen in the logs. Here is a list of the properties you can configure (take directly from the WAS Information Center) Name:com. so now we know what to look for and how it gets there. To set these values simply navigate to the application server instance you wish to configure click on Administration and then Custom Properties (all of this is in the Administration Console). And that answer is 10 minutes. Also. First. a log entry is output. The hang threshold is now being set to thresholdtime .threadmonitor.interval Value: John's Random Musings . There are 3 threads in total in the server that may be hung. A message will be displayed in the log when the self-tuning occurs.

alarm. Name: com.ibm.websphere.threadmonitor. Default: The default value is 600 seconds (ten minutes). Name: com. The hang detection facility can automatically respond to this situation: For every T false alarms.ibm. Default: 100 Name: com.ibm.dump.threadmonitor. Default: 180 seconds (three minutes). Set the value to zero (or less) to disable the automatic adjustment.websphere. Any thread that is detected as active for longer than this length of time is reported as hung.Page 6 of 7 The frequency (in seconds) at which managed threads in the selected application server will be interrogated.5. resulting in a false alarm.threshold Value: The length of time (in seconds) in which a thread can be active before it is considered hung.java Value: Set to true to cause a javacore to be created when a hung thread John's Random Musings .websphere.false. the threshold T is increased by a factor of 1. A large number of these events indicates that the threshhold value is too small.threshold Value: The number of times (T) that false alarms can occur before automatically increasing the threshold.threadmonitor. It is possible that a thread that is reported as hung eventually completes its work.

Default: False Now.    Add a Comment Recommend this Entry More Actions Comments (0) There are no comments to display Add a Comment Previous | Main | Next Feed for Blog Entries | Feed for Blog Comments | Feed for Comments for this Entry     IBM developerWorks ® Feedback Report abuse My developerWorks terms and conditions     About IBM Privacy Contact Terms of use John's Random Musings .Page 7 of 7 is detected and a WSVR0605W message is printed. The threads section of the javacore can be analyzed to determine what the reported thread and other related threads are doing. should you need to. you can configure the hang detection feature of WebSphere Application Server to meet your exacting specifications for detecting potentially hung threads in your JVM.