AIOps: Performance and Capacity Management

AIOps: Performance and Capacity Management

AIOps: Performance and Capacity Management

Members of this community will discuss end to end near-time collection, curation and reporting for simplified performance, cost and capacity management

 View Only

Performance Management of WebSphere Liberty on z/OS

By Morgan Oats posted 01/16/26 11:34 AM

  

Written by Dennis Moore on January 16, 2026

WebSphere Liberty (Liberty) is IBM’s lightweight, modular Java application server designed for modern enterprise workloads. Optimized for simplicity, speed, and cloud-native environments, it provides Java EE and Jakarta EE support based on the Open Source Open Liberty but bundled with support and licensing from IBM for production use. Liberty on z/OS includes additional integration that leverages capabilities such as SAF security, WLM integration, RRS transaction support, zIIP offload, and SMF records. Today, customers are deploying new applications on Liberty, migrating applications from WebSphere traditional, and deploying IBM offerings that use Liberty as their runtime environment such as z/OS Connect, z/OSMF, and others. Mainframe customers need to monitor and manage all runtime environments serving mission-critical applications, and Liberty is no exception. IBM Z IntelliMagic Vision provides support for the Liberty SMF 120.11 data, offering valuable insights into application usage and performance.

Enabling SMF Recording on Liberty

Request logging has to be enabled in Liberty to generate SMF records. This involves two steps:

1)  Adding the zosRequestLogging-1.0 feature in your server.xml as shown here:

<featureManager>

   <feature>zosRequestLogging-1.0</feature>

</featureManager>

2)  Granting SAF authority. Following is an example of the RACF commands that need to be issued:

RDEFINE FACILITY BPX.SMF UACC(NONE)                      

PERMIT BPX.SMF ID(MSTONE1) ACCESS(READ) CLASS(FACILITY)  

SETROPTS GENERIC(FACILITY) REFRESH             

SETROPTS RACLIST(FACILITY) REFRESH

See techdoc WP102655 for more information:
https://www.ibm.com/support/pages/system/files/inline-files/WP102655_Liberty_SMF.pdf

Also see the Liberty product documentation here: 
Enabling request logging for Liberty on z/OS - IBM Documentation          

Understanding Liberty SMF Records

Liberty writes an SMF 120.11 record for every HTTP request dispatched. In IntelliMagic Vision we summarize the individual records into intervals that match your RMF/SMF reporting, for example 10 or 15 minutes, to make reporting across data types consistent and intuitive.

Contents for each record includes:

  • Server Identification Section – sysplex name, system name, server job name
  • Request Info Section – URI, timestamps, CPU usage, userid, WLM transaction class
  • Classification Section – information used to assign a WLM transaction class
  • Network Data Section – response size in bytes, target port
  • User Data Section – application provided data, tagged with an identifier

This provides the data you need to understand request rates, response times, and CPU times, and to profile those metrics by system/server/transaction class/user/URI as needed to manage your workloads or detect and analyze an issue.

Reporting this data with the same tooling you use for other data types allows you to broaden your analysis to include synergy with other areas such as overall system performance, WLM analysis, subsystems such as CICS/IMS/Db2/MQ, and much more.

Reporting on Liberty Request Rates and Response Times

The first thing most people want to see from Liberty data is request rate and response time information. Figure 1 shows a tabular view of activity by URI in descending order of number of requests. This gives you a quick view of which requests are most common, along with the related metrics of response time, GCP/zIIP time, response size, and enclave information, all in one report. The ability to sort or filter on any of these metrics gives you a quick and flexible way to focus on areas of interest.

Tabular report of key request data by URI

 Figure 1: Tabular report of key request data by URI



Profiling your workloads or analyzing issues often involves narrowing the problem space – is a behavior limited to one system, or a particular server, or user? To facilitate this analysis, IntelliMagic Vision has predefined reports showing activity segmented by system, by server, by transaction class, by user, and by URI. A quick scroll through these reports can often show you where to focus further attention. In addition, context-sensitive drill downs and report editing are available for further investigation, as we will see later in this blog.

Tabular reports are powerful for including many related metrics in a single view, but a picture is still worth a thousand words. Figure 2 shows request rates by URI over the course of a day. 

Request rates by URI

 Figure 2: Request rates by URI



Now we not only see which requests are most common, but also the time patterns including spikes which may be normal or may be unexpected and warrant investigation.

Figure 3 shows a similar predefined report for response times:

Response times by URI

Figure 3: Response times by URI



For any URI, you can drill down to see response times and request rates on the same chart. For example, if we want to see more detail on the URI spike in Figure 2, with a single click we can drill down to the report in Figure 4:

Request rate and response time components for a specific URI

 Figure 4: Request rate and response time components for a specific URI



Here we see the request rate spikes that we saw in Figure 2, and now we see that response times vary but are all averaging less than 6ms. We also see how much of that response time is comprised of GCP time and zIIP time. In this case, overall CPU time is consistent as request rates and response times vary, and zIIP time is consistently the lion’s share of CPU time.

Since this URI belongs to a WLM transaction class, enclave CPU times are available as shown in Figure 4. That means that CPU times for the enclave are captured as requests flow to other subsystems such as a Db2 stored procedure. SMF 120.11 captures ‘Timeused CPU’ for the Liberty dispatch thread, and ‘WLM enclave delete CPU’ for enclaves. IntelliMagic Vision gives you both.

Reporting – Drill Down for Further Analysis

IntelliMagic Vision provides powerful drill down options, allowing you to show more detail seamlessly with one click. Figure 4 was a drill down for detailed request rate and response time components for a specific URI.

Another example is Figure 5, where we see that essentially all of our requests are going to one system, with significant spikes in the early afternoon:

Request rate by system

 Figure 5: Request rate by system



To see more granularity, we can drill down to the server level with a single click to see the report in Figure 6:

Request rate for a specific system, by server

 Figure 6: Request rate for a specific system, by server



Now we see that almost all the requests are to a single server. Drilling down by user name gives us Figure 7 showing which user generated the most requests:

Request rate for a specific system and server, by user

Figure 7: Request rate for a specific system and server, by user



Drilling down on that user by URI shows the specific request that spikes, in Figure 8:

Request rate for a specific system, server, and user, by URI

 Figure 8: Request rate for a specific system, server, and user, by URI



Spoiler alert: In this case, my data is from test systems with limited activity, so a spike like this is not unusual. However, the power of drilling down for more detail and more granularity applies equally to test, development, and production environments. Analysis of test and development environments can help identify issues before moving work into production, as well as providing baselines for response times and CPU time.

The following drill down options are available from all reports, for more granularity by:

  • System
  • Server
  • Transaction class
  • User name
  • URI
  • Response and rate
  • SAF username
  • Target port
  • CP and zIIP

Reporting – Profiling your Workload

There are many ways to analyze your Liberty workload, whether for problem analysis or for determining normal business activity. IntelliMagic Vision provides predefined tabular and graphical reports with activity sorted by system/server/transaction class/user/URI to give you a convenient starting point for analysis. Figure 1 was an example of activity by URI, and Figure 9 below shows the tabular report set it is part of:

Predefined reports summarized by system/server/transaction class/user/URI

 Figure 9: Predefined reports summarized by system/server/transaction class/user/URI



In addition, it is easy to change the time selection of reports to show longer term trends. Figure 10 shows request rates by URI for the last month:

Request rates by URI for the last month

 Figure 10: Request rates by URI for the last month



Another drill down option provides a statistical analysis of a metric over the last month. Drilling down from one of the URIs in Figure 10 gives you the statistical report shown in Figure 11, which shows the average, 10th/90th percentile, and min/max values for the request rate for that specific URI. You can do this for other key metrics as well.

Statistical distribution of request rates for a specific URI

 Figure 11: Statistical distribution of request rates for a specific URI



Other drill down options include views by day of the week (Figure 12) and by date (Figure 13).

Request rates by day of the week for a specific URI

 Figure 12: Request rates by day of the week for a specific URI



Request rates by date for a specific URI

 Figure 13: Request rates by date for a specific URI



You can also easily show trends of key metrics. Figure 14 shows last month’s trend for request rates for a specific WLM transaction class.

Request rate trend for a WLM transaction class

 Figure 14: Request rate trend for a WLM transaction class



Another key feature is the ability to easily edit any report. You may want to tailor a report to add or delete metrics, then save your customized report to a dashboard for future use. You can also show correlation of metrics by adding them to the same report. Figure 15 shows adding the metric of enclave response time ratio (an indicator of WLM goal attainment) to the request rate report, to see whether increased request rates impact service.

Easy to edit reports

 Figure 15: Easy to edit reports



Reporting – Analyzing Change

The reports we have already seen can be used to analyze changes, but IntelliMagic Vision also provides two specialized reports for this purpose. You can analyze planned changes, such as an upgrade or application change, or an unplanned change such as a performance issue.

Change detection reports provide a statistical analysis of a specific day compared to the last 30 days. Figure 16 shows a report analyzing key metrics at the URI level such as request rates, response times, CPU time, and more. The value highlighted indicates that enclave zIIP time per request for one URI increased by more than two standard deviations on this day compared to the past 30 days. Drill downs help with further analysis. Predefined change detection reports are provided for system/server/WLM transaction class/user/URI levels.

Statistical change detection for key metrics

 Figure 16: Statistical change detection for key metrics



Comparison reports make it easy to compare one time period to another. In just a few clicks, you can compare a period of bad performance to a period of good performance or quantify the before-and-after effect of a planned change. You can create comparison reports for any report or set of reports. Figure 17 shows a Liberty server’s request rates and response times from a recent day, compared to three days earlier. 

Comparison reports are a straightforward way to see changes

Figure 17: Comparison reports are a straightforward way to see changes



Summary

There is an old saying, “you can’t manage what you don’t measure.” Enabling Liberty SMF recording and utilizing a powerful reporting capability that is easy to use will help your team manage this mission-critical runtime and provide continued good service for your business.

0 comments
40 views

Permalink