免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Zabbix宏使用及用戶自定義監(jiān)控(三)
原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時請務(wù)必以超鏈接形式標明文章原始出處 、作者信息和本聲明。否則將追究法律責任。http://gzsamlee.blog.51cto.com/9976612/1866779
Zabbix宏是一種抽象(Abstraction),它根據(jù)一系列預(yù)定義的規(guī)則替換一定得文本模式,而解釋器或編譯器在遇到宏時會自動進行這一模式替換;
Zabbix基于宏保存預(yù)設(shè)文本模式,并且在調(diào)用時將其替換為其中的文本;
Zabbix有許多內(nèi)置的宏,如{HOST.NAME}、{HOST.IP}、{TRIGGER.DESCRIPTION}、{TRIGGER.NAME}、
{TRIGGER.EVENTS.ACK}等
Zabbix為了更強的靈活性,zabbix還支持在全局、模板或主機級別使用用戶自定義宏(user macro);
用戶自定義宏要使用"{$MACRO}"這種特殊的語法格式;宏可以應(yīng)用在item keys和descriptions、trigger名稱和表達式、主機接口IP/DNS及端口、discovery機制的SNMP協(xié)議的相關(guān)信息中等;宏名稱只能使用大寫字母、數(shù)字及下劃線
Zabbix宏的替換次序:首先是主機級別宏;其次是當前主機上一級模板中(直接鏈接至主機的模板)的宏,多個一級模板按其ID號排序;再接著是二級模板中的宏;而后依次類推;最后檢查的是全局宏;zabbix如果無法查找到某主機定義使用的宏,則不會對其進行替換操作。要使用用戶自定義宏,有以下兩種途徑:
-->全局宏:"Administrator-->General-->Macros"
-->主機或模板級別的宏:編輯相應(yīng)的主機或模板屬性即可
Macros使用示例:
-->在主機級別定義一個名為{$NETINLIMIT}的宏,以定義當前主機所接受的入站流量的合理次數(shù):
然后在主機的triggers中使用此宏:
用戶自定義監(jiān)控:
為什么要自定義KEY:
有時候我們想讓被監(jiān)控端執(zhí)行一個zabbix沒有預(yù)定義的檢測,zabbix的用戶自定義參數(shù)功能提供了這個方法。我們可以在客戶端配置文件zabbix_angentd.conf里面配置UserParameter.
語法如下:
1
UserParameter=key, command
用戶自定義參數(shù)包含一個key和一個命令,key必須整個系統(tǒng)唯一,配置好之后,重啟客戶端。然后配置item,在key的位置填上我們自定義的key即可。
用戶自定義參數(shù)里指定的腳本由zabbix agent來執(zhí)行,最大可以返回512KB的數(shù)據(jù).
用戶自定義KEY實例:
簡單點的命令示例:
1
2
UserParameter= ping , echo  1
如果調(diào)用 ping 這個key,將會收到返回值1.
更復雜的命令示例:
1
2
UserParameter=mysql. ping ,mysqladmin -uroot  ping | grep  -c alive
如果返回1表示MySQL運行中,如果返回0表示MySQL掛了
靈活的自定義key:
如下為靈活的用戶自定義參數(shù):
1
UserParameter=key[*], command
參數(shù) 描述
Key 唯一. [*]表示里面可以傳遞多個參數(shù)
Command 需要執(zhí)行的腳本,key的[]里面的參數(shù)一一對應(yīng)$1到$9,一共9個參數(shù)。$0表示腳本命令.
注意事項
1、如果需要使用命令行里面出現(xiàn)$2這種變量,那么你要使用兩個$$2,例如awk ’{ print $$2 }’,之前就遇到過這個問題,不停的測試自己腳本輸出正常,但是zabbix卻拿不到數(shù)據(jù),原來是出在這里。為了防止和參數(shù)沖突,所以zabbix做了這個規(guī)定。
2、zabbix禁止使用一些不安全的參數(shù),如下:
1
\ ' ” ` * ? [ ] { } ~ $ ! & ; ( ) < > |  # @
3、從zabbix 2.0開始,zabbix返回文本數(shù)據(jù)可以是空格。
示例(1):獲取內(nèi)存空間大小
(1)配置被監(jiān)控端agent配置文件如下:
1
2
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=memory. free , /usr/bin/free  | awk  '/^Mem:/{print $4}'
重啟被監(jiān)控agent服務(wù)
1
# service zabbix-agent restart
(2)在服務(wù)器使用shell方式獲取被監(jiān)控端自定義監(jiān)控項數(shù)據(jù)
1
2
# zabbix_get -s 172.16.100.4 -k "memory.free"
297712
(3)添加為被監(jiān)控對象
示例(2):自定義key傳遞多個參數(shù):監(jiān)控主機內(nèi)存信息
(1)配置被監(jiān)控端agent配置文件如下:
1
2
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=memory.usage[*], /bin/cat  /proc/meminfo  |  awk  '/^$1:/{print $$2}'
重啟被監(jiān)控agent服務(wù)
1
# service zabbix-agent restart
(2)在服務(wù)器使用shell方式獲取被監(jiān)控端自定義監(jiān)控項數(shù)據(jù)
1
2
3
4
# zabbix_get -s 172.16.100.4 -k "memory.usage[Buffers]"
55980
# zabbix_get -s 172.16.100.4 -k "memory.usage[MemTotal]"
494224
(3)添加為被監(jiān)控對象
實戰(zhàn)示例:使用自定義監(jiān)控nginx服務(wù)
(1)被監(jiān)控端nginx服務(wù)開啟status
1
2
3
4
5
6
7
# vim /etc/nginx/conf.d/default.conf
location  /status  {
stub_status   on;
access_log  off;
allow 172.16.0.0 /16 ;
deny all;
}
重啟nginx服務(wù)測試:
1
2
3
4
5
6
# service nginx restart
# curl http://172.16.100.4/status
Active connections: 1
server accepts handled requests
2 2 2
Reading: 0 Writing: 1 Waiting: 0
(2)配置被監(jiān)控端agent配置文件如下:
1
2
3
4
5
6
7
8
# vim /etc/zabbix/zabbix_agentd.d/nginx.conf
UserParameter=Nginx.active[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  awk  '/^Active/ {print $NF}'
UserParameter=Nginx.reading[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  grep  'Reading'  |  cut  -d " "  -f2
UserParameter=Nginx.writing[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  grep  'Writing'  |  cut  -d " "  -f4
UserParameter=Nginx.waiting[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  grep  'Waiting'  |  cut  -d " "  -f6
UserParameter=Nginx.accepted[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  awk  '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$1}'
UserParameter=Nginx.handled[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  awk  '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$2}'
UserParameter=Nginx.requests[*], /usr/bin/curl  -s  "http://$1:$2/status"  |  awk  '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$3}'
重啟被監(jiān)控agent服務(wù)
1
# service zabbix-agent restart
(3)在服務(wù)器使用shell方式獲取被監(jiān)控端自定義監(jiān)控項數(shù)據(jù)
1
2
3
4
5
# zabbix_get -s 172.16.100.4 -k "Nginx.accepted[172.16.100.4,80]"
9
# ab -n 1000 -c 100
# zabbix_get -s 172.16.100.4 -k "Nginx.accepted[172.16.100.4,80]"
1013
(4)添加為被監(jiān)控對象
以上zabbix宏及zabbix用戶自定義監(jiān)控。
本文出自 “Opensamlee” 博客,請務(wù)必保留此出處http://gzsamlee.blog.51cto.com/9976612/1866779
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
zabbix監(jiān)控之nginx
zabbix基本操作
分布式監(jiān)控系統(tǒng)之Zabbix宏、模板和自定義item
Zabbix報警機制 、 Zabbix進階操作 、 監(jiān)控案例
Zabbix監(jiān)控Mysql數(shù)據(jù)庫性能
Zabbix從快速入門到精通
更多類似文章 >>
生活服務(wù)
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服