.NET Agent version beta/previewedit

Beta1 releaseedit

  • Distributed tracing support (based on W3C Trace Context)
  • Sampling
  • Metrics (Process and System CPU usage, Free and total Memory, Process working set and private bytes)
  • Capture Docker container id (linux containers only)
  • ASP.NET Core: better transaction names based on routing, capture authenticated users
  • Public Agent API: create sub spans, serialize and deserialize traceparent
  • Stack traces contain fully qualified class names and real method names in case of async methods

Preview release 2edit

  • SecretToken setting - with this you can use the agent with Elastic Cloud.
  • Intake V2 protocol to server communication - support for APM Server 7.x
  • Extended public agent API: support for setting custom HTTP and Database related fields.
  • Improved logging.

Packages can be found on nuget.org.

Preview release 1edit


We shipped the following packages:

  • Elastic.Apm.All: This is a meta package that references every other Elastic APM .NET agent package. If you plan to monitor a typical ASP.NET Core application that depends on the Microsoft.AspNetCore.All package and uses Entity Framework Core then you should reference this package. In order to avoid adding unnecessary dependencies in applications that aren’t depending on the Microsoft.AspNetCore.All package we also shipped some other packages - those are all referenced by the Elastic.Apm.All package.
  • Elastic.Apm: This is the core of the agent, which we didn’t name “Core”, because someone already took that name :) This package also contains the Public Agent API and it is a .NET Standard 2.0 package. We also ship every tracing component that traces things that are part of .NET Standard 2.0 in this package, which includes the monitoring part for HttpClient. Elastic.Apm.AspNetCore: This package contains ASP.NET Core monitoring related code. The main difference between this package and the Elastic.Apm.All package is that this package does not reference the
  • Elastic.Apm.EntityFrameworkCore package, so if you have an ASP.NET Core application that does not use EF Core and you want to avoid adding additional unused references, you should use this package.
  • Elastic.Apm.EntityFrameworkCore: This package contains EF Core monitoring related code.