Available Distributions

Available Distributions

Ocelot provides several pre-defined distributions in config/distributions.yaml. You can use them as-is or as a base for your own custom distributions.

DistributionDescriptionBaseKey Build Tags / Components
defaultBase upstream componentsnoneIncludes standard upstream components like OTLP receiver, OTLP exporter, Batch processor, etc. Does not include the lambdacomponents.custom tag.
fullAll available upstream and custom componentsnonelambdacomponents.custom, lambdacomponents.all
minimalOTLP receiver, Batch processor, Decouple processor, OTLP/HTTP exporternonereceiver.otlp, processor.batch, processor.decouple, exporter.otlphttp
minimal-clickhouseMinimal + ClickHouse exporterminimalexporter.clickhouse
minimal-s3exportMinimal + AWS S3 exporterminimalexporter.awss3
minimal-asmauthMinimal + AWS Secrets Manager Auth extensionminimalextension.asmauthextension
minimal-signaltometricsMinimal + Signal to Metrics connectorminimalconnector.signaltometrics
minimal-spaneventtologMinimal + Span Event to Log connectorminimalconnector.spaneventtolog
minimal-forwarderMinimal + Multiple connectors & extensions for the Serverless OTLP forwarderminimalconnector.signaltometrics, connector.spaneventtolog, extension.asmauthextension

Note

The lambdacomponents. prefix is omitted from the “Key Build Tags” column for brevity. All tags are prefixed accordingly (e.g., exporter.clickhouse is actually lambdacomponents.exporter.clickhouse).

How to Define a New Distribution

To define a new distribution, add an entry to the distributions map in config/distributions.yaml.

Example: Creating a “minimal-prometheus” Distribution

Let’s say you need a minimal build that can send metrics to Prometheus.

  1. Open config/distributions.yaml.
  2. Add a new entry. We’ll use minimal as a base to inherit its components and add the prometheusremotewrite exporter.
distributions:
  # ... other distributions
  minimal:
    # ...
  
  minimal-prometheus:
    description: "Minimal + Prometheus Remote Write exporter"
    base: minimal
    build-tags:
      - "lambdacomponents.exporter.prometheusremotewrite"
  1. Build your new distribution:
uv run tools/ocelot.py --distribution minimal-prometheus

That’s it! Ocelot will combine the build tags from minimal with lambdacomponents.exporter.prometheusremotewrite to create the exact layer you need.