OpenTelemetry
Humanlog supports ingesting OpenTelemetry data right out of the box.
What is OpenTelemetry
OpenTelemetry, often abbreviated as OTEL, is a standardized framework for emitting telemetry data that decouples your metrics, logging, and tracing code from specific vendors. It provides:
- SDKs for major programming languages, enabling comprehensive logging, tracing, and metric collection
- Well-defined wire protocols (HTTP/JSON, gRPC) that create an ecosystem of interchangeable and compatible components from various vendors
- Standardized definitions for logging, tracing, and metrics
- Reference implementations of "exporters" and "collectors" that serve as canonical examples
This architecture allows developers to integrate a single, vendor-neutral telemetry mechanism into their applications. As a result, observability data can be directed to various endpoints and vendors without concern about vendor lock-in.
Using With Humanlog
When running as a service, the humanlog
CLI supports both OpenTelemetry protocols (OTLP):
- OTLP/gRPC on
http://localhost:4317
- OTLP/HTTP on
http://localhost:4318
By debugging your telemetry data locally with Humanlog, you can verify your instrumentation works correctly before deploying to production—shortening feedback loops and keeping sensitive data on your machine.
Learn more about OTLP in the official OpenTelemetry documentation.
These ports are configured in the config file at the following path:
$ humanlog config show | jq '.runtime.experimental_features.serve_localhost.otlp'
{
"grpc_port": 4317,
"http_port": 4318
}
Learn more about the configuration file in the CLI documentation.