getsentry / sentry-unreal

Unreal Engine
https://docs.sentry.io/platforms/unreal/
MIT License
87 stars 36 forks source link

Linux custom transport used in CaptureMessage does not respect Sentry proxy settings #459

Open riot-pmaconi opened 11 months ago

riot-pmaconi commented 11 months ago

Environment

How do you use Sentry? Sentry SaaS

Which version of the SDK? 0.13

How did you install the package? (Git-URL, Assetstore) Git

Which version of Unreal? 5.3

Is this happening in Unreal (editor) or on a player like Android, iOS, Windows? Linux specifically, the custom transport does not support the proxy for Sentry

Steps to Reproduce

  1. Have a Linux server behind a proxy
  2. Configure UseProxy and ProxyUrl for the server
  3. Use the subsystem's CaptureMessage API

Expected Result

The message reaches Sentry

Actual Result

The request times out

Any logs or screenshots


[2023.12.01-00.13.49:206][654]LogSentrySdk: merging scope into event
[2023.12.01-00.13.49:206][654]LogSentrySdk: trying to read modules from /proc/self/maps
[2023.12.01-00.13.49:207][654]LogSentrySdk: read 10 modules from /proc/self/maps
[2023.12.01-00.13.49:207][654]LogSentrySdk: invoking `before_send` hook
[2023.12.01-00.13.49:207][654]LogSentrySdk: adding attachments to envelope
[2023.12.01-00.13.49:207][654]LogSentrySdk: sending envelope
[2023.12.01-00.13.49:207][654]LogSentrySdk: serializing envelope into buffer
[2023.12.01-00.14.49:227][244]LogHttp: Warning: 0x7f8e6eaf1d50: request failed, libcurl error: 28 (Timeout was reached)
[2023.12.01-00.14.49:227][244]LogHttp: Warning: 0x7f8e6eaf1d50: libcurl info message cache 0 (  Trying 34.120.195.249:443...)
[2023.12.01-00.14.49:227][244]LogHttp: Warning: 0x7f8e6eaf1d50: libcurl info message cache 1 (Connection timeout after 60000 ms)
[2023.12.01-00.14.49:227][244]LogHttp: Warning: 0x7f8e6eaf1d50: libcurl info message cache 2 (Closing connection 5)
[2023.12.01-00.14.49:227][244]LogSentrySdk: Sending envelope failed.
riot-pmaconi commented 11 months ago

This is almost certainly related to https://github.com/getsentry/sentry-unreal/issues/259 - which is definitely a worse experience than the proxy not working. I'll go modify Unreal locally to add proxy support to their IHttpRequest and configure it, but this is possibly worth keeping open until Epic removes OpenSSL 1.1.1