opentelemetry-go/example
Joshua MacDonald 0e2fdfc682
Support cumulative, delta, and pass-through exporters (#840)
* Update Process()

* Checkpoint

* Add subtractor; fix test

* Fix all simple integrator tests

* Build the rest (checkpoint)

* Pass all but Prometheus tests

* Precommit pass

* Add aggregation.Kind argument to ExportKindFor

* Remove Subtractor support

* Remove dead test code

* Restore the Subtractor code

* Fix the tests

* Comments

* Add tests for MetricKind

* Add ChangeSign test

* Test ExportKind

* New file

* Rename ChangeSign

* Remove a TODO, add a TODO

* Remove Stateful remnants

* Typo

* Typo

* Test an invalid export kind

* Comments

* Lint

* Apply suggestions from code review

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-06-22 22:59:51 -07:00
..
basic Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
grpc Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
http Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
jaeger Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
namedtracer Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
otel-collector Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
otlp Support cumulative, delta, and pass-through exporters (#840) 2020-06-22 22:59:51 -07:00
prometheus Bump github.com/prometheus/client_golang from 1.5.0 to 1.7.0 in /exporters/metric/prometheus (#838) 2020-06-22 14:54:56 -04:00
zipkin Bumps github.com/golang/protobuf from 1.3.2 to 1.4.2 (#848) 2020-06-22 17:59:28 -04:00
README.md Split OTLP README to own directory 2020-06-01 13:27:23 -05:00

README.md

Example

HTTP

This is a simple example that demonstrates tracing http request from client to server. The example shows key aspects of tracing such as:

  • Root Span (on Client)
  • Child Span (on Client)
  • Child Span from a Remote Parent (on Server)
  • SpanContext Propagation (from Client to Server)
  • Span Events
  • Span Attributes

Example uses

  • open-telemetry SDK as trace instrumentation provider,
  • httptrace plugin to facilitate tracing http request on client and server
  • http trace_context propagation to propagate SpanContext on the wire.
  • stdout exporter to print information about spans in the terminal

How to run?

Prequisites

  • go 1.13 installed
  • GOPATH is configured.

1 Download git repo

GO111MODULE="" go get -d go.opentelemetry.io/otel

2 Start Server

cd $GOPATH/src/go.opentelemetry.io/otel/example/http/
go run ./server/server.go

3 Start Client

cd $GOPATH/src/go.opentelemetry.io/otel/example/http/
go run ./client/client.go

4 Check traces in stdout

The spans should be visible in stdout in the order that they were exported.