4.4. Exporters
导出器将数据发送到一个或多个后端或目的地。导出器可以基于推送或拉取 (pull)。默认情况下,不会配置导出器。必须配置一个或多个导出器。导出器可以支持一个或多个数据源。导出器可能会与其默认设置一起使用,但许多导出器需要配置来至少指定目标和安全设置。
目前,红帽构建的 OpenTelemetry 提供了以下正式发行(GA)和技术预览导出器:
4.4.1. OTLP Exporter 复制链接链接已复制到粘贴板!
OTLP gRPC Exporter 使用 OpenTelemetry 协议 (OTLP) 导出追踪和指标。
OpenTelemetry Collector 自定义资源带有启用的 OTLP Exporter
- 1
- OTLP gRPC 端点。如果使用
https://
方案,则启用客户端传输安全性并覆盖tls
中的不安全
设置。 - 2
- 客户端 TLS 配置。定义 TLS 证书的路径。
- 3
- 当设置为
true
时禁用客户端传输安全性。默认值为false
。 - 4
- 当设置为
true
时跳过验证证书。默认值为false
。 - 5
- 指定重新载入证书的时间间隔。如果没有设置值,则证书永远不会重新加载。
reload_interval
接受包含有效时间单位的字符串,如ns
、us
(或 unmarshals
)、ms
、s
、m
、h
。 - 6
- 覆盖请求中的颁发机构的虚拟主机名,如授权标头字段。您可以使用此选项进行测试。
- 7
- 为建立的连接期间执行的每个请求发送标头。
4.4.2. OTLP HTTP Exporter 复制链接链接已复制到粘贴板!
OTLP HTTP Exporter 使用 OpenTelemetry 协议 (OTLP) 导出追踪和指标。
OpenTelemetry Collector 自定义资源带有启用的 OTLP Exporter
4.4.3. Debug Exporter 复制链接链接已复制到粘贴板!
Debug Exporter 将 trace 和 metrics 打印到标准输出。
OpenTelemetry Collector 自定义资源带有启用的 Debug Exporter
- 1
- debug 导出的详细程度为:
detailed
或normal
或basic
。当设置为detailed
时,管道数据会被详细记录。默认为normal
。 - 2
- 每秒日志记录的初始消息数。默认值为每秒
2
个消息。 - 3
- 在初始消息数后的抽样率,
sampling_initial
中的值已被记录。默认禁用,默认值为1
。使用大于1
的值启用抽样。如需更多信息,请参阅 Go Project 网站上zapcore
软件包中的 sampler 函数页。 - 4
- 当设置为
true
时,为导出器启用 Collector 内部日志记录器的输出。
4.4.4. Load Balancing Exporter 复制链接链接已复制到粘贴板!
Load Balancing Exporter 根据 routing_key
配置,一致性地导出 span、metrics 和 logs。
Load Balancing Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 Load Balancing Exporter
4.4.5. Prometheus Exporter 复制链接链接已复制到粘贴板!
Prometheus Exporter 以 Prometheus 或 OpenMetrics 格式导出指标。
Prometheus Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 Prometheus Exporter
- 1
- 公开指标的网络端点。Red Hat build of OpenTelemetry Operator 会自动公开
endpoint
字段中指定的端口,到<instance_name>-collector
服务。 - 2
- 服务器端 TLS 配置。定义 TLS 证书的路径。
- 3
- 如果设置,在提供的值下导出指标。
- 4
- 每个导出的指标应用的键值对标签。
- 5
- 如果为
true
,则使用 OpenMetrics 格式导出指标。Exemplars 仅以 OpenMetrics 格式导出,仅适用于直方和 monotonic 摘要指标,如counter
。默认禁用此选项。 - 6
- 如果
enabled
是true
,所有资源属性都会转换为指标标签。默认禁用此选项。 - 7
- 定义在没有更新的情况下公开指标的时间。默认值为
5m
。 - 8
- 添加指标类型和单元后缀。如果启用了 Jaeger 控制台中的 monitor 选项卡,则必须禁用。默认值是
true
。
当 OpenTelemetryCollector
自定义资源 (CR) 中的 spec.observability.metrics.enableMetrics
字段设置为 true
时,OpenTelemetryCollector
CR 会自动创建一个 Prometheus ServiceMonitor
或 PodMonitor
CR,以便 Prometheus 提取您的指标。
4.4.6. Prometheus Remote Write Exporter 复制链接链接已复制到粘贴板!
Prometheus Remote Write Exporter 将指标导出到兼容后端。
Prometheus Remote Write Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 Prometheus Remote Write Exporter
- 此导出器会丢弃 non-cumulative monotonic, histogram, 和 summary OTLP 指标。
-
您需要在远程 Prometheus 实例上启用
--web.enable-remote-write-receiver
功能标记。如果没有它,则使用此导出器将指标推送到实例会失败。
4.4.7. Kafka Exporter 复制链接链接已复制到粘贴板!
Kafka Exporter 将日志、指标和追踪导出到 Kafka。此导出器使用同步制作者,用于阻止且不批处理消息。它必须与批处理和排队重试处理器一起使用,以获得更高的吞吐量和弹性。
OpenTelemetry Collector 自定义资源带有启用的 Kafka Exporter
- 1
- Kafka 代理列表。默认值为
localhost:9092
。 - 2
- Kafka 协议版本。例如,
2.0.0
。这个为必填字段。 - 3
- 要从中读取的 Kafka 主题的名称。以下是默认设置:
otlp_spans
(用于 traces),otlp_metrics
(用于 metrics),otlp_logs
(用于 logs)。 - 4
- 纯文本形式的身份验证配置。如果省略,则禁用纯文本形式的身份验证。
- 5
- 客户端 TLS 配置。定义 TLS 证书的路径。如果省略,则禁用 TLS 身份验证。
- 6
- 禁用验证服务器的证书链和主机名。默认值为
false
。 - 7
- ServerName 表示客户端请求的服务器名称,以支持虚拟主机。
4.4.8. AWS CloudWatch Logs Exporter 复制链接链接已复制到粘贴板!
AWS CloudWatch Logs Exporter 将日志数据发送到 Amazon CloudWatch Logs 服务,并使用 AWS SDK 为 Go 和默认凭证供应商链签名请求。
AWS CloudWatch Logs Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 AWS CloudWatch Logs Exporter
- 1
- 必需。如果日志组尚不存在,则会自动创建它。
- 2
- 必需。如果日志流尚不存在,则会自动创建它。
- 3
- 可选。如果 AWS 区域还没有在默认凭证链中设置,您必须指定它。
- 4
- 可选。您可以覆盖将请求转发到的默认 Amazon CloudWatch Logs 服务端点。您必须包含协议,如
https://
,作为端点值的一部分。有关区域服务端点列表,请参阅 Amazon CloudWatch Logs 端点和配额 (AWS General Reference)。 - 5
- 可选。使用这个参数,您可以为新的 Amazon CloudWatch 日志组设置日志保留策略。如果省略此参数或设置为
0,
则日志默认不会过期。1
,3
, 5, 7,14
,30
,60
,90
,120
,150
, 365 ,365
,400
,
545
,731
,1827
,2192
,255
,7
2922
,3288
, 或3653
。
4.4.9. AWS EMF Exporter 复制链接链接已复制到粘贴板!
AWS EMF Exporter 将以下 OpenTelemetry 指标数据点转换为 AWS CloudWatch 嵌入式指标格式(EMF):
-
Int64DataPoints
-
DoubleDataPoints
-
SummaryDataPoints
然后,使用 PutLogEvents
API 直接发送到 Amazon CloudWatch Logs 服务。
使用此导出器的一个好处是可以在 Amazon CloudWatch 控制台中查看日志和指标,地址为 https://console.aws.amazon.com/cloudwatch/。
AWS EMF Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 AWS EMF Exporter
- 1
- 自定义日志组名称。
- 2
- 自定义日志流名称。
- 3
- 可选。将资源属性转换为遥测属性,如指标标签。默认禁用此选项。
- 4
- 日志流的 AWS 区域。如果默认凭证供应商链中尚未设置区域,您必须指定区域。
- 5
- 可选。您可以覆盖将请求转发到的默认 Amazon CloudWatch Logs 服务端点。您必须包含协议,如
https://
,作为端点值的一部分。有关区域服务端点列表,请参阅 Amazon CloudWatch Logs 端点和配额 (AWS General Reference)。 - 6
- 可选。使用这个参数,您可以为新的 Amazon CloudWatch 日志组设置日志保留策略。如果省略此参数或设置为
0,
则日志默认不会过期。1
,3
, 5, 7,14
,30
,60
,90
,120
,150
, 365 ,365
,400
,
545
,731
,1827
,2192
,255
,7
2922
,3288
, 或3653
。 - 7
- 可选。Amazon CloudWatch 指标的自定义命名空间。
日志组名称
log_group_name
参数允许您自定义日志组名称,并支持默认的 /metrics/default
值或以下占位符:
/aws/metrics/{ClusterName}
-
此占位符用于搜索指标数据中的
ClusterName
或aws.ecs.cluster.name
资源属性,并将其替换为实际集群名称。 {NodeName}
-
此占位符用于搜索
NodeName
或k8s.node.name
资源属性。 {TaskId}
-
此占位符用于搜索
TaskId
或aws.ecs.task.id
资源属性。
如果在资源属性映射中没有找到 resource 属性,则占位符将替换为 undefined
值。
日志流名称
log_stream_name
参数允许您自定义日志流名称,并支持默认的 otel-stream
值或以下占位符:
{ClusterName}
-
此占位符用于搜索
ClusterName
或aws.ecs.cluster.name
资源属性。 {ContainerInstanceId}
-
此占位符用于搜索
ContainerInstanceId
或aws.ecs.container.instance.id
资源属性。此资源属性仅对 AWS ECS EC2 启动类型有效。 {NodeName}
-
此占位符用于搜索
NodeName
或k8s.node.name
资源属性。 {TaskDefinitionFamily}
-
此占位符用于搜索
TaskDefinitionFamily
或aws.ecs.task.family
资源属性。 {TaskId}
-
此占位符用于搜索指标数据中的
TaskId
或aws.ecs.task.id
资源属性,并将其替换为实际任务 ID。
如果在资源属性映射中没有找到 resource 属性,则占位符将替换为 undefined
值。
4.4.10. AWS X-Ray Exporter 复制链接链接已复制到粘贴板!
AWS X-Ray Exporter 将 OpenTelemetry span 转换为 AWS X-Ray Segment 文档,然后将它们直接发送到 AWS X-Ray 服务。AWS X-Ray Exporter 使用 PutTraceSegments
API,并使用 AWS SDK 为 Go 和默认凭证供应商链签名请求。
AWS X-Ray Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的 AWS X-Ray Exporter
- 1
- 发送到 AWS X-Ray 服务的 X-Ray 片段的目标区域。例如,
eu-west-1
。 - 2
- 可选。您可以覆盖将请求转发到的默认 Amazon CloudWatch Logs 服务端点。您必须包含协议,如
https://
,作为端点值的一部分。有关区域服务端点列表,请参阅 Amazon CloudWatch Logs 端点和配额 (AWS General Reference)。 - 3
- 运行 Collector 的 AWS 资源的 Amazon 资源名称(ARN)。
- 4
- AWS Identity and Access Management (IAM)角色,将 X-Ray 片段上传到其他帐户。
- 5
- 要转换为 X-Ray 注解的属性名称列表。
- 6
- Amazon CloudWatch Logs 的日志组名称列表。
- 7
- 请求超时前的持续时间(以秒为单位)。如果省略,则默认值为
30
。
4.4.11. 文件 Exporter 复制链接链接已复制到粘贴板!
文件 Exporter 将遥测数据写入持久性存储中的文件,并支持轮转、压缩和写入多个文件等文件操作。使用这个导出器,您还可以使用 resource 属性来控制文件命名。唯一必需的设置是 路径
,用于指定 persistent-volume 文件系统中遥测文件的目的地路径。
File Exporter 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
OpenTelemetry Collector 自定义资源带有启用的文件导出器
- 1
- 要写入数据的文件系统路径。没有默认值。
- 2
- 文件轮转是此导出器的可选功能。默认情况下,遥测数据导出到单个文件。添加
轮转
设置以启用文件轮转。 - 3
max_megabytes
设置是文件被允许访问的最大大小,直到轮转为止。默认值为100
。- 4
max_days
设置用于保留文件的天数,从文件名中的时间戳计数。没有默认值。- 5
max_backups
设置用于保留几个较旧的文件。defalt 为100
。- 6
localtime
设置指定时间戳的本地时间格式,该格式会在文件轮转时附加到任何扩展名前面的文件名中。默认为协调的通用时间(UTC)。- 7
- 在将遥测数据写入文件之前,对遥测数据进行编码的格式。默认格式为
json
。还支持proto
格式。 - 8
- 文件压缩是可选的,默认情况下不设置。此设置定义导出到文件的数据的压缩算法。目前,只支持
zstd
压缩算法。没有默认值。 - 9
- 刷新间隔。没有单位的值被设置为纳秒。当通过轮转设置启用文件轮转时,会忽略此设置。