帮助手册

REST API 事务

现代 Web 应用程序由大量依赖 REST API 调用来检索数据或执行特定操作的网页组成。移动应用程序主要通过 REST API 调用进行通信,中间可能使用网页进行登录。有时,即使是网页上的工作流也无法在不执行 AJAX 请求的情况下完成。因此,仅基于页面导航和表单参数来监控 Web 应用程序已不再足够。Site24x7 的 REST API 事务监视器能够监控 REST 应用程序中的工作流。您可以直接从 Site24x7 Web 客户端创建监视器,无需任何录制工具。监视器设置完成后,每个事务步骤将是一个 HTML 请求或 REST API 调用。它在不运行真实浏览器的情况下对 Web 应用程序工作流执行合成监控。您可以监控多达 60 个端点 URL 的序列,甚至允许在步骤序列中进行参数转发。参数转发可以捕获事务以从服务获取令牌参数,并将其传递给同一监视器的后续步骤,以便成功验证端点。

您可以使用我们的 130 个全球监控站点监控您的 IPv4 和 IPv6 应用程序。REST API 事务监视器根据我们的定价结构被分类为基础监视器。监视器中每五个步骤将使用一个基础监视器许可证。例如,如果一个监视器有 10 个事务步骤,则前五个步骤将使用一个许可证,而后五个步骤将使用另一个基础监视器许可证。

动态 UI 的核心要素

  • 基于步骤的监控: 能够创建步骤、指定端点 URL 并将 Web 应用程序作为步骤序列进行监控。
  • 会话 Cookie:整个步骤序列在同一 HTTP 会话中执行。因此,应用程序设置的身份验证 Cookie 或其他 Cookie 数据也将在后续步骤中可用。
  • HTTP 方法: 模拟任何类型的 HTTP 请求。以 FORM、纯文本、XML 或 JSON 方式提交 POST 数据。
  • 响应验证: 通过关键词或正则表达式对纯文本响应进行字符串检查验证。XML 或 JSON 响应分别使用 XPath 和 JSONPath 进行验证。
  • 参数转发: 从 Text、JSONPath 或 XPath 表达式响应中提取值并将其存储为自定义参数。使用这些参数为后续步骤构建自定义查询字符串或 POST 数据。 
  • Basic/NTLM、OAuth 2.0 和 Web Token 支持:使用 Basic/NTLM 凭据、OAuth 2.0 或通过注册您的 Web Token 对 Site24x7 进行身份验证,监控将使用授予 Site24x7 的访问令牌来执行。

配置 REST API 事务监视器

将一个或多个 API 请求分组并按顺序执行,以评估端点 API 的正常运行时间、性能和正确性。对于事务中的每个步骤,您可以定义特定的表达式断言,并进一步验证响应数据。此外,您可以从响应中提取并保存参数,并在后续请求或步骤中使用这些数据。输入常规设置配置、事务步骤、配置文件详情,并与任何第三方应用程序集成,以完成 REST API 事务监视器的设置。

常规设置

  1. 登录 Site24x7 Web 客户端。
  2. 访问管理 > 资源清单 > 添加监视器 > REST API 事务
  3. 提供以下常规设置详情:
    • 显示名称: 为您要监控的 Web 应用程序提供适当的名称。
    • 检查频率: 根据您的监控需求选择轮询频率。您可以设置最短 5 分钟、最长 1 天的轮询频率。
    • 监控位置: 从下拉列表中选择您的默认全球位置配置文件,以从这些位置设置对 Web 应用程序的监控。此外,还可以根据您的需求自定义和创建位置配置文件。
      Note

      最多可从 16 个全球位置进行监控。您可以配置本地轮询器以在防火墙内设置监控位置。了解如何自定义您的 位置配置文件

    • 监视器组: 通过监视器组对您的监视器进行逻辑分组。您可以将 REST API 事务监视器与多个监视器组关联。 
      Note

      了解如何创建监视器组,请参阅 监视器组

    • 依赖监视器:从下拉列表中选择一个监视器作为您的依赖资源。您最多可以添加 5 个监视器作为依赖资源。当您的依赖资源处于 DOWN 状态时,将对您的监视器抑制告警。
      Note
      • 配置依赖资源并根据依赖资源状态抑制告警是为了为您提供更好的误报保护。 了解更多关于监视器级别告警抑制的信息
      • 如果您在依赖资源字段中选择,则告警将按照您的正常配置设置进行。在这种情况下,由于监视器没有任何依赖资源,不会抑制任何告警。
      • 监视器的多监视器组支持允许监视器与不同监视器组中的多个依赖资源关联。在正常监视器状态检查期间,如果这些依赖资源中任何一个的状态被识别为 DOWN,则该监视器的告警将被自动抑制。但是,在抑制告警时,监视器级别的依赖配置始终优先于任何其他监视器组级别的依赖配置

添加新事务步骤

您可以将基于 REST 的 Web 应用程序作为步骤序列进行监控。例如,您可以首先检索一个网页,然后使用页面中的值执行 REST API 调用。要监控移动应用程序,您必须先执行登录 Web 视图以提取身份验证令牌,然后将该令牌用于 REST API 调用。您可以添加最多 60 个事务步骤,每个步骤监控单个 API 端点。创建新步骤后,您可以单击当前事务步骤功能区上的 (+) 符号插入新步骤。这样做将完全克隆步骤配置设置并为您创建一个新步骤。您可以根据需要编辑该步骤。您还可以使用  图标按您想要的顺序重新排列事务步骤。如果您希望从头开始创建全新的事务步骤,请按照以下步骤操作:

  1. 事务步骤下单击添加步骤。系统将弹出添加步骤表单。您可以在此处提供您希望监控的事务步骤 URL 或 API 端点 URL。
    Note

    您也可以通过导入在 Swagger/OpenAPI 规范(JSON)HTTP Archive(HAR)格式中定义的预定义测试用例来设置事务步骤。

  2. 添加步骤表单中指定以下步骤详情
    • 步骤名称: 为您的事务步骤提供一个唯一名称。
    • 端点 URL:输入要监控的 REST 端点 URL。URL 可以是 HTTP/HTTPS 地址或 cURL 命令。

智能配置

智能配置可让您在配置事务步骤时自动填充所有相关表单字段,如端点 URL 和请求头参数。这将加快监视器配置流程,并帮助您使用正确的请求头资源对 API 请求进行微调。您只需使用 Chrome 和 Firefox 等 Web 浏览器提取请求头,然后将复制的请求头粘贴到从请求头导入文本字段中。 

使用 Chrome 开发者工具提取请求头: 

  1. 启动 Chrome 浏览器并访问视图 > 开发者 > 开发者工具。单击网络选项卡并刷新视图以开始渲染网络活动。访问特定活动,转到标头 > 请求标头 > 查看源。复制请求头。

使用 Firefox 网络监视器提取请求头

  1. 启动 Firefox 浏览器并导航到工具 > Web 开发者 > 检查器。单击网络选项卡并刷新视图以渲染完整的网络活动。现在选择一个活动并双击鼠标,从显示的列表中选择复制请求头
  2. 从浏览器面板中提取请求头后,导航回 Site24x7 客户端,并单击事务步骤页面中的从请求头导入链接。将复制的请求头粘贴到文本字段中,然后单击导入。此操作将自动填充步骤名称、端点 URL 和其他 HTTP 请求头等相关文本字段。在启动此导入之前,您必须确保手动删除多余的空格。

HTTP 配置

  • HTTP 方法:指定请求方法 以表示对给定资源要执行的所需操作。它们包括 HEAD、POST、GET、PUT、DELETE、PATCHPROPFIND。从下拉列表中选择适当的选项以配置您的表单提交方法。此外,为 POST、PUT、PATCH HTTP 和 PROPFIND 方法选择适当的请求体类型。

    监控 WebDav API:

    WebDAV(Web 分布式创作和版本控制)是一种允许用户通过 HTTP Web 服务器编辑、共享、复制或移动文档的协议。Site24x7 目前支持 WebDAV 使用的以下主要 HTTP 方法:

    • PROPFIND
    • PROPPATCH
    • MKCOL
    • COPY
    • MOVE
    • LOCK
    • UNLOCK

    通过使用这些方法,您现在可以执行:

    日历 API 监控
    CalDAV(WebDAV 的日历扩展)是 WebDAV 的扩展,允许用户访问或管理远程服务器上与日历相关的信息。它使用 iCalendar 格式。使用 CalDAV,您可以跨设备同步数据、检索日历事件、安排新事件、设置提醒等。示例: Google Calendar 和 Apple Calendar 为其服务提供 CalDAV 访问。

    联系人 API 监控 
    CardDAV(WebDAV 的 vCard 扩展)是一种地址簿客户端或服务器协议,允许用户访问或共享 Web 服务器上的数据。它使用 vCard 格式存储数据。CardDAV 帮助通过远程服务器检索、存储和管理个人联系人相关信息。示例: Google Contacts 和 Apple 的 iCloud Contacts 使用 CardDAV。

    Note

    POST 方法将提交参数以访问 URL。POST、PUT 和 PATCH 提交方法支持以 FORM、Text、XML 或 JSON 格式发送请求。

    • 请求体:请求体必须支持在其中嵌入 ${x} 类型的参数。展开参数时,必须针对所选请求体类型(Form/Text/XML/JSON)进行适当转义。
    • 参数类型:如果您希望定义要发送到端点的 GraphQL 查询,请选择 GraphQL。
    • GraphQL 查询:提供 GraphQL 查询以从基于 GraphQL 的 API 服务的响应中获取特定字段。
    • GraphQL 变量:以 JSON 格式指定 GraphQL 查询中引用的变量值。
      Note

      如果选择 POST 方法,GraphQL 查询和 GraphQL 变量将包含在请求体中。如果选择 GET 方法,GraphQL 查询和 GraphQL 变量将通过 URL 参数发送。

    • HTTP 请求头:HTTP 头是事务的操作参数。有时您可能需要自定义默认的 HTTP 请求头信息。在这种情况下,可以在此处添加额外的头名称和头值。
      Note

      要在 HTTP 配置中使用凭据配置文件,请输入 $,此时将出现可用凭据配置文件列表——从列表中选择所需的配置文件。了解更多关于凭据配置文件的信息。

    • 用户代理:为发送请求和 HTTP 头设置自定义用户代理(Web 浏览器)。您可以从可用的用户代理中选择。
    • 身份验证方法: 管理监视器的多种授权方法。
      • Basic/NTLM: 配置您的 Basic/NTLM 授权。Windows NTLM 是在运行 Windows 操作系统的系统上使用的身份验证协议。
        • Web 凭据:为需要 Basic/NTLM 身份验证的 URL 指定您的用户名和密码。
      • Kerberos/协商:如果您正在监控受 Kerberos 身份验证保护的资源,请从下拉菜单中选择 Kerberos/协商
        • Kerberos 身份验证:从预配置列表中选择 Kerberos 凭据配置文件,或通过单击(+)按钮创建新的 Kerberos 身份验证配置文件。
          Note
      • OAuth: 如果您正在监控受 OAuth 框架保护的资源,请从下拉菜单中选择 OAuth。
        • OAuth 提供商名称: 从预配置列表中选择 OAuth 提供商名称,或通过单击 + 按钮创建新的 OAuth 配置文件。
          Note

          了解如何 配置 OAuth 提供商

      • Web Token:向您的身份验证服务器注册 Site24x7,以使用 Web Token 监控受保护的 API。
        • Web Token 名称: 从预配置列表中选择 Web Token,或通过单击 + 按钮创建新的 Web Token 配置文件。
          Note

          了解如何添加 Web Token

      • AWS 签名:从下拉列表中选择已与 Site24x7 集成的适当 Amazon 账户。这有助于使用 HMAC 对 API 请求进行签名,以验证托管在 AWS API Gateway 上的 API。了解如何集成 Amazon 账户
        Note

        了解更多关于 AWS 签名身份验证的信息。

      • GCP 服务账户密钥:从下拉菜单中选择 GCP 服务账户密钥,以监控需要通过 Google Cloud 服务账户进行身份验证的 Google Cloud 项目 API,例如 Pub/Sub。
        • GCP 服务账户:选择已使用 GCP 服务账户密钥 JSON 文件添加的适当 GCP 监视器,或通过单击 + 按钮添加新的 GCP 监视器并上传相关的 GCP 服务账户密钥 JSON 文件。
          Note

          了解如何配置 GCP 监视器

      • 客户端证书:对于需要客户端证书身份验证的事务,请上传客户端证书(必须是 PKCS#12 文件)。

高级配置

  • 连接超时: 指定客户端与目标服务器建立成功连接所需的时间(以秒为单位)。当超过此时间时,DNS 服务器将报告"连接错误"。
  • 优先使用 IPv6:如果您希望通过 IPv6 启用位置监控您的 API 端点,只需在创建或编辑监视器表单时将切换按钮移至""。

    Note

    • Site24x7 允许您根据需要监控双栈 IPv4/IPv6 基础架构。IPv4 将作为默认协议启用。启用切换按钮为 IPv6 后,您将能够监控您的 IPv6 基础架构。如果 IPv6 连接失败,它不会自动回退到 IPv4。 阅读更多
    • 在监控表单中启用 IPv6 并不会使其默认兼容监控 IPv4。如果您想监控同时兼容 IPv4 和 IPv6 的资源,则需要为此设置两个单独的监视器检查。
  • 查询权威名称服务器:使用切换按钮决定是否要通过权威名称服务器解析域名。
  • 接受的 HTTP 状态码:提供以逗号分隔的 HTTP 状态码列表,这些状态码表示成功响应。您可以指定单个状态码以及用冒号分隔的范围。
  • SSL 协议: 指定 TLS/SSL 协议的版本号(支持 TLSv1.2、TLSv1.1、TLSv1 和 SSLv3)以验证正确的 SSL 握手。使用自动模式启用自动检测和协商。
    Note

    SSL 协议验证仅适用于 HTTPS 域。如果您指定的 SSL 协议版本与实际版本不同,监视器在轮询期间状态将失败。

  • HTTP 协议:选择用于协商的首选应用层协议版本(HTTP/1.1 或 HTTP/2)。
  • 启用 ALPN:启用 ALPN 以确保仅将受支持的应用程序协议作为 TLS 握手的一部分发送,并减少往返时间。默认情况下,它将设置为 。本地轮询器不支持启用 ALPN 选项。我们将在下次更新中扩展支持。

检查可用性

填写完所有必填详情后,您可以使用此选项测试您创建的配置。服务测试帮助您深入研究代码并获得实际操作经验。

发生错误时

您现在可以选择发生错误时的首选操作。有以下三个选项:

  • 继续:如果您不希望收到通知,可以选择继续。 
  • 通知并继续:您可以选择先收到通知,然后继续下一个操作。
  • 停止并通知:选择"停止并通知",您可以选择停止执行步骤并收到错误通知。
  • 停止并跳过通知:选择停止并跳过通知,您可以选择停止执行步骤并跳过错误通知。

在这两种情况下,监视器状态也将随之更改。 

内容检查:

您可以定义断言来验证响应。表达式断言在执行请求后进行评估。如果任何断言失败,监视器将根据规定的设置引发中断。对于内容检查,您可以配置断言来检查来自 JSONPath、XML XPath 或正则表达式的响应。 

  • 如果所选响应格式为 Text
    • 应包含字符串:当响应内容中不存在指定关键词时发出告警。在复选框中输入关键词,并使用切换按钮相应地触发"问题"或"宕机"告警。
    • 不应包含字符串:当响应内容中存在指定关键词时发出告警。在复选框中输入关键词,并使用切换按钮相应地触发"问题"或"宕机"告警。
      Note

      在给定字段中添加关键词时必须使用以下语法:

      • 单个字符串或关键词可以配置为带或不带双引号(例如:HTML)。
      • 如果两个字符串组成一个关键词,请在两个字符串之间添加空格并用双引号括起来。(例如:"HTML response")。
      • 如果配置了两个以上的单独关键词,则需要用空格分隔,并为每个关键词使用双引号。("monitor" "HTML")。
    • 区分大小写:启用此选项以验证区分大小写的文本。
    • 应匹配正则表达式:根据特定模式是否与响应内容匹配来配置告警。例如,当您考虑表达式 ^[a-z0-9_-]{3,15}$ 时,您的响应内容应包含从 a 到 z 的字母、从 0 到 9 的数字、下划线连字符。此外,最小长度应为 3 个字符最大长度为 15 个字符。当不匹配时,您的 API 端点将被视为发生中断,并报告为"正则表达式 '^[a-z0-9_-]{3,15}$' 不匹配"。
      Note

      了解更多关于内容检查正则表达式匹配中的否定向前查找的信息。

  • 如果所选响应格式为 XML
    • XPath 表达式:提供 XPath 表达式以启用对 XPath 表达式断言的评估。断言必须成功解析 XML 中的 XPath 才能返回成功。您可以通过单击 "+" 键添加多个 XML 表达式断言。您可以使用"查找我的 XPath"链接在 XML 中找到 XPath。
    • 告警严重性:将告警严重性指定为"宕机或问题",以决定当指定的 XPath 表达式断言因不匹配而失败时的状态。
  • 如果所选响应格式为 JSON
    • JSONPath 表达式:您可以指定 JSONPath 断言并测试 JSON 响应中的预期数据。要进行成功测试,断言必须成功解析 JSON 中的 JSON Path。如果您需要构建 JSONPath 断言以针对 JSON 响应进行测试的帮助,您可以使用我们的工具获取帮助。您可以随时添加多个此类 JSONPATH 断言以测试各个使用场景。使用 "+" 键添加更多表达式断言。

      Note

      每当处理断言时,JSON 断言中的目标值将与 JSON 响应中的实际值进行比较,以检查多个测试场景。可以检查的常见测试场景包括:

      • 实际值为空
      • 实际值不为空
      • 实际值等于目标值
      • 验证实际值大于或等于目标值
      • 验证实际值小于或等于目标值
      • 实际值包含目标值作为子字符串
      • 目标值不包含在实际值中
    • JSONPath 严重性:您可以将告警严重性指定为"宕机或问题"。当 JSONPath 断言在测试期间失败时,将自动触发告警。
    • JSON Schema 检查:JSON Schema 是一种允许您为 Web 服务的所有 JSON 端点添加注释和验证的词汇。要针对 schema 测试 HTTP 响应数据,请将切换按钮启用为 ,并在文本字段中输入 JSON schema 验证断言。如果在将切换按钮设置为 后保持文本字段为空,数据采集将照常进行,对整体监视器状态没有影响。 
    • JSON Schema 严重性: 您可以将告警严重性指定为"宕机或问题"。当 JSON Schema 验证在内容检查期间失败时,将根据您的设置自动触发告警。
      Note

      以下是针对定义的 JSON schema 验证 API 响应时测试的常见使用场景:

      • 验证值是否为某种类型(例如整数、字符串等)
      • 确保 API JSON 响应结构正确
      • 检查 JSON 响应中是否存在所需键
      • 测试不正确的 HTTP 响应(如 HTML 或 XML)是否针对您的给定 JSON schema 进行验证。
    • 应包含 HTTP 响应头:输入所需的响应头和值以供您的 HTTP 请求使用,并验证 HTTP 头是否存在或值是否与所需响应匹配。检查失败时触发问题或宕机告警。
      配置响应头检查时,您必须根据以下条件添加值:
      • 您可以添加多个头,每个头可以接受多个值。
      • 单个值可以配置为带或不带双引号(例如:keep-alive 或 "keep-alive")。
      • 如果配置了多个头值,您需要用空格分隔,并为每个值使用双引号。(例如:"gzip" "br")。
      • 头值还可以支持正则表达式验证。正则表达式模式应为 "${}"。例如:${\d{4}} 可用于搜索标头名称中配置的标头值中的四位连续数字值。
  • HTTP 响应头严重性 :使用切换按钮将告警严重性指定为宕机或问题。当测试失败时,将自动触发告警。

    参数转发

    您可以使用参数转发功能在链式请求之间传递数据并进行数据验证。可以使用 XPath、JSONPath 或正则表达式从响应中提取单个值,并将其保存为自定义参数。此外,可以使用正则表达式从头中提取值。然后,这些参数可用于为后续步骤构建自定义查询字符串或 POST 数据。根据您选择的 Text、XML 或 JSON 响应数据格式,您可以构建自定义基于 Regex 的表达式、XPath 表达式或基于 JSONPath 的表达式断言。当您在后续步骤的 HTTP 请求中调用 ${Parameter} 时,被调用表达式断言的输出值将用于这些步骤中的各种步骤验证用例。

导入测试用例:Swagger 2.0 / JSON/YAML 格式的 OpenAPI 定义
Swagger 2.0 / OpenAPI 格式为 API 文档和快速启动服务器实现提供了众多支持工具。您可以将 Swagger 定义的 API 以 JSON/YAML 格式导出,并在 Site24x7 中创建自动化测试场景。通过导入 Swagger 定义的 JSON/YAML 文件,您可以节省大量时间和手动输入每个 API 方法的工作,只需几分钟即可自定义您的 REST API 事务监视器。导入 JSON/YAML 格式的 Swagger 定义后,您定义的每个方法都会自动创建单独的事务,只需几次单击即可完成。Site24x7 读取您在 Swagger 中定义的 API 结构及其所有步骤名称、请求头、端点 URL 等,大大减轻了您设置步骤时的初始工作量。按照以下步骤导入 Swagger 定义:

  1. 登录 Site24x7 > 管理 > 添加监视器 > REST API 事务
  2. 单击"事务步骤"下的导入按钮。系统将弹出导入步骤弹窗。 
  3. 选择 Swagger 2.0 (JSON/YAML) 或 OpenAPI 3.0 (JSON/YAML) 单选按钮,并从本地计算机浏览 Swagger 2.0 / OpenAPI 3.0 (JSON/YAML) 文件。完成后,单击下一步

选择您希望导入 Site24x7 进行监控的所有 API 调用,然后单击导入。导入后,您可以随时重新排序步骤。

Note

您只能选择 60 个 API 事务来创建监视器。端点 URL 和 HTTP 头及请求体将针对各个事务自动定义。但是,您必须确保使用正确的值微调所有头和请求体,否则监视器将出现配置错误。

导入测试用例:HTTP Archive(HAR)格式
您可以导入已下载的 HTTP Archive(HAR)文件以在 Site24x7 中创建测试场景。可以使用浏览器开发者工具提取事务的 HAR 文件。与 Swagger 类似,所有步骤名称、请求头、端点 URL 等都将从 HAR 文件中提取,并通过自动填充每个步骤的所有可用参数和值来加速整个监视器配置流程。下载 HAR 文件后,请按照以下步骤在 Site24x7 中设置监视器:

  1. 登录 Site24x7 > 管理 > 添加监视器 > REST API 事务
  2. 单击"事务步骤"下的 导入 按钮。系统将弹出 导入步骤 弹窗。 
  3. 现在选择 HTTP Archive(HAR)单选按钮并从本地计算机浏览 HAR 文件。完成后,单击下一步

选择您希望导入 Site24x7 进行监控的所有 API 调用,然后单击 导入。导入后,您可以随时根据需要重新排序。

Note

您只能选择最多 60 个 API 调用来配置监视器。

单击"导入"按钮选择导入步骤后,将根据给定 HAR 文件中的请求和响应自动执行参数转发、POST 和 PUT 方法的 JSON 响应检查(JSONPath 表达式)以及 JSON Schema 检查。

导入测试用例:WSDL 格式

提供 Web 服务描述语言(WSDL)URL 作为输入,可以帮助您轻松执行所有受支持的操作。它为所选操作(即导入步骤)生成请求 XML、端点 URL 和所需的请求头。了解如何使用 WSDL 导入步骤定义以下详情以成功执行测试操作:

    1. 输入 WSDL URL:输入需要监控的 WSDL URL。 
    2. 单击下一步

导入测试用例:cURL 格式

可以使用浏览器开发者工具提取事务的 cURL 文件。提取的 cURL 步骤应上传到扩展名为 .curl 的文件中。您可以导入已下载的 cURL 文件以在 Site24x7 中创建测试场景。与 Swagger 类似,所有步骤名称、请求头、端点 URL 等都将从 cURL 文件中提取。这有助于通过自动填充每个步骤的所有可用参数和值来加速整个监视器配置流程。仅支持 POST、PUT、DELETE 和 GET 操作。
使用 cURL 导入 REST API 事务步骤下载 cURL 文件后,请按照以下步骤在 Site24x7 中设置监视器:

  1. 在 Site24x7 Web 客户端中,导航到管理 > 添加监视器 > REST API 事务
  2. 单击事务步骤下的导入按钮。系统将弹出导入步骤弹窗。
  3. 现在,选择 cURL 单选按钮,并从本地计算机浏览 cURL 文件。
  4. 完成后,单击下一步

导入测试用例:Postman JSON
Postman 集合是一组可以与团队共享或导出的 API 请求。您可以从 Postman 导出集合,并在 Site24x7 中创建测试场景。您可以将已下载的 Postman(JSON)文件导入 Site24x7。与 Swagger 类似,所有步骤名称、请求头、端点 URL 等都将从 Postman(JSON)文件中提取。这有助于通过自动填充每个步骤的所有可用参数和值来加速整个监视器配置流程。仅支持 POST、PUT、DELETE 和 GET 操作。
使用 Postman JSON 导入 REST API 事务步骤下载 Postman(JSON)文件后,请按照以下步骤在 Site24x7 中设置监视器:

  1. 在 Site24x7 Web 客户端中,导航到  管理 > 添加监视器 > REST API 事务
  2. 单击事务步骤下的导入按钮。系统将弹出导入步骤弹窗。
  3. 现在,选择 Postman(JSON)单选按钮,并从本地计算机浏览 Postman(JSON)文件。
  4. 完成后,单击下一步

使用 Postman JSON 导入 REST API 事务步骤

导入测试用例:Hoppscotch JSON

Hoppscotch 是一种用于测试和开发 API 的开发工具。您可以从 Hoppscotch 导出集合,并在 Site24x7 中创建测试场景。您可以将已下载的 Hoppscotch(JSON)文件导入 Site24x7。单击下一步将显示所有步骤名称、请求头、端点 URL 等。这将提取 Hoppscotch(JSON)文件,通过自动填充每个步骤的所有可用参数和值来加速整个监视器配置流程。 

下载 Hoppscotch(JSON)文件并按照以下步骤在 Site24x7 中设置监视器:

  1. 在 Site24x7 Web 客户端中,导航到管理 > 添加监视器 > REST API 事务
  2. 单击事务步骤下的导入按钮,将显示标题为 REST API 事务导入步骤的弹窗。
  3. 现在,选择 Hoppscotch(JSON)单选按钮,并从本地计算机浏览 Hoppscotch(JSON)文件。
  4. 上传 JSON 文件后,单击下一步
  5. 将列出 JSON 文件中的方法列表。选择您要导入的方法。
  6. 单击导入,将 JSON 方法导入您的 REST API 事务监视器。

配置文件

阈值和可用性:从下拉列表中选择阈值配置文件或选择可用的默认阈值,当资源超过配置的阈值时获得通知。

Note

要创建自定义阈值和可用性配置文件,请参阅阈值和可用性。您甚至可以在定义的阈值被突破后执行自动化操作。了解更多关于自动化的信息。

标签: 将监视器与预定义标签关联,以帮助您有创意地组织和管理监视器。了解如何添加标签

IT 自动化:选择在网站宕机/问题/恢复/任何状态更改/任何属性更改时执行的自动化操作。当状态发生变化时,定义的操作将被执行,并向选定的用户组发出告警。
要在故障时自动执行纠正措施,请参阅 IT 自动化

告警设置

用户告警组:选择在发生中断时需要收到告警的用户组。要在用户告警组中添加多个用户,请参阅 用户告警组

值班计划值班计划选项可帮助您确保通知在特定轮班时间内发送给受理人,帮助他们快速响应告警或事故。从下拉列表中选择您偏好的值班计划。 

通知配置文件:从下拉列表中选择通知配置文件或选择可用的默认配置文件。通知配置文件有助于配置在宕机时需要通知的时间和人员。请参阅 通知配置文件 以创建自定义通知配置文件。

Note

无论您配置了哪个值班班次,只要监视器与用户组关联,您就可以收到告警。

第三方集成

将您的监视器与预配置的第三方服务关联。它允许您将监视器告警和事故推送到所选服务,并促进改进的事故管理和协作。

Note

如果您还未设置任何集成,请导航到"管理 > 第三方集成"创建一个。了解更多关于第三方集成的信息

单击保存完成监视器设置。如果您希望运行配置并查看监视器是否运行正常,然后保存监视器,可以单击检查并保存。如果出现错误,监视器将不会被保存。

可能的使用场景

REST API 事务监视器允许您捕获事务以从 Auth 服务获取令牌,并将令牌作为同一监视器的一部分传递给其他服务。此外,以下是一些可以积极使用 REST API 事务监视器来确保网站或现代 Web/移动应用程序端到端可用性的使用场景:

监控链式 API 事务:

在 API 端点相互关联的 Web 应用程序中,数据从一个请求传递到另一个请求。整个响应或其一部分可以被记录为响应参数,并在后续步骤中重用以完成事务。让我们看看下面的使用场景。获取监视器状态 API 给出了您 Site24x7 账户中所有监视器的 JSON 响应。您可以使用以下 URL 获取您账户的以下 JSON 响应。步骤 1 可以是您 REST 事务监视器中的事务步骤 1。

步骤 URL 1: https://site24x7.com/api/current_status/type/RESTAPISEQ?authtoken=95c883409340sdsds4qqwr47dsdsd461beb7ea6b
{
"code": 0,
"message": "success",
"data": {
"monitors": [
{
"outage_id": "1500384436349",
"name": "JSON Check",
"downtime_millis": "3424304",
"down_reason": "Trouble invoking url (Step Url Name) in JSON Check.\nUnable to connect to https://www.site24x7.com${test}.",
"duration": "57 Mins 4 Secs",
"attribute_key": "transaction_time",
"status": 0,
"attributes": [
{
"attribute_label": "web.application.details.transaction.time",
"unit": "ms",
"attribute_key": "rsptime",
"attribute_value": 2124
}
],
"last_polled_time": "2017-07-18T18:51:10+0530",
"attributeName": "TRANSACTIONTIME",
"monitor_type": "RESTAPISEQ",
"attribute_label": "Transaction Time",
"unit": "ms",
"monitor_id": "6000000120027"
},
{
"name": "wewewewewew",
"status": 10,
"attributes": [
{
"attribute_label": "web.application.details.transaction.time",
"attribute_key": "rsptime",
"attribute_value": "-"
}
],
"last_polled_time": "2017-06-28T15:08:20+0530",
"attributeName": "TRANSACTIONTIME",
"monitor_type": "RESTAPISEQ",
"monitor_id": "6000000064003"
}
]
}
}
上述 JSON 数据的 JSONPath 表达式断言:test=$.data.monitors[?(@.status==0)].monitor_id

在事务步骤 1 中,您现在可以使用上述 JSON 响应作为主要输入来指定 JSONPath 表达式断言。类似地,您可以基于输入构建 Regex 表达式或 XPath 表达式。我们示例中的 JSONPath 表达式可用于查询所有处于 DOWN 状态的监视器的 monitor_id(状态 '0' 表示 DOWN)。
  
步骤 2 URL: https://site24x7.com/api/reports/outage/${test}?period=1&authtoken=95c883409340sdsds4qqwr47dsdsd461beb7ea6b

使用上面创建的自定义参数表达式构建步骤 URL 2。这也称为参数转发。此处的步骤 2 URL 可用于获取所有 DOWN 监视器的中断报表。在这里,我们使用从步骤 1 的 URL 响应中获取的自定义参数值作为步骤 2 URL 的输入。如果 URL 执行成功,您将在此步骤中获得 DOWN 监视器的中断报表。这也会将 REST 事务监视器的状态渲染为 UP。但是,如果表达式断言没有返回任何响应,步骤 2 将失败,并将整体监视器状态设置为 DOWN。这种链式调用可以持续进行,只要用户希望且 API 支持即可。
{
"code": 0,
"message": "success",
"data": {
"outage_details": [
{
"display_name": "JSON Check",
"outages": [
{
"outage_id": "1500384436349",
"end_time": "2017-07-18T20:12:33+0530",
"type": 0,
"start_time": "2017-07-18T18:57:16+0530",
"reason": "Trouble invoking url (Step Url Name) in JSON Check.\nUnable to connect to https://www.site24x7.com${test}.",
"duration": "1 Hrs 15 Mins "
},
{
"outage_id": "1500383206387",
"end_time": "2017-07-18T18:46:05+0530",
"type": 0,
"start_time": "2017-07-18T18:36:46+0530",
"reason": "Trouble invoking url (Step Url Name) in JSON Check.\nUnable to connect to https://www.site24x7.com/${test}.",
"duration": "9 Mins 18 Secs"
}
],
"monitor_id": "6000000120027"
}
],
"info": {
"resource_name": "JSON Check",
"end_time": "2017-07-18T20:12:33+0530",
"resource_type_name": "Monitor",
"report_name": "Outage Report",
"period_name": "Last 24 Hours",
"formatted_start_time": "17 July 2017 20:12 IST",
"generated_time": "2017-07-18T20:12:33+0530",
"formatted_end_time": "18 July 2017 20:12 IST",
"start_time": "2017-07-17T20:12:33+0530",
"resource_type": 2,
"period": 1,
"formatted_generated_time": "18 July 2017 20:12 IST",
"resource_id": "6000000120027",
"report_type": 12
}
}
}

监控结合了 HTML 和 REST API 调用的现代 Web 应用程序:

所有现代 Web 应用程序和移动应用程序主要使用 REST API 来执行应用程序操作。中间的 HTML 页面也用于促进注册、登录、文本提交等流程。REST API 事务监视器允许您构建和测试这种相互关联的工作流。您需要在各个事务步骤下配置所有 API 端点和网站 URL,以使 Site24x7 能够端到端地监控整个事务。

Note

阅读更多关于 Site24x7 REST API 监控工具的信息。

解读性能指标

相关监视器

比较我们的网站监控功能

本文档对您有帮助吗?

您愿意帮助我们改进文档吗?请告诉我们哪些方面可以做得更好。


很抱歉本文档未能让您满意。我们希望了解可以从哪些方面改进您的体验。


感谢您抽出时间分享反馈。我们将利用您的反馈来改进在线帮助资源。

短链接已复制!