otelcol.connector.host_info
otel.connector.host_info
接受来自其他 otelcol
组件的跟踪数据,并生成使用量指标。
用法
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 | 否 |
disable_high_cardinality_metrics
在 Grafana Alloy 中等同于 OpenTelemetry Collector 中的 telemetry.disableHighCardinalityMetrics
功能开关。它会移除可能导致高基数指标的属性。例如,关于 HTTP 和 gRPC 连接指标中包含 IP 地址和端口号的属性将被移除。
注意
如果配置了
disable_high_cardinality_metrics
,它仅适用于otelcol.exporter.*
和otelcol.receiver.*
组件。
导出的字段
以下字段被导出,可以被其他组件引用
名称 | 类型 | 描述 |
---|---|---|
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 = sys.env("PROMETHEUS_USERNAME")
password = sys.env("GRAFANA_CLOUD_API_KEY")
}
}
}
兼容组件
otelcol.connector.host_info
可以接受来自以下组件的参数
otelcol.connector.host_info
具有可被以下组件消费的导出项
注意
连接某些组件可能不合理,或者组件可能需要进一步配置才能使连接正常工作。请参考链接的文档了解更多详情。