Skip to content

Latest commit

 

History

History
32 lines (24 loc) · 1.1 KB

File metadata and controls

32 lines (24 loc) · 1.1 KB

pyroscope-dotnet

Fork of dd-trace-dotnet. The upstream tracer has been removed — only the profiler remains. This repo builds and ships the Pyroscope .NET profiler (Pyroscope.Profiler.Native.so and Pyroscope.Linux.ApiWrapper.x64.so).

Setup

The repo uses git submodules for third-party dependencies. Check them out before doing any work:

git submodule update --init --recursive

Build the profiler (Debug)

Requires clang/clang++ and cmake. Uses build-claude-Debug as the build directory. Always use the Unix Makefiles generator (never Ninja).

mkdir build-claude-Debug
cd build-claude-Debug
cmake .. \
    -G "Unix Makefiles" \
    -DCMAKE_C_COMPILER=clang \
    -DCMAKE_CXX_COMPILER=clang++ \
    -DCMAKE_BUILD_TYPE=Debug \
    -DCMAKE_CXX_FLAGS_DEBUG="-g -O0" \
    -DCMAKE_C_FLAGS_DEBUG="-g -O0"
make -j$(nproc) Pyroscope.Profiler.Native Datadog.Linux.ApiWrapper.x64

Output artifacts:

  • profiler/_build/DDProf-Deploy/linux/Pyroscope.Profiler.Native.so
  • profiler/_build/DDProf-Deploy/linux/Datadog.Linux.ApiWrapper.x64.so