我正在使用指标API来获取此链接https://docs.microsoft.com/en-us/rest/api/monitor/metrics/list上的当前磁盘利用率。应该可以让我访问许多指标(我可以选择其中一个)。
第一个GET请求有效,但正在提供我已经从其他API接收到的CPU百分比。
GET https://management.azure.com/{resourceUri}/providers/microsoft.insights/metrics?api-version=2018-01-01
第二个是我正在研究的那个,由于所有领域,它非常复杂:
GET https://management.azure.com/{resourceUri}/providers/microsoft.insights/metrics?timespan={timespan}&interval={interval}&metricnames={metricnames}&aggregation={aggregation}&top={top}&orderby={orderby}&$filter={$filter}&resultType={resultType}&api-version=2018-01-01&metricnamespace={metricnamespace}
我不确定如何准确地填写它们。我填写了我认为我理解的领域。我的代码:
import requests
from datetime import datetime, timedelta
import json
# Grab current time
now = datetime.now()
# Format code
current_time = now.strftime("%H:%M:%S")
#15 minutes before
prev_time = datetime.now() - timedelta(minutes=15)
prev_time = prev_time.strftime("%H:%M:%S")
BASE_URL = ("https://management.azure.com//subscriptions/hjfajkjfakljf/resourceGroups/servers/providers/Mi.Compute/virtualMachines/somethinghere/providers/microsoft.insights/metrics?timespan=2020-07-09T{}Z/2020-07-09T{}Z&interval={interval}&metricnames=Filesystemfreespace&aggregation={aggregation}&top={top}&orderby={orderby}&$filter={$filter}&resultType={resultType}&api-version=2018-01-01&metricnamespace=Guest(classic)").format(prev_time, current_time)
auth = "Something here"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer " + auth
}
response = requests.get(BASE_URL, headers=headers)
formatted_response = json.loads(response.text)
print(formatted_response)
我的时间跨度正确吗?我需要间隔吗?我需要填写所有字段吗?有没有更有效的方法来获取Python中的指标?我对过滤,结果类型和聚合一无所知。