Ingesting spans and metrics using OpenTelemetry Protocol

OpenTelemetry protocol (OTLP) specifies how to send and accept telemetry data in a vendor-agnostic way.

To start sending data, you can install OpenTelemetry distro configured to work with Uptrace. Uptrace uses OpenTelemetry protocol (OTLP) to receive telemetry data, for example, spansopen in new window, metricsopen in new window, and logs. As a transport protocol, OTLP can use gRPC (OTLP/gRPC) or HTTP (OTLP/HTTP).

Uptrace supports OTLP/gRPC on the port 14317 and OTLP/HTTP on the port 14318. The port is specified in the Uptrace DSN that you will receive after installing Uptrace, for example:

# OTLP/gRPC
UPTRACE_DSN=http://project2_secret_token@localhost:14317/2

# OTLP/HTTP
UPTRACE_DSN=http://project2_secret_token@localhost:14318/2
DistroProtocolPort
uptrace-goOTLP/gRPC14317
uptrace-dotnetOTLP/gRPC14317
uptrace-pythonOTLP/gRPC14317
uptrace-nodeOTLP/HTTP14318
uptrace-rubyOTLP/HTTP14318
uptrace-javaOTLP/HTTP14317

For example, to run basic Go exampleopen in new window, you need to use OTLP/gRPC and port 14317:

UPTRACE_DSN=http://<project_token>:localhost:14317/<project_id> go run .

But to run basic Node.js exampleopen in new window, you need to use OTLP/HTTP and port 14318:

UPTRACE_DSN=http://<project_token>:localhost:14318/<project_id> node main.js

You can also try tutorials for the most popular frameworks:

Last Updated: