diff --git a/docs/index.asciidoc b/docs/index.asciidoc index 8e8e489cb..98091675b 100644 --- a/docs/index.asciidoc +++ b/docs/index.asciidoc @@ -11,6 +11,7 @@ endif::[] include::./intro.asciidoc[Introduction] include::./setup.asciidoc[Set Up] +include::./supported-technologies.asciidoc[Supported Technologies] include::./metrics.asciidoc[Metrics] include::./configuration.asciidoc[Configuration] include::./public-api.asciidoc[API documentation] diff --git a/docs/intro.asciidoc b/docs/intro.asciidoc index 5cd5741f5..ef0bf172b 100644 --- a/docs/intro.asciidoc +++ b/docs/intro.asciidoc @@ -10,6 +10,7 @@ Welcome to the APM .NET Agent documentation. Elastic APM automatically measures the performance of your application and tracks errors. For example, it records spans for database queries and transactions for incoming HTTP requests. +See <> to learn about which frameworks and technologies are supported by Elastic APM .NET agent. Spans are grouped in transactions - by default one for each incoming HTTP request. But it's possible to create custom transactions not associated with an HTTP request. diff --git a/docs/supported-technologies.asciidoc b/docs/supported-technologies.asciidoc new file mode 100644 index 000000000..fb3398be6 --- /dev/null +++ b/docs/supported-technologies.asciidoc @@ -0,0 +1,84 @@ +ifdef::env-github[] +NOTE: For the best reading experience, +please view this documentation at https://www.elastic.co/guide/en/apm/agent/dotnet[elastic.co] +endif::[] + +[[supported-technologies]] +== Supported Technologies +This page describes the technologies supported by the Elastic APM .NET agent. + +If your favorite technology is not supported yet, +you can vote for it by participating in our +https://docs.google.com/forms/d/18SgsVo9asGNFMjRqwdrk3wTHNwPhtHv4jE35hZRCL6A/[survey]. +We will use the results to add support for the most requested technologies. + +Another option is to add a dependency to the agent's <> +in order to programmatically create custom transactions and spans. + +If you want to extend the auto-instrumentation capabilities of the agent, +the https://github.com/elastic/apm-agent-dotnet/blob/master/CONTRIBUTING.md[contributing guide] should get you started. + +NOTE: If, for example, +the HTTP client library of your choice is not listed, +it means that there won't be spans for those outgoing HTTP requests. +If the web framework you are using is not supported, +the agent will not capture transactions. + +[float] +[[supported-dotnet-flavors]] +=== .NET versions + +The agent works on every .NET flavor and version that supports .NET Standard 2.0. +This means .NET Core 2.0 (or newer) and .NET Framework 4.6.1 (or newer). + +[float] +[[supported-web-frameworks]] +=== Web Frameworks + +Automatic instrumentation for a web framework means +a transaction is automatically created for each incoming request and it is named after the registered route. + +We support automatic instrumentation for the following web frameworks. + +|=== +|Framework |Supported versions |Supported since agent's version + +|ASP.NET Core +|2.x +|1.0 + +|=== + + +[float] +[[supported-data-access-technologies]] +=== Data Access Technologies + +We support automatic instrumentation for the following data access technologies. + +|=== +|Data access technology |Supported versions |Notes |Supported since agent's version + +|Entity Framework (EF) Core +|2.x +|A DB span is automatically created for each access to underlying database performed by Entity Framework Core. +|1.0 + +|=== + +[float] +[[supported-networking-client-side-technologies]] +=== Networking client-side technologies + +Automatic instrumentation for networking client-side technology means +an HTTP span is automatically created for each outgoing HTTP request and tracing headers are propagated. +The spans are named after the schema ` `, for example `GET elastic.co`. + +|=== +|Framework |Supported versions |Supported since agent's version + +|System.Net.Http.HttpClient on .NET Core +| +|1.0 + +|===