本文档介绍了如何保存和共享您在 Log Analytics 中创建的查询。
本文档假定您熟悉 Log Analytics 以及如何使用 Log Analytics 页面查询日志数据。如果您不熟悉这些主题,请参阅查询和分析日志。
如需了解如何将查询结果绘制成图表以及如何将这些图表保存到自定义信息中心,请参阅将 SQL 查询结果绘制成图表。
已保存的查询与分析视图的区别
已保存的查询是指您使用 Log Analytics 页面运行,然后将其保存为查询的查询。保存操作使您可以在方便时重新运行此查询。保存查询时,您可以选择将其设为专供您自己查看,也可以让拥有使用 Log Analytics 所需的权限的其他用户查看。您无法编写使用 FROM
子句指定已保存的查询的 SQL 查询。
分析视图包含一个查询,您可以在方便时重新运行该查询。您可以通过针对日志视图编写 SQL 查询,然后将结果保存为视图来创建分析视图。与已保存的查询不同,您无法将分析视图设为专供您自己查看。您可以查询分析视图。借助此功能,您可以将日志数据从 LogEntry
格式转换为更适合您的其他格式。您随后可以查询分析视图,而不是针对日志视图编写查询。
您可以保存用于查询日志视图或分析视图的查询。
准备工作
本部分介绍了在使用 Log Analytics 之前必须完成的步骤。
配置日志存储桶
确保您的日志存储桶已升级为可使用 Log Analytics:
-
在 Google Cloud 控制台中,前往日志存储页面:
如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。
- 对于包含您要查询的日志视图的每个日志存储桶,请确保 Log Analytics 可用列显示打开。如果显示升级,请点击升级并完成对话框。
配置 IAM 角色和权限
本部分介绍了使用 Log Analytics 所需的 IAM 角色或权限:
-
如需获得使用 Log Analytics 和查询日志视图所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:
-
查询
_Required
和_Default
日志存储桶:Logs Viewer (roles/logging.viewer
) -
查询项目中的所有日志视图:Logs View Accessor (
roles/logging.viewAccessor
)
您可以通过以下方式将主账号限制为访问特定日志视图:向在项目级上进行的 Logs View Accessor 角色授予添加 IAM 条件,或者向日志视图的政策文件添加 IAM 绑定。如需了解详情,请参阅控制对日志视图的访问权限。
这些权限与您在 Logs Explorer 页面上查看日志条目时需要的权限相同。如需了解您需要哪些额外角色才能查询用户定义的存储桶的视图,或者查询
_Default
日志存储桶的_AllLogs
视图,请参阅 Cloud Logging 角色。 -
查询
-
如需获得查询分析视图所需的权限,请让您的管理员为您授予项目的 Observability Analytics User (
roles/observability.analyticsUser
) IAM 角色。
保存查询
您运行的所有查询都会自动保存 30 天,您可以通过选择 Log Analytics 页面上的最近标签页来访问这些查询。您可以搜索、查看、运行和共享最近标签页中列出的查询。
如果您想保留查询以供将来使用,请使用对您有用的信息为其添加注解,或让团队成员查看和运行您的查询,然后保存查询。您可以按名称、说明和公开范围标签搜索和排序已保存的查询。您还可以修改和删除这些查询。您保存的查询会保留,直到您将其删除。
您可以为每个 Google Cloud 项目保存 10,000 个查询。
控制台
如需保存查询,请执行以下操作:
-
在 Google Cloud 控制台中,前往 Log Analytics 页面:
如果您使用搜索栏查找此页面,请选择子标题为 Logging 的结果。
使用查询填充查询窗格。
您可以通过以下方式填充查询窗格:输入新查询、从最近标签页中选择查询或是从已保存标签页中选择查询。
您的查询可以包含任意有效视图、多个视图和分析视图。
当查询窗格中的查询有效时,
保存会处于启用状态。点击
保存,选择保存查询,然后填写名称和说明字段。您为这些字段设置的值会显示在已保存标签页上。可选:如需让所有有权访问 Google Cloud 项目的 Log Analytics 页面的用户都能查看和运行已保存的查询,请启用与项目共享切换开关。
默认情况下,此切换开关处于停用状态,仅您可查看相应数据。
点击保存查询。
可选:如需查看、排序和运行您可查看的已保存查询,请选择已保存标签页。
您可以按名称、说明和公开范围标签对已保存的查询进行排序和过滤。您还可以按查询内容进行过滤。
您可以使用已保存标签页上的选项修改和删除自己创建的查询:
如需修改查询,请点击 more_vert 更多选项,然后选择修改。您可以修改名称和说明字段的值;但无法修改查询本身。
如需删除已保存的查询,请点击 more_vert 更多选项,然后选择删除。
API
如需使用 Logging API 保存查询,请使用 savedQueries.create
方法。如需详细了解此方法、其参数和响应数据,请参阅 savedQueries.create
的参考页面。
您可以使用方法参考页面上的 API Explorer widget 来执行 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 更多选项菜单中的选项。
如需查看、修改或运行已保存的查询,请选择 Log Analytics 页面上的已保存标签页,然后找到相应查询:
- 如需运行查询,请点击运行。
- 如需修改、查看或删除查询,请使用 more_vert 更多选项菜单中的选项。