首页 > 解决方案 > Azure Log Analytics 查询用户的 api 调用

问题描述

我有我的 Azure APIM 设置,我想查询调用 API 的用户的日志。我也集成了 Azure AD。

我想知道如何检索已登录并在开发人员门户中调用特定 API 的用户的信息。我可以这样做吗?

像......这个用户名(或者可能是 ID)的用户已经调用了这个 API,这个次数。

这是可以实现的吗?

标签: azureapiazure-api-managementazure-log-analytics

解决方案


您可以通过 API 管理 UserId 查询

requests
| summarize count() by user_AuthenticatedId

这是指订阅密钥的用户,用于进行 API 调用 - 因此它具有与

requests
| extend Subscription_Name = tostring(customDimensions.["Subscription Name"])
| summarize count() by Subscription_Name

Log Analytics / App Insights中,您没有关于用户自己进行 API 调用的更多详细信息。我通常使用 Jupyter notebook 通过 API 查询 Log Analytics,然后查询 API Managementusers以丰富这些信息。

但最初您也可以将查询结果下载到电子表格中,使用 Azure PowerShell 从 API 管理中提取 userId 和 Name,然后使用一些电子表格魔术来合并信息。


推荐阅读