DataDog / dd-trace-rb

Datadog Tracing Ruby Client
https://docs.datadoghq.com/tracing/
Other
299 stars 368 forks source link

Continuous Profiler does not support macOS #3625

Open nuxzero opened 2 months ago

nuxzero commented 2 months ago

Current behaviour

I'm upgrading ddtrace from version 0.45 to 1.22.0 and testing with macOS agent on my local, but profiling data not showing and get the below warning that it's not supported macOS. However, it used to work with version 0.45.

W, [2024-05-02T13:30:42.093230 #7931] WARN -- ddtrace: [ddtrace] Profiling was requested but is not supported, profiling disabled: Your ddtrace installation is missing support for the Continuous Profiler because macOS is currently not supported by the Datadog Continuous Profiler. Get in touch with us if you're interested in profiling your app!

Screenshot 2567-05-03 at 07 27 59

Expected behaviour

It should show profiling data from the trace.

Steps to reproduce

  1. Go to APM Traces
  2. Click a trace
  3. Click Code Hotspots
  4. Click Breakdown tab

How does datadog help you?

Environment

ivoanjo commented 1 month ago

Hey @nuxzero, thanks for getting in touch!

Indeed back in the 0.x series the profiler was able to work on macOS (with some limitations -- such as not supporting cpu-time).

What happened was during the 1.x series we rewrote most of the profiler, and the rewritten profiler does not currently work on macOS, other than inside docker. (There's some support for development, but it needs a few manual steps)

We don't often have requests for macOS support -- can you tell us more about your use-case?

nuxzero commented 1 month ago

Thank you for replying @ivoanjo . Right now I’m enabling profiler in my service and I would like to test it on my local environment before deploying it. However, I will try with Docker agent instead.

ivoanjo commented 1 month ago

Got it! It should work seamlessly within docker, do let us know if you run into any issues.

Testing the profiler locally is something we ourselves make use of -- hence my mention of there being some support we use for development. Unfortunately, there's a few roadblocks to be solved (mostly around distribution) before we can support it officially again.

ivoanjo commented 1 month ago

I've updated the ticket title and marked it as a feature request, since we explicitly are not supporting macOS in the profiler for now, BUT we're definitely wanting to know about folks that miss this + what's your use case :)