Prerequisites
- An OpenTelemetry Collector that your services can reach. Legacy Jaeger clients need Collector
Contrib (
otelcol-contrib). - An ingest key in the Collector’s environment as
SQUASHER_API_KEY. See Create an ingest key.
Forward OTLP traces
Current Jaeger clients and OpenTelemetry SDKs send OTLP. Keep them pointed at your Collector, and add Squasher as an exporter:otel-collector-config.yaml
Translate legacy Jaeger clients
Use the Jaeger receiver when a client still sends Jaeger gRPC or Thrift. Turn on only the protocols that your clients use.otel-collector-config.yaml
What Squasher keeps
Squasher creates an issue only from a span with
ERROR status. When the Collector translates
Jaeger data, it sets that status from the error tag. Check one error trace before you migrate.
Verify
- Send one trace from a known service, and one trace with an error span.
- In Squasher, select Traces in the sidebar.
- Open the trace. Check the spans, status, attributes, Events, and Links.
- Select Issues in the sidebar. The error span is an issue.
Limits
- Jaeger remote sampling does not move with the traces. To keep errors and slow traces while you drop routine ones, use tail sampling.
- Legacy Jaeger protocols carry no metrics or logs.
Next steps
Tail sampling
Keep error and slow traces and drop routine ones.
OpenTelemetry
See the endpoint and what Squasher does with each signal.