Lightstep
If you want to use Lightstep as the trace data store, you'll configure the OpenTelemetry Collector to receive traces from your system and then send them to both Tracetest and Lightstep. And, you don't have to change your existing pipelines to do so.
Examples of configuring Tracetest with Lightstep can be found in the examples
folder of the Tracetest GitHub repo.
Configuring OpenTelemetry Collector to Send Traces to both Lightstep and Tracetest​
In your OpenTelemetry Collector config file:
- Set the
exporter
tootlp/tracetest
- Set the
endpoint
to your Tracetest instance on port4317
If you are running Tracetest with Docker, and Tracetest's service name is tracetest
, then the endpoint might look like this http://tracetest:4317
Additionally, add another config:
- Set the
exporter
tootlp/lightstep
- Set the
endpoint
pointing to your Lightstep account and the Lightstep ingest API - Set your Lightstep access token as a
header
# collector.config.yaml
# If you already have receivers declared, you can just ignore
# this one and still use yours instead.
receivers:
otlp:
protocols:
grpc:
http:
processors:
batch:
timeout: 100ms
exporters:
logging:
logLevel: debug
# OTLP for Tracetest
otlp/tracetest:
endpoint: tracetest:4317 # Send traces to Tracetest. Read more in docs here: https://docs.tracetest.io/configuration/connecting-to-data-stores/opentelemetry-collector
tls:
insecure: true
# OTLP for Lightstep
otlp/lightstep:
endpoint: ingest.lightstep.com:443
headers:
"lightstep-access-token": "<lightstep_access_token>" # Send traces to Lightstep. Read more in docs here: https://docs.lightstep.com/otel/otel-quick-start
service:
pipelines:
# Your probably already have a traces pipeline, you don't have to change it.
# Add these two to your configuration. Just make sure to not have two
# pipelines with the same name
traces/tracetest:
receivers: [otlp] # your receiver
processors: [batch]
exporters: [otlp/tracetest] # your exporter pointing to your tracetest instance
traces/lightstep:
receivers: [otlp] # your receiver
processors: [batch]
exporters: [logging, otlp/lightstep] # your exporter pointing to your lighstep account
Configure Tracetest to Use Lightstep as a Trace Data Store​
Configure your Tracetest instance to expose an otlp
endpoint to make it aware it will receive traces from the OpenTelemetry Collector. This will expose Tracetest's trace receiver on port 4317
.
Connect Tracetest to Lightstep with the Web UI​
In the Web UI, (1) open Settings, and, on the (2) Trace Ingestion tab, select (3) Lightstep.
Connect Tracetest to Lightstep with the CLI​
Or, if you prefer using the CLI, you can use this file config.
type: DataStore
spec:
name: Lightstep pipeline
type: lightstep
default: true
Proceed to run this command in the terminal and specify the file above.
tracetest apply datastore -f my/data-store/file/location.yaml