View a markdown version of this page

抓取程序配置 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

抓取程序配置

Amazon CloudWatch 托管式 Prometheus 收集器使用与 Prometheus 兼容的 YAML 配置,以定义收集器如何抓取指标。在创建或更新抓取程序时,可以将此配置作为 Base64 编码 Blob 予以提供。配置使用标准的 Prometheus 抓取配置格式,但有一些特定于托管式收集器的限制。

您可以使用 GetDefaultScraperConfiguration 以检索通用抓取程序配置,也可以提供自己的抓取程序配置。

支持的配置部分

Prometheus 抓取配置支持以下顶级部分:

  • global:全局设置,包括 scrape_interval、scrape_timeout 和 external_labels。

  • scrape_configs:抓取任务的列表,每个任务定义目标以及抓取方式。

在每个 scrape_configs 条目中,支持以下字段:

  • job_name:抓取任务的唯一名称。

  • metrics_path:要抓取的 HTTP 路径(默认为 /metrics)。

  • scheme:协议方案(http 或 https)。

  • scrape_interval:全局抓取间隔的每任务覆盖。

  • scrape_timeout:全局抓取超时的每任务覆盖。

  • static_configs:目标的静态列表。

  • dns_sd_configs:基于 DNS 的服务发现。

  • relabel_configs:抓取前应用的重新标记规则。

  • metric_relabel_configs:抓取后应用的重新标记规则。

  • tls_config:HTTPS 目标的 TLS 配置。

示例配置

以下示例演示基本的抓取配置:

global: scrape_interval: 60s scrape_timeout: 10s external_labels: environment: production scrape_configs: - job_name: 'my-service' metrics_path: /metrics scheme: http static_configs: - targets: - '10.0.1.10:9090' - '10.0.1.11:9090' labels: team: platform relabel_configs: - source_labels: [__address__] target_label: instance metric_relabel_configs: - source_labels: [__name__] regex: 'go_.*' action: drop

限制

  • 最短 scrape_interval 为 30 秒。

  • 托管式收集器不支持基于文件的服务发现(file_sd_configs)。

  • 托管式收集器不支持 Consul、Eureka 或其他外部服务发现机制。

  • 远程写入和远程读取配置不适用,因为收集器负责处理向 CloudWatch 的传输。

  • 配置大小上限为 256KB。

问题排查

如果抓取程序未按预期收集指标,请检查以下内容:

  • 验证连接到抓取程序的安全组是否允许出站流量流向目标端口。

  • 确认目标可从在抓取程序配置中指定的子网进行访问。

  • 检查 dns_sd_configs 中使用的 DNS 名称是否在 VPC 内得到正确解析。

  • 确保目标在配置的 metrics_path 上以有效的 Prometheus 展览格式进行响应。

有关其他故障排除指南,请参阅《Amazon Managed Service for Prometheus 用户指南》中的托管式收集器故障排除。