nagios二次开发(二)

时间:2022-03-07 16:58:50

NAGIOS做前台

上一篇本人分析了nagios和nagiosql的优缺点,根据之前的使用经验及探索。决定将nagios做为监控数据的展示层,暂称做“前台”。将nagiosql做为监控体的配置层,暂称为“后台”。简而言之,后台做为服务器端的配置,前台用来查看结果。

这里取nagios页面中的左侧菜单栏,使其与nagiosql的左侧菜单栏进行合并,当前你可以根据你的业务需要进行取舍。

nagios页面中的左侧菜单栏见图1.3

 nagios二次开发(二)

 

需要实时了解nagios的朋友可以访问nagios官网的demo:http://nagioscore.demos.nagios.com/

 

NAGIOSQL做后台

通过对nagios和nagiosql的调研,我的建议是将nagios的相关页面合并到nagiosql的主体框架中。两者都是用PHP开发的,但本人却对PHP是0基础,那就边学边卖。对nagios的源码分析,从index.php(此页面为首页)源码如下,

[php] view plaincopyprint?nagios二次开发(二)nagios二次开发(二)
  1. <frameset cols="180,*" style="border: 0px; framespacing: 0px">  
  2. <frame src="side.php" name="side" frameborder="0" style="">  
  3. <frame src="<?php echo $corewindow;?>" name="main" frameborder="0" style="">  

第45行及46行了解到,左侧菜单及右侧页面是通过iframe显示出来的。

由此又对side.php源码进行分析,源码如下:

[php] view plaincopyprint?nagios二次开发(二)nagios二次开发(二)
  1. <?php  
  2. include_once(dirname(__FILE__).'/includes/utils.inc.php');  
  3.   
  4. $link_target="main";  
  5. ?>  
  6.   
  7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  8.   
  9. <html>  
  10.   
  11. <head>  
  12. <meta name="ROBOTS" content="NOINDEX, NOFOLLOW">  
  13. <meta http-equiv='content-type' content='text/html;charset=UTF-8'>  
  14.   
  15. <TITLE>Nagios</TITLE>  
  16. <link href="stylesheets/common.css" type="text/css" rel="stylesheet">  
  17. </head>  
  18.   
  19. <body class='navbar'>  
  20.   
  21.   
  22.   
  23. <!--<div class="navbarlogo">-->  
  24. <!--<a href="http://www.nagios.org" target="_blank"><img src="images/sblogo.png" border="0" alt="Nagios"></a>-->  
  25. <!--</div>-->  
  26.   
  27. <!--<div class="navsection">-->  
  28. <!--<div class="navsectiontitle">常用</div>-->  
  29. <!--<div class="navsectionlinks">-->  
  30. <!--<ul class="navsectionlinks">-->  
  31. <!--<li><a href="main.php" target="<?php echo $link_target;?>">主页</a></li>-->  

第4、31行,明确了点击菜单时,右侧区 target控制 显示的信息。

而对nagiosql的源码进行分析时,完全是一头雾水。因为nagiosql引入了模板(后面文章分析)。这也就成为了要将nagios合并到nagiosql的主要原因。

当初因为考虑到CGI的问题(后面文章分析),我们曾试图将nagiosql进行分拆合并其到nagios页面中,但经过尝试以失败告终,因为我们对IT.php模板(后面文章分析)确实不懂啊。


请朋友们转载时注明出处,因为我是为了更好的方便大家来和我讨论。谢谢了。

意见及建议:ruberzhu@qq.com