我们的后端服务使用自己的帐户运行BigQuery作业。作为管理员,我希望在Web UI中看到这些工作。我可以设置一些权限或查询我可以用来执行此操作的参数吗?
答案 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'
将列出这些内容
您可以将此更高级查询或更高级查询设置为视图,并且可以定期查询此视图。您也可以通过API检索,请参阅此处讨论的logging all BigQuery queries
答案 1 :(得分:1)
现在可以在Web UI中查看其他用户的作业和查询。您需要bigquery.jobs.list权限。
要列出查询,请在用户界面中转到“查询历史记录”,并确保选中“显示所有用户的查询”。然后,您可以针对正在寻找的用户过滤查询。
要列出作业,请在UI中转到“作业历史记录”。然后,您可以针对正在寻找的用户过滤查询。
答案 2 :(得分:0)