合成监控概览

本文介绍了 Cloud Monitoring 为合成监控工具提供的支持,这些监控工具可用于测试服务、应用、网页和 API 的可用性、一致性和性能。合成监控工具会定期发出模拟请求,然后记录这些请求是否成功,并记录有关请求的其他数据(例如延迟时间)。您可以创建提醒政策来监控测试结果,以便在测试失败时收到通知。

如需测试您的服务和应用,您可以使用以下任一方法:

  • 拨测使 Google Cloud 可以定期查询响应 HTTP、HTTPS 或 TCP 请求的应用。拨测可以测试公共端点或专用端点,并且可以验证响应数据。

  • 借助自定义和基于 Mocha 的合成监控工具,您可以部署一套测试,用于测试响应 HTTP 或 HTTPS 请求的应用。如需创建这些合成监控工具,您可以从 Cloud Monitoring 提供的框架(自定义或 Mocha)开始,然后编写测试。如果您在此项目中有权访问 Gemini Code Assist,可以提供提示以生成测试代码。

  • 损坏的链接检查工具使 Google Cloud 可以定期测试 URI,并测试在该 URI 处发现的可配置数量的链接。

下表列出了您可以用于创建拨测和合成监控工具的工具:

Google Cloud 控制台 Cloud Monitoring API Terraform 客户端库
拨测
合成监控工具
损坏的链接检查工具

关于拨测

拨测有两种类型:

  • 公开拨测可从全球多个位置向可公开访问的网址或 Google Cloud 资源发出请求。
  • 专用拨测可向 Google Cloud 资源的内部 IP 地址发出请求。专用拨测可以通过专用网络将请求发送到虚拟机 (VM) 或 L4 内部负载均衡器 (ILB) 等资源。

代表拨测发出的请求源自位于多个 Google Cloud 区域的检查工具。创建拨测时,您需要为检查工具指定区域。

用于拨测的请求执行系统(由Google Cloud提供)可管理以下各项:

  • 已配置的检查工具的执行。
  • 结果的验证。

    如果资源进行响应并且拨测配置的所有要求都得到满足,则检查工具发出的请求会成功。否则,请求会失败。各个检查工具的查询都是无状态的;也就是说,每个查询都是独立的操作。

  • 收集结果并将其存储到拨测指标中。

    如需详细了解这些指标,请参阅 monitoring 指标表中的 uptime_check 条目。

  • 在发生失败时写入日志条目。

    如果您使用 Google Cloud 控制台创建拨测,则可以将拨测配置为在检查失败时也写入日志条目。如果您已将公开拨测配置为发送 ICMP ping,则在 ping 失败时,这些 ping 的结果会写入 Cloud Logging 日志。如需了解详情,请参阅使用 ICMP ping

关于损坏的链接检查工具和其他合成监控工具

合成监控工具使您可以定义要测试的内容以及测试序列。例如,您可以测试应用的登录页面、网店的结账流程,或是应用对第三方服务进行的 API 调用。

创建合成监控工具时,您需要部署基于 Cloud Run 构建的第 2 代 Cloud Run 函数。您的函数必须使用 Node.js 编写,并依赖于开源 Synthetics SDK 框架。Cloud Monitoring 会分发和管理此框架。

Cloud Monitoring 支持以下类型的合成监控工具:

用于合成监控工具的请求执行系统(由Google Cloud提供)可管理以下各项:

  • Cloud Run 函数的定期执行。
  • 收集并存储每次执行的结果:

    • 成功和失败信息,例如错误消息、错误类型和代码行。
    • 执行时间
    • 日志
    • 指标

    如需了解如何查看执行结果,请参阅探索合成监控工具结果

监控和查看结果

您可以在 Google Cloud 控制台中观察合成监控工具和拨测的结果:

  • 对于合成监控工具,请前往合成监控工具页面。
  • 对于拨测,请前往拨测页面。

如需在合成监控工具或拨测失败时收到通知,请使用 Google Cloud 控制台或 Google Cloud CLI 创建提醒政策

失败问题排查

为了帮助您进行问题排查,请求标头和记录的数据包含关联的合成监控工具或拨测的 ID。如需了解详情,请参阅排查合成监控工具或拨测问题

数据地区化

如果您设置了 Assured Workloads,请勿使用合成监控工具或拨测,因为您有数据驻留或影响级别 4 (IL4) 要求。

Cloud Monitoring 无法保证将拨测请求中的数据保留在特定地理位置。

对于依赖于 Cloud Run 函数的合成监控工具,您可以指定部署 Cloud Run 函数的区域。不过,您的函数可以从拨测服务器支持的任何区域进行调用。此行为无法配置。

价格

一般而言,Cloud Monitoring 系统指标是免费的,而来自外部系统、代理或应用的指标则需要付费。可结算的指标按注入的字节数或样本数计费。

如需详细了解 Cloud Monitoring 价格,请参阅以下文档:

限制

使用合成监控工具时会受到以下限制:

类别
每个指标范围的拨测* 100
每个公共拨测的 ICMP ping 数量上限 3
每个指标范围的合成监控工具 100
*此限制适用于拨测配置的数量。每个拨测配置包括指定资源两次状态测试之间相隔的时间。
如需了解如何提高此限制,请参阅使用 Google Cloud 控制台管理配额

后续步骤