使用出售日志监控收集器 - Amazon Managed Service for Prometheus

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用出售日志监控收集器

Amazon Managed Service for Prometheus 收集器提供出售日志,有助于您监控指标收集过程并对其进行故障排除。这些日志会自动发送到 Amazon CloudWatch Logs,并提供对服务发现、指标收集和数据导出操作的可见性。收集器会针对指标收集管道的三个主要组件出售日志:

服务发现日志

服务发现日志提供有关目标发现过程的信息,包括:

  • 访问 Kubernetes API 资源时的身份验证或权限问题。

  • 服务发现设置中的配置错误。

以下示例演示了在服务发现过程中可能遇到的常见身份验证和权限错误:

Amazon EKS 集群不存在

当指定的 Amazon EKS 集群不存在时,您会收到以下错误:

{ "component": "SERVICE_DISCOVERY", "timestamp": "2025-04-30T17:25:41.946Z", "message": { "log": "Failed to watch Service - Verify your scraper source exists." }, "scrapeConfigId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
服务的权限无效

当收集器缺少适当的基于角色的访问控制(RBAC)权限以监视服务时,您会收到以下错误:

{ "component": "SERVICE_DISCOVERY", "timestamp": "2025-04-30T17:25:41.946Z", "message": { "log": "Failed to watch Service - Verify your scraper source permissions are valid." }, "scrapeConfigId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
端点的权限无效

当收集器缺少适当的基于角色的访问控制(RBAC)权限以监视端点时,您会收到以下错误:

{ "component": "SERVICE_DISCOVERY", "timestamp": "2025-04-30T17:25:41.946Z", "message": { "log": "Failed to watch Endpoints - Verify your scraper source permissions are valid." }, "scrapeConfigId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

收集器日志

收集器日志提供有关指标抓取过程的信息,包括:

  • 由于端点不可用而导致的抓取失败。

  • 尝试抓取目标时的连接问题。

  • 抓取操作期间超时。

  • 抓取目标返回的 HTTP 状态错误。

以下示例演示了在指标抓取过程中可能遇到的常见收集器错误:

缺少指标端点

/metrics 端点在目标实例上不可用时,您会收到以下错误:

{ "component": "COLLECTOR", "message": { "log": "Failed to scrape Prometheus endpoint - verify /metrics endpoint is available", "job": "pod_exporter", "targetLabels": "{__name__=\"up\", instance=\10.24.34.0\", job=\"pod_exporter\"}" }, "timestamp": "1752787969551", "scraperId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
“连接被拒

当收集器无法与目标端点建立连接时,您会收到以下错误:

{ "scrapeConfigId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "timestamp": "2025-04-30T17:25:41.946Z", "message": { "message": "Scrape failed", "scrape_pool": "pod_exporter", "target": "http://10.24.34.0:80/metrics", "error": "Get \"http://10.24.34.0:80/metrics\": dial tcp 10.24.34.0:80: connect: connection refused" }, "component": "COLLECTOR" }

导出程序日志

导出程序日志提供有关将收集到的指标发送到 Amazon Managed Service for Prometheus 工作区的过程的信息,包括:

  • 处理的指标和数据点的数量。

  • 由于工作区问题而导致的导出失败。

  • 尝试写入指标时的权限错误。

  • 导出管道中的依赖项失败。

以下示例演示了在指标导出过程中可能遇到的常见导出程序错误:

找不到工作区

当找不到指标导出的目标工作区时,您会收到以下错误:

{ "component": "EXPORTER", "message": { "log": "Failed to export to the target workspace - Verify your scraper destination.", "samplesDropped": 5 }, "timestamp": "1752787969664", "scraperId": "s-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

了解和使用收集器出售日志

日志结构

所有收集器出售日志都遵循一致的结构,其中包含以下字段:

scrapeConfigId

生成了日志的抓取配置的唯一标识符。

timestamp

生成日志条目的时间。

message

日志消息内容,其中可能包括其他结构化字段。

组件

生成日志的组件(SERVICE_DISCOVERY、COLLECTOR 或 EXPORTER)

使用出售日志进行故障排除

收集器出售日志有助于您解决指标收集中的常见问题:

  1. 服务发现问题

    • 检查 SERVICE_DISCOVERY 日志中是否存在身份验证或权限错误。

    • 验证收集器是否拥有访问 Kubernetes 资源的必要权限。

  2. 指标抓取问题

    • 检查 COLLECTOR 日志中是否存在抓取失败。

    • 验证目标端点是否可访问并返回指标。

    • 确保防火墙规则支持收集器连接到目标端点。

  3. 指标导出问题

    • 检查 EXPORTER 日志是否存在导出失败。

    • 确认工作区存在并已正确配置。

    • 确保收集器具有写入工作区的必要权限。

访问收集器出售日志

收集器出售日志会自动发送到 Amazon CloudWatch Logs。要访问这些日志:

  1. 通过 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 查找并选择收集器的日志组:/aws/prometheus/workspace_id/collector/collector_id

  4. 浏览或搜索日志事件以查找相关信息。

还可以使用 CloudWatch Logs Insights 查询和分析收集器日志。例如,要查找所有服务发现错误:

fields @timestamp, message.message | filter component = "SERVICE_DISCOVERY" and message.message like /Failed/ | sort @timestamp desc

用于监控收集器的最佳实践

要有效地监控 Amazon Managed Service for Prometheus 收集器:

  1. 针对关键的收集器问题(例如持续的抓取失败或导出错误)设置 CloudWatch 警报。有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的警报

  2. 创建 CloudWatch 控制面板,以可视化收集器性能指标以及出售日志数据。有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的控制面板

  3. 定期查看服务发现日志,以确保正确地发现目标。

  4. 监控已丢弃目标的数量,以确定潜在的配置问题。

  5. 跟踪导出失败情况,以确保指标成功发送到工作区。