排查图表问题

本页面介绍了您在使用 Google Cloud 项目收集的指标时可能会看到的一些行为。

图表错误

本部分介绍您在配置图表时可能会看到的错误。您可以使用 Metrics Explorer 配置图表,也可以将图表添加到信息中心。

图表数据中存在缺口

图表偶尔会出现数据缺口。例如,以下屏幕截图展示了 loadbalancing.googleapis.com/https/total_latencies 指标的这种行为:

值缺口的图表示例。

数据写入很少的情况可能会出现数据缺口。Cloud Monitoring 通过采样来收集指标,对于非常稀疏的数据,可能不会在收集样本时提供任何数据。例如,如果请求计数为每秒 0.05 次查询 (QPS) 或更小,则负载平衡器指标的差距。查询率提高时,缺口消失。

更改时间范围后,校准时间段也会随之更改

您将图表添加到信息中心。当您更改图表的时间范围时,校准周期有时也会发生变化。例如,如果您将时间范围从 1 小时更改为 2 小时,则校准时间段会列为 1 minute interval。不过,如果您将时间范围从 1 小时更改为 1 天,则对齐周期会列为 5 minute interval

这是预期行为。

图表可显示的数据点数量有限。因此,当所选时间范围内可用的数据点数量超出显示限制时,监控功能会自动修改对齐设置,以减少要显示的数据点数量。

图表未显示所有时序

您配置了一个图表,但该图表未显示所有时序。

出于性能方面的原因,图表配置为最多显示 50 个时序。

如果您配置的图表中有超过 50 个时序,则图表会限制显示的时序数量,并在工具栏中添加带有红点的图标。该图标的提示会显示以下消息:

To improve performance, we've limited the time series displayed in this chart.

如需显示所有时序,请展开提示,然后选择标记为显示所有时序的按钮。

图表未显示任何数据

您配置了一个图表,但图表显示的是错误消息,而不是数据:

  • 如果图表所指定的时间范围没有可用数据,系统会显示以下消息:

    No data is available for the selected time frame.
    

    如需解决此问题,请尝试执行以下操作:

    • 扩大图表的时间范围。某些指标类型(例如报告配额用量的指标)每天只提供一个样本。

    • 更改图表所选的指标类型。图表指定的指标类型可能处于非活动状态。也就是说,没有该指标类型的数据。

  • 如果系统无法识别查询指定的指标类型或资源类型,则会显示以下消息:

    An error occurred requested data. One or more resources could not be found.
    

    如需解决此问题,请尝试执行以下操作:

    • 验证查询中指定的指标类型和资源类型是否已定义。您可以使用图表的菜单驱动型界面搜索指标类型。

    • 检查查询中指标类型和资源类型的拼写。

包含多个指标的图表显示错误消息

您要将图表配置为显示多个指标,并且图表会显示以下错误消息:

    The units for queries using the same Y-axis must be the same for the chart
    to render correctly.

图表可以显示多种指标类型,您可以将某种指标类型映射到左侧 Y 轴或右侧 Y 轴。映射到左侧 Y 轴的所有指标类型的单位必须相同;否则,系统会显示之前的错误消息。同样,映射到右侧 Y 轴的所有指标类型的单位必须相同,否则系统会显示之前的错误消息。

要解决此错误,请执行以下操作:

  1. 如果图表包含的指标类型超过两个单位,请移除指标,直到只有两个单位类型。

  2. 在左侧 Y 轴上为一个单位类型分配所有指标,在右侧的 Y 轴上为其他单位类型分配所有指标。

包含多个指标的图表显示意外数据

图表配置为显示多个指标,并添加了过滤条件以仅显示特定时序。但是,该图表会显示不满足过滤条件的时序。

要解决此问题,请确保将过滤条件应用于已绘制图表的每个指标。

例如,以下屏幕截图显示了图表的 Metrics Explorer 配置窗格,该图表显示了虚拟机 (VM) 实例读取和写入的字节数:

包含两种指标类型的 Metrics Explorer 示例。

在此屏幕截图中,每个标题对应于图表显示的每种指标类型。

对于此示例,如果您希望图表仅显示 us-central1-a 可用区中虚拟机的时序,请将过滤条件 zone = us-central1-a 添加到每个查询。

无法为 MQL 和 PromQL 定义的图表选择过滤条件值

您可以在自定义信息中心内创建图表,并使用 Monitoring Query Language (MQL) 或 PromQL 配置这些图表。然后,您可以创建永久性信息中心过滤条件。您在查看信息中心时,尝试更改过滤条件的默认值,但标签值菜单未显示或标签值菜单不正确:

系统未加载信息中心范围的过滤条件的值。

如需解决此问题,请输入过滤条件值,然后选择应用。例如,如果过滤条件键为 zone,则您可以输入 us-central1-a

信息中心错误

本部分介绍您在创建或修改信息中心时可能会看到的错误。

信息中心未显示所有事件

您可以配置信息中心以显示事件;不过,系统只会显示近期事件。系统不会显示较早的事件。

如需解决此问题,请执行以下某项操作:

  • 使用较短的时间范围。例如,显示最近一小时的数据(而非最近一天的数据),或选择自定义时间范围。

  • 添加过滤条件。

出于性能方面的原因,信息中心可显示的事件数量有限。达到这些上限后,信息中心只会显示最近的事件。

重新调整了 Terraform 创建的信息中心

您使用 Terraform 创建了信息中心,然后使用 Google Cloud 控制台修改了该信息中心。您希望信息中心除您所做的修改外保持不变。而是重新调整信息中心的大小。例如,您的信息中心原来有 12 个列,现在有 48 个列。

请勿修改使用 Terraform 与 Google Cloud 控制台创建的信息中心。修改信息中心时,系统会按 4 的比例缩放大小。

提醒政策微件未显示任何数据

信息中心包含提醒政策的图表,但图表未显示任何数据。

如需解决此问题,请尝试以下操作:

  • 查看图表的配置,并确保已选择提醒政策。如果未显示提醒政策,请将图表与提醒政策关联,或从信息中心中删除图表。

    当引用的提醒政策被删除时,信息中心上显示提醒政策数据的图表会停止显示数据。删除提醒政策不会删除引用该政策的图表。

  • 查看提醒政策的详细信息,确认其包含单一条件。

    如果提醒政策被修改为包含多个条件,则信息中心上显示提醒政策数据的图表会停止显示数据。如需解决此问题,请将图表与单一条件提醒政策关联,或从信息中心中删除图表。

  • 增大时间范围。时间范围选择器必须设置为大于数据采样周期的值。虽然大多数指标每 60 秒采样一次,但某些指标的采样频率并不高。例如,serviceruntime.googleapis.com/quota/limit 指标每 86400 秒(1 天)采样一次。

日志面板报告无效查询

您看到错误消息“错误:查询无效”,并且日志面板未显示任何日志条目。

如需解决此问题,请减少日志面板显示其日志的项目的数量。

如需详细了解此失败条件,请参阅查询返回错误

日志面板报告找不到条目

在日志面板中看到错误消息“找不到与当前过滤条件相符的条目”。有多种原因可能导致您看到此消息。请检查以下各项:

  • 对于要查看其日志条目的每个项目,请确保满足以下条件之一:

    • 您具有 Logs Viewer (roles/logging.viewer) 角色。
    • 对于自定义角色,您拥有以下权限:

      • logging.logs.list
      • logging.logServiceIndexes.list
      • logging.logServices.list
  • 确保查询编辑器中的子句与日志面板中显示的设置不冲突。

    例如,当查询编辑器字段包含 severity=NOTICE 时,日志面板会检索严重级别正好为 NOTICE 的所有日志。如果日志面板严重级别菜单设置为“警告”,则日志面板会显示“找不到与当前过滤条件相符的条目”。显示此消息是因为没有任何检索到的日志条目的严重级别至少为“警告”。

    相反,当查询编辑器字段包含 severity=WARNING 且日志面板严重级别菜单设置为“通知”时,您会看到日志条目。在此配置下,日志面板会检索严重级别为 WARNING 的日志。接下来,系统会过滤该日志列表,以仅显示严重级别至少为“通知”的日志,而所有检索到的日志都至少为该严重级别。

日志面板表明其显示部分数据

您在日志面板上看到警告指示符和“显示部分结果”消息。

如果您无权查看选择要查看其日志的 Google Cloud 项目的日志,则会显示此指示符。要移除警告指示符,请执行以下操作之一:

  • 与您的系统管理员联系,请他们针对您要查看其日志的每个 Google Cloud 项目执行以下操作之一:

    • 授予您 Logs Viewer (roles/logging.viewer) 角色。
    • 对于自定义角色,授予您以下权限:

      • logging.logs.list
      • logging.logServiceIndexes.list
      • logging.logServices.list
  • 更改日志面板的配置,以仅显示您有权查看日志条目的 Google Cloud 项目的日志。

“日志”面板显示权限被拒消息

信息中心的日志面板 widget 显示以下权限被拒消息:

Error: Permission 'logging.views.access' denied on resource (or it may not exist).

如需解决此问题,请执行以下操作:

  1. 修改“日志”面板微件。
  2. 执行下列其中一项操作:

    • 范围菜单设置为项目,然后使用项目菜单选择当前项目

    • 存储视图菜单中移除您无权查看的日志视图。如需了解访问日志视图所需的 IAM 角色,请参阅向日志视图授予访问权限

      当日志面板 widget 搜索日志视图时,您必须有权读取所列所有日志视图中的日志条目。否则,系统会显示错误消息。

  3. 点击应用

表格未显示所有时序

您配置了一个表格,但它未显示所有时序。

出于性能方面的原因,表格配置为最多显示 300 行。

使用日志面板创建信息中心的 API 调用失败

使用日志面板创建信息中心时看到错误消息有以下可能的原因:

  • 当日志面板不满足高度或宽度的最低要求时,会显示以下错误:

    Unable to save dashboard: Field mosaicLayout.tiles[0] has an invalid value: LogsPanel must have a minimum width of 3 and height of 3.
    

    要解决此问题,请在信息中心 JSON 表示法中,确保日志面板微件的 heightwidth 字段满足最低要求。

  • logsPanel.filter 字段超过 2,000 个字符时,系统会显示以下错误:

    Unable to save dashboard: filter cannot be greater than 2000 characters.
    

    要解决此问题,请缩短过滤条件。

  • 如果缺少 resourceNames 字段,您会看到以下错误消息:

    Unable to save dashboard: Dashboard is missing required field mosaicLayout.tiles[0].widget.logsPanel.resourceNames.
    

    要解决此问题,请将 resourceNames 字段添加到信息中心 JSON。

  • resourceNames 的语法不正确时,会显示类似于以下内容的错误:

    Unable to save dashboard: Field mosaicLayout.tiles[0].widget.logsPanelWidget.resourceNames has an invalid value of "a-project": resource name must have the format `projects/{project}`."
    

    要解决此问题,请在信息中心 JSON 中将 a-project 替换为 projects/a-project

  • 如需了解如何解决 filter 字段中的语法错误,请参阅问题排查:语法问题

如需查看格式正确的 JSON 文件的示例,请参阅包含 LogsPanel 微件的信息中心

导入 Grafana 信息中心

如需了解如何使用信息中心导入程序并进行问题排查,请参阅将 Grafana 信息中心导入 Cloud Monitoring

如需了解信息中心内容转换方面的问题,请参阅导入程序的 README 文件。