- System requirements
- Profiler architecture
- Running the profiler
- Profiler activation
- Start profiling
- IDE integration
- Java server integration wizard
- Attach profiler to a running application
- Remote profiling
- Direct connect
- SSH access
- Connection broker
- Docker
- Enabling profiling manually
- Startup options
- Connect to profiled application
- Profiling troubleshooting
- Profiling overhead: how to reduce or avoid
- Solving performance problems
- CPU profiling
- Threads
- Deadlock detector
- Memory profiling
- Garbage collection
- Monitor profiling
- Exception profiling
- Probes: monitor events of various kinds
- Performance Charts
- Inspections: automatic recognition of typical problems
- Automatically trigger actions on event
- Summary, snapshot annotation, automatic deobfuscation
- Time measurement (CPU time, wall time)
- Filters
- Snapshot directory customization
- Export of profiling results to HTML, CSV, XML, plain text
- Profiler Java API
- Profiler HTTP API
- Command line tool to control profiling
- Settings
- FAQ: How to profile in my scenario?
Direct connect
Profiler discovers applications running on the remote machine
with the profiler agent by scanning
the port range specified in the Profiler agent port(s) field.
By default, the profiler agent port is allocated in the range 10001-10010
.
If the profiler port was changed with the port
startup option
such that it is not in the default port range,
please change the Profiler agent port(s) field value accordingly.

If you use reverse HTTP proxy (like
Apache httpd or
Nginx)
to forward incoming requests to profiler agent port, then please also specify
the Reverse HTTP proxy path.
For example, if your proxy forwards the requests like /my_agent/*
to profiler
agent port, then /my_agent/
must be specified as the
Reverse HTTP proxy path.
Please note, that global proxy settings will be used to reach the destination host. If your proxy requires authentication, the credentials must be configured, otherwise the agent discovery will fail.