Skip to content

OpenTelemetry Collector

Key idea:

OpenTelemetry Collector — a standalone process that collects telemetry (traces/metrics/logs) from applications and forwards it to a backend. Architecture: receivers (OTLP/Jaeger/Prometheus) → processors (batch, attributes, tail-sampling) → exporters (Jaeger/Tempo/Datadog/Kafka). Vendor independence: switching backends only touches config.yaml. Runs as a DaemonSet in K8s or as a sidecar.

Below: details, example, related terms, FAQ.

Check your site →

Details

  • Receivers: OTLP (gRPC+HTTP), Jaeger, Zipkin, Prometheus, Kafka
  • Processors: batch, memory_limiter, attributes, resource, tail_sampling
  • Exporters: Jaeger, Tempo, Datadog, NewRelic, Honeycomb, Kafka, OTLP
  • Deployment: agent (DaemonSet) + gateway (central cluster)
  • Config: YAML, hot-reloaded via SIGHUP

Example

# collector.yaml — minimal
receivers:
  otlp:
    protocols:
      grpc: { endpoint: 0.0.0.0:4317 }
processors:
  batch:
exporters:
  otlp/tempo:
    endpoint: tempo:4317
    tls: { insecure: true }
service:
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlp/tempo]

Related

How to Configure OpenTelemetry Collector

Configuring the OpenTelemetry Collector involves setting up the config.yaml file, which defines the components of the collector, including receivers, processors, and exporters. Here’s a step-by-step guide to configure the OpenTelemetry Collector.

1. Define Receivers: Receivers are components that listen for incoming telemetry data. For example, to receive data via the OpenTelemetry Protocol (OTLP), you can configure the receiver as follows:

receivers:  
  otlp:  
    protocols:  
      grpc:  
      http:

2. Add Processors: Processors modify or enhance the telemetry data before it is sent to the backend. A common processor is the batch processor, which batches multiple telemetry data points together:

processors:  
  batch:  
    timeout: 5s  
    send_batch_size: 1024

3. Set Up Exporters: Exporters send the processed telemetry data to the desired backend. For example, to export data to Jaeger, use the following configuration:

exporters:  
  jaeger:  
    endpoint: "http://jaeger:14268/api/traces"

4. Connect Components: Finally, you need to connect the receivers, processors, and exporters in the pipeline:

service:  
  pipelines:  
    traces:  
      receivers: [otlp]  
      processors: [batch]  
      exporters: [jaeger]

Once configured, you can start the OpenTelemetry Collector, and it will begin processing telemetry data according to your specifications.

OpenTelemetry Collector vs. Other Monitoring Tools

The OpenTelemetry Collector is often compared to other monitoring tools due to its unique architecture and vendor-agnostic capabilities. Here’s how it stacks up against some popular alternatives:

  • Prometheus: While Prometheus is a powerful metrics collection tool, it is primarily focused on scraping metrics from endpoints. The OpenTelemetry Collector, however, can collect metrics, traces, and logs, providing a more comprehensive observability solution.
  • Jaeger: Jaeger is a distributed tracing tool that can be used alongside the OpenTelemetry Collector. While Jaeger focuses on trace data, the collector can aggregate multiple data types (traces, metrics, logs) and forward them to Jaeger or any other backend, making it more flexible.
  • Datadog: Datadog is a commercial monitoring solution that offers built-in support for metrics and logs. However, it lacks the vendor independence that the OpenTelemetry Collector provides. With OpenTelemetry, switching backends only requires changes in the config.yaml file, whereas with Datadog, users are often locked into its ecosystem.

Overall, the OpenTelemetry Collector serves as a versatile middle layer that can integrate with various observability tools, making it a preferred choice for organizations seeking flexibility and scalability in monitoring.

Common Use Cases for OpenTelemetry Collector

The OpenTelemetry Collector is widely used across various industries for its ability to streamline telemetry data collection and processing. Here are some common use cases:

  • Microservices Architecture: In a microservices environment, applications are often distributed across multiple services. The OpenTelemetry Collector can be deployed as a sidecar in each service container, allowing for seamless collection and forwarding of traces, metrics, and logs to a centralized backend.
  • Cloud-Native Applications: When running applications in Kubernetes, the OpenTelemetry Collector can be deployed as a DaemonSet. This ensures that it runs on every node in the cluster, collecting telemetry data from all running pods without requiring changes to individual applications.
  • Performance Monitoring: Organizations use the OpenTelemetry Collector to monitor application performance by collecting metrics such as response times, error rates, and resource utilization. By sending this data to a backend like Prometheus or Datadog, teams can create dashboards and alerts to proactively manage application health.
  • Log Aggregation: The collector can also handle log data, making it easier to correlate logs with traces and metrics. This is particularly useful for debugging and troubleshooting issues in complex distributed systems.

These use cases demonstrate the OpenTelemetry Collector's versatility and effectiveness in providing comprehensive observability in modern application architectures.

Score 0–100Unified site health score
SSL + SecuritySecurity and certificate status
PerformanceResponse speed and caching
SEO Signalsrobots.txt, sitemap, canonicals

Why teams trust us

100
point scale
SSL
SSL + HTTP headers
10+
scoring criteria
Free
no signup

How it works

1

Enter site URL

2

Analyse 10+ factors

3

Get overall score

What is Health Score?

Health Score is a comprehensive assessment of site technical health across 20+ parameters: SSL, security headers, response speed, SEO technical factors, and availability.

Comprehensive Score

20+ parameters in one number: SSL, headers, speed, SEO technical factors.

Detailed Breakdown

Each parameter with explanation — what is checked, what was found, how to fix.

Score Trends

Compare Health Score at different dates — see progress or regression.

Health Monitoring

Set up automated Health Score checks and get notified when the score drops.

Who uses this

Developers

quick pre-release audit

SEO

technical baseline score

Marketers

client site check

Security

header security audit

Common Mistakes

Ignoring red parametersA red parameter is a critical issue. Start fixing those, not the yellow ones.
Only checking homepageIssues may exist on subpages. Check key sections and landing pages.
Not re-checking after fixAfter each fix, rerun the check and verify the score improved.
Treating 80+ as good enoughAim for 95+. Every red item is a risk to SEO or security.

Best Practices

Fix by priorityRed > yellow > blue. Critical issues first.
Check regularlyWeekly Health Score check helps catch degradation before it affects SEO.
Use monitoringConnect an automated HTTP monitor — it will be the first to notice downtime.
Compare with competitorsCheck the Health Score of your nearest competitor — a great benchmark for prioritization.

Get more with a free account

Health Score check history and real-time site health monitoring.

Sign up free

Learn more

Frequently Asked Questions

Need a Collector if the SDK has exporters?

Prototype — no, the SDK writes directly. Production — yes: batching, retry, tail-sampling, cross-signal correlation are Collector work.

Overhead?

20-50 MB RAM per agent, < 1 % CPU at 10k spans/sec.

Contrib vs Core?

Core — OTel-supported components only. Contrib — 100+ community receivers (Redis, Postgres, K8s events).

Try the live tool that powered this guide

Free plan — 10 monitors, checks every 5 min, no card required. Upgrade for 1-minute interval and multi-region monitoring.