Get started with Tulip
Try Tulip in five minutes
You’ll run Tulip in Docker, send it test traces, and watch them come out the other side. All you need is Docker and Go.
Save a minimal configuration as
config.yaml. It receives OTLP and prints everything to the console:receivers:otlp:protocols:grpc:endpoint: 0.0.0.0:4317http:endpoint: 0.0.0.0:4318exporters:debug:verbosity: detailedservice:pipelines:traces:receivers: [otlp]exporters: [debug]Run the container with that configuration:
Terminal window docker run --rm \-p 4317:4317 -p 4318:4318 \-v $(pwd)/config.yaml:/etc/tulip/config.yaml \cr.olly.garden/ollygarden/tulip/tulip:latestTagged versions are listed in the container registry.
From another terminal, send a few test traces:
Terminal window go run github.com/open-telemetry/opentelemetry-collector-contrib/cmd/telemetrygen@latest \traces --otlp-endpoint localhost:4317 --otlp-insecure --rate 1 --duration 5sWatch the spans appear in the container’s output. That’s a working Tulip pipeline; from here, replace the debug exporter with your real backend.
Replace your existing Collector
Tulip is a distribution of the upstream OpenTelemetry Collector, so migrating means swapping the image and keeping the configuration you already have.
Check your configuration against the supported component set. Using components outside the set is fine: fork the manifest, add what you need, and build your own image. Just know where support ends. OllyGarden supports the components in the official manifest; anything you add is yours to manage, with best-effort guidance from us.
Point your deployment at the Tulip image (
cr.olly.garden/ollygarden/tulip/tulip).Roll out the way you would any Collector upgrade: one instance first, compare its telemetry output against the instance it replaced, then the fleet.
Build from source
git clone https://github.com/ollygarden/tulipcd tulipmake build./distributions/tulip/_build/tulip --config=distributions/tulip/config.yamlNext: see which components are supported and how releases and support work.