diff --git a/CHANGELOG.md b/CHANGELOG.md index adfbd70d53..10f098b408 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,17 @@ v1.9.1 - 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.duration` 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. + v1.9.0 ----------------- diff --git a/docs/sources/reference/components/otelcol/otelcol.auth.oauth2.md b/docs/sources/reference/components/otelcol/otelcol.auth.oauth2.md index a1ee65cc70..d453ba83b0 100644 --- a/docs/sources/reference/components/otelcol/otelcol.auth.oauth2.md +++ b/docs/sources/reference/components/otelcol/otelcol.auth.oauth2.md @@ -70,8 +70,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` @@ -85,6 +87,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="" >}} +### `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="" >}} + ## Exported fields The following fields are exported and can be referenced by other components: diff --git a/docs/sources/reference/components/otelcol/otelcol.connector.spanmetrics.md b/docs/sources/reference/components/otelcol/otelcol.connector.spanmetrics.md index b5dacd4973..3e975dd186 100644 --- a/docs/sources/reference/components/otelcol/otelcol.connector.spanmetrics.md +++ b/docs/sources/reference/components/otelcol/otelcol.connector.spanmetrics.md @@ -107,21 +107,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 | +| `histogram` > [`explicit`][explicit] | Configuration for a histogram with explicit buckets. | no | +| `histogram` > [`exponential`][exponential] | Configuration for a histogram with exponential buckets. | no | +| [`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 | 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 @@ -170,7 +173,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: @@ -187,6 +190,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]. @@ -197,7 +204,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 diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.datadog.md b/docs/sources/reference/components/otelcol/otelcol.exporter.datadog.md index 634463f507..643780f287 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.datadog.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.datadog.md @@ -184,10 +184,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` diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.kafka.md b/docs/sources/reference/components/otelcol/otelcol.exporter.kafka.md index 411a5da840..14a7ac4d7b 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.kafka.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.kafka.md @@ -63,24 +63,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. @@ -93,12 +96,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` @@ -155,6 +160,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="" >}} +### `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="" >}} + ### `debug_metrics` {{< docs/shared lookup="reference/components/otelcol-debug-metrics-block.md" source="alloy" version="" >}} @@ -188,6 +199,31 @@ Refer to the [Go sarama documentation][CompressionCodec] for more information. [RequiredAcks]: https://pkg.go.dev/github.com/IBM/sarama@v1.43.2#RequiredAcks [CompressionCodec]: https://pkg.go.dev/github.com/IBM/sarama@v1.43.2#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. diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.loadbalancing.md b/docs/sources/reference/components/otelcol/otelcol.exporter.loadbalancing.md index bec74137bf..909e2bf8d7 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.loadbalancing.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.loadbalancing.md @@ -106,6 +106,7 @@ You can use the following blocks with `otelcol.exporter.loadbalancing`: | `protocol` > `otlp` > [`client`][client] | Configures the exporter gRPC client. | no | | `protocol` > `otlp` > `client` > [`keepalive`][keepalive] | Configures keepalive settings for the gRPC client. | no | | `protocol` > `otlp` > `client` > [`tls`][tls] | Configures TLS for the gRPC client. | no | +| `protocol` > `otlp` > `client` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | `protocol` > `otlp` > [`queue`][queue] | Configures batching of data before sending. | no | | `protocol` > `otlp` > [`retry`][retry] | Configures retry mechanism for failed requests. | no | | [`queue`][queue] | Configures batching of data before sending to the `otlp > protocol` exporter. | no | @@ -132,6 +133,7 @@ There are two types of [queue][] and [retry][] blocks: [otlp]: #otlp [client]: #client [tls]: #tls +[tpm]: #tpm [keepalive]: #keepalive [queue]: #queue [retry]: #retry @@ -294,6 +296,12 @@ The `tls` block configures TLS settings used for the connection to the gRPC serv {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ### `queue` The `queue` block configures an in-memory buffer of batches before data is sent to the gRPC server. diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.otlp.md b/docs/sources/reference/components/otelcol/otelcol.exporter.otlp.md index e32b8271ac..f9dcca3da0 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.otlp.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.otlp.md @@ -50,6 +50,7 @@ You can use the following blocks with `otelcol.exporter.otlp`: | [`client`][client] | Configures the gRPC client to send telemetry data to. | yes | | `client` > [`keepalive`][keepalive] | Configures keepalive settings for the gRPC client. | no | | `client` > [`tls`][tls] | Configures TLS for the gRPC client. | no | +| `client` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | 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 | @@ -59,6 +60,7 @@ For example, `client` > `tls` refers to a `tls` block defined inside a `client` [client]: #client [tls]: #tls +[tpm]: #tpm [keepalive]: #keepalive [sending_queue]: #sending_queue [retry_on_failure]: #retry_on_failure @@ -127,6 +129,12 @@ server. {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + {{< admonition type="note" >}} `otelcol.exporter.otlp` uses gRPC, which doesn't allow you to send sensitive credentials like `auth` over insecure channels. Sending sensitive credentials over insecure non-TLS connections is supported by non-gRPC exporters such as [`otelcol.exporter.otlphttp`][otelcol.exporter.otlphttp]. diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.otlphttp.md b/docs/sources/reference/components/otelcol/otelcol.exporter.otlphttp.md index d5809b7cc0..39c99eed4d 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.otlphttp.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.otlphttp.md @@ -57,6 +57,7 @@ You can use the following blocks with `otelcol.exporter.otlphttp`: | `client` > [`compression_params`][compression_params] | Configure advanced compression options. | no | | `client` > [`cookies`][cookies] | Store cookies from server responses and reuse them in subsequent requests. | no | | `client` > [`tls`][tls] | Configures TLS for the HTTP client. | no | +| `client` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | 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 | @@ -66,6 +67,7 @@ For example, `client` > `tls` refers to a `tls` block defined inside a `client` [client]: #client [tls]: #tls +[tpm]: #tpm [cookies]: #cookies [compression_params]: #compression_params [sending_queue]: #sending_queue @@ -144,6 +146,12 @@ The `tls` block configures TLS settings used for the connection to the HTTP serv {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ### `debug_metrics` {{< docs/shared lookup="reference/components/otelcol-debug-metrics-block.md" source="alloy" version="" >}} diff --git a/docs/sources/reference/components/otelcol/otelcol.exporter.syslog.md b/docs/sources/reference/components/otelcol/otelcol.exporter.syslog.md index 4b5fde68d6..e613b47e86 100644 --- a/docs/sources/reference/components/otelcol/otelcol.exporter.syslog.md +++ b/docs/sources/reference/components/otelcol/otelcol.exporter.syslog.md @@ -84,8 +84,13 @@ You can use the following blocks with `otelcol.exporter.syslog`: | [`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 a TCP connection. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [sending_queue]: #sending_queue [retry_on_failure]: #retry_on_failure [debug_metrics]: #debug_metrics @@ -112,6 +117,12 @@ The `tls` block configures TLS settings used for a connection to a TCP syslog se {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ## Exported fields The following fields are exported and can be referenced by other components: diff --git a/docs/sources/reference/components/otelcol/otelcol.extension.jaeger_remote_sampling.md b/docs/sources/reference/components/otelcol/otelcol.extension.jaeger_remote_sampling.md index 1391a1524c..bcf66dd6e4 100644 --- a/docs/sources/reference/components/otelcol/otelcol.extension.jaeger_remote_sampling.md +++ b/docs/sources/reference/components/otelcol/otelcol.extension.jaeger_remote_sampling.md @@ -49,11 +49,13 @@ You can use the following blocks with `otelcol.extension.jaeger_remote_sampling` | [`http`][http] | Configures the HTTP server to serve Jaeger remote sampling. | no | | `http` > [`cors`][cors] | Configures CORS for the HTTP server. | no | | `http` > [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `http` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`grpc`][grpc] | Configures the gRPC server to serve Jaeger remote sampling. | no | | `grpc` > [`keepalive`][keepalive] | Configures keepalive settings for the configured server. | no | | `grpc` > `keepalive` > [`enforcement_policy`][enforcement_policy] | Enforcement policy for keepalive settings. | no | | `grpc` > `keepalive` > [`server_parameters`][server_parameters] | Server parameters used to configure keepalive settings. | no | | `grpc` > [`tls`][tls] | Configures TLS for the gRPC server. | no | +| `grpc` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no | The > symbol indicates deeper levels of nesting. @@ -61,6 +63,7 @@ For example, `grpc` > `tls` refers to a `tls` block defined inside a `grpc` bloc [http]: #http [tls]: #tls +[tpm]: #tpm [cors]: #cors [grpc]: #grpc [keepalive]: #keepalive @@ -146,6 +149,12 @@ This `tls` block configures TLS settings used for the connection to the gRPC ser {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ### `http` The `http` block configures an HTTP server which serves the Jaeger remote sampling document. @@ -189,6 +198,12 @@ isn't provided, TLS won't be used for connections to the server. {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ### `grpc` The `grpc` block configures a gRPC server which serves the Jaeger remote sampling document. diff --git a/docs/sources/reference/components/otelcol/otelcol.processor.resourcedetection.md b/docs/sources/reference/components/otelcol/otelcol.processor.resourcedetection.md index 2026e3a7ed..09ae5bdabc 100644 --- a/docs/sources/reference/components/otelcol/otelcol.processor.resourcedetection.md +++ b/docs/sources/reference/components/otelcol/otelcol.processor.resourcedetection.md @@ -805,6 +805,12 @@ The `tls` block configures TLS settings used for the connection to the gRPC serv {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + #### `openshift` > `resource_attributes` The `resource_attributes` block supports the following blocks: diff --git a/docs/sources/reference/components/otelcol/otelcol.processor.tail_sampling.md b/docs/sources/reference/components/otelcol/otelcol.processor.tail_sampling.md index ed78d36acb..7d254556c7 100644 --- a/docs/sources/reference/components/otelcol/otelcol.processor.tail_sampling.md +++ b/docs/sources/reference/components/otelcol/otelcol.processor.tail_sampling.md @@ -154,12 +154,14 @@ The following arguments are supported: Each policy results in a decision, and the processor evaluates them to make a final decision: -* When there's an "inverted not sample" decision, the trace isn't sampled. +* When there's an "inverted not sample" decision, the trace isn't sampled. ***Deprecated*** * When there's a "sample" decision, the trace is sampled. -* When there's an "inverted sample" decision and no "not sample" decisions, the trace is sampled. +* When there's an "inverted sample" decision and no "not sample" decisions, the trace is sampled. ***Deprecated*** * In all other cases, the trace isn't sampled. An "inverted" decision is the one made based on the `invert_match` attribute, such as the one from the string, numeric or boolean tag policy. +There is an exception to this if the policy is within an and or composite policy, the resulting decision will be either sampled or not sampled. +The "inverted" decisions have been deprecated, please make use of `drop` policy to explicitly not sample select traces. ### `boolean_attribute` diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.datadog.md b/docs/sources/reference/components/otelcol/otelcol.receiver.datadog.md index 2a0a696a30..f88d3b05ff 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.datadog.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.datadog.md @@ -62,8 +62,13 @@ You can use the following blocks with `otelcol.receiver.datadog`: | [`cors`][cors] | Configures CORS for the HTTP server. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no | | [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [cors]: #cors [debug_metrics]: #debug_metrics [output]: #output @@ -107,6 +112,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.datadog` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.filelog.md b/docs/sources/reference/components/otelcol/otelcol.receiver.filelog.md index 529d87fbd9..421599f22e 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.filelog.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.filelog.md @@ -73,7 +73,8 @@ Refer to the upstream receiver [documentation][encoding-documentation] for more `start_at` must be one of `beginning` or `end`. The `header` block may only be used if `start_at` is `beginning`. -`compression` must be either `` or `gzip`. +`compression` must be either `""`, `gzip`, or `auto`. `auto` automatically detects file compression type and ingests data. +Currently, only gzip compressed files are auto detected. This allows for mix of compressed and uncompressed files to be ingested with the same filelogreceiver. To persist state between restarts of the {{< param "PRODUCT_NAME" >}} process, set the `storage` attribute to the `handler` exported from an `otelcol.storage.*` component. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.influxdb.md b/docs/sources/reference/components/otelcol/otelcol.receiver.influxdb.md index 06e587dd5d..7a696fe1a0 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.influxdb.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.influxdb.md @@ -58,8 +58,13 @@ You can use the following blocks with `otelcol.receiver.influxdb`: | [`cors`][cors] | Configures CORS for the HTTP server. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates. | no | | [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [cors]: #cors [debug_metrics]: #debug_metrics [output]: #output @@ -103,6 +108,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.influxdb` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.jaeger.md b/docs/sources/reference/components/otelcol/otelcol.receiver.jaeger.md index cc2e460634..f8e3411b26 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.jaeger.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.jaeger.md @@ -56,12 +56,14 @@ You can use the following blocks with `otelcol.receiver.jaeger`: | [`protocols`][protocols] | Configures the protocols the component can accept traffic over. | yes | | `protocols` > [`grpc`][grpc] | Configures a Jaeger gRPC server to receive traces. | no | | `protocols` > `grpc` > [`tls`][tls] | Configures TLS for the gRPC server. | no | +| `protocols` > `grpc` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | `protocols` > `grpc` > [`keepalive`][keepalive] | Configures keepalive settings for the configured server. | no | | `protocols` > `grpc` > `keepalive` > [`server_parameters`][server_parameters] | Server parameters used to configure keepalive settings. | no | | `protocols` > `grpc` > `keepalive` > [`enforcement_policy`][enforcement_policy] | Enforcement policy for keepalive settings. | no | | `protocols` > [`thrift_http`][thrift_http] | Configures a Thrift HTTP server to receive traces. | no | | `protocols` > `thrift_http` > [`cors`][cors] | Configures CORS for the Thrift HTTP server. | no | | `protocols` > `thrift_http` > [`tls`][tls] | Configures TLS for the Thrift HTTP server. | no | +| `protocols` > `thrift_http` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | `protocols` > [`thrift_binary`][thrift_binary] | Configures a Thrift binary UDP server to receive traces. | no | | `protocols` > [`thrift_compact`][thrift_compact] | Configures a Thrift compact UDP server to receive traces. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no | @@ -72,6 +74,7 @@ For example, `protocols` > `grpc` refers to a `grpc` block defined inside a `pro [protocols]: #protocols [grpc]: #grpc [tls]: #tls +[tpm]: #tpm [keepalive]: #keepalive [server_parameters]: #server_parameters [enforcement_policy]: #enforcement_policy @@ -123,6 +126,12 @@ If the `tls` block isn't provided, TLS isn't used for connections to the server. {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ### `keepalive` The `keepalive` block configures keepalive settings for connections to a gRPC server. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.kafka.md b/docs/sources/reference/components/otelcol/otelcol.receiver.kafka.md index 1e31c5e025..3e06810910 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.kafka.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.kafka.md @@ -106,6 +106,7 @@ You can use the following blocks with `otelcol.receiver.kafka`: | `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] | (Deprecated) Configures TLS for connecting to the Kafka brokers. | no | +| `authentication` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`autocommit`][autocommit] | Configures how to automatically commit updated topic offsets to back 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 | @@ -117,6 +118,7 @@ You can use the following blocks with `otelcol.receiver.kafka`: | [`metrics`][metrics] | Configures how to send metrics to Kafka brokers. | no | | [`traces`][traces] | Configures how to send traces to Kafka brokers. | no | | [`tls`][tls][] | Configures TLS for connecting to the Kafka brokers. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | The > symbol indicates deeper levels of nesting. For example, `authentication` > `tls` refers to a `tls` block defined inside an `authentication` block. @@ -129,6 +131,7 @@ 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 @@ -199,6 +202,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="" >}} +### `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="" >}} + ### `autocommit` The `autocommit` block configures how to automatically commit updated topic offsets back to the Kafka brokers. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.opencensus.md b/docs/sources/reference/components/otelcol/otelcol.receiver.opencensus.md index dfa406f80e..760115505c 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.opencensus.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.opencensus.md @@ -74,11 +74,13 @@ You can use the following blocks with `otelcol.receiver.opencensus`: | `keepalive` > [`enforcement_policy`][enforcement_policy] | Enforcement policy for keepalive settings. | no | | `keepalive` > [`server_parameters`][server_parameters] | Server parameters used to configure keepalive settings. | no | | [`tls`][tls] | Configures TLS for the gRPC server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | The > symbol indicates deeper levels of nesting. For example, `keepalive` > `enforcesment_policy` refers to an `enforcement_policy` block defined inside a `keepalive` block. [tls]: #tls +[tpm]: #tpm [keepalive]: #keepalive [server_parameters]: #server_parameters [enforcement_policy]: #enforcement_policy @@ -134,6 +136,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.opencensus` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.otlp.md b/docs/sources/reference/components/otelcol/otelcol.receiver.otlp.md index 10855c7876..209deefa52 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.otlp.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.otlp.md @@ -56,15 +56,18 @@ You can use the following blocks with `otelcol.receiver.otlp`: | `grpc` > `keepalive` > [`enforcement_policy`][enforcement_policy] | Enforcement policy for keepalive settings. | no | | `grpc` > `keepalive` > [`server_parameters`][server_parameters] | Server parameters used to configure keepalive settings. | no | | `grpc` > [`tls`][tls] | Configures TLS for the gRPC server. | no | +| `grpc` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`http`][http] | Configures the HTTP server to receive telemetry data. | no | | `http` > [`cors`][cors] | Configures CORS for the HTTP server. | no | | `http` > [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `http` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | The > symbol indicates deeper levels of nesting. For example, `grpc` > `tls` refers to a `tls` block defined inside a `grpc` block. [grpc]: #grpc [tls]: #tls +[tpm]: #tpm [keepalive]: #keepalive [server_parameters]: #server_parameters [enforcement_policy]: #enforcement_policy @@ -140,6 +143,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ### `http` The `http` block configures the HTTP server used by the component. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.solace.md b/docs/sources/reference/components/otelcol/otelcol.receiver.solace.md index 29385e4e49..6929d20d31 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.solace.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.solace.md @@ -62,6 +62,7 @@ You can use the following blocks with `otelcol.receiver.solace`: | [`flow`][flow] | Configures the behaviour to use when temporary errors are encountered from the next component. | no | | `flow` > [`delayed_retry`][delayed_retry] | Sets the flow control strategy to `delayed retry` which will wait before trying to push the message to the next component again. | no | | [`tls`][tls] | Configures TLS for connecting to the Solace broker. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | The > symbol indicates deeper levels of nesting. For example, `authentication` > `tls` refers to a `tls` block defined inside an `authentication` block. @@ -75,6 +76,7 @@ One SASL authentication block is required in the `authentication` block. [sasl_xauth2]: #sasl_xauth2 [sasl_external]: #sasl_external [tls]: #tls +[tpm]: #tpm [flow]: #flow [delayed_retry]: #delayed_retry [debug_metrics]: #debug_metrics @@ -98,7 +100,7 @@ It doesn't support any arguments and is configured fully through inner blocks. ### `sasl_external` -The `sasl_xauth2` block configures how to authenticate to the Solace broker with SASL External. +The `sasl_external` block configures how to authenticate to the Solace broker with SASL External. It doesn't support any arguments or blocks. It must be used with the [`tls`][tls] block. @@ -147,6 +149,12 @@ The following arguments are supported: {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.solace` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.splunkhec.md b/docs/sources/reference/components/otelcol/otelcol.receiver.splunkhec.md index be0ffbc419..118b07dc52 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.splunkhec.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.splunkhec.md @@ -68,8 +68,13 @@ You can use the following blocks with `otelcol.receiver.splunkhec`: | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no | | [`hec_metadata_to_otel_attrs`][hec_metadata_to_otel_attrs] | Configures OpenTelemetry attributes from HEC metadata. | no | | [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [cors]: #cors [debug_metrics]: #debug_metrics [output]: #output @@ -136,6 +141,12 @@ If the `tls` block isn't provided, TLS isn't used for connections to the server. {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.splunkhec` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.syslog.md b/docs/sources/reference/components/otelcol/otelcol.receiver.syslog.md index 1639b1eaab..49b48859bb 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.syslog.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.syslog.md @@ -87,6 +87,7 @@ You can use the following blocks with `otelcol.receiver.syslog`: | [`tcp`][tcp] | Configures a TCP syslog server to receive syslog messages. | no* | | `tcp` > [`multiline`][multiline] | Configures rules for multiline parsing of incoming messages | no | | `tcp` > [`tls`][tls] | Configures TLS for the TCP syslog server. | no | +| `tcp` > `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | | [`udp`][udp] | Configures a UDP syslog server to receive syslog messages. | no* | | `udp` > [`async`][async] | Configures rules for asynchronous parsing of incoming messages. | no | | `udp` > [`multiline`][multiline] | Configures rules for multiline parsing of incoming messages. | no | @@ -97,6 +98,7 @@ For example, `tcp` > `tls` refers to a `tls` block defined inside a `tcp` block. A syslog receiver must have either a `udp` or `tcp` block configured. [tls]: #tls +[tpm]: #tpm [udp]: #udp [tcp]: #tcp [multiline]: #multiline @@ -173,6 +175,12 @@ isn't provided, TLS won't be used for connections to the server. {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ### `udp` The `udp` block configures a UDP syslog server. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.tcplog.md b/docs/sources/reference/components/otelcol/otelcol.receiver.tcplog.md index 0c6b421b61..f7a61e8bca 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.tcplog.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.tcplog.md @@ -64,8 +64,13 @@ You can use the following blocks with `otelcol.receiver.tcplog`: | [`multiline`][multiline] | Configures rules for multiline parsing of incoming messages | no | | [`retry_on_failure`][retry_on_failure] | Configures the retry behavior when the receiver encounters an error downstream in the pipeline. | no | | [`tls`][tls] | Configures TLS for the TCP server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [multiline]: #multiline [retry_on_failure]: #retry_on_failure [debug_metrics]: #debug_metrics @@ -118,6 +123,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.tcplog` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.vcenter.md b/docs/sources/reference/components/otelcol/otelcol.receiver.vcenter.md index c1e8d34456..53e541200a 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.vcenter.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.vcenter.md @@ -78,8 +78,13 @@ You can use the following blocks with `otelcol.receiver.vcenter`: | [`metrics`][metrics] | Configures which metrics will be sent to downstream components. | no | | [`resource_attributes`][resource_attributes] | Configures resource attributes for metrics sent to downstream components. | no | | [`tls`][tls] | Configures TLS for the HTTP client. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [debug_metrics]: #debug_metrics [metrics]: #metrics [resource_attributes]: #resource_attributes @@ -211,6 +216,12 @@ isn't provided, TLS won't be used for connections to the server. {{< docs/shared lookup="reference/components/otelcol-tls-client-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.vcenter` doesn't export any fields. diff --git a/docs/sources/reference/components/otelcol/otelcol.receiver.zipkin.md b/docs/sources/reference/components/otelcol/otelcol.receiver.zipkin.md index 346a0f8db5..083cf76802 100644 --- a/docs/sources/reference/components/otelcol/otelcol.receiver.zipkin.md +++ b/docs/sources/reference/components/otelcol/otelcol.receiver.zipkin.md @@ -59,8 +59,13 @@ You can use the following blocks with `otelcol.receiver.zipkin`: | [`cors`][cors] | Configures CORS for the HTTP server. | no | | [`debug_metrics`][debug_metrics] | Configures the metrics that this component generates to monitor its state. | no | | [`tls`][tls] | Configures TLS for the HTTP server. | no | +| `tls` > [`tpm`][tpm] | Configures TPM settings for the TLS key_file. | no | + +The > symbol indicates deeper levels of nesting. +For example, `tls` > `tpm` refers to a `tpm` block defined inside a `tls` block. [tls]: #tls +[tpm]: #tpm [cors]: #cors [debug_metrics]: #debug_metrics [output]: #output @@ -104,6 +109,12 @@ If the `tls` block isn't provided, TLS won't be used for connections to the serv {{< docs/shared lookup="reference/components/otelcol-tls-server-block.md" source="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="" >}} + ## Exported fields `otelcol.receiver.zipkin` doesn't export any fields. diff --git a/docs/sources/shared/reference/components/otelcol-tls-tpm-block.md b/docs/sources/shared/reference/components/otelcol-tls-tpm-block.md new file mode 100644 index 0000000000..10ebfac2e5 --- /dev/null +++ b/docs/sources/shared/reference/components/otelcol-tls-tpm-block.md @@ -0,0 +1,38 @@ +--- +canonical: https://grafana.com/docs/alloy/latest/shared/reference/components/otelcol-tls-client-block/ +description: Shared content, otelcol tls client block +headless: true +--- + +The following arguments are supported: + +| Name | Type | Description | Default | Required | +|--------------|----------|--------------------------------------------------------------------|---------|----------| +| `auth` | `string` | The authorization value used to authenticate the TPM device. | `""` | no | +| `enabled` | `bool` | Load the `tls.key_file` from TPM. | `false` | no | +| `owner_auth` | `string` | The owner authorization value used to authenticate the TPM device. | `""` | no | +| `path` | `string` | Path to the TPM device or Unix domain socket. | `""` | no | + +The [trusted platform module][tpm] (TPM) configuration can be used for loading TLS key from TPM. Currently only TSS2 format is supported. + +The `path` attribute is not supported on Windows. + +### Example + +```alloy +otelcol.example.component "