This folder contains the source code for the Datadog .NET APM Profiler. The .NET Profiler runs in your application process to collect managed threads call stacks related to wall time, CPU consumption, and exceptions.
Configure the Datadog Agent for APM as described in our documentation. To install and enable the .NET Profiler follow the steps as described in our documentation.
You can develop the profiler on various environments.
- Visual Studio 2019/2022
- Workloads
- Desktop development with C++
- .NET desktop development
- .NET Core cross-platform development
- Individual components
- .NET Framework 4.7 targeting pack
- C++ for Linux Development
- Windows 10 SDK (10.0.18362)
- Workloads
Open the solution dd-trace-dotnet\Datadog.Profiler.sln
and build the projects Datadog.Profiler.Native.Windows
(C++).
Go to the Tracer folder and use the NUKE build.cmd script
..\tracer\build.cmd BuildProfilerHome BuildNativeLoader
Note: build Release binaries by default; use --buildConfiguration Debug
for debug build
To build C# projects
To build C++ projects
- Clang >= 9.0 (recommended)
- CMake >= 3.14
- Libtool
- liblzma
- libssl-dev
- autoconf
- git
Go to the Tracer folder and use the NUKE build.cmd script
../tracer/build.sh BuildProfilerHome BuildNativeLoader
You could also use the following to Build C++ projects and run the unit tests
CXX=clang++ CC=clang cmake -S dd-trace-dotnet -B _build
cd _build
make -j
ctest
Note: the clang compiler often find errors that are not seen by Visual Studio