From 132c0536740b8bdfa33abf3bdcbdf48df9b6aef5 Mon Sep 17 00:00:00 2001 From: Patrice Chalin Date: Wed, 31 Jan 2024 06:37:08 -0500 Subject: [PATCH] Exporters intro: rework and mention benefits of OTLP exporters --- content/en/docs/languages/cpp/exporters.md | 1 - content/en/docs/languages/go/exporters.md | 5 --- content/en/docs/languages/java/exporters.md | 11 ++---- .../docs/languages/exporters-intro.md | 37 +++++++++++-------- 4 files changed, 24 insertions(+), 30 deletions(-) diff --git a/content/en/docs/languages/cpp/exporters.md b/content/en/docs/languages/cpp/exporters.md index 4a81d545dd1c..28d222bd99c3 100644 --- a/content/en/docs/languages/cpp/exporters.md +++ b/content/en/docs/languages/cpp/exporters.md @@ -1,7 +1,6 @@ --- title: Exporters weight: 50 -cSpell:ignore: chrono millis ostream --- diff --git a/content/en/docs/languages/go/exporters.md b/content/en/docs/languages/go/exporters.md index 9ad31748d9fb..0d6bdcc7c39b 100644 --- a/content/en/docs/languages/go/exporters.md +++ b/content/en/docs/languages/go/exporters.md @@ -173,8 +173,3 @@ func newExporter(ctx context.Context) (metric.Reader, error) { To learn more on how to use the Prometheus exporter, try the [prometheus example](https://github.com/open-telemetry/opentelemetry-go/tree/main/example/prometheus) - -## Available packages - -You can find a full list of available exporters in the -[OpenTelemetry registry](/ecosystem/registry/?language=go&component=exporter). diff --git a/content/en/docs/languages/java/exporters.md b/content/en/docs/languages/java/exporters.md index bae2c2aa786d..074bff7b092d 100644 --- a/content/en/docs/languages/java/exporters.md +++ b/content/en/docs/languages/java/exporters.md @@ -6,6 +6,9 @@ cSpell:ignore: autoconfigure classpath okhttp springframework {{% docs/languages/exporters-intro java %}} +You can also write your own exporter. For details, see the +[SpanExporter API reference](https://javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-trace/latest/io/opentelemetry/sdk/trace/export/SpanExporter.html). + {{% alert title="Note" color="info" %}} If you use the Java agent for @@ -417,14 +420,6 @@ SdkTracerProvider sdkTracerProvider = SdkTracerProvider.builder() .build(); ``` -## Other available exporters - -There are many other exporters available. For a list of available exporters, see -the [registry](/ecosystem/registry/?component=exporter&language=java). - -Finally, you can also write your own exporter. For more information, see the -[SpanExporter Interface in the API documentation](https://javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-trace/latest/io/opentelemetry/sdk/trace/export/SpanExporter.html). - ## Batching spans and log records For traces the OpenTelemetry SDK provides a set of default span and log record diff --git a/layouts/shortcodes/docs/languages/exporters-intro.md b/layouts/shortcodes/docs/languages/exporters-intro.md index 6f3ae4cdcf57..fe0f99f4aae8 100644 --- a/layouts/shortcodes/docs/languages/exporters-intro.md +++ b/layouts/shortcodes/docs/languages/exporters-intro.md @@ -1,22 +1,27 @@ - +{{ $lang := .Get 0 -}} -{{ $lang := .Get 0 -}} {{ $data := index $.Site.Data.instrumentation $lang }} -{{ $name := cond (isset $.Site.Data.instrumentation $lang) (printf "OpenTelemetry %s" $data.name) "the language specific implementations" -}} +{{ $data := index $.Site.Data.instrumentation $lang -}} -In order to visualize and analyze your telemetry, you will need to export your -data to an [OpenTelemetry Collector](/docs/collector/) or a backend such as +{{ $name := $data.name -}} + +In order to visualize and analyze telemetry data, it needs to be exported to the +[OpenTelemetry Collector](/docs/collector/) or a backend such as [Jaeger](https://jaegertracing.io/), [Zipkin](https://zipkin.io/), -[Prometheus](https://prometheus.io/) or a [vendor-specific](/ecosystem/vendors/) -one. +[Prometheus](https://prometheus.io/), or a +[vendor-specific](/ecosystem/vendors/) backend. + +This page covers the main OpenTelemetry {{ $name }} exporters and how to set +them up. + +## Available exporters + +The registry contains the [list of exporters for {{ $name }}][reg]. -As part of {{ $name }} you will find many exporters being available. Among them, -the OpenTelemetry Protocol (OTLP) exporters provide the best experience for you -as an end-user, since it is a general-purpose telemetry data delivery protocol -designed in the scope of the OpenTelemetry project. +Among exporters, [OpenTelemetry Protocol (OTLP)][OTLP] exporters provide an +optimal experience since they are lossless and support all [signals]. To learn +more about the OTLP protocol, see [OTLP Specification][OTLP]. -To learn more about the OTLP protocol, you can read the -[OTLP Specification](/docs/specs/otlp/). +[OTLP]: /docs/specs/otlp/ +[signals]: /docs/concepts/signals/ -{{ if (isset $.Site.Data.instrumentation $lang) -}} Below you will find some -introductions on how to set up exporters for OTLP and other common protocols in -your code. {{ end -}} +[reg]: /ecosystem/registry/?component=exporter&language={{ $lang }}