Welcome!

IBM Cloud Authors: Elizabeth White, Yeshim Deniz, Pat Romanski, Liz McMillan, Stefan Bernbo

Related Topics: Java IoT, IBM Cloud, Machine Learning

Java IoT: Article

Application Performance Management in WebSphere Environments

A report from the field

Just in time for the upcoming Webinar with The BonTon Stores, where we talk about the challenges in operating complex WebSphere environments, we had another set of prospects running their applications on WebSphere. Francis Cordon, a colleague of mine, shares some of the screenshots resulting from these engagements.

In this article I want to highlight important areas when managing performance in WebSphere environments. This includes WebSphere Health Monitoring, End-to-End Performance Analysis, Performance and Business Impact Analysis as well as WebSphere Memory Analysis and Management. More details will be discussed during the Webinar on May 25th – so check it out if you are interested.

WebSphere Health Monitoring
WebSphere Application Servers provide many different metrics that we need to consider when monitoring server health. This includes system metrics such as Memory and CPU Utilization. It also includes transaction response times and connection pool usage. The following screenshot shows a dashboard that gives a good overview of the general health of a WebSphere Server:

Monitoring WebSphere Server Health including Memory, CPU, Response Times, Connection Pools and Thread Information

Monitoring WebSphere Server Health including Memory, CPU, Response Times, Connection Pools and Thread Information

From a very high-level perspective we can look at overall response times but also at response times of individual services. The following illustration shows a dashboard that visualizes response times and whether we have any SLA Violations on any of our monitored service tiers:

Easy to spot whether we have any SLA breaches on any of our tiers

Easy to spot whether we have any SLA breaches on any of our tiers

The following dashboard provides an extended in-depth view. Not only does it show response times or memory usage – it also shows which layers of the application contribute to the overall performance and provides an additional overview of problematic SQL Statements or Exceptions:

A more in-depth WebSphere Health Monitor Dashboard including Layer Performance Breakdown, Database and Exeption Activity

A more in-depth WebSphere Health Monitor Dashboard including Layer Performance Breakdown, Database and Exception Activity

End-To-End Performance View
The Transaction Flow Dashlet visualizes how transactions flow through the WebSphere environment. We can look at all transactions, certain business transactions (e.g.: product searches, check-outs, logins, …) or can pick individual ones from specific users. From this high-level flow we can drill down to explore more technical details to understand where time is spent or where errors happen.

The following screenshot shows how to drill into the details of those transactions that cross through a specific WebSphere Server Node. For every transaction we get to see the full execution trace (PurePath) that contains contextual information such as executed SQL Statements, Exceptions, log messages, executed methods including arguments, …

Drill into the transactions flowing through WebSphere. Each individual transaction contains contextual information and provides the option to lookup offending source code

Drill into the transactions flowing through WebSphere. Each individual transaction contains contextual information and provides the option to lookup offending source code

If we want to focus on database activity we simply drill down into the database details. Database activity is captured from within the Application Server including SQL Statements, Bind Variables and Execution Times. The following 3 illustrations show different ways to analyze database activity executed by our WebSphere transactions.

Analyze all queries including bind values that get executed by our WebSphere application. Identify slow ones or those that are executed very often

Analyze all queries including bind values executed by our WebSphere application. Identify slow ones or those that are executed very often

We can pick an individual database statement to see which transaction made the call and how it impacts the performance of this transaction:

Identify the impact of a database query on its transaction. In this case a stored procedure is not returning the expected result and throws an exception

Identify the impact of a database query on its transaction. In this case a stored procedure is not returning the expected result and throws an exception

It is not enough to look at the actual transaction and its database statements. We also monitor performance metrics exposed by the database – in this case it’s an Oracle Database Instance. dynaTrace Users can download the Oracle Monitor Plugin from our Community Portal. You can also read the article on How to Monitor Oracle Database Performance.

Analyze the activity on the database by monitoring Oracle's Performance Metrics and correlate it to our transactional data

Analyze the activity on the database by monitoring Oracle's Performance Metrics and correlate it to our transactional data

Business Impact Analysis
As many different end users access applications running on WebSphere it is important to identify problems that impact all users but also problems that just impact individual users. The following illustration shows how Business Transactions allow us to analyze individual users, and from there dig deeper in the root cause of their individual performance problems.

Analyze the Performance Impact for individual Users using Business Transactions

Analyze the Performance Impact for individual Users using Business Transactions

Analyzing Memory Usage and Memory Leaks
Memory Management and Analysis can be hard if you don’t know what to look out for. Read our blogs on Top Memory Leaks in Java, Memory Leak Detection inn Production or the Impact of GC on Performance to make yourself familiar with the topic.

The following screenshots show how to analyze memory usage in WebSphere and how to track potential Memory Leaks by following Object Reference Paths of identified Memory Hotspots:

We start by analyzing our memory usage

We start by analyzing our memory usage

Identify Hotspots and the identify the root cause of memory leaks

Identify Hotspots and the identify the root cause of memory leaks

Final Words
Thanks again to Francis for sharing his experience with us. Existing dynaTrace customers please check out the content we have on our Community Portal.

For everybody out there I have the final reminder of the upcoming BonTon Webinar. It’s going to take place on May 25th and it’s free to listen in. If you can’t make it you can download the recorded version about a week after the webinar on our Recorded Webinar Resource Page.

Related reading:

  1. Memory Leak Detection in Production – a Field Report Memory Leaks are painful – especially when they crash your...
  2. Application Performance Monitoring in production – A Step-by-Step Guide – Part 1 // Setting up Application Performance Monitoring is a big task,...
  3. Performance Management in Real Life – What users do with dynaTrace Dashboards We have some power users out there that do great...
  4. Application Performance Monitoring in production – Step by Step Guide – Measuring a distributed system // Last time I explained logical and organizational prerequisites to...
  5. Application Performance and Architectural Problems You can Find in One Hour // When we get engaged with prospects that are interested...

More Stories By Andreas Grabner

Andreas Grabner has been helping companies improve their application performance for 15+ years. He is a regular contributor within Web Performance and DevOps communities and a prolific speaker at user groups and conferences around the world. Reach him at @grabnerandi

IoT & Smart Cities Stories
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
To Really Work for Enterprises, MultiCloud Adoption Requires Far Better and Inclusive Cloud Monitoring and Cost Management … But How? Overwhelmingly, even as enterprises have adopted cloud computing and are expanding to multi-cloud computing, IT leaders remain concerned about how to monitor, manage and control costs across hybrid and multi-cloud deployments. It’s clear that traditional IT monitoring and management approaches, designed after all for on-premises data centers, are falling short in ...
DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
We are seeing a major migration of enterprises applications to the cloud. As cloud and business use of real time applications accelerate, legacy networks are no longer able to architecturally support cloud adoption and deliver the performance and security required by highly distributed enterprises. These outdated solutions have become more costly and complicated to implement, install, manage, and maintain.SD-WAN offers unlimited capabilities for accessing the benefits of the cloud and Internet. ...
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
DXWorldEXPO LLC announced today that "IoT Now" was named media sponsor of CloudEXPO | DXWorldEXPO 2018 New York, which will take place on November 11-13, 2018 in New York City, NY. IoT Now explores the evolving opportunities and challenges facing CSPs, and it passes on some lessons learned from those who have taken the first steps in next-gen IoT services.
SYS-CON Events announced today that Silicon India has been named “Media Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Published in Silicon Valley, Silicon India magazine is the premiere platform for CIOs to discuss their innovative enterprise solutions and allows IT vendors to learn about new solutions that can help grow their business.
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...