美文网首页
zbx前端源码分析 -- 主机可用性(Availability)

zbx前端源码分析 -- 主机可用性(Availability)

作者: thinkc | 来源:发表于2018-07-31 10:23 被阅读0次

就是上图所示的部分,有人问为啥他的监控项不是主动模式,可这些图标却仍然一直是灰色。本文不讨论解决问题的办法,只分析这些图标显示的底层实现原理。

zbx版本:3.0.19

首先可以看到这个页面对应的是hosts.php文件,具体位置是zabbix-3.0.19\frontends\php\hosts.php

这个文件的内容比较繁杂,我们只要知道在1117行$hosts = API::Host()->get([]),通过调用API的host->get功能,得到主机列表,然后在1187行封装进data变量中,最后在1201行$hostView = new CView('configuration.host.list', $data);将$data变量传递给configuration.host.list做Web页面渲染就ok。

CView在本文不赘述,以后再分析。

configuration.host.list也是个php文件,具体位置是frontends\php\include\views\configuration.host.list.php

这个文件主要做Web页面渲染,简单说这个文件的内容就是先创建个Table,并设置Header。

你猜对了,Header就是渲染的红框处的这部分。

然后将hosts.php传递过来的$data['hosts']通过foreach循环解析,其中可用性图标的判断和输出,是通过282行getHostAvailabilityTable($host)实现的。

getHostAvailabilityTable函数所在的文件是frontends\php\include\html.inc.php,从588行开始,看注释就知道这个函数的作用了:Returns zbx, snmp, jmx, ipmi availability status icons and the discovered host lifetime indicator.

时间原因,本文的分析非常粗,后续有时间再补充完善。

相关文章

  • zbx前端源码分析 -- 主机可用性(Availability)

    就是上图所示的部分,有人问为啥他的监控项不是主动模式,可这些图标却仍然一直是灰色。本文不讨论解决问题的办法,只分析...

  • Docker Swarm + HAProxy 实现高可用

    什么是高可用性? 高可用性: High Availability (简称 HA) 可用性 (Availabilit...

  • 高可用性

    高可用性概述 什么是高可用性 高可用性 = 高 + 可用性。可用性(Availability)表示系统能在客户需要...

  • zbx源码分析 -- agent.ping

    zbx版本:3.0.19 agent.ping这个键值所在的文件是zabbix-3.0.19\src\libs\z...

  • CAP定理

    CAP定理 Consistency ---一致性>Availability ---可用性Partition...

  • CP AP 和CAP

    C (Consistency 一致性) ,A (Availability 可用性) ,P (Partion-...

  • CAP

    2018.04.22 C:consistency,一致性A:availability,可用性P:partition...

  • 你真的理解CAP吗?

    C: Consistency一致性 A: Availability可用性 P: Partition-toleran...

  • 分布式系统概念介绍

    1、CAP Consistency 一致性 Availability 可用性 Partition toleranc...

  • cap的证明

    C: Consistency 一致性 A: Availability 可用性 P:Partition Tolera...

网友评论

      本文标题:zbx前端源码分析 -- 主机可用性(Availability)

      本文链接:https://www.haomeiwen.com/subject/sidcvftx.html