5

我使用下面的应用洞察 python sdk 在应用洞察资源中发送我的自定义指标。

https://github.com/Microsoft/ApplicationInsights-Python

现在,当我想检索它时,我能找到的只是基于 Rest API 的检索方法。

https://dev.applicationinsights.io/documentation/Using-the-API/Metrics

是否有基于 RestAPI 的 curl 或 http 请求的替代方案 - 在应用程序洞察 python sdk 中?

4

3 回答 3

3

没有用于检索数据的 SDK。只有 REST API。

于 2018-06-08T17:27:12.973 回答
2

直接使用 REST API。

首先在门户中转到您的实例,然后在侧面板上向下滚动到“API”,然后创建一个密钥。这里有更多关于这样做的信息:

https://dev.applicationinsights.io/documentation/Authorization/API-key-and-App-ID

然后您可以像这样简单地查询 REST api:

import requests
import json

appId = "..."
appKey = "..."

query = """
  traces
  | where timestamp > ago(1d) 
  | order by timestamp
  | limit 10
"""

params = {"query": query}
headers = {'X-Api-Key': appKey}
url = f'https://api.applicationinsights.io/v1/apps/{appId}/query'

response = requests.get(url, headers=headers, params=params)

logs = json.loads(response.text)
for row in logs['tables'][0]['rows']:
  structured = dict(zip(logs['tables'][0], row))
  print(structured)
于 2021-06-24T04:40:39.797 回答