Folks, I am using pyzabbix as a wrapper to speed up my development, I think it's more or less the same as JSON because I don't think it's doing anything on the back to further manipulate output data.
from pyzabbix import ZabbixAPI
from datetime import datetime
import time
# The hostname at which the Zabbix web interface is available
ZABBIX_SERVER = 'http://zabbix.com'
zapi = ZabbixAPI(ZABBIX_SERVER)
# Login to the Zabbix API
zapi.login('zabbixreadonly', 'zabbixreadonly')
item_id = '34265'
# Create a time range
time_till = time.mktime(datetime.now().timetuple())
time_from = time_till - 60 * 60 * 40 # 40 hours
# Query item's history (integer) data
trend = zapi.trend.get(itemids=[item_id],
#sortfield="clock",
#sortorder="ASC",
time_from=time_from,
time_till=time_till,
output=["clock", "value_avg"],
)
print (trend)
___________________
Result:
[{u'value_avg': u'51.1296', u'clock': u'1498471200'}, {u'value_avg': u'50.9824', u'clock': u'1498474800'}, {u'value_avg': u'51.1340', u'clock': u'1498478400'}, {u'value_avg': u'51.2819', u'clock': u'1498482000'}, {u'value_avg': u'51.7410', u'clock': u'1498485600'}, {u'value_avg': u'51.6218', u'clock': u'1498489200'}, {u'value_avg': u'51.2536', u'clock': u'1498492800'}, {u'value_avg': u'51.1169', u'clock': u'1498496400'}, {u'value_avg': u'51.2033', u'clock': u'1498500000'}, {u'value_avg': u'51.0737', u'clock': u'1498503600'}, {u'value_avg': u'50.9911', u'clock': u'1498507200'}, {u'value_avg': u'50.9387', u'clock': u'1498510800'}, {u'value_avg': u'50.9342', u'clock': u'1498514400'}, {u'value_avg': u'50.9203', u'clock': u'1498518000'}, {u'value_avg': u'51.0496', u'clock': u'1498521600'}, {u'value_avg': u'51.5731', u'clock': u'1498525200'}, {u'value_avg': u'51.2179', u'clock': u'1498528800'}, {u'value_avg': u'51.2028', u'clock': u'1498532400'}, {u'value_avg': u'51.1661', u'clock': u'1498536000'}, {u'value_avg': u'51.1880', u'clock': u'1498539600'}, {u'value_avg': u'51.1036', u'clock': u'1498543200'}, {u'value_avg': u'51.1522', u'clock': u'1498546800'}, {u'value_avg': u'51.2399', u'clock': u'1498550400'}, {u'value_avg': u'51.0591', u'clock': u'1498554000'}, {u'value_avg': u'51.0364', u'clock': u'1498557600'}, {u'value_avg': u'51.0436', u'clock': u'1498561200'}, {u'value_avg': u'51.1812', u'clock': u'1498564800'}, {u'value_avg': u'51.5297', u'clock': u'1498568400'}, {u'value_avg': u'52.0140', u'clock': u'1498572000'}, {u'value_avg': u'51.5275', u'clock': u'1498575600'}, {u'value_avg': u'51.2415', u'clock': u'1498579200'}, {u'value_avg': u'51.2621', u'clock': u'1498582800'}, {u'value_avg': u'51.4243', u'clock': u'1498586400'}, {u'value_avg': u'51.0708', u'clock': u'1498590000'}, {u'value_avg': u'51.0074', u'clock': u'1498593600'}, {u'value_avg': u'50.9336', u'clock': u'1498597200'}, {u'value_avg': u'50.9148', u'clock': u'1498600800'}, {u'value_avg': u'50.9115', u'clock': u'1498604400'}, {u'value_avg': u'51.0161', u'clock': u'1498608000'}]
______________________
This is something I don't understand, my aim is to get 40 hours average, min and max value, how come I got tons of value_avg instead of one value?
from pyzabbix import ZabbixAPI
from datetime import datetime
import time
# The hostname at which the Zabbix web interface is available
ZABBIX_SERVER = 'http://zabbix.com'
zapi = ZabbixAPI(ZABBIX_SERVER)
# Login to the Zabbix API
zapi.login('zabbixreadonly', 'zabbixreadonly')
item_id = '34265'
# Create a time range
time_till = time.mktime(datetime.now().timetuple())
time_from = time_till - 60 * 60 * 40 # 40 hours
# Query item's history (integer) data
trend = zapi.trend.get(itemids=[item_id],
#sortfield="clock",
#sortorder="ASC",
time_from=time_from,
time_till=time_till,
output=["clock", "value_avg"],
)
print (trend)
___________________
Result:
[{u'value_avg': u'51.1296', u'clock': u'1498471200'}, {u'value_avg': u'50.9824', u'clock': u'1498474800'}, {u'value_avg': u'51.1340', u'clock': u'1498478400'}, {u'value_avg': u'51.2819', u'clock': u'1498482000'}, {u'value_avg': u'51.7410', u'clock': u'1498485600'}, {u'value_avg': u'51.6218', u'clock': u'1498489200'}, {u'value_avg': u'51.2536', u'clock': u'1498492800'}, {u'value_avg': u'51.1169', u'clock': u'1498496400'}, {u'value_avg': u'51.2033', u'clock': u'1498500000'}, {u'value_avg': u'51.0737', u'clock': u'1498503600'}, {u'value_avg': u'50.9911', u'clock': u'1498507200'}, {u'value_avg': u'50.9387', u'clock': u'1498510800'}, {u'value_avg': u'50.9342', u'clock': u'1498514400'}, {u'value_avg': u'50.9203', u'clock': u'1498518000'}, {u'value_avg': u'51.0496', u'clock': u'1498521600'}, {u'value_avg': u'51.5731', u'clock': u'1498525200'}, {u'value_avg': u'51.2179', u'clock': u'1498528800'}, {u'value_avg': u'51.2028', u'clock': u'1498532400'}, {u'value_avg': u'51.1661', u'clock': u'1498536000'}, {u'value_avg': u'51.1880', u'clock': u'1498539600'}, {u'value_avg': u'51.1036', u'clock': u'1498543200'}, {u'value_avg': u'51.1522', u'clock': u'1498546800'}, {u'value_avg': u'51.2399', u'clock': u'1498550400'}, {u'value_avg': u'51.0591', u'clock': u'1498554000'}, {u'value_avg': u'51.0364', u'clock': u'1498557600'}, {u'value_avg': u'51.0436', u'clock': u'1498561200'}, {u'value_avg': u'51.1812', u'clock': u'1498564800'}, {u'value_avg': u'51.5297', u'clock': u'1498568400'}, {u'value_avg': u'52.0140', u'clock': u'1498572000'}, {u'value_avg': u'51.5275', u'clock': u'1498575600'}, {u'value_avg': u'51.2415', u'clock': u'1498579200'}, {u'value_avg': u'51.2621', u'clock': u'1498582800'}, {u'value_avg': u'51.4243', u'clock': u'1498586400'}, {u'value_avg': u'51.0708', u'clock': u'1498590000'}, {u'value_avg': u'51.0074', u'clock': u'1498593600'}, {u'value_avg': u'50.9336', u'clock': u'1498597200'}, {u'value_avg': u'50.9148', u'clock': u'1498600800'}, {u'value_avg': u'50.9115', u'clock': u'1498604400'}, {u'value_avg': u'51.0161', u'clock': u'1498608000'}]
______________________
This is something I don't understand, my aim is to get 40 hours average, min and max value, how come I got tons of value_avg instead of one value?