合成监控概览

本文档介绍了 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 控制台管理配额

后续步骤