【发布时间】:2016-01-27 12:07:00
【问题描述】:
我试图使用history.get 方法获取vm.memory.size[used], vm.memory.size[cached], vm.memory.size[buffers], vm.memory.size[total] 的历史数据,但它什么也没返回。
我可以通过item.get 呼叫获得 itemid。代码如下所示。
import sys
import time
import logging
from pyzabbix import ZabbixAPI
stream = logging.StreamHandler(sys.stdout)
stream.setLevel(logging.DEBUG)
log = logging.getLogger('pyzabbix')
log.addHandler(stream)
log.setLevel(logging.DEBUG)
zapi = ZabbixAPI(ZABBIX_SERVER)
zapi.login(user, passwd)
# get itemid
items = zapi.item.get(output='extend', hostids=['10470', '10471', '10472', '10473'], search={'key_': 'vm.memory.size[used]'})
history = zapi.history.get(output='extend', itemids=['83140', '83141', '83142', '83143'], history=0, time_from=time.time() - 3600, time_till=time.time(), sortfield='clock', sortorder='DESC')
history是一个空列表[],那么如何获取内存的历史数据呢?
【问题讨论】:
-
time_till 和 time_from 必须在时间戳中。 zabbix.com/documentation/2.4/manual/api/reference/history/get.
-
time.time() 以秒为单位以浮点数返回时间,它已经在时间戳中。 @JoaoVitorino