1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2024-12-04 09:43:23 +02:00
opentelemetry-go/exporters/otlp
Anthony Mirabella e88a091a72
Make SpanContext Immutable (#1573)
* Make SpanContext Immutable

* Adds NewSpanContext() constructor and SpanContextConfig{} struct for
constructing a new SpanContext when all fields are known
* Adds With<field>() methods to SpanContext for deriving a SpanContext
with a single field changed.
* Updates all uses of SpanContext to use the new API

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Update CHANGELOG.md

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Add tests for new SpanContext constructor and derivation

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Address PR feedback

* Fix new uses of SpanContext from main
2021-03-09 08:17:29 -08:00
..
internal Make SpanContext Immutable (#1573) 2021-03-09 08:17:29 -08:00
otlpgrpc Avoid overriding configuration of tracer provider (#1633) 2021-03-08 13:43:11 -08:00
otlphttp Add HTTP/JSON to the otlp exporter (#1586) 2021-03-05 09:59:09 -08:00
doc.go Update README and documentation to better communicate pre-GA state (#1281) 2020-10-29 09:23:13 -07:00
example_test.go Updating documentation with an working example for creating NewExporter (#1513) 2021-02-24 09:50:17 -08:00
go.mod Bump github.com/google/go-cmp from 0.5.4 to 0.5.5 (#1667) 2021-03-08 12:15:49 -08:00
go.sum Bump github.com/google/go-cmp from 0.5.4 to 0.5.5 (#1667) 2021-03-08 12:15:49 -08:00
options.go Move gRPC driver to a subpackage and add an HTTP driver (#1420) 2021-01-11 22:55:24 -05:00
otlp_metric_test.go Rename otel/label -> otel/attribute (#1541) 2021-02-18 12:59:37 -05:00
otlp_span_test.go Make SpanContext Immutable (#1573) 2021-03-09 08:17:29 -08:00
otlp_test.go Move gRPC driver to a subpackage and add an HTTP driver (#1420) 2021-01-11 22:55:24 -05:00
otlp.go Move gRPC driver to a subpackage and add an HTTP driver (#1420) 2021-01-11 22:55:24 -05:00
protocoldriver.go Add a split protocol driver for otlp exporter (#1418) 2020-12-22 09:21:45 -08:00
README.md Updating documentation with an working example for creating NewExporter (#1513) 2021-02-24 09:50:17 -08:00

OpenTelemetry Collector Go Exporter

PkgGoDev

This exporter exports OpenTelemetry spans and metrics to the OpenTelemetry Collector.

Installation and Setup

The exporter can be installed using standard go functionality.

$ go get -u go.opentelemetry.io/otel/exporters/otlp

A new exporter can be created using the NewExporter function.

Retries

The exporter will not, by default, retry failed requests to the collector. However, it is configured in a way that it can be easily enabled.

To enable retries, the GRPC_GO_RETRY environment variable needs to be set to on. For example,

GRPC_GO_RETRY=on go run .

The default service config used by default is defined to retry failed requests with exponential backoff (0.3seconds * (2)^retry) with a max of 5 retries).

These retries are only attempted for reponses that are deemed "retry-able" by the collector.