Capturing and comparing MBean states with JProfiler
2025-04-30
Posted by Ingo Kegel
MBeans expose a wide range of runtime metrics and management operations that are essential for understanding the internal state of Java applications. Traditionally, JProfiler has supported live inspection of MBeans during a profiling session.
With the new MBean snapshot feature in JProfiler 15, it is now possible to capture the complete MBean state, compare snapshots, and analyze metrics offline, even after the application has shut down.
This screencast demonstrates the new functionality with a small Hazelcast application that performs random map operations and registers a custom MBean for triggering cleanup operations.
Along the way, you will see how to:
- Capture and compare MBean snapshots manually
- Trigger MBean snapshots programmatically with method triggers
- Restrict the snapshot scope to specific MBeans
Blog Archive
April/8
2024/5
2023/7
Capturing and comparing MBean states with JProfilerAdvanced SSH remote profiling with JProfilerProfiling Java applications in VS Code with JProfilerAdvanced Kafka probe configuration in JProfilerProfiling Kafka #1 – Message Flow & Hot SpotsBringing JProfiler to VS Code with Kotlin Multi-PlatformCaching auto-provisioned install4j distributions in CI pipelinesCross-platform JRE bundle creation under threat from JEP 493
January/1
September/5
2022/10
Garbage collector analysis in JProfilerRecording JFR snapshots with JProfilerEnhanced JFR snapshot analysis with JProfilerWorking with probe events in JProfilerCustomizing telemetries in JProfiler
March/1
January/1
December/2
November/3
2021/2
2020/1
2019/1
2018/3
2017/5
2016/1
2015/10
Using sunburst diagrams for understanding Java memory consumptionUsing flame graphs when profiling Java applicationsProfiling a Netty server
October/1
September/1
August/2
July/1
November/5
2014/3
2013/3
2012/5
2011/13
Analyzing specific parts of the call treeAnalyzing incoming and outgoing calls of a methodCollapsing recursions in the call treeRemote profiling through an SSH tunnelFinding JDBC connection leaks
June/5
December/1
October/2
September/5
2010/8
2009/14
Using the "Run interceptor script" trigger actionCreating a custom probeInspections in the heap walkerHeap walker graph: Finding paths between selected instancesFiltering in the reference view of the heap walker
August/4
Request trackingAnalyzing long-running AWT events with JProfilerProbes overviewCPU profiling: Sampling and instrumentation
February/1