Fully featured low overhead profiler for Java EE and Java SE platforms.
Easy-to-use performance and memory .NET profiler for Windows, Linux and macOS.
Secure and easy profiling in cloud, containers and clustered environments.
Performance monitoring and profiling of Jenkins, Bamboo, TeamCity, Gradle, Maven, Ant and JUnit.

Profile remote applications

Remote profiling is the case when the profiled application and the profiler UI run on different machines, usually on a server and your developer machine.

See also Profile local applications.

1. Install profiler on the remote machine

Download and install profiler to the remote machine. You can use command line tool to perform helpful profiling operations remotely.

2. Start profiling the application on the remote machine

Start profiling the application.

To ensure it has started with the profiler, check whether the profiler agent log file has been created:
<user home>/.ynp/log/<application name>-<PID>.log

If you want to profile Windows service, then it needs to be restarted. Special notes on profiling a Windows service can be found here.

3. Create new connection to the remote machine

To profile .NET applications running on the remote machine with agent use Profile remote application... action on Welcome screen or in "Profile" menu.

Profiler remote action on Welcome screen

Application discovery method

Choose direct connect as application discovery method.

Profile remote application wizard

Connection parameters

Specify the host name or IP address of the remote machine.

Profiler discovers applications running with the profiler agent by scanning the specified port range. By default, the profiler agent port is allocated in the range 10001-10010. If the profiler port was changed with startup option port, also change the Profiler agent port(s) field accordingly.

Direct connect stop

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.

SSH tunnel

If the remote host is not directly reachable you can build SSH tunnel. To do so, navigate to the SSH Tunnel step and enable SSH tunnel using Use SSH tunnel checkbox.

You can add any number of intermediate hosts, and specify authentication credentials for each of them. Profiler supports password authentication, authentication with private SSH key, and through the SSH agent.

Configuring SSH tunnel

4. Connect to the remote application

Created connection will appear in the "Monitor Applications" list on Welcome screen under a given name. You can then connect to the application to perform profiling.

Remote connection on Welcome screen

If you do not see your application it the list, please read profiling troubleshooting.

YourKit uses cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content and targeted ads, to analyze our website traffic, and to understand where our visitors are coming from.

By browsing our website, you consent to our use of cookies and other tracking technologies in accordance with the Privacy Policy.