You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.3 KiB
28 lines
1.3 KiB
import requests
|
|
import json
|
|
import datetime
|
|
import numpy as np
|
|
|
|
def prometheus(url, params):
|
|
output = requests.get(url='http://8.131.229.55:9090/' + url, params=params)
|
|
output = output.json()
|
|
print(output)
|
|
#output = json.dumps(res.json())
|
|
output = output["data"]["result"][0]["values"]
|
|
output = np.array([float(value) for _, value in output])
|
|
print(output)
|
|
print(type(output))
|
|
|
|
if __name__ == '__main__':
|
|
#prometheus('api/v1/query_range', {'query': '100 - (avg(irate(node_cpu_seconds_total{instance=~"123.56.63.105:9100",mode="idle"}[1m])) * 100)', 'start': '1684412385', 'end': '1684412485', 'step': '3'})
|
|
start_timestamp_str = "2023-05-19 22:21:30"
|
|
dt = datetime.datetime.strptime(start_timestamp_str, "%Y-%m-%d %H:%M:%S")
|
|
timestamp = dt.timestamp()
|
|
start_time = timestamp
|
|
|
|
end_timestamp_str = "2023-05-19 22:23:30"
|
|
dt = datetime.datetime.strptime(end_timestamp_str, "%Y-%m-%d %H:%M:%S")
|
|
timestamp = dt.timestamp()
|
|
end_time = timestamp
|
|
|
|
prometheus('api/v1/query_range', {'query': "node_memory_MemTotal_bytes{instance=~\"123.56.63.105:9100\"} - (node_memory_Cached_bytes{instance=~\"123.56.63.105:9100\"} + node_memory_Buffers_bytes{instance=~\"123.56.63.105:9100\"} + node_memory_MemFree_bytes{instance=~\"123.56.63.105:9100\"})", 'start': start_time, 'end': end_time, 'step': '3'}) |