运行查询

借助 App Topology,您可以运行查询来帮助您关联数据,并回答有关应用健康状况、性能和安全状况的问题。

拓扑类型

App Topology 支持针对 Google Cloud 项目中的资源进行的查询,以及针对项目或已启用应用的文件夹中的 App Hub 应用进行的查询。Google Cloud 在文件夹中创建 App Hub 应用后,您可以在 App Topology 中运行查询,以查看该文件夹中各个项目之间的资源关系。

在 Cloud Hub 中,App Topology 提供了多个领域,可用于解答特定类型的问题。每个网域都允许您查询一组特定的底层数据。

  • 健康状况和问题排查 - 适用于专注于服务运行时健康状况和可靠性的网站可靠性工程师 (SRE) 和其他用户。您可以查看部署事件的未解决的提醒,并分析应用组件或代理资源之间的流量。

  • 部署 - 适用于管理软件供应链和基础设施配置的 DevOps 工程师。您可以在部署 build 工件之前检查其中是否存在已知漏洞,并跟踪从源代码到生产环境的来源。

  • 安全性 - 适用于审核访问权限、漏洞和软件供应链风险的安全工程师和经理。您可以检查访问路径,并确定受漏洞影响的正在运行的服务和基础设施。

App Topology 还提供专注于 Google Cloud其他领域特定用途的拓扑图。

下表可帮助您决定使用哪种拓扑工具:

拓扑工具 何时使用
App Topology API 智能体可以使用 App Topology MCP 服务器来查询和关联资源数据。
Cloud Hub 中的App Topology 分析可观测性、安全性和部署领域的数据关系。
  • 查看按应用分组的 App Hub 服务和工作负载
  • 使用预定义查询或创建自己的查询
  • 查看单个项目和已启用应用的文件夹的数据
Cloud Monitoring 中的应用拓扑 根据遥测数据查看实时可观测性数据,例如流量、延迟时间和服务依赖项。
  • 查看按应用分组的 App Hub 服务和工作负载
  • 注册已发现的服务和工作负载
  • 提供应用性能和流量的聚焦视图
  • 查看单个项目和已启用应用的文件夹的数据
代理拓扑 查看基于代理的系统的基础架构和连接,例如代理与其管理工具之间的连接。
  • 使用提供的查询,或在 Cloud Hub 中运行修改后的预定义查询
  • 仅查看单个项目的数据

准备工作

  1. 确定要设置的 Google Cloud 项目。

    • Security Command Center 提供的安全和合规性数据仅适用于 Google Cloud 组织中的项目和应用。如果您想将项目迁移到组织,请参阅迁移说明
    • 如果您为 App Hub 应用设置了已启用应用的文件夹,请在该文件夹的管理项目中启用这些说明中描述的 API 并授予相应权限。
  2. 如需查看 build 出处等软件供应链数据,请配置 Developer Connect 数据分析

  3. 启用 App Topology、Cloud Asset Inventory 和 Observability API。

    启用 API 所需的角色

    如需启用 API,您需要拥有 serviceusage.services.enable 权限。如果您创建了项目,则可能已经通过 Owner 角色 (roles/owner) 获得了此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。了解如何授予角色

    启用 API

  4. 可选:如需查看代理流量,请检测您的 AI 应用

  5. 可选:设置 Security Command Center 以获取安全和合规性数据。 在组织级层激活 Security Command Center,并配置要使用的功能。只有高级和企业层级才能查询 Security Command Center 中的数据。

  6. 向用户授予权限,以便他们查询数据和查看拓扑图。

  7. 如果您要保护 VPC Service Controls 边界内的服务,请更新该边界以纳入 App Topology 和提供底层数据的服务。了解详情

所需的角色

Cloud Hub Operator 角色包含查看 Cloud Hub 中所有网域的数据以及其他 Google Cloud 拓扑的数据所需的权限。

如需获得查询应用拓扑中所有网域所需的权限,请让您的管理员为您授予包含资源的项目或应用的管理项目的 Cloud Hub Operator (roles/cloudhub.operator) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

关于查询

App Topology 查询包含多个组成部分:

  • 节点 - 已发现的 Google Cloud 资源或在 App Hub 应用中注册的资源。节点的示例包括

    • Compute Engine 虚拟机
    • Artifact Registry 中的容器映像
    • 代理
    • 提醒(Cloud Monitoring 中的突发事件
    • App Hub 应用、服务或工作负载
    • 漏洞

    查询构建器按服务对节点进行分组。

  • Where 子句:应用于节点的过滤条件,用于根据节点的特定属性优化查询。

  • 连接:两个节点之间的定向关系。连接具有上下文感知能力,并且仅显示所选节点类型的有效关系。例如:

    • contained in
    • sends traffic to
    • owns
    • depends on

以下示例查询用于搜索存在特定漏洞的部署:

使用各种组件的查询示例
使用各种组件的查询示例

此查询确定了调查的关键节点: - K8s Apps Deployment - Google Kubernetes Engine (GKE) 部署 - Docker Image - 存储在 Artifact Registry 中的容器映像 - Vulnerability

连接 containscontained in 表示节点关系:

  • K8s Apps Deployment contains Vulnerability
  • Vulnerability contained in Docker Image

Where 子句会过滤漏洞结果,以显示特定 CVE。

  • Where Id = CVE-2026-24061

限制

数据可用性:

  • Google Cloud Observability 不支持所有 App Hub 服务和工作负载的遥测。如需查看支持的基础设施资源列表,请参阅应用监控支持的基础设施
  • 查看 App Hub 应用的拓扑时,可视化效果中不包含可在应用之间共享的资源。
  • 删除 Developer Connect 分析洞见事件后,该事件可能仍会在 App Topology 查询结果中显示几天。

Google Cloud 项目的位置:

  • Security Command Center 提供的安全和合规性数据仅适用于 Google Cloud 组织中的项目和应用。

运行查询

您可以使用预定义查询、修改预定义查询或创建自定义查询。

使用或自定义建议的查询

App Topology 会提供查询建议,您可以直接使用这些建议,也可以根据自己的具体要求对其进行自定义。

  1. 在 Google Cloud 控制台中,前往“App Topology”页面。

    前往“App Topology”

  2. 创建查询面板中,选择要探索的网域对应的标签页。

  3. 快速查询下,点击某个查询即可查看查询组件的预览效果。

  4. 如需使用该查询,请点击使用建议。查询会显示在显示部分中。

  5. 您可以根据需要修改编辑器中的查询详细信息。

    • 如需向查询中添加组件,请点击节点旁边的加号图标 ()。
    • 如需移除组件,请点击关闭图标
    • 如需更改 Where 子句的值,请点击相应值。

    您可以点击撤消图标 撤消更改,也可以点击重做图标 重新应用您使用撤消撤消的更改。

    随着您构建查询,可用的节点、过滤条件和连接也会随之更新。

    例如,如果您选择了 Kubernetes 部署中的漏洞,则组件为:

    Application
      contains Workload
        depends on K8s Apps Deployment
           contains Vulnerability
              Where Id = Empty value
    

    如需使用此查询,您必须指定要搜索的漏洞,方法是将 Empty value 替换为 CVE ID,例如 CVE-2026-24061

    或者,您可以更改查询,以搜索包含具有特定漏洞的 Docker 映像的所有应用工作负载

    Application
      contains Workload
        contains Deployment Event
          contains artifact Docker Image
            contains Vulnerability
              Where Id = CVE-2026-24061
    
  6. 完成查询修改后,点击运行查询。如果查询结果包含 Google Cloud 已发现的资源或在 App Hub 应用中注册的资源,系统会显示拓扑图。

    如果查询结果仅包含字符串或计数等数据类型,则无法生成图表。

    根据结果,您可以修改查询,然后点击运行查询以更新拓扑图。

    如果没有结果,请尝试优化查询

  7. 与拓扑互动,了解资源及其关系。

创建自定义查询

如需创建自定义查询,请按照以下步骤操作,创建新查询或自定义现有建议查询

  1. 在 Google Cloud 控制台中,前往“App Topology”页面。

    前往“App Topology”

  2. 创建查询面板中,选择要探索的网域对应的标签页。

  3. 显示部分中,点击 ,选择一个资源或发现结果作为查询的主节点,然后点击继续

  4. 如需优化查询,请点击任意过滤条件或连接的切换开关,以针对所选节点启用相应过滤条件或连接。为启用的每个过滤条件定义值。

  5. 如需对查询进行其他更改,您可以添加、修改或移除组件。

    • 如需向查询中添加组件,请点击节点旁边的加号图标 ()。
    • 如需移除组件,请点击关闭图标
    • 如需更改 Where 子句的值,请点击相应值。

    您可以点击撤消图标 撤消更改,也可以点击重做图标 重新应用您使用撤消撤消的更改。

    随着您构建查询,可用的节点、过滤条件和连接也会随之更新。

  6. 完成查询修改后,点击运行查询。如果查询结果包含 Google Cloud 已发现的资源或在 App Hub 应用中注册的资源,系统会显示拓扑图。

    如果查询结果仅包含字符串或计数等数据类型,则无法生成图表。

    根据结果,您可以修改查询,然后点击运行查询以更新拓扑图。

    如果没有结果,请尝试优化查询

  7. 与拓扑互动,了解资源及其关系。

与拓扑互动

标签页上的拓扑图以节点和连接的形式显示资源及其关系。

  • 图标表示节点,包括已发现和已注册的资源。
  • 线条表示连接,即节点之间的关系。

一个示例拓扑图,其中一个节点处于选中状态

您可以通过以下方式与拓扑互动:

  • 通过放大或缩小或重新定位节点来更改可视化图表。
  • 将光标悬停在两个节点之间的连接线上,即可查看连接的标签。
  • 选择节点或连接即可获取相关信息。
  • 点击切换面板图标 ,即可隐藏或显示查询面板。

如需以表格形式查看查询结果,请点击表格标签页。您可以通过以下方式更改数据的显示方式:

  • 如需选择表格显示的列,请点击列显示选项
  • 如需按特定属性过滤表格,请在过滤条件字段中选择相应属性。
  • 您还可以按升序或降序对各列进行排序。