Как получить минимальные, максимальные и средние значения метрик
Минимальное, максимальное и среднее значение указанной метрики можно получить с помощью параметра downsample
запросов Получить историю метрик объекта и Получить историю метрик связи.
В статье OpenTSDB Available Aggregators перечислены больше параметров обработки метрик.
import requests
# SAYMON settings
saymon_hostname = <...>
login = <...>
password = <...>
object_id = <...>
metric_name = <...>
from_timestamp = <...>
to_timestamp = <...>
options = {
'all-max': 'Maximum', # Selects the largest data point / Linear Interpolation
'all-avg': 'Average', # Averages the data points / Linear Interpolation
'all-min': 'Minimum', # Selects the smallest data point / Linear Interpolation
}
# Request URL
url = 'https://' + saymon_hostname + '/node/api/objects/' + object_id + '/history'
# Requesting data and printing results
for k, v in options.items():
params = {
'metrics': metric_name,
'from': from_timestamp,
'to': to_timestamp,
'downsample': k,
}
response = requests.request('GET', url, auth=(login, password), params=params).json()
print(v, ':', response[0]['dps'][0][1])
Output:
Maximum : 96.257
Average : 14.77778717734117
Minimum : 13.114