zabbix采集软件指标实现方法
2015-11-13 17:12
267 查看
最近项目进行二期开发,要新增一些功能作为自己公司的产品开发。主要开发采集器,采集软件指标。
首先从理论上理解这个采集器:利用zabbix进行监控,zabbix监控分为主动和被动,
被动:server向agent发出请求,请求获取监控项的数据,agent响应请求。
主动:agent请求server获取主动监控项列表,并主动将监控项内需要检测的数据提交给server/proxy。
参见:/article/8550047.html
zabbix请求传递数据都是使用json。
采集器原理:采集器用脚本实现,通过执行采集器脚本,来实现对软件指标的采集,并将指标以socket的形式传递给zabbix server。
将功能封装起来即可。
大致开发流程:
1、扫描采集器包crawler ,初始化软件包和采集器的相关信息(扫描包路径,名称,平台,采集器的定义文件(item,trigger,graphs)...将信息存入static变量)
2、激活采集器包(初始化各项数据)
软件包是否init-->crawler是否init-->将采集器包的信息存入数据库
采集器 item ,trigger ,graphs
(在初始化服务角色时初始化自定义图表)信息。
3、禁用采集器包 (删除数据库中与采集器相关数据)
4、安装软件采集器(生成采集器实例)
与软件安装类似:/article/8550038.html
传递参数:主机id,服务角色id,采集器包id(在指定主机下安装指定服务角色的指定采集器,)
其中要创建item,trigger。(通过HttpClent请求,发送json数据,来创建item(在zabbix数据库中创建的))
开发采集器,主要是为了监控软件指标。
首先从理论上理解这个采集器:利用zabbix进行监控,zabbix监控分为主动和被动,
被动:server向agent发出请求,请求获取监控项的数据,agent响应请求。
主动:agent请求server获取主动监控项列表,并主动将监控项内需要检测的数据提交给server/proxy。
参见:/article/8550047.html
zabbix请求传递数据都是使用json。
采集器原理:采集器用脚本实现,通过执行采集器脚本,来实现对软件指标的采集,并将指标以socket的形式传递给zabbix server。
将功能封装起来即可。
大致开发流程:
1、扫描采集器包crawler ,初始化软件包和采集器的相关信息(扫描包路径,名称,平台,采集器的定义文件(item,trigger,graphs)...将信息存入static变量)
2、激活采集器包(初始化各项数据)
软件包是否init-->crawler是否init-->将采集器包的信息存入数据库
采集器 item ,trigger ,graphs
(在初始化服务角色时初始化自定义图表)信息。
3、禁用采集器包 (删除数据库中与采集器相关数据)
4、安装软件采集器(生成采集器实例)
与软件安装类似:/article/8550038.html
传递参数:主机id,服务角色id,采集器包id(在指定主机下安装指定服务角色的指定采集器,)
其中要创建item,trigger。(通过HttpClent请求,发送json数据,来创建item(在zabbix数据库中创建的))
开发采集器,主要是为了监控软件指标。
相关文章推荐
- 浅谈strtok函数的使用心得
- ios NSString md5 base64 urlEncode isEmail
- “undefined JNI_GetCreatedJavaVM”和“File format not recognized”错误原因分析
- oto餐饮app实时订单物流追踪系统架构设计(一)
- 快速将自己的应用程序做成安装包
- pes and ts stream, how to convert
- Android自定义图片加载框架
- 操作系统7- shell
- 浅析Python中signal包的使用
- 获取Android设备电池电量状态
- 使用友盟分享,出现linker command failed with exit code 1
- Python 私有变量、私有方法、类变量与实例变量
- Hibernate映射之多对多映射(五)
- 号码验证
- BaseAdapter适配器view缓存
- Oracle 中count(1) 和count(*) 的区别
- Objective-C 笔记一(HelloWorld)
- Hibernate中Criteria的用法
- JDBC--获取数据库连接
- Advanced Plugin Concepts