監(jiān)控服務-Zabbix自定義腳本監(jiān)控

一、第一里程:編輯并使用腳本

根據(jù)所需監(jiān)控內容自行編輯腳本內容硬霍,并測試成功帜慢,例如查看以當前nginx狀態(tài)信息編輯腳本如下:

[root@web01 ~]# cat /server/scripts/nginx_status.sh 
#!/bin/bash
case "$1" in 
    active)
        curl -s 172.16.1.7/status |awk 'NR==1{print $NF}'
        ;;
    accept)
        curl -s 172.16.1.7/status |awk 'NR==3{print $1}'
        ;;
    handle)
        curl -s 172.16.1.7/status |awk 'NR==3{print $2}'
        ;;
    request)
        curl -s 172.16.1.7/status |awk 'NR==3{print $NF}'
        ;;
    reading)
        curl -s 172.16.1.7/status |awk 'NR==4{print $2}'
        ;;
    writing)
        curl -s 172.16.1.7/status |awk 'NR==4{print $4}'
        ;;
    waiting)
        curl -s 172.16.1.7/status |awk 'NR==4{print $6}'
esac

并測試腳本執(zhí)行成功

root@web01 ~]# sh /server/scripts/nginx_status.sh active
1
[root@web01 ~]# sh /server/scripts/nginx_status.sh accept
3698
[root@web01 ~]# sh /server/scripts/nginx_status.sh handle
3705
[root@web01 ~]# sh /server/scripts/nginx_status.sh request
3715
[root@web01 ~]# sh /server/scripts/nginx_status.sh reading
0
[root@web01 ~]# sh /server/scripts/nginx_status.sh writing
1
[root@web01 ~]# sh /server/scripts/nginx_status.sh waiting
0

注意:這里一定要測試所有傳參都成功,才可以進行下一步
話外篇:在這里我們是以nginx七種狀態(tài)信息為例子唯卖,若使用相同的例子粱玲,必須確保nginx服務中開啟stub_status;功能,并匹配location拜轨,配置如下:

        location /status {
         stub_status;
        }

將此配置放在/etc/nginx/nginx.conf文件下的server模塊下即可抽减,nginx.conf文件內容如下:

[root@web01 ~]# cat /etc/nginx/nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;
     server {
        listen       80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;

        location / {
        }
        location /status {
         stub_status;
        }
    }
    include /etc/nginx/conf.d/*.conf;
}

二、第二里程:編輯客戶端自定義監(jiān)控項的配置文件

[root@web01 ~]# cat /etc/zabbix/zabbix_agentd.d/userparameter_status.conf 
UserParameter=nginx.status[*],/bin/sh /server/scripts/nginx_status.sh "$1"

自定義監(jiān)控腳本的格式與通過命令自定義監(jiān)控的格式一致橄碾,只不過在給自定義監(jiān)控項設置名稱時需要在后面添加對應的變量卵沉,在這里通常都是用*號代表所有變量,并用中括號括起堪嫂,逗號后面接上對應的執(zhí)行腳本命令偎箫,注意一定要寫腳本的絕對路徑,后面跟上傳參皆串,有一個就一個淹办,有倆個就寫倆個,分別用“”引起恶复。

三怜森、第三里程:重啟客戶端

systemctl restart zabbix-agent.service

四速挑、第四里程:服務端檢測是否正常接收客戶端數(shù)據(jù)信息

[root@zabbix ~]# zabbix_get -s 172.16.1.7 -k nginx.status[active]
1

注意:在配置自定義監(jiān)控腳本時,[*]中的中括號里面的*號副硅,代表腳本所需的所有傳參姥宝,因此在客戶端發(fā)送及獲取數(shù)據(jù)時,不能以*號代替所有傳參恐疲,必須一個一個變量填寫腊满,如上圖所示

五、web頁面配置

  • 第一步:在配置中找到對應的模板培己,給該腳本監(jiān)控項設置應用集碳蛋。


    找到對應模板

    創(chuàng)建應用集

    應用集命名并添加
  • 第二步:創(chuàng)建監(jiān)控項,注意這里創(chuàng)建監(jiān)控項時一定要根據(jù)監(jiān)控項的變量個數(shù)省咨,來決定寫多少個監(jiān)控項肃弟,例如監(jiān)控nginx的狀態(tài)信息,一共在腳本中設定了7個變量零蓉,那么就需要添加7個監(jiān)控項笤受,不可用*號代替。
    創(chuàng)建監(jiān)控項

    創(chuàng)建監(jiān)控項內容敌蜂,其余默認即可

    PS:創(chuàng)建多個類似相同的監(jiān)控項箩兽,可以點擊選中的監(jiān)控項,進入后點擊最下方的克隆即可
  • 第三步:創(chuàng)建觸發(fā)器紊册,根據(jù)實際情況決定比肄,是否需要報警,如不需要可不設置囊陡,例如當nginx等待響應數(shù)據(jù)大于10時芳绩,發(fā)出一般嚴重報警,可按以下配置撞反。
    創(chuàng)建監(jiān)控項

    添加監(jiān)控項

    添加監(jiān)控項及內容詳解請見:http://www.reibang.com/p/ec86683cc9a9
    最終顯示結果
  • 第四步:創(chuàng)建圖形妥色,用來直觀感受收集的數(shù)據(jù)信息


    創(chuàng)建圖形

    添加圖形

    這里需要注意的就是將需要圖形化展示的監(jiān)控項逐一添加到監(jiān)控項選項中。


    顯示圖像
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末遏片,一起剝皮案震驚了整個濱河市嘹害,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吮便,老刑警劉巖笔呀,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異髓需,居然都是意外死亡许师,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來微渠,“玉大人搭幻,你說我怎么就攤上這事〕雅瑁” “怎么了檀蹋?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長云芦。 經常有香客問我俯逾,道長,這世上最難降的妖魔是什么舅逸? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任纱昧,我火速辦了婚禮,結果婚禮上堡赔,老公的妹妹穿的比我還像新娘。我一直安慰自己设联,他們只是感情好善已,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著离例,像睡著了一般换团。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上宫蛆,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天艘包,我揣著相機與錄音,去河邊找鬼耀盗。 笑死想虎,一個胖子當著我的面吹牛,可吹牛的內容都是我干的叛拷。 我是一名探鬼主播舌厨,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼忿薇!你這毒婦竟也來了裙椭?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤署浩,失蹤者是張志新(化名)和其女友劉穎揉燃,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體筋栋,經...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡炊汤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片婿崭。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡拨拓,死狀恐怖,靈堂內的尸體忽然破棺而出氓栈,到底是詐尸還是另有隱情,我是刑警寧澤授瘦,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站形纺,受9級特大地震影響,放射性物質發(fā)生泄漏徒欣。R本人自食惡果不足惜逐样,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望脂新。 院中可真熱鬧,春花似錦争便、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鉴嗤,卻和暖如春斩启,著一層夾襖步出監(jiān)牢的瞬間醉锅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工男韧, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留默垄,地道東北人此虑。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓口锭,卻偏偏與公主長得像介杆,于是被迫代替她去往敵國和親韭寸。 傳聞我的和親對象是個殘疾皇子春哨,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內容