opentelemetry-java/examples/grpc
John Watson 2ac3ff6e83
Convert the examples to not use the GlobalOpenTelemetry instance. (#2364)
* update the grpc example to remove global usage

* update the http example to remove global usage

* update the jaeger example to get rid of the global usage

* update the metrics example to get rid of the global OpenTelemetry usage

* update the otlp exporter example to get rid of the global OpenTelemetry usage

* update the sdk-usage example to get rid of the global OpenTelemetry usage

* update the zipkin example to get rid of the global OpenTelemetry usage

* run the formatter

* update method names and details based on feedback
2020-12-18 16:21:51 -08:00
..
src/main Convert the examples to not use the GlobalOpenTelemetry instance. (#2364) 2020-12-18 16:21:51 -08:00
README.md Rename all packages to follow the module name definition (#1952) 2020-10-31 10:59:11 -07:00
build.gradle Update the examples for v0.10.0 (#2030) 2020-11-05 16:32:58 -08:00

README.md

gRPC Example

Note: This is an advanced scenario useful for people that want to manually instrument their own code.

This example demonstrates how to use the OpenTelemetry SDK to instrument normal and streamed gRPC calls. The example creates the Root Span on the client and sends the distributed context over the gRPC request. On the server side, the example shows how to extract the context and create a Child Span.

How to run

Prerequisites

  • Java 1.8

1 - Compile

../gradlew fatJar

2 - Start the Server

java -cp ./build/libs/opentelemetry-examples-grpc-all-0.1.0-SNAPSHOT.jar io.opentelemetry.example.grpc.HelloWorldServer

3 - Start the normal Client

java -cp ./build/libs/opentelemetry-examples-grpc-all-0.1.0-SNAPSHOT.jar io.opentelemetry.example.grpc.HelloWorldClient

4 - Start the streamed Client

java -cp ./build/libs/opentelemetry-examples-grpc-all-0.1.0-SNAPSHOT.jar io.opentelemetry.example.grpc.HelloWorldClientStream