YourKit Java Profiler help
- 1 System requirements
- 2 Profiler architecture
- 3 Profiler installation
- 4 Uninstall profiler
- 5 Running the profiler
- 6 Profiler activation
- 7 Welcome screen
- 8 Start profiling
- 8.1 IDE integration
- 8.1.1 Eclipse
- 8.1.2 IntelliJ IDEA
- 8.1.3 MyEclipse
- 8.1.4 NetBeans
- 8.2 Java server integration wizard
- 8.3 Attach profiler to a running application
- 8.4 Remote profiling
- 8.4.1 AWS SSM
- 8.4.2 Direct connect
- 8.4.3 SSH access
- 8.4.4 Connection broker
- 8.5 Profiling in Docker container
- 8.6 Profiling in Amazon EC2 instance
- 8.7 Enabling profiling manually
- 8.8 Agent startup options
- 8.9 Connect to profiled application
- 9 Profiling overhead
- 10 Snapshots
- 11 Solving performance problems
- 12 CPU profiling
- 12.1 Wall time and CPU time
- 12.2 CPU profiling modes
- 12.3 CPU usage estimation
- 12.4 CPU sampling
- 12.5 Asynchronous CPU sampling
- 12.6 CPU sampling settings
- 12.7 CPU tracing
- 12.8 CPU tracing settings
- 12.9 Call counting
- 12.10 CPU tab
- 12.10.1 Telemetry
- 12.10.2 Call tree - All threads merged
- 12.10.3 Call tree - By thread
- 12.10.4 Flame graph
- 12.10.5 CPU hot spots
- 12.10.6 Method list
- 12.10.7 Java EE profiling results
- 12.10.8 Callee list view
- 12.10.9 Method merged callees view
- 12.10.10 Method back traces view
- 12.11 What-if: an ability to ignore particular methods or focus on particular methods only
- 13 Thread profiling
- 13.1 Telemetry
- 13.2 Thread states
- 13.3 Deadlocks
- 13.4 Frozen threads
- 14 Virtual threads support
- 15 Object allocation profiling
- 15.1 Object allocation profiling modes
- 15.1.1 Classic
- 15.1.2 Heap sampling
- 15.1.3 Object counting
- 15.2 Telemetry
- 15.3 Class
- 15.4 Allocation tree - All threads merged
- 15.5 Allocation tree - By thread
- 15.6 Flame graph
- 15.7 Hot spots by object count
- 15.8 Hot spots by object size
- 15.9 Method list
- 15.10 Method merged callees
- 15.11 Method back traces
- 16 Memory profiling
- 16.1 Understanding garbage collection
- 16.2 Shallow and retained sizes
- 16.3 JVM memory structure
- 16.4 GC roots view
- 16.5 Memory tab
- 16.5.1 Telemetry
- 16.5.2 Classes
- 16.5.3 Object explorer
- 16.5.4 Dominators - Biggest objects
- 16.5.5 Memory inspections
- 16.5.6 Group objects by category
- 16.5.6.1 Class
- 16.5.6.2 Class and package
- 16.5.6.3 Class loader
- 16.5.6.4 Generation
- 16.5.6.5 Reachability
- 16.5.6.6 Shallow size
- 16.5.6.7 Object ages
- 16.5.7 Quick info view
- 16.5.8 Leak detection: working with paths
- 16.5.9 Merged paths
- 16.5.10 Class hierarchy
- 16.6 Persistent object IDs
- 16.7 Useful actions
- 16.8 Set description language
- 17 Monitor profiling
- 17.1 Wait tree - All threads merged
- 17.2 Wait tree - By thread
- 17.3 Flame graph
- 17.4 Owner thread
- 17.5 Monitor class
- 18 Exception profiling
- 18.1 Telemetry
- 18.2 Class
- 18.3 Exception tree - All threads merged
- 18.4 Exception tree - By thread
- 18.5 Flame graph
- 19 Telemetry
- 20 Probes: monitor events of various kinds
- 20.1 Events in user interface
- 20.1.1 Event table
- 20.1.1.1 Profiler events in table 'Messages'
- 20.1.2 Event timeline
- 20.1.3 Event call tree
- 20.1.4 Event stack traces
- 20.1.5 Navigation between views
- 20.1.6 Events in range
- 20.2 Event inspections
- 20.3 Built-in probes
- 20.3.1 com.yourkit.probes.builtin.Threads
- 20.3.2 Class loading probe
- 20.3.3 com.yourkit.probes.builtin.AwtEvents
- 20.4 Probe classes
- 20.4.1 Compiling probe classes
- 20.4.2 Probe registration, activity modes
- 20.4.3 Probe unregistration
- 20.5 Monitoring method invocation events
- 20.5.1 Probe class annotation @MethodPattern
- 20.5.2 Callback onEnter()
- 20.5.3 Callback onReturn()
- 20.5.4 Callback onExit()
- 20.5.5 Callbacks onUncaughtException() and onUncaughtExceptionExt()
- 20.5.6 Parameter annotation @Param
- 20.5.7 Parameter annotation @Params
- 20.5.8 Parameter annotation @This
- 20.5.9 Parameter annotation @ClassRef
- 20.5.10 Parameter annotation @MethodName
- 20.5.11 Parameter annotation @MethodTimeMs
- 20.5.12 Parameter annotation @MethodTimeNs
- 20.5.13 Parameter annotation @MethodParameterTypes
- 20.5.14 Parameter annotation @MethodSignature
- 20.5.15 Parameter annotation @OnEnterResult
- 20.5.16 Parameter annotation @ReturnValue
- 20.5.17 Parameter annotation @ThrownException
- 20.5.18 Probe application rules
- 20.6 Data storage
- 20.6.1 Tables, rows, columns
- 20.6.2 Lasting events and point events
- 20.6.3 Table API
- 20.6.4 Scalability
- 21 Inspections: automatic recognition of typical problems
- 22 Automatically trigger actions on event
- 23 Automatic deobfuscation
- 24 Summary
- 25 Filters
- 26 Profiler command line
- 27 Export of profiling results to external formats
- 28 Profiler Java API
- 29 Profiler HTTP API
- 30 Settings
- 30.1 Proxy
- 31 Troubleshooting and FAQ