菜单
文档breadcrumb arrow Grafana Alloybreadcrumb arrow 参考breadcrumb arrow 组件breadcrumb arrow otelcolbreadcrumb arrow otelcol.receiver.awscloudwatch
实验性

otelcol.receiver.awscloudwatch

实验性:这是一个实验性组件。实验性组件经常会发生破坏性更改,并且可能会被移除而没有等效的替代品。必须将 stability.level 标志设置为 experimental 才能使用此组件。

otelcol.receiver.awscloudwatch 从 AWS CloudWatch 接收日志并将其转发到其他 otelcol.* 组件。

注意

otelcol.receiver.awscloudwatch 是上游 OpenTelemetry Collector awscloudwatch 接收器的一个包装器。必要时,错误报告或功能请求将被重定向到上游仓库。

您可以通过为其指定不同的标签来指定多个 otelcol.receiver.awscloudwatch 组件。

用法

alloy
otelcol.receiver.awscloudwatch "<LABEL>" {
  region = "us-west-2"

  output {
    logs = [...]
  }
}

参数

您可以将以下参数与 otelcol.receiver.awscloudwatch 一起使用

名称类型描述默认值必需
regionstring要从中收集日志的 AWS 区域。
imds_endpointstring要使用的自定义 EC2 IMDS 端点。
profilestring要使用的 AWS 凭据配置文件。

如果未指定 imds_endpoint,并且环境变量 AWS_EC2_METADATA_SERVICE_ENDPOINT 有值,则将使用该值作为 IMDS 端点。

您可以将以下块与 otelcol.receiver.awscloudwatch 一起使用

描述必需
output配置接收到的遥测数据发送到何处。
debug_metrics配置此组件生成的用于监控其状态的指标。
logs配置日志收集设置。

logs

logs 块配置如何从 CloudWatch 收集日志。

支持以下参数

名称类型描述默认值必需
max_events_per_requestint每次请求 CloudWatch 时处理的最大事件数。1000
poll_intervalduration轮询新日志条目的频率。"1m"

logs 块支持以下块

描述必需
groups配置要从中收集的日志组。

logs > groups

groups 块支持以下块

描述必需
autodiscover配置日志组的自动发现。
named配置要从中收集的特定日志组。

autodiscovernamed 块是互斥的。

logs > groups > autodiscover

autodiscover 块配置日志组的自动发现。

支持以下参数

名称类型描述默认值必需
limitint要发现的最大日志组数。50
prefixstring用于过滤日志组的前缀。

autodiscover 块支持以下块

描述必需
streams配置日志流过滤。

logs > groups > autodiscover > streams

streams 块配置自动发现的日志组的日志流过滤。

支持以下参数

名称类型描述默认值必需
names[]string要收集的精确流名称列表。
prefixes[]string用于过滤流的前缀列表。

logs > groups > named

named 块显式配置要从中收集的特定日志组。可以指定多个 named 块。

支持以下参数

名称类型描述必需
group_namestringCloudWatch 日志组的名称。
names[]string要收集的精确流名称列表。
prefixes[]string用于过滤流的前缀列表。

debug_metrics

debug_metrics 块配置此组件生成的用于监控其状态的指标。

支持以下参数

名称类型描述默认值必需
disable_high_cardinality_metricsboolean是否禁用某些高基数指标。true

disable_high_cardinality_metrics 是 Grafana Alloy 中等同于 OpenTelemetry Collector 的 telemetry.disableHighCardinalityMetrics 特性门的参数。它会移除可能导致高基数指标的属性。例如,在关于 HTTP 和 gRPC 连接的指标中,带有 IP 地址和端口号的属性会被移除。

注意

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

output

必需

output 块配置一组组件,用于转发生成的遥测数据。

支持以下参数

名称类型描述默认值必需
logslist(otelcol.Consumer)发送日志的消费者列表。[]
metricslist(otelcol.Consumer)发送指标的消费者列表。[]
traceslist(otelcol.Consumer)发送追踪的消费者列表。[]

您必须指定 output 块,但其所有参数都是可选的。默认情况下,遥测数据会被丢弃。相应地配置 metricslogstraces 参数,将遥测数据发送到其他组件。

导出的字段

otelcol.receiver.awscloudwatch 不导出任何字段。

组件健康状态

otelcol.receiver.awscloudwatch 仅在配置无效时报告为不健康。

调试信息

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

示例

以下示例从特定的 EKS 集群日志组收集日志,并通过批处理处理器进行转发

alloy
otelcol.receiver.awscloudwatch "default" {
  region = "us-west-2"

  logs {
    poll_interval = "3m"
    max_events_per_request = 5000

    groups {
      named {
        group_name = "/aws/eks/dev-cluster/cluster"
        names = ["api-gateway"]
      }
      named {
        group_name = "/aws/eks/prod-cluster/cluster"
        prefixes = ["app-", "service-"]
      }
    }
  }

  output {
    logs = [otelcol.processor.batch.default.input]
  }
}

otelcol.processor.batch "default" {
  output {
    logs = [otelcol.exporter.otlp.default.input]
  }
}

otelcol.exporter.otlp "default" {
  client {
    endpoint = env("<OTLP_ENDPOINT>")
  }
}

兼容组件

otelcol.receiver.awscloudwatch 可以接受来自以下组件的参数

注意

连接某些组件可能不合理,或者组件可能需要进一步配置才能使连接正常工作。请参阅链接文档以获取更多详细信息。