菜单
开源

实验性

otelcol.exporter.debug

otelcol.exporter.debug 接受来自其他 otelcol 组件的遥测数据并将它们写入控制台(stderr)。您可以控制日志的详细程度。

注意

otelcol.exporter.debug 是上游 OpenTelemetry Collector debug 导出器的包装器。如果需要,错误报告或功能请求将被重新定向到上游仓库。

可以通过提供不同的标签来指定多个 otelcol.exporter.debug 组件。

用法

river
otelcol.exporter.debug "LABEL" { }

参数

otelcol.exporter.debug 支持以下参数

名称类型描述默认值必需
verbositystring生成日志的详细程度。"basic"no
sampling_initialint每秒最初记录的消息数。2no
sampling_thereafterint初始消息记录后的采样率。1no
use_internal_loggerbool是否使用内部日志记录器或直接打印到 stdouttrueno

verbosity 参数必须是以下之一

  • "basic": 将接收到的单行总结记录到 stderr,并记录每个接收日志、指标或跟踪批次的遥测记录总数。
  • "normal": 生成与 "basic" 详细程度相同的输出。
  • "detailed": 将每个遥测记录的所有详细信息记录到 stderr,通常为每个遥测记录写入多行。

以下示例显示 "basic""normal" 输出

ts=2024-06-13T11:24:13.782957Z level=info msg=TracesExporter component_path=/ component_id=otelcol.exporter.debug.default "resource spans": 1, spans: 2

以下示例显示 "detailed" 输出

ts=2024-06-13T11:24:13.782957Z level=info msg=TracesExporter component_path=/ component_id=otelcol.exporter.debug.default "resource spans"=1 spans=2
ts=2024-06-13T11:24:13.783101Z level=info msg="ResourceSpans #0
Resource SchemaURL: https://opentelemetry.io/schemas/1.4.0
Resource attributes:
     -> service.name: Str(telemetrygen)
ScopeSpans #0
ScopeSpans SchemaURL:
InstrumentationScope telemetrygen
Span #0
    Trace ID       : 3bde5d3ee82303571bba6e1136781fe4
    Parent ID      : 5e9dcf9bac4acc1f
    ID             : 2cf3ef2899aba35c
    Name           : okey-dokey
    Kind           : Server
    Start time     : 2023-11-11 04:49:03.509369393 +0000 UTC
    End time       : 2023-11-11 04:49:03.50949377 +0000 UTC
    Status code    : Unset
    Status message :
Attributes:
     -> net.peer.ip: Str(1.2.3.4)
     -> peer.service: Str(telemetrygen-client)
Span #1
    Trace ID       : 3bde5d3ee82303571bba6e1136781fe4
    Parent ID      :
    ID             : 5e9dcf9bac4acc1f
    Name           : lets-go
    Kind           : Client
    Start time     : 2023-11-11 04:49:03.50935117 +0000 UTC
    End time       : 2023-11-11 04:49:03.50949377 +0000 UTC
    Status code    : Unset
    Status message :
Attributes:
     -> net.peer.ip: Str(1.2.3.4)
     -> peer.service: Str(telemetrygen-server)
        {"kind": "exporter", "data_type": "traces", "name": "debug"}"

注意

将 "detailed" 示例中所有 \n 实例替换为新行。

use_internal_logger 设置为 false 在您希望查看实际新行而不是收集器日志中的 \n 时很有用。但是,如果不使用内部日志记录器,您将看不到日志行中的元数据,如 component_id=otelcol.exporter.debug.default。多行日志也可能更难解析。

以下块在 otelcol.exporter.debug 定义内部受到支持

层次结构描述必需
debug_metricsdebug_metrics配置此组件生成的指标以监控其状态。no

《>` 符号表示更深层次的嵌套。例如,`client > tls` 指的是在 `client` 块内部定义的 `tls` 块。

debug_metrics 块

debug_metrics 块配置了此组件生成的指标,以监控其状态。

以下支持以下参数

名称类型描述默认值必需
disable_high_cardinality_metrics布尔值是否禁用某些高基数指标。trueno
levelstring控制包装收集器发出的指标的详细程度。"detailed"no

disable_high_cardinality_metrics 是 Grafana Alloy 对 OpenTelemetry Collector 中 telemetry.disableHighCardinalityMetrics 功能门控的等价物。它删除可能引起高基数指标的属性。例如,删除有关 HTTP 和 gRPC 连接的指标中的 IP 地址和端口号属性。

注意

如果配置了,则 disable_high_cardinality_metrics 仅适用于 otelcol.exporter.*otelcol.receiver.* 组件。

level 是 OpenTelemetry Collector 中 telemetry.metrics.level 功能门的 Alloy 等价物。可能的值是 "none""basic""normal""detailed"

导出字段

以下字段将被导出,并且可以被其他组件引用

名称类型描述
inputotelcol.Consumer其他组件可以使用该值来发送遥测数据的位置。

input 接受任何遥测信号(指标、日志或跟踪)的 otelcol.Consumer 数据。

组件健康

otelcol.exporter.debug 只有在提供无效配置时才会报告为不健康。

调试信息

otelcol.exporter.debug 不公开任何特定组件的调试信息。

示例

此示例接收 OTLP 指标、日志和追踪并将它们写入控制台

alloy
otelcol.receiver.otlp "default" {
    grpc {}
    http {}

    output {
        metrics = [otelcol.exporter.debug.default.input]
        logs    = [otelcol.exporter.debug.default.input]
        traces  = [otelcol.exporter.debug.default.input]
    }
}

otelcol.exporter.debug "default" {}

兼容组件

otelcol.exporter.debug 可以被以下组件消费

注意

连接一些组件可能没有意义,或者组件可能需要进一步的配置才能使连接正确工作。有关更多详细信息,请参阅链接的文档。