Releases: elastic/apm-agent-dotnet
1.3.0
Features
- New GC metrics: clr.gc.count, clr.gc.gen[X]size, where [X]: heap generation #697
- Capturing SOAP action name as part of the transaction name #683
- New config options: ServiceNodeName, VerifyServerCert, DisableMetrics, UseElasticTraceparentHeader docs
- Full W3C TraceContext support #717
Bug fixes
1.2.0
New features:
- Entity framework support with Interceptor (docs)
- Sanitization of HTTP headers and request body (docs)
- Central configuration - 2 new configs: CAPTURE_BODY and TRANSACTION_MAX_SPANS
- Support for global labels (docs)
- Custom context (docs)
- Dropping support for ASP.NET Core 2.0 (which is already end of life) (docs)
Bug fixes:
1.1.2
1.1.1
1.1.0
1.0.1
Bug fixes:
NullReferenceException
on .NET Framework with outgoing HTTP calls created withHttpClient
in case the response code is HTTP3xx #450- Added missing
net461
target to theElastic.Apm
package - Handling
Labels
withnull
#429
New feature:
- Reading request body in ASP.NET Core. Also introduced two new settings:
CaptureBody
andCaptureBodyContentTypes
. By default this feature is turned off, this is an opt-in feature and can be turned on with theCaptureBody
setting. #402
1.0.0 - GA
The 1. GA release of the Elastic APM .NET Agent. Stabilization of the 1.0.0-beta feature for production usage.
New features:
- Out of the box integration with
ILoggerFactory
and the logging infrastructure in ASP.NET Core #249 - Introduced
StackTraceLimit
andSpanFramesMinDurationInMilliseconds
configs #374 - The Public Agent API now support
Elastic.Apm.Agent.Tracer.CurrentSpan
#391
Bug fixes:
- Thread safety for some bookkeeping around spans #394
- Auto instrumentation automatically creates sub-spans in case a span is already active #391
Breaking changes:
We have some breaking changes in this release. We wanted to do these changes prior to our GA release and with this we hopefully avoid breaking changes in the upcoming versions.
- For better naming we replaced the
Elastic.Apm.All
packages withElastic.Apm.NetCoreAll
#371 - Based on feedback we also renamed the
UseElasticApm()
method in theElastic.Apm.NetCoreAll
package toUseAllElasticApm
- this method turns on every component of the Agent for ASP.NET Core. #371 - Our logger abstraction, specifically the
IApmLogger
interface changed: #389 - To follow Elastic Common Schema (ECS) we renamed our
Tags
properties toLabels
. #416
Beta1 release
The 1. beta of the Elastic APM .NET Agent. Please note that breaking changes may be expected until 1.0.0 GA is released.
New features:
- 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)
Improvements:
- 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 2
The 2. preview of the Elastic APM .NET Agent. Please note that breaking changes may be expected until 1.0.0 is released.
New features:
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 1
The first preview of the Elastic APM .NET Agent. Please note that breaking changes may be expected until 1.0.0 is released.
Features:
-
ASP.NET Core auto instrumentation
-
Entity Framework Core auto instrumentation
-
HttpClient auto instrumentation
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.