如何通过REST API获取Azure Update Management的状态数据?
可用获取方案说明
Azure Update Management的所有视图数据均存储在与其绑定的Log Analytics工作区中,微软官方未推出该功能专属的独立REST/CLI接口,你可以通过Log Analytics的通用查询接口拉取所有需要的数据:
方案1:REST API调用
- 接口地址:
https://management.azure.com/subscriptions/{替换为你的订阅ID}/resourceGroups/{替换为工作区所属资源组名}/providers/Microsoft.OperationalInsights/workspaces/{替换为Log Analytics工作区名}/query?api-version=2022-10-27 - 请求方法:POST
- 请求头需要携带Azure AD认证的Bearer令牌,权限范围为
https://management.azure.com/.default - 请求体示例(可根据需要调整KQL查询语句):
{ "query": "Update | where TimeGenerated > ago(30d) | summarize by Computer, UpdateState, KBID, Title, PublishedDate", "timespan": "P30D" }
如果需要获取机器维度的更新汇总数据,可使用以下查询语句:UpdateSummary | summarize arg_max(TimeGenerated, *) by Computer | project Computer, TotalUpdatesMissing, TotalUpdatesInstalled, LastAssessedTime
方案2:Azure CLI调用
直接使用Log Analytics的CLI查询命令即可,示例如下:
az monitor log-analytics query --workspace {替换为Log Analytics工作区ID} --analytics-query "Update | where TimeGenerated > ago(30d) | summarize by Computer, UpdateState, KBID, Title, PublishedDate"
你可以直接在Azure门户的更新管理页面点击「日志查询」按钮,复制当前视图对应的官方KQL语句,直接复用即可拿到和页面视图完全一致的返回数据。
内容的提问来源于stack exchange,提问作者Thanuja
相关产品推荐
相关产品推荐

