Datadog.Trace.Bundle 2.22.0

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
dotnet add package Datadog.Trace.Bundle --version 2.22.0
NuGet\Install-Package Datadog.Trace.Bundle -Version 2.22.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Datadog.Trace.Bundle" Version="2.22.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Datadog.Trace.Bundle --version 2.22.0
#r "nuget: Datadog.Trace.Bundle, 2.22.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Datadog.Trace.Bundle as a Cake Addin
#addin nuget:?package=Datadog.Trace.Bundle&version=2.22.0

// Install Datadog.Trace.Bundle as a Cake Tool
#tool nuget:?package=Datadog.Trace.Bundle&version=2.22.0

Datadog.Trace.Bundle NuGet package

This package contains the full Datadog .NET APM suite for Tracing (automatic, and custom), Continuous Profiler and Application Security Monitoring (ASM).

Should I install this package?

Do not install this package if any of the following are true:

Install this package if:

  • You are running in a scenario where you can't install an MSI or Linux package. Services such as Azure Service Fabric provide limited access to the underlying server.
  • You want to use both custom and automatic instrumentation, and keeping tracer versions in-sync is a chore.
  • You are running multiple applications on a server and some of them use custom instrumentation, as well as automatic instrumentation.
  • You prefer to deploy a static set of binaries rather than relying on existing infrastructure on the host.

If you are using automatic instrumentation and would like to interact with APM only through C# attributes, see the Datadog.Trace.Annotations NuGet package.

What does Datadog.Trace.Bundle contain?

Datadog.Trace.Bundle contains two things:

  • A reference to the Datadog.Trace NuGet package for custom instrumentation.
  • The native binaries required for automatic instrumentation, for the Continuous Profiler, and for ASM.

These native binaries are identical to those installed by the MSI and Linux installer packages, so Datadog.Trace.Bundle should be considered an alternative deployment mechanism for automatic instrumentation.

The main advantages of Datadog.Trace.Bundle over the MSI or Linux packages are:

  • You can use it in locations where you cannot access the underlying host to install the MSI or Linux package.
  • You can have multiple applications on the same host using different versions of Datadog.Trace.Bundle without issue.

Getting Started

  1. Configure the Datadog agent for APM as described in our documentation.
  2. Add the Datadog.Trace.Bundle NuGet package to your project, using dotnet add package Datadog.Trace.Bundle, for example.
  3. Configure the tracer on the server, as described below
  4. View your live data on Datadog.

Configure the tracer

After adding the NuGet package to your project, set the following required environment variables to enable automatic instrumentation of your application and restart the application.

NOTE: The following are the mandatory variables. For further configuration options, see our public documentation for the Tracer and the Continuous Profiler.

.NET Core:

CORECLR_ENABLE_PROFILING=1
CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
CORECLR_PROFILER_PATH=<System-dependent path>
DD_DOTNET_TRACER_HOME=<APP_DIRECTORY>/datadog

.NET Framework:

COR_ENABLE_PROFILING=1
COR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
COR_PROFILER_PATH=<System-dependent path>
DD_DOTNET_TRACER_HOME=<APP_DIRECTORY>/datadog

The value for the <APP_DIRECTORY> placeholder is the path to the directory containing the application’s .dll files. The value for the CORECLR_PROFILER_PATH/COR_PROFILER_PATH environment variable varies based on the system where the application is running:

OPERATING SYSTEM AND PROCESS ARCHITECTURE CORECLR_PROFILER_PATH VALUE
Alpine Linux x64 <APP_DIRECTORY>/datadog/linux-musl-x64/Datadog.Trace.ClrProfiler.Native.so
Linux x64 <APP_DIRECTORY>/datadog/linux-x64/Datadog.Trace.ClrProfiler.Native.so
Linux ARM64 <APP_DIRECTORY>/datadog/linux-arm64/Datadog.Trace.ClrProfiler.Native.so
Windows x64 <APP_DIRECTORY>\datadog\win-x64\Datadog.Trace.ClrProfiler.Native.dll
Windows x86 <APP_DIRECTORY>\datadog\win-x86\Datadog.Trace.ClrProfiler.Native.dll

For Docker images running on Linux, configure the image to run the createLogPath.sh script:

RUN /<APP_DIRECTORY>/datadog/createLogPath.sh

Examples

Docker examples are available here

Get in touch

If you have questions, feedback, or feature requests, reach our support.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Datadog.Trace.Bundle:

Repository Stars
DataDog/dd-trace-dotnet
.NET Library for Datadog APM
Version Downloads Last updated
2.22.0 5,884 1/24/2023
2.21.0 20,845 12/20/2022
2.20.0 17,035 12/2/2022
2.19.0 22,625 11/10/2022
2.18.0 44,914 10/25/2022
2.17.0 61,492 10/11/2022
2.16.0 1,818 10/7/2022