nagios二次开发之“依据分组绘制服务图”

简介: 背景:        在nagios3.2.0版本,曾将nagios、saltstack、Thinkphp进行整合。在整合的基础之上,进行了二次开发,新增分组出图、资产管理、服务器批量管理等功能。
背景:
       在nagios3.2.0版本,曾将nagios、saltstack、Thinkphp进行整合。在整合的基础之上,进行了二次开发,新增分组出图、资产管理、服务器批量管理等功能。资产的增删改查借助的是Thinkphp框架;分组出图单独写分组页面,调用pnp的接口;服务器的批量管理,依靠的是saltstack的强大的API,如下图:
      
  图1  按业务分组出图
      
图2  资产管理和服务器批量管理
       上述系统已应用到线上环境。接下来我们要讲述的“依据分组绘制服务图”是在nagios 4.1.1的基础之上进行的二次开发。

一、需求
      依据分组绘制服务图

二、效果图
     
图三   分组复选框
         
图四   按业务分组出图
三、实现过程
       1)修改nagios的status.cgi原文件,增加复选框及对应的实现全选的js代码。
       2)切换到pnp4nagios安装目录,新增graphview.php文件,同时追加处理分组出图的php代码。

四、总结
      1)相比nagios3.2.0版本的二次开发,本次分组出图功能的实现只依赖于nagios+pnp4nagios,未借助thinkphp进行分组
      2)有nagios3.2.0的开发铺垫,再次修改nagios4.1.1的时候,可直接修改源代码,降低了复杂度,同时加快了项目进度
      4)无论哪一种开源软件,只要结合自己的业务需求用心钻研,总会有闪光点!
目录
相关文章
|
监控
zabbix利用grafana自定义监控图形展现(十一)
zabbix利用grafana实现监控图形展现 1.修改已有的system load监控图像 下面这张图是现在已经有的系统负载监控图,可以看到只有15分钟的负载并没有1分钟和5分钟的负载,我们现在修改一下图形,让他支持1分钟和5分钟的系统负载
946 0
zabbix利用grafana自定义监控图形展现(十一)
|
10月前
|
监控 数据可视化 关系型数据库
zabbix可视化图形监控
zabbix可视化图形监控
146 0
|
Python
②matplotlib绘制直方图之基本配置——万能模板案例
matplotlib绘制直方图之基本配置——万能模板案例
180 0
②matplotlib绘制直方图之基本配置——万能模板案例
|
数据可视化 BI Python
快速绘制动态排序图 — Pyecharts 高级组件 Timeline 实现!
之前写过一篇关于Python 制作 动态排序图的教程,里面利用的是 Matplotlib 中的 animation 函数,文章内容可参考动态排序图的详细制作教程,动态排序图的最终部分效果如下:
快速绘制动态排序图 — Pyecharts 高级组件 Timeline 实现!
|
机器学习/深度学习 数据可视化 安全
jupyter notebook安装部署及实战组合漏斗图绘制
首先介绍下jupyter以及其安装和使用
1020 0
jupyter notebook安装部署及实战组合漏斗图绘制
|
PHP 监控 开发框架