本文档介绍了如何保存和共享您在 Log Analytics 中创建的查询。
本文档假定您熟悉 Log Analytics 以及如何使用 Log Analytics 页面查询日志数据。如果您不熟悉这些主题,请参阅查询和分析日志。
如需了解如何将查询结果绘制成图表,以及如何将这些图表保存到自定义信息中心,请参阅将 SQL 查询结果绘制成图表。
已保存的查询与分析视图的区别
已保存的查询是指您使用 Log Analytics 页面运行的查询,然后保存为查询。通过“保存”操作,您可以随时重新运行此查询。保存查询时,您可以选择将其设为仅供您查看,也可以将其设为对拥有使用日志分析所需权限的其他用户可见。您无法编写 FROM
子句指定已保存查询的 SQL 查询。
分析视图包含一个您可以随时重新运行的查询。如需创建分析视图,请针对日志视图编写 SQL 查询,然后将结果另存为视图。与保存的查询不同,您无法将分析视图设为仅对您自己可见。您可以查询 Google Analytics 数据视图。借助此功能,您可以将日志数据从 LogEntry
格式转换为更适合您的其他格式。然后,您可以针对分析视图查询,而不是针对日志视图编写查询。
您可以保存查询日志视图或分析视图的查询。
准备工作
本部分介绍了在使用 Log Analytics 之前必须完成的步骤。
配置日志存储分区
确保您的日志存储分区已升级为使用 Log Analytics:
-
在 Google Cloud 控制台中,前往日志存储页面:
如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。
- 对于包含您要查询的日志视图的每个日志存储分区,请确保日志分析可用列显示打开。如果系统显示升级,请点击升级并完成对话框。
配置 IAM 角色和权限
本部分介绍使用 Log Analytics 所需的 IAM 角色或权限:
-
如需获得使用 Log Analytics 和查询日志视图所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:
-
如需查询
_Required
和_Default
日志分桶,请使用以下角色:Logs Viewer (roles/logging.viewer
) -
如需查询项目中的所有日志视图,请使用以下角色:Logs View Accessor (
roles/logging.viewAccessor
)
您可以通过以下任一方式将主账号限制为只能访问特定的日志视图:向项目级别授予的日志视图访问权限角色授予中添加 IAM 条件,或者向日志视图的政策文件中添加 IAM 绑定。如需了解详情,请参阅控制对日志视图的访问权限。
这些权限与您在 Logs Explorer 页面上查看日志条目时所需的权限相同。如需了解查询用户定义的存储分区中的视图或查询
_Default
日志存储分区的_AllLogs
视图所需的其他角色,请参阅 Cloud Logging 角色。 -
如需查询
-
如需获得查询分析视图所需的权限,请让您的管理员为您授予项目的 Observability Analytics User (
roles/observability.analyticsUser
) IAM 角色。
保存查询
您运行的所有查询都会自动保存 30 天,您可以通过在 Log Analytics 页面上选择 Recent 标签页来访问这些查询。您可以搜索、查看、运行和分享近期标签页中列出的查询。
如果您想保留某个查询以供日后使用,请为其添加对您有用的信息注释,或者让同事查看和运行您的查询,然后保存该查询。您可以按名称、说明和公开范围标签搜索和排序已保存的查询。您还可以修改和删除这些查询。您保存的查询会一直保留,直到您将其删除。
每个 Google Cloud 项目最多可以保存 1 万个查询。
控制台
如需保存查询,请执行以下操作:
-
在 Google Cloud 控制台中,前往 Log Analytics 页面:
如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。
使用查询填充 Query 窗格。
您可以通过输入新查询、从最近标签页中选择查询,或从已保存标签页中选择查询来填充查询窗格。
您的查询可以包含任何有效的视图、多个视图和分析视图。
当查询窗格中的查询有效时,系统会启用
保存。依次点击
保存,选择保存查询,然后填写名称和说明字段。您为这些字段设置的值会显示在已保存标签页中。可选:如需让所有人都能访问 Google Cloud 项目视图的 Log Analytics 页面并运行已保存的查询,请启用与项目共享切换开关。
默认情况下,此切换开关处于停用状态,并且仅对您可见。
点击保存查询。
可选:如需查看、排序和运行您可以看到的已保存查询,请选择已保存标签页。
您可以按名称、说明和公开范围标签对已保存的查询进行排序和过滤。您还可以按查询内容进行过滤。
您可以使用已保存标签页上的选项修改和删除自己创建的查询:
如需修改询问,请点击 more_vert 更多选项,然后选择修改。您可以修改名称和说明字段的值;但无法修改查询本身。
如需删除已保存的查询,请点击 more_vert 更多选项,然后选择删除。
API
如需使用 Logging API 保存查询,请使用 savedQueries.create
方法。如需详细了解此方法、其参数和响应数据,请参阅 savedQueries.create
的参考页面。
您可以使用方法参考页面上的 API Explorer 微件来执行 savedQueries.create
方法。对于 Log Analytics 查询,您必须指定 opsAnalyticsQuery
字段。以下示例展示了一个包含 SavedQuery
实例的请求正文示例:
{ "parent": "projects/my-project/locations/global" "saved_query": { "ops_analytics_query": { "sql_query_text" : "SELECT timestamp, log_name, severity, json_payload, resource, labels FROM `TABLE_NAME_OF_LOG_VIEW` WHERE timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR) ORDER BY timestamp ASC LIMIT 100" } "visibility": "PRIVATE" } }
共享查询
您可以与有权访问您的 Google Cloud 项目的所有人分享已保存的查询。不过,主账号的 IAM 角色决定了能否运行查询以及查询返回的数据。
查看和运行近期或已保存的查询
如需查看或重新运行查询,请在 Log Analytics 页面上选择最近标签页,然后找到相应查询:
- 如需运行查询,请点击运行。
- 如需查看查询,请使用 more_vert More Options(更多选项)菜单中的选项。
如需查看、修改或运行已保存的查询,请在 Log Analytics 页面上选择已保存标签页,然后找到相应查询:
- 如需运行查询,请点击运行。
- 如需修改、查看或删除查询,请使用 more_vert 更多选项菜单中的选项。