編輯:關於android開發
一、背景
鑒於zabbix和cacti的服務分組及圖像呈現功能,公司領導以業務最大化穩定為目標導向,對運維部提出“監控系統按服務分組出圖實時展現”的功能,運維部屬於公司的技術保障支撐部門,面對合理的需求,只能是Yes。
二、需求
監控系統按服務分組出圖實時展現
三、軟件環境
[root@nagios ~]# cat /etc/redhat-release
CentOS release 6.7 (Final)
[root@nagios ~]# uname -r
2.6.32-573.el6.x86_64
lamp環境及nagios基礎環境的軟件版本如下圖所示:
圖1 nagios基礎環境所用軟件版本
四、需求分析及實現
4.1分組功能
我們現在使用的監控系統是nagios,眾所周知,nagios默認是帶hosts和servers分組功能的,如下圖:
圖2 nagios默認的分組功能
在此看到的分組菜單跟nagios4.1.1默認版本稍有差別,這個界面是我們修改過的樣式,感興趣的可以試用下。
主機分組截圖如圖3所示。
圖3 nagios主機分組
圖3中我們看到的分組相比修改之前多了一列(choice),不錯,這一列是如何增加的,是我們接下來要詳細講解的。
nagios主機分組頁面和服務分組頁面是由status.cgi頁面控制的,所以我們要增加選擇列,必須修改nagios的源碼包,找到status.c文件,修改並重新編譯,然後覆蓋現有的status.cgi.
4.1.1 修改ngios4.1.1源碼包
[root@nagios nagios-4.1.1]# ls cgi/status.c
cgi/status.c
[root@nagios nagios-4.1.1]# vimcgi/status.c +3598 #修改3598行為如下所示
/*choice add by xuekun 2016-12-23*/
printf("choice"); /*這一列是新加的,復選框列*/
printf("HostStatus");
printf("ServicesActions\n");
[[email protected]]# vim cgi/status.c +3628 #復選框全選代碼,服務下拉菜單代碼
/*choice all Begin by xuekun 2016-12-23 */
上述兩處代碼的添加,主要解決了新增復選框列和服務下拉菜單的問題,接下來我們還要通過jquery實現復選框的全選,代碼的實現在544行的document_footer函數中,遵循web設計規則,將js放在頁面的最後,提高頁面加載速度。
void document_footer(void) {
if(embedded == TRUE)
return;
/* include user SSI footer */
include_ssi_files(STATUS_CGI, SSI_FOOTER);
printf("\n");
printf("function check_all(obj,flag) \n");
printf("{var is_checked =obj.checked;\n");
printf("var checkboxs = $(\"input[flag='\"+ flag+\"']\");\n");
printf("console.log(is_checked);\n");
printf("checkboxs.each(function(){\n");
printf("var cur_box = $(this);\n");
printf("cur_box.prop(\"checked\", is_checked);\n");
printf("});} \n");
printf("\n");
printf("\n");
return;
}
以上代碼修改編寫完畢,接下來要做的就是重新編譯nagios,命令如下
[root@nagios nagios-4.1.1]# make all #執行make all命令重新編譯nagios
nagios編譯完畢,我們要將編譯好的status.cgi替換掉/usr/local/nagios/sbin/目錄的status.cgi,替換之前記得先將nagios停掉,具體操作如下:
[root@nagios nagios-4.1.1]# /etc/init.d/nagiosstop #停掉nagios
[[email protected]]# cp /usr/local/nagios/sbin/status.cgi /home/xuekun/status.cgi_bak #備份原有文件
[root@nagios nagios-4.1.1]# /bin/cpcgi/status.cgi /usr/local/nagios/sbin/status.cgi #替換原有status.cgi
執行完上述命令,F5刷新nagios 訪問頁面,然後點擊“hostgroup”連接,看看是不是有新發現了呢!!!
祝你好運!
Android React Native組件的生命周期 和Android一樣,React的組件也有對應的生命周期。Android React Native組件的生命周
React Native,reactnative因為是window電腦上運行的,所以測試的是安卓 1: 安裝jdk:jdk-8u45-windows-x64.exe
說說如何用ListView實現自適應的表格。GridView比ListView更容易實現自適應的表
上次簡單地介紹了AudioRecord和AudioTrack的使用,這次就結合SurfaceVie