本文档介绍了如何查看 App Hub 应用、服务和工作负载的开箱即用 (OOTB) 信息中心。这些信息中心可帮助您了解应用资源的运行状况并诊断问题。
这些开箱即用信息中心显示的遥测数据包括日志和指标数据,以及与未结突发事件相关的信息。应用信息中心会提供位置、重要性和所有者等信息。服务和工作负载信息中心包含有关 App Hub 和基础架构类型的信息。
应用专用标签
借助 App Hub 专用标签,Google Cloud Observability 可以构建 OOOTB 信息中心的层次结构,并将显示的遥测数据过滤为服务或工作负载的遥测数据。您还可以使用这些标签过滤日志和指标数据。当您的应用在与 App Hub 集成的资源上运行时,系统会附加这些标签。 Google Cloud在提取 Google Cloud Managed Service for Prometheus 指标时,系统可能会附加这些标签。
日志标签
日志条目包含 apphub
字段,其中列出了应用以及服务或工作负载的标签。以下示例展示了此类数据的格式:
apphub: {
application: {
id: "my-app"
location: "my-app-location"
}
workload: {
criticalityType: "MEDIUM"
environmentType: "STAGING"
id: "my-workload-id"
}
}
指标标签
本部分介绍了如何将应用专用标签附加到资源生成的指标数据,以及如何将标签附加到使用 Google Cloud Managed Service for Prometheus 提取的 Prometheus 指标。 Google Cloud 在以下示例中,将 a.b.{x,y}
解释为 a.b.x
和 a.b.y
。
以下 App Hub 标签会附加到应用使用的资源中的指标数据: Google Cloud
metadata.system_labels.apphub_application_{container,id,location}
metadata.system_labels.apphub_{workload,service}_{criticality_type,environment_type,id}
当满足以下任一条件时,系统会将 App Hub 应用标签附加到 Google Cloud Managed Service for Prometheus 指标:
工作负载在版本为 1.30 或更高版本的 Google Kubernetes Engine 集群上运行,并且工作负载的控制器类型为以下之一:
apps.k8s.io/{Deployment,StatefulSet,DaemonSet}
batch.k8s.io/CronJob
在 Cloud Run 上使用 OpenTelemetry 时。
在 Google Kubernetes Engine 上使用 OpenTelemetry 并遵循 OTLP Kubernetes 提取指南。
Managed Service for Prometheus 使用 App Hub API 来确定 App Hub 应用是否存在。找到应用后,系统会向轨迹数据添加以下特定于应用的标签:
metric.labels.apphub_application_{container,id,location}
metric.labels.apphub_workload_{criticality_type,environment_type,id}
提醒政策标签
系统不会自动将服务和工作负载标签附加到提醒政策。不过,您可以将提醒政策与特定工作负载或服务相关联,方法是将以下所有标签(使用以下键)附加到提醒政策:
apphub_application_location
apphub_application_id
apphub_service_id
或apphub_workload_id
如果提醒政策包含上述键,系统会在 OOTB 信息中心内显示该政策的突发事件。
如需了解详情,请参阅将提醒政策与服务或工作负载相关联。
准备工作
在使用应用监控功能之前,请务必配置您的 App Hub 宿主项目。您将使用此项目查看应用的遥测数据:
-
如需获得查看日志和指标数据、创建提醒政策和自定义信息中心所需的权限,请让管理员为您授予以下 IAM 角色:
-
您的 App Hub 托管项目以及列出了其默认日志范围的任何其他项目上的 Logs Viewer (
roles/logging.viewer
)。此角色会授予对_Default
日志分桶中大多数日志条目的访问权限。如需了解详情,请参阅日志记录角色。 -
针对 App Hub 宿主项目的默认日志范围中列出的日志视图使用 Logs View Accessor (
roles/logging.viewAccessor
)。如需详细了解如何授予对日志视图的访问权限,请参阅控制对日志视图的访问权限。 -
App Hub 宿主项目的 Monitoring Editor (
roles/monitoring.editor
)。对于不需要创建或修改提醒政策或信息中心的正文,请考虑授予 Monitoring Viewer 角色 (roles/monitoring.viewer
)。 - 您 App Hub 宿主项目中的 App Hub 查看器。如需了解详情,请参阅 App Hub 角色和权限。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
-
您的 App Hub 托管项目以及列出了其默认日志范围的任何其他项目上的 Logs Viewer (
确保您已配置 App Hub 宿主项目的可观测性范围。如需了解详情,请参阅设置应用监控。
可观测性范围用于控制您的 App Hub 宿主项目可以使用哪些数据。您可能无法通过这些范围的默认设置查看所有日志或指标数据。
更新用于监控应用数据的提醒政策,以添加特定于应用的标签。如需了解详情,请参阅将提醒政策与服务或工作负载相关联。
查看所有应用的摘要
顶级 OOTB 信息中心简要总结了已注册应用的状态。对于每个应用,此页面会列出未解决的突发事件的数量,以及位置、严重程度和环境方面的信息。
如需打开顶级 OOTB 信息中心(其中列出了您在 App Hub 中注册的应用的摘要信息),请执行以下操作:
-
在 Google Cloud 控制台中,前往应用监控页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
在 Google Cloud 控制台的工具栏中,选择您的 App Hub 宿主项目。
可选:如需在 App Hub 中打开应用,请点击 more_vert More(更多),然后选择 Manage in AppHub(在 AppHub 中管理)。
如需打开应用的 OOOTB 信息中心,请选择该应用。 下一部分将介绍如何探索或解读遥测数据。
探索应用遥测和突发事件
选择应用监控页面上列出的应用后,系统会打开该应用的顶级 OOTB 信息中心。此信息中心会汇总未结突发事件的数量,并列出多个黄金信号的值,帮助您了解应用的运行状况。例如,如果此页面显示广泛的失败情况,则可能表明失败源头是基础架构,而不是您的应用。
如需打开应用的 OOB 信息中心,请执行以下操作:
-
在 Google Cloud 控制台中,前往应用监控页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 在 Google Cloud 控制台的工具栏中,选择您的 App Hub 宿主项目。
在应用监控页面上,选择应用的名称。
系统随即会打开应用的 OOB 信息中心,其中概览标签页已选中。此标签页列出了每项服务和工作负载,以及未解决的服务请求数量和黄金信号的值:
- 流量:所选时间段内资源的传入请求速率。
- 服务器错误率:在所选时间段内,生成或映射到 5xx 系列 HTTP 错误代码的传入请求所占的平均百分比。
- P95 延迟时间:所选时间段内汇总的服务请求延迟时间的第 95 百分位(以毫秒为单位)。
- 饱和度:衡量服务或工作负载的“满载”程度。对于依赖于基于计算的资源(例如托管式实例组 [MIG]、Cloud Run 和 Google Kubernetes Engine 部署)的服务和工作负载,此字段会显示 CPU 利用率。
在概览标签页中,您可以执行以下所有操作:
- 重置时间范围。当您打开信息中心时,时间范围会设为最近一小时。
- 查看与应用相关的信息,例如运营商、开发者和商家所有者。
- 在 App Hub 中打开应用、服务或工作负载。
- 打开服务或工作负载的信息中心。
如需查看应用遥测数据和有关未解决突发事件的信息,请选择信息中心标签页。
信息中心标签页会显示日志、指标和突发事件信息。此标签页还包含过滤条件,您可以使用这些过滤条件来限制该标签页显示的数据。如需了解如何浏览此标签页,请参阅本文档的以下部分:
过滤信息中心
信息中心标签页会显示应用中服务和工作负载的数据。不过,您可以将此信息中心过滤为显示特定服务或一组服务。
例如,信息中心标签页上的工具栏包含 apphub_service_id: *
等过滤条件。如果您想查看特定服务的数据,请点击 arrow_drop_down Menu(菜单),然后从列表中选择这些服务。
探索日志数据
如果您查看的是应用信息中心的信息中心标签页,则日志数据会显示在应用日志部分。否则,您的数据会显示在日志部分中。
信息中心的应用日志和日志部分会显示与过滤条件匹配且由 App Hub 宿主项目的默认日志范围中列出的资源存储的日志条目。对于应用,过滤条件类似于以下内容:
-- Application logs
(apphub_application_location=global)
(apphub_application_id=my-app)
对于服务和工作负载,过滤条件包含其他子句。如需查看应用于日志数据的过滤条件,请点击显示查询。
如果您想编写查询,可以打开动作条或日志浏览器页面。这两种方式都允许您编写和运行查询,以及更改范围。不过,该动作条会保留您当前的上下文,并允许您将探索结果保存到自定义信息中心:
如需打开下拉菜单,请点击 query_stats 探索数据。
探索完成后,点击取消关闭动作条并舍弃所做更改。如果您想将更改保存到自定义信息中心,请点击保存到信息中心,然后完成对话框。您无法将所做的更改保存到您打开动作条时正在查看的信息中心。
该动作条不会列出显示查询按钮显示的过滤条件。这些过滤条件会应用于信息中心一级,无法移除。
如需在新浏览器标签页中打开日志浏览器页面,请点击在日志浏览器中查看。
该查询已预配置为显示与特定应用标签匹配且位于信息中心指定的时间范围内的日志条目。关闭浏览器标签页后,系统会舍弃您所做的更改。
如需详细了解如何浏览日志,请参阅以下文档:
探索指标数据
信息中心中的图表和表格会显示黄金信号以及与应用、服务或工作负载使用的资源相关的其他指标数据。显示的数据可以存储在 App Hub 宿主项目的指标范围所列的任何项目中。
对于显示指标数据的任何图表或表格,您都可以查看指标类型和汇总选项等详细信息。如需查看此类信息,请前往图表或表格的工具栏,然后点击 infoInformation(信息)。
如需详细探索图表或表格,您可以打开弹出式窗口或打开 Metrics Explorer 页面。通过这两种方式,您都可以尝试不同的图表设置,并将结果保存到自定义信息中心。不过,该动作条会保留您的当前上下文:
如需打开下拉菜单,请点击 query_stats 探索数据。
探索完成后,点击取消关闭动作条并舍弃所做更改。如果您想将更改保存到自定义信息中心,请点击保存到信息中心,然后完成对话框。您无法将所做的更改保存到您打开动作条时正在查看的信息中心。
如需在 Metrics Explorer 中查看图表或表格,请前往工具栏,点击 more_vert More,然后选择 View in Metrics Explorer。
现在,您可以修改和探索临时图表了。例如,您可以更改汇总选项或更改显示样式。如需将图表保存到自定义信息中心,请点击保存到信息中心,然后完成
探索突发事件
信息中心的提醒部分会列出与服务或工作负载关联的提醒政策的近期突发事件。这些提醒政策必须存储在您的 App Hub 宿主项目中。
如果您在提醒部分中没有看到任何条目,则表示您没有与服务或工作负载关联的任何提醒政策。如需建立此关联,请为政策添加标签。如需了解详情,请参阅将提醒政策与服务或工作负载相关联。
如需详细了解突发事件和提醒政策,请执行以下操作:
如需详细了解导致突发事件的提醒政策,请点击相应政策的名称。打开的信息中心会显示有关提醒政策的详细信息,包括显示所监控数据和标签的图表。
如需查看与应用关联的所有提醒政策,请前往工具栏,然后点击 query_stats Explorer 数据。系统随即会打开一个列出了所有政策的弹出式菜单。如要返回信息中心,请点击取消。
探索服务或工作负载遥测数据和突发事件
系统为每项服务和工作负载提供了一个开箱即用信息中心。这些信息中心会显示日志、指标和突发事件信息,可帮助您了解特定服务或工作负载的运行状况。您可以探索这些 OOB 信息中心中的数据,方法与探索应用的信息中心标签页中显示的数据类似。
如需为服务或工作负载打开开箱即用信息中心,请执行以下操作:
-
在 Google Cloud 控制台中,前往应用监控页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 在 Google Cloud 控制台的工具栏中,选择您的 App Hub 宿主项目。
在应用监控页面上,选择应用的名称,然后选择服务或工作负载。
信息中心会显示所选服务或工作负载的日志、指标和突发事件信息。如需了解如何探索这些数据,请参阅本文档的以下部分:
创建自定义信息中心
Google Cloud Observability 支持创建自定义信息中心,让您可以完全控制信息中心的内容。自定义信息中心会列在 Google Cloud 控制台的信息中心页面中,您可以复制、修改和删除这些信息中心。它们还可以是您保存已配置的信息中心微件的目标位置。例如,如果您正在应用信息中心中浏览某个图表,则可以前往工具栏并选择保存到信息中心,将该图表保存到自定义信息中心。
如果您打算为应用、服务或工作负载创建自定义信息中心,以下内容可能会有所帮助:
信息中心概览文档提供了有关 widget 类型的摘要,其中包含指向基于任务的指导文档的链接。
您可以向自定义信息中心添加信息中心级过滤条件。与向各个 widget 添加过滤条件相比,使用这些过滤条件可能更高效、更灵活。过滤条件基于标签。如需查看标签列表,请参阅本文档的特定于应用的标签部分。
考虑现有模板中是否包含您需要的大部分内容。如需了解详情(包括指向存储模板的 GitHub 代码库的链接),请参阅安装信息中心模板。
将提醒政策与 App Hub 应用相关联
您可以通过向提醒政策添加应用专用标签,将提醒政策与服务或工作负载相关联。添加这些标签后,它们会显示在提醒政策中,并包含在所有突发事件中。如需详细了解标签,请参阅使用标签为突发事件添加注释。
如需使用 Google Cloud 控制台将提醒政策与工作负载或服务相关联,请执行以下操作:
-
在 Google Cloud 控制台中,转到 notifications 提醒页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 在 Google Cloud 控制台的工具栏中,选择您的 App Hub 宿主项目。
- 找到相应提醒政策,点击 more_vert View more(查看更多),选择 Edit(修改),然后前往Notifications and name(通知和名称)部分。
- 在应用标签部分,选择您的应用,然后选择您的工作负载或服务。
- 点击保存政策。
完成这些步骤后,系统会将具有以下键的标签附加到您的提醒政策。这些标签用于标识您的应用以及您的服务或工作负载:
apphub_application_location
apphub_application_id
apphub_service_id
或apphub_workload_id
您还可以使用 Google Cloud CLI、Terraform 或 Cloud Monitoring API 向提醒政策添加用户标签。不过,您必须使用上例中显示的标签键。详情请参阅以下内容:
问题排查
如需了解哪些信息可能会帮助您了解您正在查看的数据,或信息中心未显示数据的原因,请参阅排查应用监控问题。