首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从powershell模块运行应用程序洞察查询

从powershell模块运行应用程序洞察查询
EN

Stack Overflow用户
提问于 2021-06-02 23:59:03
回答 1查看 182关注 0票数 0

使用AZ Cli,我可以运行以下命令来查询应用程序洞察实例:

az monitor app-insights query

在azure powershell模块中似乎没有直接的等价物。我看过一些建议,建议您使用REST API来洞察应用程序,但这需要API密钥。

我没有为我的(许多)应用程序洞察提供API密钥,也不想为了查询应用程序洞察而创建和存储它们--不能在我的脚本中使用Az Cli的原因是我想将我的脚本作为一个函数应用程序运行,而函数应用程序不支持az cli。

有没有其他方法可以从powershell中查询AI,而我没有呢?

EN

回答 1

Stack Overflow用户

发布于 2021-06-03 14:17:24

目前,Azure PowerShell只提供了管理Azure应用程序洞察资源的模块。更多详情,请参考here。所以如果你想用PowerShell查询应用洞察力,我们需要使用rest API。此外,如果您不想通过API密钥访问它,您可以使用AD token进行访问。有关更多详细信息,请访问here

例如

如果要使用Azure AD身份验证来访问Azure应用程序洞察API,请参考以下步骤

  1. 在租户

中注册Azure AD应用程序

  1. Configure API permissions

  1. Create a client secret for the application

subscription中的

  1. Configure将contributor分配给AD应用程序

  1. Script

代码语言:javascript
复制
$appKey=""
$appId=""
$resource="https://api5.applicationinsights.io"
$secpasswd = ConvertTo-SecureString $appKey -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential ($appId, $secpasswd)

Connect-AzAccount -ServicePrincipal -Tenant "hanxia.onmicrosoft.com" -Credential $mycreds
$res=Get-AzAccessToken -ResourceUrl $resource


$headers=@{"Authorization"="Bearer "+$res.Token}
$body=@{"timespan"="P7D"; "query"="requests| summarize totalCount=sum(itemCount) by bin(timestamp, 30m)"}| ConvertTo-Json

Invoke-RestMethod 'https://api.applicationinsights.io/v1/apps/bd7cacd8-9607-4b53-b57b-995255292f36/query' -Method 'POST' -Headers $headers -Body $body -ContentType "application/json"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67808611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档