Skip to content

Update otel deps from v0.125.0 to v0.126.0 #3781

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Jun 10, 2025
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,17 @@ Main (unreleased)

- Fix elevated CPU usage when using some `otelcol` components due to debug logging. (@thampiotr)

### Other changes

- Upgrade `otelcol` components from OpenTelemetry v0.125.0 to v0.126.0 (@dehaansa):
- [`pkg/ottl`] Add support for `HasPrefix` and `HasSuffix` functions.
- [`pkg/configtls`] Add trusted platform module (TPM) support to TLS authentication for all `otelcol` components supporting TLS.
- [`otelcol.connector.spanmetrics`] Add `calls_dimension` and `histogram:dimension` blocks for configuring additional dimensions for `traces.span.metrics.calls` and `traces.span.metrics.
- [`otelcol.exporter.datadog`] Enable `instrumentation_scope_metadata_as_tags` by default.
- [`otelcol.exporter.kafka`] support configuration of `compression` `level` in producer configuration.
- [`otelcol.processor.tailsampling`] `invert sample` and `inverted not sample` decisions deprecated, use the `drop` policy instead to explicitly not sample traces.
- [`otelcol.receiver.filelog`] support `compression` value of `auto` to automatically detect file compression type.duration` metrics

v1.9.0
-----------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,10 @@ You can use the following blocks with `otelcol.auth.oauth2`:
| -------------------------------- | -------------------------------------------------------------------------- | -------- |
| [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no |
| [`tls`][tls] | TLS settings for the token client. | no |
| `tls` > [`tpm`][tpm] | TPM settings for the TLS key_file. | no |

[tls]: #tls
[tpm]: #tpm
[debug_metrics]: #debug_metrics

### `debug_metrics`
Expand All @@ -83,6 +85,12 @@ If the `tls` block isn't provided, TLS won't be used for communication.

{{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="alloy" version="<ALLOY_VERSION>" >}}

### `tpm`

The `tpm` block configures retrieving the TLS `key_file` from a trusted device.

{{< docs/shared lookup="reference/components/otelcol-tls-tpm-block.md" source="alloy" version="<ALLOY_VERSION>" >}}

## Exported fields

The following fields are exported and can be referenced by other components:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,21 +105,24 @@ A value of `0` means no limit is applied.

You can use the following blocks with `otelcol.connector.spanmetrics`:

| Block | Description | Required |
| ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
| [`histogram`][histogram] | Configures the histogram derived from spans durations. | yes |
| [`output`][output] | Configures where to send telemetry data. | yes |
| [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no |
| [`dimension`][dimension] | Dimensions to be added in addition to the default ones. | no |
| [`events`][events] | Configures the events metric. | no |
| `events` > [`dimension`][dimension] | Span event attributes to add as dimensions to the events metric, _on top of_ the default ones and the ones configured in the top-level `dimension` block. | no |
| [`exemplars`][exemplars] | Configures how to attach exemplars to histograms. | no |
| `histogram` > [`explicit`][explicit] | Configuration for a histogram with explicit buckets. | no |
| `histogram` > [`exponential`][exponential] | Configuration for a histogram with exponential buckets. | no |
| Block | Description | Required |
|--------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|
| [`histogram`][histogram] | Configures the histogram derived from spans durations. | yes |
| `histogram` > [`dimension`][dimension] | Span event attributes to add as dimensions to the duration metric, _on top of_ the default ones and the ones configured in the top-level `dimension` block | no |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CC @clayton-cornell - as this block is nested, I wanted it by its parent, however the parent is required and it is not. Thoughts?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All good. There are cases like that scattered throughout the component docs. I clustered them exactly like this. This makes sense.

| [`output`][output] | Configures where to send telemetry data. | yes |
| [`calls_dimension`][calls_dimension] | Span event attributes to add as dimensions to the calls metric, _on top of_ the default ones and the ones configured in the top-level `dimension` block | no |
| [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no |
| [`dimension`][dimension] | Dimensions to be added in addition to the default ones. | no |
| [`events`][events] | Configures the events metric. | no |
| `events` > [`dimension`][dimension] | Span event attributes to add as dimensions to the events metric, _on top of_ the default ones and the ones configured in the top-level `dimension` block. | no |
| [`exemplars`][exemplars] | Configures how to attach exemplars to histograms. | no |
| `histogram` > [`explicit`][explicit] | Configuration for a histogram with explicit buckets. | no |
| `histogram` > [`exponential`][exponential] | Configuration for a histogram with exponential buckets. | no |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd move these two up with the parent histogram block as well.


You must specify either an [`exponential`][exponential] or an [`explicit`][explicit] block.
You can't specify both blocks in the same configuration.

[calls_dimension]: #calls_dimension
[dimension]: #dimension
[histogram]: #histogram
[exponential]: #exponential
Expand Down Expand Up @@ -168,7 +171,7 @@ The default dimensions are:
* `span.kind`
* `status.code`

The default dimensions are always added. If no additional dimensions are specified, only the default ones will be added.
The default dimensions are always added if not listed in `exclude_dimensions`. If no additional dimensions are specified, only the default ones will be added.

The following attributes are supported:

Expand All @@ -185,6 +188,10 @@ If the attribute is missing in both the span and resource attributes:
* If `default` isn't set, the dimension will be omitted.
* If `default` is set, the dimension will be added and its value will be set to the value of `default`.

### `calls_dimension`

The attributes and behavior of the `calls_dimension` block match the [`dimension`][dimension] block.

### `events`

The `events` block configures the `events` metric, which tracks [span events][span-events].
Expand All @@ -195,7 +202,7 @@ The following attributes are supported:
| --------- | ------ | -------------------------- | ------- | -------- |
| `enabled` | `bool` | Enables all events metric. | `false` | no |

At least one `dimension` block is required if `enabled` is set to `true`.
At least one nested `dimension` block is required if `enabled` is set to `true`.

[span-events]: https://opentelemetry.io/docs/concepts/signals/traces/#span-events

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -182,10 +182,10 @@ The `exporter` block configures the metric exporter settings.

The following arguments are supported:

| Name | Type | Description | Default | Required |
| ---------------------------------------- | ------ | ------------------------------------------------------------------------------------ | ------- | -------- |
| `instrumentation_scope_metadata_as_tags` | `bool` | Set to `true` to add metadata about the instrumentation scope that created a metric. | `false` | no |
| `resource_attributes_as_tags` | `bool` | Set to `true` to add resource attributes of a metric to its metric tags. | `false` | no |
| Name | Type | Description | Default | Required |
| ---------------------------------------- | ------ |-------------------------------------------------------------------------------------------|---------| -------- |
| `instrumentation_scope_metadata_as_tags` | `bool` | Set to `false` to not add metadata about the instrumentation scope that created a metric. | `true` | no |
| `resource_attributes_as_tags` | `bool` | Set to `true` to add resource attributes of a metric to its metric tags. | `false` | no |

### `histograms`

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,24 +61,27 @@ When `topic_from_attribute` is set, it will take precedence over the `topic` arg

You can use the following blocks with `otelcol.exporter.kafka`:

| Block | Description | Required |
| ------------------------------------------------ | --------------------------------------------------------------------------- | -------- |
| [`authentication`][authentication] | Configures authentication for connecting to Kafka brokers. | no |
| `authentication` > [`kerberos`][kerberos] | Authenticates against Kafka brokers with Kerberos. | no |
| `authentication` > [`plaintext`][plaintext] | Authenticates against Kafka brokers with plaintext. | no |
| `authentication` > [`sasl`][sasl] | Authenticates against Kafka brokers with SASL. | no |
| `authentication` > `sasl` > [`aws_msk`][aws_msk] | Additional SASL parameters when using AWS_MSK_IAM. | no |
| `authentication` > [`tls`][tls] | Configures TLS for connecting to the Kafka brokers. | no |
| [`debug_metrics`][debug_metrics] | Configures the metrics which this component generates to monitor its state. | no |
| [`logs`][logs] | Configures how to send logs to Kafka brokers. | no |
| [`metadata`][metadata] | Configures how to retrieve metadata from Kafka brokers. | no |
| `metadata` > [`retry`][retry] | Configures how to retry metadata retrieval. | no |
| [`metrics`][metrics] | Configures how to send metrics to Kafka brokers. | no |
| [`producer`][producer] | Kafka producer configuration, | no |
| [`retry_on_failure`][retry_on_failure] | Configures retry mechanism for failed requests. | no |
| [`sending_queue`][sending_queue] | Configures batching of data before sending. | no |
| [`tls`][tls] | Configures TLS for connecting to the Kafka brokers. | no |
| [`traces`][traces] | Configures how to send traces to Kafka brokers. | no |
| Block | Description | Required |
|---------------------------------------------------------|-----------------------------------------------------------------------------|----------|
| [`authentication`][authentication] | Configures authentication for connecting to Kafka brokers. | no |
| `authentication` > [`kerberos`][kerberos] | Authenticates against Kafka brokers with Kerberos. | no |
| `authentication` > [`plaintext`][plaintext] | Authenticates against Kafka brokers with plaintext. | no |
| `authentication` > [`sasl`][sasl] | Authenticates against Kafka brokers with SASL. | no |
| `authentication` > `sasl` > [`aws_msk`][aws_msk] | Additional SASL parameters when using AWS_MSK_IAM. | no |
| `authentication` > [`tls`][tls] | Configures TLS for connecting to the Kafka brokers. | no |
| `authentication` > `tls` > [`tpm`][tpm] | Configures TPM for the TLS `key_file. | no |
| [`debug_metrics`][debug_metrics] | Configures the metrics which this component generates to monitor its state. | no |
| [`logs`][logs] | Configures how to send logs to Kafka brokers. | no |
| [`metadata`][metadata] | Configures how to retrieve metadata from Kafka brokers. | no |
| `metadata` > [`retry`][retry] | Configures how to retry metadata retrieval. | no |
| [`metrics`][metrics] | Configures how to send metrics to Kafka brokers. | no |
| [`producer`][producer] | Kafka producer configuration, | no |
| `producer` > [`compression_params`][compression_params] | Configures the compression parameters for the kafka producer. | no |
| [`retry_on_failure`][retry_on_failure] | Configures retry mechanism for failed requests. | no |
| [`sending_queue`][sending_queue] | Configures batching of data before sending. | no |
| [`tls`][tls] | Configures TLS for connecting to the Kafka brokers. | no |
| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no |
| [`traces`][traces] | Configures how to send traces to Kafka brokers. | no |

The > symbol indicates deeper levels of nesting.
For example, `authentication` > `tls` refers to a `tls` block defined inside an `authentication` block.
Expand All @@ -91,12 +94,14 @@ For example, `authentication` > `tls` refers to a `tls` block defined inside an
[sasl]: #sasl
[aws_msk]: #aws_msk
[tls]: #tls
[tpm]: #tpm
[kerberos]: #kerberos
[metadata]: #metadata
[retry]: #retry
[retry_on_failure]: #retry_on_failure
[sending_queue]: #sending_queue
[producer]: #producer
[compression_params]: #compression_params
[debug_metrics]: #debug_metrics

### `logs`
Expand Down Expand Up @@ -153,6 +158,12 @@ If the `tls` block isn't provided, TLS won't be used for communication.

{{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="alloy" version="<ALLOY_VERSION>" >}}

### `tpm`

The `tpm` block configures retrieving the TLS `key_file` from a trusted device.

{{< docs/shared lookup="reference/components/otelcol-tls-tpm-block.md" source="alloy" version="<ALLOY_VERSION>" >}}

### `debug_metrics`

{{< docs/shared lookup="reference/components/otelcol-debug-metrics-block.md" source="alloy" version="<ALLOY_VERSION>" >}}
Expand Down Expand Up @@ -186,6 +197,31 @@ Refer to the [Go sarama documentation][CompressionCodec] for more information.
[RequiredAcks]: https://pkg.go.dev/github.com/IBM/[email protected]#RequiredAcks
[CompressionCodec]: https://pkg.go.dev/github.com/IBM/[email protected]#CompressionCodec

### `compression_params`

The `compression_params` block configures the producer compression parameters.

The following argument is supported:

| Name | Type | Description | Default | Required |
| -------------------- | -------- | --------------------------------------------------- | --------- | -------- |
| `level` | `int` | The level of compression to use on messages. | `-1` | no |

The following levels are valid combinations of `compression` and `level`:

| Compression | Value | Description |
|-------------|-------|------------------------|
| `gzip` | `1` | BestSpeed |
| `gzip` | `9` | BestCompression |
| `gzip` | `1-` | DefaultCompression |
| `zstd` | `1` | SpeedFastest |
| `zstd` | `3` | SpeedDefault |
| `zstd` | `6` | SpeedBetterCompression |
| `zstd` | `11` | SpeedBestCompression |


`lz4` and `snappy` do not currently support compression levels in this component.

### `retry_on_failure`

The `retry_on_failure` block configures how failed requests to Kafka are retried.
Expand Down
Loading
Loading