OpenTelemetry Config Generator

Generate an OpenTelemetry Collector configuration in your browser.

  • Runs locally in your browser
  • No upload required

Try it

otlp, prometheus, filelog, hostmetrics, jaeger.

batch, memory_limiter, attributes, resource.

otlp, file, prometheus.

traces, metrics, logs.

File
otel-collector.yaml
Pipelines
traces
Content
# Generated in the browser — review this file and adapt it to your project before committing. receivers: otlp: protocols: grpc: endpoint: collector:4317 processors: batch: timeout: 5s exporters: otlp: endpoint: collector:4317 service: pipelines: traces: receivers: [otlp] processors: [batch] exporters: [otlp]
# Generated in the browser — review this file and adapt it to your project before committing.
receivers:
  otlp:
    protocols:
      grpc:
        endpoint: collector:4317
processors:
  batch:
    timeout: 5s
exporters:
  otlp:
    endpoint: collector:4317
service:
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlp]

Supported formats

Input
text
Output
text

Privacy

Runs entirely in your browser. Your input is never uploaded, stored, or sent to a third party.

Processing
In your browser
Privacy level
Browser only

Generated an OpenTelemetry Collector config with 2 pipeline(s).

How it works

  • Declared receiver(s): otlp.
  • Declared processor(s): batch, memory_limiter.
  • Declared exporter(s): otlp.
  • Wired pipelines for traces, metrics.
  • Validate the result with `otelcol validate --config <file>` before deploying.
  • Endpoints are configuration, not credentials; use environment interpolation for secrets.

Methodology

  1. Validate the selected components against the documented component ids.
  2. Emit one key per selected receiver, processor and exporter with a minimal valid block.
  3. Emit `service.pipelines.<signal>` for each selected signal, referencing only declared stages.

Usage

  1. Select the receivers, processors and exporters you need.
  2. Choose the signals to pipeline and set the OTLP endpoint.
  3. Copy the generated collector configuration.

Examples

These are examples, not current values: they use fixed inputs, while the interactive tool computes live results in your browser.

OTLP traces and metrics

jsonSelect to copy
{
  "receivers": [
    "otlp"
  ],
  "processors": [
    "batch",
    "memory_limiter"
  ],
  "exporters": [
    "otlp"
  ],
  "signals": [
    "traces",
    "metrics"
  ],
  "endpoint": "collector:4317"
}

Limitations

How a collector config is structured

Receivers accept data, processors transform it, and exporters send it. The `service.pipelines` section binds a signal to an ordered list of each, so every referenced component must exist in the top-level maps.

Frequently asked questions

Does the config embed an exporter token?
No. Endpoints are plain settings; supply any credential through a collector environment variable.
Why is a pipeline generated per signal?
The collector requires each enabled signal to have a pipeline that references declared components, so one entry per selected signal keeps the config valid.

Sources

  1. OpenTelemetry Collector configuration — OpenTelemetry