WLSDM: Monitoring WebLogic JVM Heap and CPU Usage

WLSDM for WebLogic
4 min readMar 31, 2018

Previous on WLSDM blog, we have learned about WebLogic JMS infrastructure. In this tech blog post, let’s learn how to monitor WebLogic Java Virtual Machine (~Managed Server) resources and diagnose performance bottlenecks.

Weak JVM performance affects WebLogic domain performance directly. That’s why the host’s CPU and memory usage is very important in terms of improving WebLogic performance. Higher CPU consumption and Garbage Collection duration can cause applications to run slowly, even cause the WebLogic servers facing downtime. JVM instances in a WebLogic need to be monitored constantly and notification/alarm infrastructure must be installed as well.

WLSDM JVM System Resources and Garbage Collection out of box dashboards are available to help you.

You can monitor machines (host) and WebLogic managed servers’ Heap, CPU and Garbage Collection behavior on JVM System Resources and Garbage Collection dashboards.

WLSDM JVM System Resources Dashboard: You are able to monitor CPU Load and Memory Usage from Physical System Resources panel or monitor server instance resources one by one. Take below screen captures for your reference.

1. Go to JVM System Resources dashboard page!
2. Available Panels: Physical (Host) System Resources, JVM Resources Summary, Managed Server CPU/Heap Usage (Real-time)

If you want list additional ManagedServer on JVM dashboard; Open “Page Operations” menu and choose Managed Server from the list, then click “Save”. Only selected managed servers (~Applied servers) are shown on the JVM dashboard.

3. Open “Page Operations” window to list additional Managed Server(s) on JVM System Resources dashboard page

On the other hand, How to get JVM Metric reports about CPU, Heap usage for a particular date and time? Here is the recipe:

  1. Go to WLSDM JVM System Resources dashboard page
  2. Click “Open Metric Reports” button on Physical System Resources panel
  3. Choose report date interval and click “Get Report”. “Get Report From Daily Data” is faster and all the JMX MBean metric values on WLSDM are available historically for 24 Hours by default.
  4. Then navigate report results on “Report Table” and “Report Chart”
4. CPU, Heap Metric Reports: View old values and generate JVM performance reports
5. Generate JVM Usage Reports (Host and Managed Servers)

Now we will configure alarm thresholds for JVM performance to get notifications.

  1. Go to WLSDM JVM System Resources dashboard page
  2. Click “Metric Options” button on Physical System Resources panel as below
6. Define or update JVM performance monitoring thresholds. Open “Metric Options” window

3. Configure metric threshold or enable/disable storing data for the relevant metrics

7. Metric Options Modal Window
8. Server (Machine/HOST) CPU consumption e-mail notification when it’s over 75%

How to monitor Oracle WebLogic Server JVM (Managed Server) Garbage Collection durations (including MinorGC and MajorGC (aka FullGC) ?

  1. Go to WLSDM Garbage Collection dashboard page
  2. Click “Configure Minor GC Notification Settings” button (for MinorGC monitoring)

3. Set alarm threshold value

4. Check email notification for “Garbage Collection” warnings

WLSDM Garbage Collection Dashboard:

How to generate Oracle WebLogic Heap Dump (HPROF) and CPU Sample (NPSS) ?

  1. Go to “Profiling Dump” page from WLSDM menu
  2. Click “Generate Profiling Dump” button on page

3. Select server and WLSDM profiling dump action to generate HPROF and NPSS files. You can analyze NPSS and HPROF files with JVisualVM which comes out of box JDK.

Additionally, we have prepared screen cast tutorial about monitoring, managing and diagnosing WebLogic JVM instance performance and WebLogic garbage collection analytics.

Check below YouTube tutorial for more.

https://youtu.be/YPFVircSj9w

If you liked the blog post and screen-cast please share. Sharing is just caring! We care Oracle WebLogic and Java community much :)

--

--