如何在Web UI中查看所有用户的作业?

时间:2017-12-12 15:16:02

标签: google-bigquery

我们的后端服务使用自己的帐户运行BigQuery作业。作为管理员,我希望在Web UI中看到这些工作。我可以设置一些权限或查询我可以用来执行此操作的参数吗?

3 个答案:

答案 0 :(得分:1)

您需要先设置Audit Logs

一旦你把它放在一张桌子里(可能是第二天),你就可以写一个查询来列出所有的工作

一个简单的查询是:

SELECT 
protopayload_auditlog.authenticationInfo.principalEmail,
protopayload_auditlog.methodName,
protopayload_auditlog.servicedata_v1_bigquery.jobInsertRequest.resource.jobConfiguration.query.query,
protopayload_auditlog.servicedata_v1_bigquery.jobInsertResponse.resource.jobName.jobId,
protopayload_auditlog.servicedata_v1_bigquery.jobInsertResponse.resource.jobStatistics.createTime
FROM [wr_auditlogs.cloudaudit_googleapis_com_data_access_20171208] 
where protopayload_auditlog.serviceName='bigquery.googleapis.com'

将列出这些内容

  • 执行的电子邮件(用户,服务帐户)
  • 方法名称,例如(jobservice.insert)
  • 查询字符串,如果这是一个查询作业(还有提取和取消作业)
  • jobID
  • 创建时间

您可以将此更高级查询或更高级查询设置为视图,并且可以定期查询此视图。您也可以通过API检索,请参阅此处讨论的logging all BigQuery queries

答案 1 :(得分:1)

现在可以在Web UI中查看其他用户的作业和查询。您需要bigquery.jobs.list权限。

要列出查询,请在用户界面中转到“查询历史记录”,并确保选中“显示所有用户的查询”。然后,您可以针对正在寻找的用户过滤查询。

要列出作业,请在UI中转到“作业历史记录”。然后,您可以针对正在寻找的用户过滤查询。

答案 2 :(得分:0)

您需要权限bigquery.jobs.listAll

您可以在一些预定义的角色中找到此权限。

enter image description here