news 2026/7/27 4:51:11

在Zabbix Server使用PHP编译一个扩展模块

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在Zabbix Server使用PHP编译一个扩展模块

场景:一次性返回所有在线 Agent 的 CPU 利用率平均值(%)

Zabbix Server的PHP相关目录

# 一台已经跑通的 Zabbix 7.0 实例(Server + Web + Agent)# 参考 CentOS 7 源码编译路径:PHP_PREFIX=/usr/local/zabbix/php# 你的 PHP 安装目录PHP_BIN=${PHP_PREFIX}/bin/phpPHP_CONFIG=${PHP_PREFIX}/bin/php-configPHP_INI=${PHP_PREFIX}/etc/php.iniWEB_ROOT=/usr/local/zabbix/ui# Zabbix 前端目录

1、生成php需要识别的文件结构

mkdir-p /tmp/zbx_iowait&&cd/tmp/zbx_iowait# 用 PHP 自带的 ext_skel 工具${PHP_PREFIX}/bin/php-ext-skel --ext zbx_iowait --dir.# 结果目录结构# zbx_iowait/# ├── config.m4# ├── zbx_iowait.c# ├── php_zbx_iowait.h# └── tests/

2、修改两处文件

文件 1:zbx_iowait.c,把默认函数整块替换为:

PHP_FUNCTION(zbx_iowait){zbx_dc_host_t *hosts;zbx_dc_item_t *items;int host_num=0, item_num=0;doublesum=0, count=0;/* 直接调用 Zabbix Server 内部 DC 缓存 API,0 成本 */ zbx_dc_get_hosts_by_key("system.cpu.util[,avg1]",&hosts,&host_num,&items,&item_num);for(int i=0;i<item_num;i++){sum+=atof(items[i].lastvalue);count++;}zbx_dc_free_hosts(hosts, host_num, items, item_num);if(count)RETURN_DOUBLE(sum / count);RETURN_DOUBLE(0);}

文件 2:php_zbx_iowait.h,把函数声明改成:

PHP_FUNCTION(zbx_iowait);

3、编译

phpize ./configure --with-php-config=$PHP_CONFIGmake-j$(nproc)&&sudomakeinstall

4、加载扩展

echo"extension=zbx_iowait.so">>$PHP_INI# 重启 PHP-FPM(Zabbix Web 依赖的进程)sudosystemctl restart zabbix-php-fpm

5、验证

$PHP_BIN-r'var_dump(zbx_iowait());'# 输出类似:float(123456)

6、在 Zabbix 前端使用

登录 Zabbix → 「配置」→「主机」→ 任意 Agent → 「监控项」→「创建监控项」
字段填写
名称:CPU iowait (by PHP ext)
类型:脚本
键值:php.iowait
脚本内容:
<?phpechozbx_iowait();?>
保存后点「检测」→「最新数据」,即可看到实时 iowait 值。

7、回滚

sudosed-i'/zbx_iowait.so/d'$PHP_INIsudorm$(${PHP_CONFIG}--extension-dir)/zbx_iowait.sosudosystemctl restart zabbix-php-fpm
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/23 10:22:57

【加密PDF解析终极指南】:Dify密钥管理核心技术揭秘与实战应用

第一章&#xff1a;加密PDF解析的Dify密钥管理概述在处理加密PDF文档时&#xff0c;密钥管理是确保数据安全与合法访问的核心环节。Dify平台通过集成细粒度的密钥策略&#xff0c;支持对加密PDF内容的安全解析与权限控制。该机制不仅保障了敏感信息在传输与解析过程中的机密性&…

作者头像 李华
网站建设 2026/7/26 13:41:17

节能又达标!基于Linux的污水自动控制方案

在城市化进程飞速发展的今天&#xff0c;污水处理厂作为城市的“肾脏”&#xff0c;其运行效率与稳定性直接关系到水环境安全和可持续发展。传统的污水处理依赖大量人工巡检和手动调节&#xff0c;不仅劳动强度大&#xff0c;更难以应对水质、水量的瞬时变化。而如今&#xff0…

作者头像 李华
网站建设 2026/7/24 13:45:32

企微 SCRM 服务天花板:微伴四级支持,AI 陪跑至盈利

一、行业痛点催生选型刚需&#xff1a;AI 成私域破局关键做私域运营 5 年&#xff0c;最头疼的是 “营销推送不精准”“获客成本高”—— 之前靠 Excel 统计客户&#xff0c;推送内容凭经验&#xff0c;转化率一直上不去。直到接触带 AI 功能的私域 SCRM&#xff0c;我才发现差…

作者头像 李华
网站建设 2026/7/23 10:22:53

PyTorch训练损失异常?LobeChat给出诊断建议

PyTorch训练损失异常&#xff1f;LobeChat给出诊断建议 在调试一个刚微调完的大模型时&#xff0c;你是否遇到过这样的场景&#xff1a;训练日志看起来一切正常&#xff0c;loss 曲线平滑下降&#xff0c;但部署到前端后&#xff0c;用户输入几个问题&#xff0c;模型就开始输出…

作者头像 李华
网站建设 2026/7/25 20:31:48

医药类电商系统开发公司有哪些?

说到医药类电商系统开发公司&#xff0c;我们之前讲过几点判断的方法&#xff0c;我们以此来分析商联达&#xff1a;首先&#xff0c;我们看商联达的公司规模商联达成立有多年时间&#xff0c;技术总部在北京、分别在上海、广州、深圳、南京、成都等地都设立了分公司&#xff0…

作者头像 李华