DEV Community

Alex Spinov
Alex Spinov

Posted on

Grafana Alloy Has a Free Telemetry Collector — OpenTelemetry Made Simple

Observability Pipelines Are a Mess

You have Prometheus for metrics, Loki for logs, Tempo for traces. Each needs its own collector. Prometheus needs prometheus.yml, Loki needs promtail, Tempo needs the OTel collector. Three configs, three binaries, three things to maintain.

Grafana Alloy: One Collector for Everything

Grafana Alloy is a single binary that collects metrics, logs, traces, and profiles. It replaces Prometheus Agent, Promtail, and the OpenTelemetry Collector — all at once.

Free and Open Source

  • Apache 2.0 license — use anywhere
  • Single binary — one process, one config
  • OpenTelemetry native — OTLP in, OTLP out
  • Prometheus compatible — scrape any Prometheus target

One Config, All Telemetry

// Collect metrics
prometheus.scrape "app" {
  targets = [{__address__ = "localhost:8080"}]
  forward_to = [prometheus.remote_write.grafana_cloud.receiver]
}

// Collect logs
local.file_match "app_logs" {
  path_targets = [{__path__ = "/var/log/app/*.log"}]
}

loki.source.file "logs" {
  targets    = local.file_match.app_logs.targets
  forward_to = [loki.write.grafana_cloud.receiver]
}

// Collect traces
otelcol.receiver.otlp "traces" {
  grpc { endpoint = "0.0.0.0:4317" }
  http { endpoint = "0.0.0.0:4318" }
  output { traces = [otelcol.exporter.otlp.tempo.input] }
}
Enter fullscreen mode Exit fullscreen mode

Metrics, logs, and traces — one file.

Why Teams Switch to Alloy

1. Fewer Moving Parts

Before: Prometheus Agent + Promtail + OTel Collector = 3 binaries
After: Alloy = 1 binary

2. Built-in Service Discovery

Alloy discovers Kubernetes pods, Docker containers, EC2 instances automatically. No manual target lists.

3. Pipeline Processing

// Filter noisy logs before sending
loki.process "filter" {
  forward_to = [loki.write.grafana_cloud.receiver]

  stage.drop {
    expression = "healthcheck"
  }

  stage.json {
    expressions = { level = "level", msg = "message" }
  }
}
Enter fullscreen mode Exit fullscreen mode

Process, filter, and transform data before it leaves your infrastructure.

Alloy vs Alternatives

Feature Alloy OTel Collector Prometheus Agent
Metrics Yes Yes Yes
Logs Yes Yes No
Traces Yes Yes No
Config language Alloy (HCL-like) YAML YAML
Service discovery Built-in Limited Built-in
Debugging UI Yes No No

When to Use Alloy

  • Kubernetes clusters needing full observability
  • Teams using Grafana stack (Prometheus, Loki, Tempo)
  • Consolidating multiple collectors into one

Install

# Homebrew
brew install grafana/grafana/alloy

# Docker
docker run grafana/alloy

# Kubernetes
helm install alloy grafana/alloy
Enter fullscreen mode Exit fullscreen mode

Monitor your data pipelines with real data. 88+ scrapers on Apify for any website. Custom solutions: spinov001@gmail.com

Top comments (0)