Datadog.Trace.Bundle 3.3.1

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Datadog.Trace.Bundle --version 3.3.1                
NuGet\Install-Package Datadog.Trace.Bundle -Version 3.3.1                
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="3.3.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Datadog.Trace.Bundle --version 3.3.1                
#r "nuget: Datadog.Trace.Bundle, 3.3.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. 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=3.3.1

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

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
Alpine Linux ARM64 <APP_DIRECTORY>/datadog/linux-musl-arm64/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 (1)

Showing the top 1 NuGet packages that depend on Datadog.Trace.Bundle:

Package Downloads
CleanWaterServices.LoggingTelemetry

A extension library atop of Serilog Library. It creates a clean wrapper for logging and telemetry into the environment insight platform.

GitHub repositories (1)

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

Repository Stars
DataDog/dd-trace-dotnet
.NET Client Library for Datadog APM
Version Downloads Last updated
3.6.0 7,339 11/19/2024
3.5.0 30,187 11/6/2024
3.4.1 26,497 10/28/2024
3.4.0 18,281 10/24/2024
3.3.1 150,031 9/18/2024
3.3.0 8,567 9/16/2024
3.2.0 68,308 9/2/2024
3.1.0-prerelease 1,051 8/14/2024
3.0.0-prerelease 874 7/29/2024
2.61.0 3,520 11/6/2024
2.60.0 4,840 10/24/2024
2.59.0 70,219 9/16/2024
2.58.0 22,003 9/2/2024
2.57.0 108,769 8/14/2024
2.56.0 116,813 7/25/2024
2.55.0 33,306 7/18/2024
2.54.0 75,559 7/9/2024
2.53.2 1,241,319 6/19/2024
2.53.1 22,481 6/17/2024
2.53.0 67,098 6/11/2024
2.52.0 182,936 5/23/2024
2.51.0 226,978 5/6/2024
2.50.0 131,723 4/17/2024
2.49.0 362,245 3/18/2024
2.48.0 706,934 2/29/2024
2.47.0 196,117 2/14/2024
2.46.0 281,144 1/24/2024
2.45.0 115,567 1/10/2024
2.44.0 219,895 12/19/2023
2.43.0 127,324 12/5/2023
2.42.0 4,867 11/21/2023
2.41.0 240,692 11/6/2023
2.40.0 137,740 10/16/2023
2.39.0 27,608 10/11/2023
2.38.0 139,480 9/20/2023
2.37.0 160,128 8/31/2023
2.36.0 246,372 8/23/2023
2.35.0 157,949 7/31/2023
2.34.0 34,269 7/25/2023
2.33.0 127,768 7/4/2023
2.32.0 145,352 6/20/2023
2.31.0 131,259 5/31/2023
2.30.0 290,935 5/5/2023
2.29.0 172,552 4/17/2023
2.28.0 25,756 4/12/2023
2.27.0 98,384 3/24/2023
2.26.0 131,330 3/9/2023
2.24.1 646,786 2/27/2023
2.24.0 10,665 2/24/2023
2.23.0 277,307 2/8/2023
2.22.0 94,702 1/24/2023
2.21.0 205,181 12/20/2022
2.20.0 92,516 12/2/2022
2.19.0 92,020 11/10/2022
2.18.0 149,767 10/25/2022
2.17.0 709,424 10/11/2022
2.16.0 39,838 10/7/2022

See release notes at https://github.com/DataDog/dd-trace-dotnet/releases.
     Please note that Datadog does not support tracing (manual or automatic) in partial-trust environments.