api_key = ''
service_name = ''
metric_name = ''
import requests
import json
import datetime
import pprint
headers = {
'X-Api-Key': api_key,
}
payload = {
'name': metric_name,
'from': datetime.datetime.now().timestamp() - 60*60*24*30,
'to': datetime.datetime.now().timestamp(),
}
r = requests.get(f"https://api.mackerelio.com/api/v0/services/{service_name}/metrics",
headers=headers,
params=payload,
)
pprint.pprint(json.loads(r.text))
Mackerel API からサービスメトリクス名の一覧を取得する - @kyanny's blog と合わせて複数のサービスメトリクスの値を一度に取得する場合は以下のようにする。
api_key = ''
service_name = ''
import requests
import json
import datetime
import pprint
headers = {
'X-Api-Key': api_key,
}
r = requests.get(f"https://api.mackerelio.com/api/v0/services/{service_name}/metric-names",
headers=headers,
)
metric_names = json.loads(r.text)['names']
for metric_name in metric_names:
payload = {
'name': metric_name,
'from': datetime.datetime.now().timestamp() - 60*60*24*30,
'to': datetime.datetime.now().timestamp(),
}
r = requests.get(f"https://api.mackerelio.com/api/v0/services/{service_name}/metrics",
headers=headers,
params=payload,
)
pprint.pprint(json.loads(r.text))