Google bigquery Microstrategy中的Bigquery用户统计信息

Google bigquery Microstrategy中的Bigquery用户统计信息,google-bigquery,microstrategy,Google Bigquery,Microstrategy,我正在使用Microstrategy使用服务帐户连接到Bigquery。我想从MSTR收集用户级作业统计信息,但由于我使用的是服务帐户,我需要一种方法来跟踪Bigquery中通过Microstrategy执行的所有作业的用户级作业统计信息。由于您使用服务帐户从Microstrategy发出请求,您可以在那时查找所有项目作业,使用列表中的每个作业ID,因为这显示了用于该作业ID的电子邮件 解决方法是使用Stackdriver日志记录,并使用过滤器获取服务帐户所做的作业。例如: resource.t

我正在使用Microstrategy使用服务帐户连接到Bigquery。我想从MSTR收集用户级作业统计信息,但由于我使用的是服务帐户,我需要一种方法来跟踪Bigquery中通过Microstrategy执行的所有作业的用户级作业统计信息。

由于您使用服务帐户从Microstrategy发出请求,您可以在那时查找所有项目作业,使用列表中的每个作业ID,因为这显示了用于该作业ID的电子邮件

解决方法是使用Stackdriver日志记录,并使用过滤器获取服务帐户所做的作业。例如:

resource.type="bigquery_resource"
protoPayload.authenticationInfo.principalEmail="<your service account>"
resource.type=“bigquery\u资源”
protoPayload.authenticationInfo.principalEmail=“”
请记住,这只显示过去30天内的工作,因为


希望能有所帮助。

谢谢您的评论。但因为我使用的是服务帐户,所以它屏蔽了运行报告的Microstrategy用户。我需要一种将Microstrategy用户映射到bigquery作业的方法,因为现在Microstrategy的所有作业都被服务帐户屏蔽了。在这种情况下,它将无法跟踪哪个用户在Google云平台端运行报告,因为请求是由同一个服务帐户发出的。不过,您可以通过在Stackdriver中使用相同的筛选器来跟踪发出请求的IP。此信息位于requestMetadata->callerIP中。否则,如果所有用户都有相同的IP,那么在用户到达Microstrategy收集用户活动之前,您需要进行某种登录过程。好的,谢谢F10。我们认为的另一个解决方案是为每个用户创建一个服务帐户。因此,如果Microstrategy中有500个用户,那么我们可以创建500个服务帐户,每个服务帐户映射到一个用户。我不确定这是否有效。你对此有何看法?是的,这应该是另一种选择。尽管如此,还是有一个问题。因此,如果一个项目中需要100个以上的服务帐户,您可以联系您的客户经理,也可以创建5个项目,在每个项目上创建100个服务帐户,并监控每个项目上的活动。