Zabbix 2.2 API从_time到\u tim获取处理器负载(平均1分钟)min/max值

2024-10-02 04:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我想得到主机一个月的平均CPU使用率/最大值(每个内核平均1分钟)。我可以在ZabbixwebguiCPU load图中得到这个。在

我检查了pyzabbix示例和zabbixapi文档,但是我仍然不知道如何从time到}获取平均/最大CPU使用率。在

例如,当我打电话时:

history = zapi.history.get(itemids=[item_id],
        time_from=time_from,
        time_till=time_till,
        output='extend',
        limit='5000',
        history=0,
    )

在我使用的时间范围内,每1分钟我会得到许多CPU使用率的值->;我必须使用这些数据来计算最小/平均/最大值?在

Zabbix是如何在图形中生成这些信息的?每次生成图形视图时,它都会进行这样的计算吗?在

谢谢


Tags: from文档图形示例timeloadcpu内核
2条回答

Zabbix服务器根据模板中设置的频率轮询其代理,并将值带入并存储在中数据库。什么时候我们点击graph,它会根据从中获取的值创建一个图数据库。你可以指定输入类型,是希望将模板中的百分比、十进制或整数附加到主人。你可以指定图形的时间段,它将计算特定的句号值基于数据库中的值。在

是的,无论何时在Zabbix中生成一个图,它都会获取指定时间段的所有历史数据,并计算最小值、平均值和最大值,此外还要绘制图形。在

对于Zabbix前端本身,绘制较长时间的图形就不那么重要了,因为在这种情况下,它从趋势表中获取数据。例如:

mysql> describe trends;
+     -+          -+   +  -+    -+   -+
| Field     | Type                | Null | Key | Default | Extra |
+     -+          -+   +  -+    -+   -+
| itemid    | bigint(20) unsigned | NO   | PRI | NULL    |       |
| clock     | int(11)             | NO   | PRI | 0       |       |
| num       | int(11)             | NO   |     | 0       |       |
| value_min | double(16,4)        | NO   |     | 0.0000  |       |
| value_avg | double(16,4)        | NO   |     | 0.0000  |       |
| value_max | double(16,4)        | NO   |     | 0.0000  |       |
+     -+          -+   +  -+    -+   -+
6 rows in set (0.00 sec)

此表中的每一行对应一个小时,并存储该小时的最小值、平均值和最大值。因此,当绘制较长时间的图形时,前端从趋势中获取数据,因此需要处理的数据要少得多。在

不幸的是,趋势数据似乎不能通过zabbixapi获得,但这样的特性是在ZBXNEXT-1193中请求的。在

相关问题 更多 >

    热门问题