# HG changeset patch # User drewp@bigasterisk.com # Date 1725764312 25200 # Node ID cb159e4e790cd2f5846a398ea973c14ff2fafa81 # Parent 598e75e8e2d7de8383f2fbbe5d3f981c915f39fe metric diff -r 598e75e8e2d7 -r cb159e4e790c metric --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/metric Sat Sep 07 19:58:32 2024 -0700 @@ -0,0 +1,27 @@ +#!/usr/bin/python3 + +import json +import subprocess +import sys +import time +import httpx + +[q, hours] = sys.argv[1:] + +vmselect = subprocess.check_output(['khost', 'victoriametrics-vmselect']).decode('utf8') +t2 = time.time() +t1 = t2 - float(hours) * 3600 + +res = httpx.get(f'http://{vmselect}/m/vmselect/select/0/prometheus/api/v1/query_range', params={ + 'query': q, + 'start': t1, + 'end': t2, + 'step': f'{max(5, (t2 - t1) / 250)}s', +}) +res.raise_for_status() +response = res.json() +out = [] +first = response['data']['result'][0] +for row in first['values']: + out.append({'t': row[0], first['metric']['__name__']: float(row[1])}) +print(json.dumps(out))