azure - Azure Log Analytics 查询用户的 api 调用
问题描述
我有我的 Azure APIM 设置,我想查询调用 API 的用户的日志。我也集成了 Azure AD。
我想知道如何检索已登录并在开发人员门户中调用特定 API 的用户的信息。我可以这样做吗?
像......这个用户名(或者可能是 ID)的用户已经调用了这个 API,这个次数。
这是可以实现的吗?
解决方案
您可以通过 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,然后使用一些电子表格魔术来合并信息。
推荐阅读
- python - 我们可以在内部类中使用外部类的实例变量,还是在 Python 的内部类概念中使用副类?
- python - 表单提交时,Django Note 实例不保留图像?
- dart - Dart 中 final 函数参数有什么影响?
- c++ - 没有输出流意图的重载运算符'<<'
- reactjs - 如何使用 TypeScript 将所有道具传递给 React Native 中的样式化组件?
- node.js - 多个异步等待获取请求在 PRN 堆栈应用程序中不起作用
- drools - 从内部使用的流口水从
- php - 在 Ubuntu 安装 php 7.3 后,`php -v` 仍然显示 7.2
- dart - Dart _psapi 未找到
- stm32 - stm32cubeide 报告固件包丢失