dd-trace-dotnet is a free, open source monitoring & observability project written in C# and released under Apache-2.0. It has 573 GitHub stars, 176 forks and 335 open issues, and was last pushed 2 hours ago. On this registry it ranks #262 of 270 tracked projects in Monitoring & Observability, with 5 head-to-head comparisons available.

What is dd-trace-dotnet?

dd-trace-dotnet is the Apache-2.0 C# repository containing Datadog's .NET client libraries for application telemetry collection, distributed tracing, and continuous profiling, built for .NET developers and operators who need to instrument .NET applications and send telemetry to the Datadog product suite.

What it is

The project contains the sources for the client-side components of the Datadog product suite for Application Telemetry Collection and Application Performance Monitoring for .NET Applications. It ships two main parts: the Datadog .NET Tracer, a set of .NET libraries that lets you trace any piece of your .NET code, and the Datadog .NET Continuous Profiler, libraries that automatically profile your application. The repository is written in C# and published under the Apache-2.0 license. According to the README, the library powers Distributed Tracing, Application Security Management, Continuous Integration Visibility, Dynamic Instrumentation, and more, and the homepage points to docs.datadoghq.com/tracing.

The concrete problem is instrumentation effort in .NET applications. The Datadog .NET Tracer automatically instruments supported libraries out of the box, so teams do not need to write manual tracing code for every supported dependency, while it still supports custom instrumentation for their own code. The Continuous Profiler removes the need to wire profiling manually by providing libraries that automatically profile the application. The project therefore replaces ad hoc, per-library tracing and profiling setup in the .NET ecosystem with a client library that feeds the Datadog product suite, and it offers an OpenTracing-compatible path through the Datadog.Trace.OpenTracing package.

Key capabilities

  • Automatic instrumentation of supported .NET libraries through the Datadog .NET Tracer, with custom instrumentation available for application code.
  • Distributed tracing support for .NET applications, named as a Datadog product powered by the library.
  • Application Security Management support powered by the same library.
  • Continuous Integration Visibility support powered by the same library.
  • Dynamic Instrumentation support powered by the same library.
  • Datadog .NET Continuous Profiler libraries that automatically profile an application.
  • NuGet distribution through the Datadog.Trace package and the Datadog.Trace.OpenTracing package, with Windows and Linux installers also listed in the Downloads table.

Who uses it and how

  • .NET application teams on Windows or Linux deploy the tracer through the Windows and Linux installers listed in the Downloads table.
  • Developers add the Datadog.Trace NuGet package to .NET applications to enable distributed tracing and automatic instrumentation of supported libraries.
  • Teams that use OpenTracing add the Datadog.Trace.OpenTracing package for an OpenTracing-compatible integration.
  • Performance engineering and operations groups use the Datadog .NET Continuous Profiler libraries to profile running .NET applications automatically.
  • Security and engineering teams rely on the library for Application Security Management, Continuous Integration Visibility, and Dynamic Instrumentation as part of the Datadog product suite; the repository shows 575 stars, 168 forks, and 335 open issues, indicating public use and a large open issue backlog.

Getting started

Install through the Windows and Linux installers listed in the Downloads table, or add the Datadog.Trace NuGet package to a .NET application; add Datadog.Trace.OpenTracing when OpenTracing compatibility is needed. Local development and testing setup is documented in the tracer README.

How it compares

No paid products are listed in the supplied facts, so a licence, self-hosting, data ownership, or cost-model comparison cannot be made. The only adjacent named technology is OpenTracing, which the project supports through the Datadog.Trace.OpenTracing package; no other similar .NET tracing or profiling tools are named in the facts, so on the supplied evidence the project stands alone in this registry.

When to use it — and when not to

Pick it when the team runs .NET applications and wants automatic instrumentation, distributed tracing, or continuous profiling connected to the Datadog product suite. The README excerpt does not describe a self-hosted backend, database, storage, or SMTP setup, so a self-hoster must operate the .NET application and instrumentation while telemetry leads to Datadog's product suite. Teams that do not use Datadog, or that require a fully self-hosted APM backend, should not pick it; the excerpt is sparse, the repository carries 335 open issues, and no Docker image or compose file is listed.

project readme (upstream, from github) — read inline

Datadog APM .NET Client Libraries

bits dotnet

This repository contains the sources for the client-side components of the Datadog product suite for Application Telemetry Collection and Application Performance Monitoring for .NET Applications.

Datadog .NET Tracer: A set of .NET libraries that let you trace any piece of your .NET code. It automatically instruments supported libraries out-of-the-box and also supports custom instrumentation to instrument your own code.

This library powers Distributed Tracing, Application Security Management, Continuous Integration Visibility, Dynamic Instrumentation and more.

Datadog .NET Continuous Profiler: Libraries that automatically profile your application. Documentation.

Downloads

Package Download
Windows and Linux Installers GitHub release (latest SemVer)
Datadog.Trace Datadog.Trace
Datadog.Trace.OpenTracing Datadog.Trace.OpenTracing

Build status

  • Build status on master: Build

  • Benchmarks dashboard on master: Dashboard

Development

For local development and testing, see Setup docs

Copyright

Copyright (c) 2017 Datadog https://www.datadoghq.com

License

See license information.

Contact us

Security Vulnerabilities

If you have found a security issue, please contact the security team directly at security@datadoghq.com.

Other feedback

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

Frequently asked questions

Is dd-trace-dotnet free to use?

dd-trace-dotnet is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does dd-trace-dotnet do?

.NET Client Library for Datadog APM

What is dd-trace-dotnet written in?

dd-trace-dotnet is primarily written in C#. Its source is publicly available at https://github.com/DataDog/dd-trace-dotnet, and it has 573 GitHub stars.