Skip to content

Files

This branch is 450 commits behind grpc/grpc:master.

otel

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Oct 4, 2024
Jan 7, 2025
Nov 26, 2024
Sep 30, 2024
Jan 7, 2025
Mar 8, 2024
Nov 21, 2024
Nov 21, 2024
Nov 26, 2024
Nov 26, 2024

gRPC C++ OpenTelemetry Example

The opentelemetry example builds on the Hello World Example and changes the gRPC client and server to show a sample way of configuring the gRPC OpenTelemetry plugin with a prometheus exporter.

For more information on the gRPC OpenTelemetry plugin, please refer to - * A66: OpenTelemetry Metrics

Running the example

To run the server -

$ tools/bazel run examples/cpp/otel:greeter_callback_server

To run the client -

$ tools/bazel run examples/cpp/otel:greeter_callback_client

The client continuously sends an RPC to the server every second.

To make sure that the server and client metrics are being exported properly, in a separate terminal, run the following -

$ curl localhost:9464/metrics
$ curl localhost:9465/metrics

NOTE: If the prometheus endpoint configured is overridden, please update the target in the above curl command.

CMake Instructions

The following libraries need to be installed before building the example with CMake -

  • absl
  • protobuf
  • prometheus-cpp
  • opentelemetry-cpp (with the options -DWITH_ABSEIL=ON -DWITH_PROMETHEUS=ON)
  • grpc (with the option -DgRPC_BUILD_GRPCPP_OTEL_PLUGIN=ON)

You can find a complete set of instructions for building gRPC and running the Hello World app in the C++ Quick Start.