---
title: "Compatible components | Grafana Cloud documentation"
description: "Learn about which components are compatible with each other in Grafana Alloy"
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# Compatible components

This section provides an overview of *some* of the possible connections between compatible components in Alloy.

For each common data type, we provide a list of compatible components that can export or consume it.

> Note
> 
> The type of export may not be the only requirement for chaining components together. The value of an attribute may matter as well as its type. Refer to each component’s documentation for more details on what values are acceptable.
> 
> For example:
> 
> - A Prometheus component may always expect an `"__address__"` label inside a list of targets.
> - A `string` argument may only accept certain values like “traceID” or “spanID”.

## Targets

Targets are a `list(map(string))` - a [list](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#naming-convention) of [maps](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#naming-convention) with [string](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#strings) values. They can contain different key-value pairs, and you can use them with a wide range of components. Some components require Targets to contain specific key-value pairs to work correctly. It’s recommended to always check component references for details when working with Targets.

### Targets Exporters

The following components, grouped by namespace, *export* Targets.

beyla

- [`beyla.ebpf`](/docs/grafana-cloud/send-data/alloy/reference/components/beyla/beyla.ebpf)

database\_observability

- [`database_observability.mysql`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.mysql)
- [`database_observability.postgres`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.postgres)
- [`database_observability.sql_server`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.sql_server)

discovery

- [`discovery.aws`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.aws)
- [`discovery.azure`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.azure)
- [`discovery.consul`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.consul)
- [`discovery.consulagent`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.consulagent)
- [`discovery.digitalocean`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.digitalocean)
- [`discovery.dns`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.dns)
- [`discovery.docker`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.docker)
- [`discovery.dockerswarm`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.dockerswarm)
- [`discovery.ec2`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.ec2)
- [`discovery.eureka`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.eureka)
- [`discovery.file`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.file)
- [`discovery.gce`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.gce)
- [`discovery.hetzner`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.hetzner)
- [`discovery.http`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.http)
- [`discovery.ionos`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.ionos)
- [`discovery.kubelet`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.kubelet)
- [`discovery.kubernetes`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.kubernetes)
- [`discovery.kuma`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.kuma)
- [`discovery.lightsail`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.lightsail)
- [`discovery.linode`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.linode)
- [`discovery.marathon`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.marathon)
- [`discovery.nerve`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.nerve)
- [`discovery.nomad`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.nomad)
- [`discovery.openstack`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.openstack)
- [`discovery.ovhcloud`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.ovhcloud)
- [`discovery.process`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.process)
- [`discovery.puppetdb`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.puppetdb)
- [`discovery.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.relabel)
- [`discovery.scaleway`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.scaleway)
- [`discovery.serverset`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.serverset)
- [`discovery.triton`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.triton)
- [`discovery.uyuni`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.uyuni)

local

- [`local.file_match`](/docs/grafana-cloud/send-data/alloy/reference/components/local/local.file_match)

prometheus

- [`prometheus.exporter.apache`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.apache)
- [`prometheus.exporter.azure`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.azure)
- [`prometheus.exporter.blackbox`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.blackbox)
- [`prometheus.exporter.cadvisor`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.cadvisor)
- [`prometheus.exporter.cloudwatch`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.cloudwatch)
- [`prometheus.exporter.consul`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.consul)
- [`prometheus.exporter.databricks`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.databricks)
- [`prometheus.exporter.dnsmasq`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.dnsmasq)
- [`prometheus.exporter.elasticsearch`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.elasticsearch)
- [`prometheus.exporter.gcp`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.gcp)
- [`prometheus.exporter.github`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.github)
- [`prometheus.exporter.kafka`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.kafka)
- [`prometheus.exporter.memcached`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.memcached)
- [`prometheus.exporter.mongodb`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.mongodb)
- [`prometheus.exporter.mssql`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.mssql)
- [`prometheus.exporter.mysql`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.mysql)
- [`prometheus.exporter.oracledb`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.oracledb)
- [`prometheus.exporter.postgres`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.postgres)
- [`prometheus.exporter.process`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.process)
- [`prometheus.exporter.redis`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.redis)
- [`prometheus.exporter.self`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.self)
- [`prometheus.exporter.snmp`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.snmp)
- [`prometheus.exporter.snowflake`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.snowflake)
- [`prometheus.exporter.squid`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.squid)
- [`prometheus.exporter.static`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.static)
- [`prometheus.exporter.statsd`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.statsd)
- [`prometheus.exporter.unix`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.unix)
- [`prometheus.exporter.windows`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.exporter.windows)

### Targets Consumers

The following components, grouped by namespace, *consume* Targets.

database\_observability

- [`database_observability.mysql`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.mysql)
- [`database_observability.postgres`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.postgres)
- [`database_observability.sql_server`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.sql_server)

discovery

- [`discovery.process`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.process)
- [`discovery.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/discovery/discovery.relabel)

local

- [`local.file_match`](/docs/grafana-cloud/send-data/alloy/reference/components/local/local.file_match)

loki

- [`loki.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.enrich)
- [`loki.source.docker`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.docker)
- [`loki.source.file`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.file)
- [`loki.source.kubernetes`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.kubernetes)

otelcol

- [`otelcol.processor.discovery`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.discovery)

prometheus

- [`prometheus.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.enrich)
- [`prometheus.scrape`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.scrape)

pyroscope

- [`pyroscope.ebpf`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.ebpf)
- [`pyroscope.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.enrich)
- [`pyroscope.java`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.java)
- [`pyroscope.scrape`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.scrape)

## Prometheus `MetricsReceiver`

The Prometheus metrics are sent between components using `MetricsReceiver`s. `MetricsReceiver`s are [capsules](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#capsules) that are exported by components that can receive Prometheus metrics. Components that can consume Prometheus metrics can be passed the `MetricsReceiver` as an argument. Use the following components to build your Prometheus metrics pipeline:

### Prometheus `MetricsReceiver` Exporters

The following components, grouped by namespace, *export* Prometheus `MetricsReceiver`.

otelcol

- [`otelcol.receiver.prometheus`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.prometheus)

prometheus

- [`prometheus.echo`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.echo)
- [`prometheus.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.enrich)
- [`prometheus.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.relabel)
- [`prometheus.remote_write`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.remote_write)

### Prometheus `MetricsReceiver` Consumers

The following components, grouped by namespace, *consume* Prometheus `MetricsReceiver`.

otelcol

- [`otelcol.exporter.prometheus`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.prometheus)

prometheus

- [`prometheus.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.enrich)
- [`prometheus.operator.podmonitors`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.operator.podmonitors)
- [`prometheus.operator.probes`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.operator.probes)
- [`prometheus.operator.scrapeconfigs`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.operator.scrapeconfigs)
- [`prometheus.operator.servicemonitors`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.operator.servicemonitors)
- [`prometheus.receive_http`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.receive_http)
- [`prometheus.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.relabel)
- [`prometheus.scrape`](/docs/grafana-cloud/send-data/alloy/reference/components/prometheus/prometheus.scrape)

## Loki `LogsReceiver`

`LogsReceiver` is a [capsule](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#capsules) that is exported by components that can receive Loki logs. Components that consume `LogsReceiver` as an argument typically send logs to it. Use the following components to build your Loki logs pipeline:

### Loki `LogsReceiver` Exporters

The following components, grouped by namespace, *export* Loki `LogsReceiver`.

database\_observability

- [`database_observability.postgres`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.postgres)

loki

- [`loki.echo`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.echo)
- [`loki.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.enrich)
- [`loki.process`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.process)
- [`loki.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.relabel)
- [`loki.secretfilter`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.secretfilter)
- [`loki.write`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.write)

otelcol

- [`otelcol.receiver.loki`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.loki)

### Loki `LogsReceiver` Consumers

The following components, grouped by namespace, *consume* Loki `LogsReceiver`.

database\_observability

- [`database_observability.mysql`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.mysql)
- [`database_observability.postgres`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.postgres)
- [`database_observability.sql_server`](/docs/grafana-cloud/send-data/alloy/reference/components/database_observability/database_observability.sql_server)

faro

- [`faro.receiver`](/docs/grafana-cloud/send-data/alloy/reference/components/faro/faro.receiver)

loki

- [`loki.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.enrich)
- [`loki.process`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.process)
- [`loki.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.relabel)
- [`loki.secretfilter`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.secretfilter)
- [`loki.source.api`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.api)
- [`loki.source.awsfirehose`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.awsfirehose)
- [`loki.source.azure_event_hubs`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.azure_event_hubs)
- [`loki.source.cloudflare`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.cloudflare)
- [`loki.source.docker`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.docker)
- [`loki.source.file`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.file)
- [`loki.source.gcplog`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.gcplog)
- [`loki.source.gelf`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.gelf)
- [`loki.source.heroku`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.heroku)
- [`loki.source.journal`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.journal)
- [`loki.source.kafka`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.kafka)
- [`loki.source.kubernetes`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.kubernetes)
- [`loki.source.kubernetes_events`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.kubernetes_events)
- [`loki.source.podlogs`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.podlogs)
- [`loki.source.syslog`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.syslog)
- [`loki.source.windowsevent`](/docs/grafana-cloud/send-data/alloy/reference/components/loki/loki.source.windowsevent)

otelcol

- [`otelcol.exporter.loki`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.loki)

## OpenTelemetry `otelcol.Consumer`

The OpenTelemetry data is sent between components using `otelcol.Consumer`s. `otelcol.Consumer`s are [capsules](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#capsules) that are exported by components that can receive OpenTelemetry data. Components that can consume OpenTelemetry data can be passed the `otelcol.Consumer` as an argument. Some components that use `otelcol.Consumer` only support a subset of telemetry signals, for example, only traces. Refer to the component reference pages for more details on what is supported. Use the following components to build your OpenTelemetry pipeline:

### OpenTelemetry `otelcol.Consumer` Exporters

The following components, grouped by namespace, *export* OpenTelemetry `otelcol.Consumer`.

otelcol

- [`otelcol.connector.count`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.count)
- [`otelcol.connector.host_info`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.host_info)
- [`otelcol.connector.servicegraph`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.servicegraph)
- [`otelcol.connector.signaltometrics`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.signaltometrics)
- [`otelcol.connector.spanlogs`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.spanlogs)
- [`otelcol.connector.spanmetrics`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.spanmetrics)
- [`otelcol.exporter.awss3`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.awss3)
- [`otelcol.exporter.datadog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.datadog)
- [`otelcol.exporter.debug`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.debug)
- [`otelcol.exporter.faro`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.faro)
- [`otelcol.exporter.file`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.file)
- [`otelcol.exporter.googlecloud`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.googlecloud)
- [`otelcol.exporter.googlecloudpubsub`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.googlecloudpubsub)
- [`otelcol.exporter.kafka`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.kafka)
- [`otelcol.exporter.loadbalancing`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.loadbalancing)
- [`otelcol.exporter.loki`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.loki)
- [`otelcol.exporter.otlp`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.otlp)
- [`otelcol.exporter.otlphttp`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.otlphttp)
- [`otelcol.exporter.prometheus`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.prometheus)
- [`otelcol.exporter.splunkhec`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.splunkhec)
- [`otelcol.exporter.syslog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.exporter.syslog)
- [`otelcol.processor.attributes`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.attributes)
- [`otelcol.processor.batch`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.batch)
- [`otelcol.processor.cumulativetodelta`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.cumulativetodelta)
- [`otelcol.processor.deltatocumulative`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.deltatocumulative)
- [`otelcol.processor.discovery`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.discovery)
- [`otelcol.processor.filter`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.filter)
- [`otelcol.processor.groupbyattrs`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.groupbyattrs)
- [`otelcol.processor.interval`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.interval)
- [`otelcol.processor.k8sattributes`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.k8sattributes)
- [`otelcol.processor.memory_limiter`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.memory_limiter)
- [`otelcol.processor.metric_start_time`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.metric_start_time)
- [`otelcol.processor.probabilistic_sampler`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.probabilistic_sampler)
- [`otelcol.processor.redaction`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.redaction)
- [`otelcol.processor.resourcedetection`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.resourcedetection)
- [`otelcol.processor.span`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.span)
- [`otelcol.processor.tail_sampling`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.tail_sampling)
- [`otelcol.processor.transform`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.transform)
- [`otelcol.receiver.googlecloudpubsub`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.googlecloudpubsub)

### OpenTelemetry `otelcol.Consumer` Consumers

The following components, grouped by namespace, *consume* OpenTelemetry `otelcol.Consumer`.

beyla

- [`beyla.ebpf`](/docs/grafana-cloud/send-data/alloy/reference/components/beyla/beyla.ebpf)

faro

- [`faro.receiver`](/docs/grafana-cloud/send-data/alloy/reference/components/faro/faro.receiver)

otelcol

- [`otelcol.connector.count`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.count)
- [`otelcol.connector.host_info`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.host_info)
- [`otelcol.connector.servicegraph`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.servicegraph)
- [`otelcol.connector.signaltometrics`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.signaltometrics)
- [`otelcol.connector.spanlogs`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.spanlogs)
- [`otelcol.connector.spanmetrics`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.connector.spanmetrics)
- [`otelcol.processor.attributes`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.attributes)
- [`otelcol.processor.batch`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.batch)
- [`otelcol.processor.cumulativetodelta`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.cumulativetodelta)
- [`otelcol.processor.deltatocumulative`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.deltatocumulative)
- [`otelcol.processor.discovery`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.discovery)
- [`otelcol.processor.filter`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.filter)
- [`otelcol.processor.groupbyattrs`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.groupbyattrs)
- [`otelcol.processor.interval`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.interval)
- [`otelcol.processor.k8sattributes`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.k8sattributes)
- [`otelcol.processor.memory_limiter`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.memory_limiter)
- [`otelcol.processor.metric_start_time`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.metric_start_time)
- [`otelcol.processor.probabilistic_sampler`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.probabilistic_sampler)
- [`otelcol.processor.redaction`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.redaction)
- [`otelcol.processor.resourcedetection`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.resourcedetection)
- [`otelcol.processor.span`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.span)
- [`otelcol.processor.tail_sampling`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.tail_sampling)
- [`otelcol.processor.transform`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.processor.transform)
- [`otelcol.receiver.awscloudwatch`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.awscloudwatch)
- [`otelcol.receiver.awsecscontainermetrics`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.awsecscontainermetrics)
- [`otelcol.receiver.awss3`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.awss3)
- [`otelcol.receiver.cloudflare`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.cloudflare)
- [`otelcol.receiver.datadog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.datadog)
- [`otelcol.receiver.faro`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.faro)
- [`otelcol.receiver.file_stats`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.file_stats)
- [`otelcol.receiver.filelog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.filelog)
- [`otelcol.receiver.fluentforward`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.fluentforward)
- [`otelcol.receiver.googlecloudpubsub`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.googlecloudpubsub)
- [`otelcol.receiver.influxdb`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.influxdb)
- [`otelcol.receiver.jaeger`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.jaeger)
- [`otelcol.receiver.kafka`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.kafka)
- [`otelcol.receiver.loki`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.loki)
- [`otelcol.receiver.nginx`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.nginx)
- [`otelcol.receiver.otlp`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.otlp)
- [`otelcol.receiver.prometheus`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.prometheus)
- [`otelcol.receiver.solace`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.solace)
- [`otelcol.receiver.splunkhec`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.splunkhec)
- [`otelcol.receiver.syslog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.syslog)
- [`otelcol.receiver.tcplog`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.tcplog)
- [`otelcol.receiver.vcenter`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.vcenter)
- [`otelcol.receiver.zipkin`](/docs/grafana-cloud/send-data/alloy/reference/components/otelcol/otelcol.receiver.zipkin)

## Pyroscope `ProfilesReceiver`

The Pyroscope profiles are sent between components using `ProfilesReceiver`s. `ProfilesReceiver`s are [capsules](/docs/alloy/latest/get-started/configuration-syntax/expressions/types_and_values/#capsules) that are exported by components that can receive Pyroscope profiles. Components that can consume Pyroscope profiles can be passed the `ProfilesReceiver` as an argument. Use the following components to build your Pyroscope profiles pipeline:

### Pyroscope `ProfilesReceiver` Exporters

The following components, grouped by namespace, *export* Pyroscope `ProfilesReceiver`.

pyroscope

- [`pyroscope.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.enrich)
- [`pyroscope.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.relabel)
- [`pyroscope.write`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.write)

### Pyroscope `ProfilesReceiver` Consumers

The following components, grouped by namespace, *consume* Pyroscope `ProfilesReceiver`.

pyroscope

- [`pyroscope.ebpf`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.ebpf)
- [`pyroscope.enrich`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.enrich)
- [`pyroscope.java`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.java)
- [`pyroscope.receive_http`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.receive_http)
- [`pyroscope.relabel`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.relabel)
- [`pyroscope.scrape`](/docs/grafana-cloud/send-data/alloy/reference/components/pyroscope/pyroscope.scrape)
