How to use Unreal Insights for remotely running project?

I develop UE5 project on windows, so I downloaded UE5.2 from launcher on windows. But my project is supposed to run on Linux.

I made Linux binaries and copied them to a remote Linux machine where I execute it with a parameter -tracehost=xxx.xxx.xxx.xxx (my windows ip address). Then I ran Unreal Insights on windows by Engine\Binaries\Win64\UnrealInsights.exe.

In the Connection tab of the Unreal Insights, I put my windows ip address in the Trace recorder IP address field, which is usually auto-filled by default. And I put the ip address of the Linux machine in the Running instance IP address field then clicked on the Connect button.

It ended up connection failure after ~30 seconds later. I tried several times saw the same results. I’m not sure what went wrong as I followed the instruction from UE5.2 documentation.

Has anyone succeeded in doing this or any similar scenarios?

Thanks

1 Like

Answering to my own question, I figured it out and share it here for posterity.

The remote linux machine had a firewall that blocked all of ports except 22 for ssh connections and some other ports. But 1981, which is what Unreal Insights uses, was not included here. So it was my issue, not Unreal Insights.

I resolved this by using SSH tunneling by ssh’ing into the linux machine with

ssh -R 1981:127.0.0.1:1981 USER@HOST

This opens an ssh connection to the linux machine, creating a port forwarding from the 1981 port of the linux machine to the 1981 port of my local windows machine, which runs Trace server(background service) and Unreal Insights.

After this, running a game on the linux machine successfully transfered trace data to my local windows machine, so that I could see a live session from the session browser in Unreal Insights.

2 Likes

If you are on 4.27 use 1980 port, not 1981

What are your tracehost parameters? Is it 127.0.0.1?