本文档介绍了如何解决使用 Google Cloud 控制台的 Log Analytics 页面时可能发生的错误。
错误消息
本部分介绍了您可能会看到的错误消息,以及如何解决相应的错误情况。
No completion signal within allotted timeframe
条错误消息
输入 SQL 查询并选择运行查询。查询未完成,并且您将看到以下错误消息:
The query failed to execute and return results due to error: No completion signal within allotted timeframe.
如需解决此错误,请执行以下操作之一:
请缩短查询日志的时间间隔,然后重试查询。 例如,如果查询间隔为 14 天,请将该间隔缩短为 7 天,然后运行查询。
创建一个关联的 BigQuery 数据集,然后从 BigQuery 界面运行查询。BigQuery 接口支持执行时间比 Cloud Logging 接口更长的查询。如需了解详情,请参阅使用 BigQuery 查询日志。
FROM clause must contain exactly one view
条错误消息
您在 Google Cloud 控制台的 Log Analytics 页面的查询窗格中输入 SQL 查询,但 SQL 解析器显示以下错误:
FROM clause must contain exactly one log view
当 FROM
语句中指定的表无法解析为特定日志视图时,就会报告上述错误。
如需解决此错误,请确保您的表名称采用正确的语法:
确保表名称遵循 Log Analytics 命名方案所需的语法。BigQuery 和 Log Analytics 对表名称有不同的要求。您可以查看默认查询,找到表名称所需的语法。
如果日志存储桶的 Google Cloud 项目 ID、区域、存储桶 ID 或视图 ID 包含英文句点
(.)
,请确保这些字段均用英文单反引号(`)
引起。例如,如果 Google Cloud 项目 ID 为
example.com:bluebird
,如需查询_Default
日志存储桶的_AllLogs
视图,请使用以下语法指定表:SELECT * FROM `example.com:bluebird`.`global`.`_Default`.`_AllLogs`
上一个查询假定
_Default
存储桶位于global
区域。
无法保存查询
如果您输入并运行 SQL 查询并停用了 为组织和文件夹配置默认设置。
保存,则组织或文件夹的默认资源设置定义了组织政策不允许使用的位置。如需解决此问题,请让组织管理员在默认资源设置中指定一个位置,该位置与您的组织政策允许的位置匹配。如需了解详情,请参阅如果
Save 按钮已启用,但您无法完成对话框并保存查询,则执行以下操作:- 确保查询不包含语法错误。 您只能保存有效的查询。
- 可选:将查询复制到剪贴板。
- 请重新加载页面。
- 如果您将查询复制到剪贴板,然后将其粘贴到 Query 窗格中,运行查询,然后执行保存操作。
对 Log Analytics 页面的访问遭拒
您在 Google Cloud 控制台中打开 Log Analytics 页面,系统会显示一条权限遭拒的错误消息。
如需获取加载 Log Analytics 页面、运行查询和查看日志所需的权限,请让管理员授予您项目的以下 IAM 角色:
-
查看日志:
日志查看器 (
roles/logging.viewer
) -
查看自定义日志存储分区中的日志:
Logs View Accessor (
roles/logging.viewAccessor
)
您还可以通过自定义角色或 Logging 预定义角色获取所需的权限。
在 Log Analytics 页面上查看日志条目和运行查询所需的权限,与您在日志浏览器页面上查看日志所需的权限相同。如需了解在查询用户定义的存储桶的视图或查询 _Default
日志存储桶的 _AllLogs
视图时需要使用的其他角色,请参阅 Cloud Logging 角色。
升级日志存储桶以使用 Log Analytics 失败
您可以创建一个日志存储桶并选择使用 Log Analytics 的选项,也可以升级现有日志存储桶以使用 Log Analytics。升级失败,并显示类似于以下内容的错误条件:
Failed precondition (HTTP 400): Constraint "my-constraint" violated for PROJECT_ID with location global.
上述错误消息表示您的组织配置了一项组织政策,限制了可以使用的区域。有资格升级以使用 Log Analytics 的日志存储分区必须使用 global
区域。如果您可以移除限制使用 global
区域的组织政策,则可以升级日志存储桶。否则,您无法升级日志存储分区。
未能创建关联的 BigQuery 数据集
您可以修改日志存储桶以创建关联的 BigQuery 数据集,也可以创建新的日志存储桶并选择创建关联数据集的选项;不过,系统不会创建关联的数据集。
如需解决此错误,请让 Google Cloud 项目的系统管理员授予您包含以下权限的 IAM 角色:
logging.links.create
Logging Admin (roles/logging.admin
) 和 Logs Configuration Writer (roles/logging.configWriter
) 角色拥有先前的权限。
如需了解角色和权限,请参阅使用 IAM 进行访问权限控制。
未能删除关联的 BigQuery 数据集
您不再需要关联的数据集,但是用于删除该数据集的选项已停用。
如需解决此错误,请让 Google Cloud 项目的系统管理员授予您包含以下权限的 IAM 角色:
logging.links.delete
Logging Admin (roles/logging.admin
) 和 Logs Configuration Writer (roles/logging.configWriter
) 角色拥有先前的权限。
借助此权限,您可以从 Google Cloud 控制台的日志存储页面中删除关联的数据集。如需详细了解角色和权限,请参阅使用 IAM 进行访问权限控制。