IBM TechXchange Virtual WebSphere z/OS User Group

 View Only

Liberty z/OS Post #44- Triggering Diagnostic Dumps of Liberty from the z/OS Console

By David Follis posted Thu November 30, 2023 09:57 AM

  

This post is part of a series exploring the unique aspects and capabilities of WebSphere Liberty when running on z/OS.
We'll also explore considerations when moving from WebSphere traditional on z/OS to Liberty on z/OS.

The next post in the series is here.

To start at the beginning, follow this link to the first post.

---------------

Continuing our discussion about gathering doc for support in the hard-to-imagine situation where something has gone wrong with Liberty…. 

Besides tracing, support might ask you to collect one of several types of dumps.  On non-z/OS platforms you would use the Liberty-supplied ‘server’ shell script with the ‘dump’ or ‘javadump’ options, and you can do that on z/OS also.  But depending on your operations situation, it might be simpler/easier to do this sort of thing from z/OS console.  So we’ve provided Modify commands to help you out.

To start with, you can issue a modify command at a server specifying ‘DUMP’ as the action and it drives the same code the ‘server dump’ command does.  You can even include the THREAD and HEAP options, although not the SYSTEM option. 

You can also use the modify command to trigger a javacore or a heapdump.  These are very common requests from support, especially the javacore, because it gives a nice snapshop of what is going on in the server at a point in time.  It is also not in a funky format and generally not very huge. 

You can also request a TDUMP or an SVCDUMP.  What’s the difference?  A TDUMP is a z/OS dump taken by an unauthorized program (like a Liberty server by itself).  It collects a lot of the same stuff you’d get in a regular SVC or Console dump, but can’t include anything not accessible to an unauthorized program.  So basically anything in key 8 or that is readable (not fetch protected) by a key 8 program.  Opinions vary about TDUMPs.  They are smaller and require less authorization to get, but (in my experience anyway) often end up missing stuff we need to debug a problem because it was in non-key-8 fetch protected storage.

What about the SVCDUMP?  Couldn’t you just take a dump yourself from the console and get one of those?  Sure.  But in this case Liberty will take the dump itself and can specify the SDATA it wants included and you don’t have to worry about leaving out something we need.  Doing this does require authorization which means you need an Angel to help you out.  We’ll get to Angels in a little while. 

And that’s about it.  Support will tell you what you need to do if they want you to collect one of these dumps, but it wouldn’t hurt to look over the syntax yourself just so it will seem familiar.  Might not be a bad idea just to take these dumps from a server during a slow time just to make sure it all works (permissions and whatnot) and you know where the dump goes (for non-SVCDUMPs).  You never know..having this all run smoothly during some crisis might make you look good. 

0 comments
4 views

Permalink