gitwtfhub

wtf is opentelemetry-collector-contrib?

open-telemetry/opentelemetry-collector-contrib — explained in plain English

Analysis updated 2026-06-26

4,654GoAudience · ops devopsComplexity · 4/5LicenseSetup · moderate

TL;DR

This is the community extension library for the OpenTelemetry Collector, a middleware tool that collects performance traces, metrics, and logs from your app and routes them to Datadog, Splunk, Honeycomb, or any other analytics platform.

Mindmap

mindmap
  root((otel-contrib))
    What it does
      Collect telemetry
      Process and filter
      Route to platforms
    Tech stack
      Go
      OpenTelemetry
      CNCF
    Component types
      Receivers
      Processors
      Exporters
      Connectors
    Stability levels
      Development
      Alpha
      Beta
      Stable
    Supported platforms
      Datadog
      Splunk
      Honeycomb
      Elastic

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Add a Datadog or Honeycomb exporter to your OpenTelemetry Collector setup to ship traces to your preferred observability platform.

REASON 2

Use a contrib processor to filter or transform telemetry data before it leaves your infrastructure.

REASON 3

Build a custom lean Collector binary containing only the specific components your stack needs, reducing attack surface and binary size.

REASON 4

Ingest logs or metrics from a specific system using a contrib receiver not available in the core Collector.

What's in the stack?

GoOpenTelemetryCNCF

How it stacks up

open-telemetry/opentelemetry-collector-contribcdk-team/cdkcrazy-max/diun
Stars4,6544,6544,653
LanguageGoGoGo
Setup difficultymoderateeasymoderate
Complexity4/54/52/5
Audienceops devopsops devopsops devops

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Requires Go build environment, best used with the OTel Collector Builder to avoid shipping the full contrib binary.

Apache 2.0, use freely for any purpose including commercial, keep copyright notices intact.

Wtf does this do

OpenTelemetry is an open-source project that helps software teams collect data about how their applications are behaving in production: things like request traces, performance metrics, and log events. The Collector is the piece that sits between your running software and whatever system you use to store and analyze that data. It receives telemetry, processes it, and ships it onward. This repository, "opentelemetry-collector-contrib", is the community extension warehouse for the Collector. The core Collector repository contains the stable, officially maintained components. This contrib repository is where components live that are either experimental, vendor-specific, or maintained by individual contributors rather than the core team. Examples of things you find here include connectors to specific observability platforms, processors for transforming or filtering data, and receivers that can ingest telemetry from particular systems. Each component in this repository carries a stability label, which can be Development, Alpha, Beta, or Stable. A single component can be at different stability levels for different signal types: for example, it might be Stable for traces but still Alpha for metrics. The README is clear that the contrib maintainers may downgrade or remove components if they are no longer actively maintained. Support for any given component comes either from the broader community of contrib maintainers, or from a specific vendor that contributed and owns that component. The maintainers listed in the README represent engineers from companies including Honeycomb, Elastic, Splunk, Snowflake, Dynatrace, DataDog, and others. Users who want a lean setup are encouraged to build a custom Collector distribution containing only the components they actually need, rather than shipping the full contrib binary. A tool called the OpenTelemetry Collector Builder is provided for that purpose. The repo is part of the larger OpenTelemetry project under the Cloud Native Computing Foundation.

Yoink these prompts

Prompt 1
How do I add the Datadog exporter from opentelemetry-collector-contrib to my Collector config to forward traces and metrics?
Prompt 2
Show me a Collector config YAML that uses a contrib processor to filter out spans with status OK before exporting.
Prompt 3
How do I use the OpenTelemetry Collector Builder to create a custom distribution with only the receivers and exporters I need?
Prompt 4
Which contrib receiver should I use to ingest Prometheus metrics into the OpenTelemetry Collector pipeline?

Frequently asked questions

wtf is opentelemetry-collector-contrib?

This is the community extension library for the OpenTelemetry Collector, a middleware tool that collects performance traces, metrics, and logs from your app and routes them to Datadog, Splunk, Honeycomb, or any other analytics platform.

What language is opentelemetry-collector-contrib written in?

Mainly Go. The stack also includes Go, OpenTelemetry, CNCF.

What license does opentelemetry-collector-contrib use?

Apache 2.0, use freely for any purpose including commercial, keep copyright notices intact.

How hard is opentelemetry-collector-contrib to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is opentelemetry-collector-contrib for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.