Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exporters-intro rework and mention benefits of OTLP exporters #3905

Merged
merged 5 commits into from
Feb 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion content/en/docs/concepts/components.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ For more information, see

### Exporters

{{% docs/languages/exporters/intro all %}}
{{% docs/languages/exporters/intro %}}

### Automatic Instrumentation

Expand Down
1 change: 0 additions & 1 deletion content/en/docs/languages/cpp/exporters.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
---
title: Exporters
weight: 50
cSpell:ignore: chrono millis ostream
---

<!-- markdownlint-disable no-duplicate-heading -->
Expand Down
5 changes: 0 additions & 5 deletions content/en/docs/languages/go/exporters.md
Original file line number Diff line number Diff line change
Expand Up @@ -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).
61 changes: 42 additions & 19 deletions layouts/shortcodes/docs/languages/exporters/intro.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,47 @@
<!-- cSpell:ignore isset cond -->
To visualize and analyze telemetry, export it to the
[OpenTelemetry Collector](/docs/collector/), to a backend such as
[Jaeger](https://jaegertracing.io/), [Zipkin](https://zipkin.io/),
[Prometheus](https://prometheus.io/), or a
[vendor-specific](/ecosystem/vendors/) backend.

{{ $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" -}}
{{ $lang := .Get 0 | default "" -}}

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
[Jaeger](https://jaegertracing.io/), [Zipkin](https://zipkin.io/),
[Prometheus](https://prometheus.io/) or a [vendor-specific](/ecosystem/vendors/)
one.
{{ $name := "" -}}

{{ if $lang -}}

{{ $name = (index $.Site.Data.instrumentation $lang).name -}}

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.
## Available exporters

To learn more about the OTLP protocol, you can read the
[OTLP Specification](/docs/specs/otlp/).
The registry contains a [list of exporters for {{ $name }}][reg].

{{ if (isset $.Site.Data.instrumentation $lang) -}}
{{ else -}}

Below you will find some introductions on how to set up exporters for OTLP and
other common protocols in your code.
The registry contains the [list of language specific exporters][reg].

{{ end -}}

Among exporters, [OpenTelemetry Protocol (OTLP)][OTLP] exporters are designed
with the OpenTelemetry data model in mind, emitting OTel data without any loss
of information. Furthermore, many tools that operate on telemetry data support
OTLP (such as [Prometheus], [Jaeger], and most [vendors]), providing you with a
high degree of flexibility when you need it. To learn more about OTLP, see [OTLP
Specification][OTLP].

[Jaeger]: /blog/2022/jaeger-native-otlp/
[OTLP]: /docs/specs/otlp/
[Prometheus]:
https://prometheus.io/docs/prometheus/latest/feature_flags/#otlp-receiver
[signals]: /docs/concepts/signals/
[vendors]: /ecosystem/vendors/

[reg]: /ecosystem/registry/?component=exporter&language={{ $lang }}

{{ if $name -}}

This page covers the main OpenTelemetry {{ $name }} exporters and how to set
them up.

{{ end -}}

Expand All @@ -34,11 +55,13 @@ Guide](/docs/languages/{{ $lang }}/automatic/configuration/).

</div>

{{ end }}
{{ end -}}

{{/*
below list needs to grow until all languages are updated to a consistent structure.
*/}} {{ if in (slice "python" "js" "java") $lang -}}
*/ -}}

{{ if in (slice "python" "js" "java") $lang -}}

## OTLP

Expand Down
Loading