OpenTelemetry Collector 主机信息连接器
otel.connector.host_info
接收来自其他 otelcol
组件的 span 数据并生成使用情况指标。
用法
otelcol.connector.host_info "LABEL" {
output {
metrics = [...]
}
}
参数
otelcol.connector.host_info
支持以下参数
名称 | 类型 | 描述 | 默认值 | 必填 |
---|---|---|---|---|
host_identifiers | list(string) | 用于识别唯一主机的资源属性的有序列表。 | ["host.id"] | 否 |
metrics_flush_interval | duration | 生成指标的刷新频率。 | "60s" | 否 |
块
以下块在 otelcol.connector.host_info
的定义中受支持
层级结构 | 块 | 描述 | 必填 |
---|---|---|---|
output | output | 配置发送接收到的遥测数据的位置。 | 是 |
debug_metrics | debug_metrics | 配置此组件生成的用于监视其状态的指标。 | 否 |
output 块
output
块配置一组组件以将生成的遥测数据转发到这些组件。
支持以下参数
名称 | 类型 | 描述 | 默认值 | 必填 |
---|---|---|---|---|
metrics | list(otelcol.Consumer) | 要发送指标到的消费者列表。 | [] | 否 |
必须指定 output
块,但其所有参数都是可选的。默认情况下,遥测数据会被丢弃。相应地配置 metrics
参数以将遥测数据发送到其他组件。
debug_metrics 块
debug_metrics
块配置此组件生成的用于监视其状态的指标。
支持以下参数
名称 | 类型 | 描述 | 默认值 | 必填 |
---|---|---|---|---|
disable_high_cardinality_metrics | boolean | 是否禁用某些高基数指标。 | true | 否 |
level | string | 控制包装的收集器发出的指标的详细程度。 | "detailed" | 否 |
disable_high_cardinality_metrics
等效于 OpenTelemetry Collector 中的 telemetry.disableHighCardinalityMetrics
功能开关。它删除可能导致高基数指标的属性。例如,删除有关 HTTP 和 gRPC 连接的指标中包含 IP 地址和端口号的属性。
注意
如果已配置,disable_high_cardinality_metrics
仅适用于otelcol.exporter.*
和otelcol.receiver.*
组件。
level
等效于 OpenTelemetry Collector 中的 telemetry.metrics.level
功能开关。可能的值为 "none"
、"basic"
、"normal"
和 "detailed"
。
导出字段
导出以下字段,其他组件可以引用这些字段
名称 | 类型 | 描述 |
---|---|---|
input | otelcol.Consumer | 其他组件可用于向其发送遥测数据的值。 |
input
接收 otelcol.Consumer
跟踪遥测数据。它不接受指标和日志。
示例
以下示例接收跟踪,通过 otelcol.processor.resourcedetection
组件添加 host.id
资源属性,从这些跟踪创建使用情况指标,并将指标写入 Mimir。
otelcol.receiver.otlp "otlp" {
http {}
grpc {}
output {
traces = [otelcol.processor.resourcedetection.otlp_resources.input]
}
}
otelcol.processor.resourcedetection "otlp_resources" {
detectors = ["system"]
system {
hostname_sources = [ "os" ]
resource_attributes {
host.id {
enabled = true
}
}
}
output {
traces = [otelcol.connector.host_info.default.input]
}
}
otelcol.connector.host_info "default" {
output {
metrics = [otelcol.exporter.prometheus.otlp_metrics.input]
}
}
otelcol.exporter.prometheus "otlp_metrics" {
forward_to = [prometheus.remote_write.default.receiver]
}
prometheus.remote_write "default" {
endpoint {
url = "https://prometheus-xxx.grafana.net/api/prom/push"
basic_auth {
username = env("PROMETHEUS_USERNAME")
password = env("GRAFANA_CLOUD_API_KEY")
}
}
}
兼容组件
otelcol.connector.host_info
可以接受来自以下组件的参数
otelcol.connector.host_info
具有可被以下组件使用的导出
注意
连接某些组件可能没有意义,或者组件可能需要进一步配置才能使连接正常工作。有关更多详细信息,请参阅链接的文档。