nagios插件詳解

一、check_apt

作用:debain相關係統的更新機制檢查

update更新軟件列表信息,包括版本,依賴關係等

upgrade在不改變現有軟件設置的基礎上更新軟件

dist-upgrade會改變配置文件,改變舊的依賴關係

語法:check_apt [[-d|-u|-U]opts] [-n] [-t timeout]

>#check_apt --help //查看具體使用說明

-d opts--dist-upgrade=OPTS:執行dist-upgrade升級。和-U opts 參數相同。

-u opts--update=OPTS:首先執行apt-get update”獲取更新軟件列表信息,包括版本,依賴關係等,

-U opts--upgrade=OPTS:默認使用,如果提供一個可選的選項,將執行可選的選項內容,否則按照默認的(-o 'Debug::NoLocking=true' -s -qq)。如果不使用默認,可能要求root權限。

-n--no-upgrade:不執行upgrade

-tapt鏈接斷開多少秒開始檢查,默認10s

-e--exclude=REGEXPREGEXP表示正則表達式,用於匹配軟件包。跳過更新列表裏的軟件包

-c--critical=REGEXP:如果有可更新的軟件匹配,則顯示Critical緊急報警。

-i--include=REGEXP:如果有可更新的軟件匹配,則顯示Warning告警

-V:顯示版本


二、check_breeze

作用:這個插件報告breezecom無線設備的信號強度

語法:check_breeze -H <host> [-C community] -w <warn> -c <crit>

-H <host>--hostname=HOST:要檢查的主機的主機名或者ip地址

-C community--community=communitySNMPv1社區,默認爲public

-w <warn>--warning=INTEGER:百分比強度低於設定的將導致Warning警告狀態

-c <crit>--critical=INTEGER:百分比強度低於設定的將導致Critical警告狀態


三、check_by_ssh

作用:這個插件使用ssh在遠程主機上執行命令

用法:

check_by_ssh -H <host> -C <command> [-fqv] [-1|-2] [-4|-6]

[-S [lines]] [-E [lines]] [-t timeout] [-i identity]

[-l user] [-n name] [-s servicelist] [-O outputfile]

[-p port] [-o ssh-option] [-F configfile]

-C <command>:--command='COMMAND STRING':指定要在遠程主機上執行的命令,執行多個命令時,多次帶上-C參數

-f:可選,告示ssh創建一個子進程,而不是創建一個新的tty,只要執行ssh返回結果總是爲OK

-q--quiet告訴SSH抑制預警和診斷信息

-v:顯示命令行調試的詳細信息(Nagios可以截斷輸出)

-1|-2:可選,選擇用Protocol1Protocol2

-4|-6:選擇鏈接ipv4或者ipv6

-S, --skip-stdout[=n]:忽略所有或(如果指定)第N線到標準輸出

-E, --skip-stderr[=n]:忽略所有或(如果指定)前N條錯誤

-t, --timeout=INTEGERINTEGER整數,在連接超時幾秒鐘後重新發起鏈接(默認:10

-i, --identity=KEYFILEKEYFILE密鑰文件,指定鏈接的密鑰文件

-l, --logname=USERNAME:指定用於登錄遠程主機的用戶名,必須是存在於遠程主機的。

-n, --name=NAME:在Nagios配置主機的短名稱

-s, --services=LISTNagios服務名稱列表,相隔''

-O, --output=FILE:對於Nagios的外部命令文件

-p, --port=INTEGER:整數,端口名稱,默認沒有

-o, --ssh-option=OPTION:帶有OPTION鏈接SSH

-F, --configfile:指定使用的配置文件

-w, --warning=DOUBLE:告警的響應時間

-c, --critical=DOUBLE:告警的響應時間


四、check_tcp

check_clamd,check_ftp,check_imap,check_jabber,check_nntp,check_nntps,check_pop,

check_simap,check_spop,check_ssmtp,check_udp,這些都是check_tcp的鏈接文件

作用:這個插件測試TCP連接指定的主機(或UNIX套接字)

用法:

check_clamd -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>]

[-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>]

[-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j]

[-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]


-s--send=STRINGSTRING字符串,發送給服務器的字符串

-e, --expect=STRINGexpect期待,期待在服務器響應(可能重複)的字符串

-q, --quit=STRING:發送服務器的字符串,以啓動一個乾淨的連接

-m, --maxbytes=INTEGER:一旦接收到大於這個字節數,則關閉連接

-d, --delay=INTEGER:在發送字符串和輪詢響應之間延遲多少秒

-r, --refuse=ok|warn|crit:拒絕接受TCP狀態,默認crit

-M, --mismatch=ok|warn|crit:接受與字符串不匹配預期的狀態(ok,warn,crit)默認warn

-v:顯示命令行調試的詳細信息(Nagios可以截斷輸出)

-j, --jail:隱藏TCP套接字的輸出

-D, --certificate=INTEGER[,INTEGER]:證書最少有效的天數。第一是warn天,第二是crit重要的(缺省爲0)。

-S, --ssl:使用ssl安全鏈接

-E, --escape


五、check_cluster

作用:主機/服務集羣插件Nagios 2

用法:

Usage:

check_cluster (-s | -h) -d val1[,val2,...,valn] [-l label]

[-w threshold] [-c threshold] [-v] [--help]

(-s | -h):指定檢查的是服務羣集還是主機羣集

-d, --data=LIST:集羣中的主機或服務的狀態碼,以逗號分隔

-l, --label=STRING:可選的附加文本輸出

-w, --warning=THRESHOLDTHRESHOLD閾值,指定在集羣中的主機或服務的範圍必須是non-ok”狀態,以返回一個warn狀態級別

-c, --critical=THRESHOLD:指定在集羣中的主機或服務的範圍必須是non-ok”狀態,以返回一個crit狀態級別


六、check_dhcp

作用:這個插件測試網絡上的DHCP服務器的可用性。

用法:

check_dhcp [-v] [-u] [-s serverip] [-r requestedip] [-t timeout] [-i interface] [-m mac]


-u, --unicast:單播試驗:模仿一個DHCP中繼,需要結合-s參數使用

-s, --serverip=IPADDRESS:必須監聽的DHCP服務器的ip地址

-r, --requestedip=IPADDRESS:請求的IP地址應,至少一個DHCP服務器提供

-i, --interface=STRING:監聽的物理接口

-m, --mac=STRING:在DHCP請求中使用的MAC地址


七、check_dig

作用:這個插件測試指定主機上使用的DNS服務挖掘

用法:

check_dig -l <query_address> [-H <host>] [-p <server port>] [-T <query type>] [-w <warning interval>] [-c <critical interval>] [-t <timeout>] [-a <expected answer address>] [-v]


-l, --query_address=STRING:機器名稱查找

-T, --record_type=STRING:記錄類型查找(默認:A

-a, --expected_address=STRING:在回答部分顯示的主機名,如果沒有指定,則使用-l參數指定的


八、check_disk

作用:此插件檢查安裝的文件系統中使用的磁盤空間的數量,併產生一個警告,如果自由空間是小於指定的閾值

用法:

check_disk -w limit -c limit [-W limit] [-K limit] {-p path | -x device}[-C] [-E] [-e] [-g group ] [-k] [-l] [-M] [-m] [-R path ] [-r path ] [-t timeout] [-u unit] [-v] [-X type]


-C, --clear:清空閾值[yù zhí]

-E, --exact-match:對於-p”指定的路徑或分區,只能檢查確切路徑

-e, --errors-only:顯示錯誤的設備/掛載點

-g, --group=NAME:羣路徑。閾值適用於所有分區的(空閒)空間

-k, --kilobyteskilobytes千字節,--units KB

-l, --local:只檢查本地文件系統

-M, --mountpoint:顯示掛載點而不是分區

-m, --megabytes:以MB爲單位顯示,和--units MB相同

-A, --all:顯式選擇所有路徑。這相當於-R '.*'

-R, --eregi-path=PATH, --eregi-partition=PARTITION:正則表達式來匹配路徑/分區,這些路徑或分區字符串對正則表達式不是很敏感。

-r, --ereg-path=PATH, --ereg-partition=PARTITION正則表達式來匹配路徑/分區

-u, --units=STRINGChoose bytes, kB, MB, GB, TB (default: MB)

-X, --exclude-type=TYPE:忽略所有的文件系統的類型


九、check_disk_smb

作用:用Perl語言寫成的插件,爲Nagios檢查磁盤smb

用法:

check_disk_smb -H <host> -s <share> -u <user> -p <password> -w <warn> -c <crit> [-W <workgroup>] [-P <port>] [-a <IP>]


-s, --share=STRING:用於測試的分享名

-u, --user=STRING:登錄到服務器的用戶名。(默認爲guest”

-a, --address=IP:主機的地址(另一個網絡中的主機才需要)


十、check_dns

作用:這個插件使用nslookup程序獲取IP地址爲指定的主機/域名查詢。可能要指定一個DNS服務器(可選),如果沒有指定DNS服務器地址,則會調用本地的/etc/resolv.conf中配置的DNS服務器。

用法:

check_dns -H host [-s server] [-a expected-address] [-A] [-t timeout] [-w warn] [-c crit]


-a, --expected-address=IP-ADDRESS|HOST:指定需要解析的ip地址或主機名,多個ip之間以逗號,”分隔,主機名必須以點.”結束。


十一、check_dummy

作用:該插件將簡單的返回狀態對應的狀態的數值,可結合文本使用

用法:check_dummy <integer state> [optional text]


十二、check_file_age

作用:用於檢查文件的創建時間和大小,達到一定閾值則告警。

用法:

check_file_age [-w <secs>] [-c <secs>] [-W <size>] [-C <size>] -f <file>


<secs>:文件必須是不超過指定的老化時間,以s爲單位,默認240s,否則顯示crit告警

<size>:文件必須是不超過指定的大小,以b爲單位,默認0字節,否則顯示告警。


十三、check_flexlm

作用:檢查可用的許可證管理

用法:check_flexlm -F <filename> [-v] [-t] [-V] [-h]


-F, --filename=FILE:許可證文件名稱,一般以license.dat保存在系統中


十四、check_hpjd

作用:這個插件的測試使用jetdirect卡的HP打印機的狀態

用法:check_hpjd -H host [-C community]

-C, --community=STRINGSNMP社區,默認爲public

十五、check_http

作用:這個插件用於測試指定主機上的HTTP服務。它可以測試正常(HTTP)和安全(HTTPS)服務器,根據重定向、字符串和正則表達式的搜索,檢查連接時間,並報告證書過期時間。

用法:

check_http -H <vhost> | -I <IP-address> [-u <url>] [-p <port>]

[-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-a auth]

[-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>]

[-e <expect>] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>]

[-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>]

[-A string] [-k string] [-S <version>] [--sni] [-C <warn_age>[,<crit_age>]]

[-T <content-type>] [-j method]

注意:參數-H-I必須選用其一個或全選


-H|-I:檢查指定的主機名,主機ip地址

-uurl,完整url,默認爲網站更目錄/”。如http//172.16.111.87/nagios

-p:端口,默認爲80,

-wwarn的警告響應時間,單位爲秒s

-ccrit的警告響應時間,單位爲秒s

-t:超時,默認10s,即允許鏈接超時10s,如果接收不到信息,則表示故障

-L, --link:用HTML鏈接輸出(以廢除的urlize

-a, --authorization=AUTH_PAIRhttp網頁要求的基本驗證信息,格式爲username:password

-b-b, --proxy-authorization=AUTH_PAIR:在代理服務器上的基本驗證信息,格式爲username:password

-f, --onredirect=<ok|warning|critical|follow|sticky|stickyport>:如何處理重定向頁面。sitcky類似follow,但sticky指向的明確的ip地址。stickyport確保端口保持不變。

-e, --expect=STRING:逗號分隔的字符串列表,在服務器響應的第一個(狀態)線中,至少有一個是預期的(默認是HTTP/1.)如果指定跳過所有其他狀態行的邏輯(例如:3xx4xx5xx處理)

-s, --string=STRING:期待在放回內容中的字符串

-l, --linespan:允許正則表達式跨換行符(必須先於-r-R參數)

-r, --regex, --ereg=STRING:正則表達式的字符串搜索頁面

-R, --eregi=STRING可以用於在僅支持區分大小寫正則表達式的產品中完成不區分大小寫的模式匹配。

-P, --post=STRINGURL編碼的HTTP POST數據

-m, --pagesize=INTEGER<:INTEGER>:頁面大小最小值:最大值,分號分隔開。

-N, --no-body:不要等待文檔正文:讀取頭部後立刻停止讀取。注意:這依然是一個HTTPGET或者POST,而不是HEAD

-M, --max-age=SECONDS:檢查網頁文檔的更新時間,並由這個設定的閾值爲界限,創建時間距今時間間隔超過閾值就會告警。默認單位爲smhd是分鐘、小時、天。

-A, --useragent=STRING:設定字符串在發送的http頭部中作爲用戶簽名。

-k, --header=STRING:任意添加在http發送報文頭部。用於附加標題的多次使用

-S, --ssl=VERSION:通過SSL連接,默認端口443,版本可選,爲防止自動協商(1 = TLSv1, 2 = SSLv2, 3 = SSLv3)

--sni:啓用SSL / TLS的主機名的擴展支持

-C, --certificate=INTEGER:檢查證書使用時長並由設定的閾值爲界限,格式:<整數>[,整數],第一個整數爲warn,第二個爲crit的。

-T, --content-type=STRING:在POSTing時指定Content-Type頭部的媒體類型

-j, --method=STRING:設定HTTP指定資源的方式,例如:HEAD, OPTIONS, TRACE, PUT, DELETE


十六、check_icmp

作用:作用和ping命令類似,檢測網絡的聯通性。

用法:check_icmp [options] [-H] host1 host2 hostN

選項:

-H:指定檢測目標

-wwarn閾值(目前200.000ms40%

-ccrit閾值(目前500.000ms80%

-s:指定源ip地址或主機名

-n:設定發送的包的個數

-i:設定最大數據包間隔(目前80.000ms

-I:最大目標區間(目前0.000ms

-m:成功的主機數量

-l:在傳出的數據包的TTL值,(目前爲0

-t:超時值(s,默認10s

-b:發送ICMP數據字節數,包的大小將數據字節+ ICMP報頭(目前爲68 + 8



十七、check_ide_smart

作用:這個插件用於檢測本地具有(特定的)SMART接口的硬盤驅動器

用法:

check_ide_smart [-d <device>] [-i <immediate>] [-q quiet] [-1 <auto-on>] [-O <auto-off>] [-n <nagios>]


-d, --device=DEVICE:指定一個硬盤設備。注意:如果選擇了這一參數,就不能在選擇其他參數了

-i, --immediate:立即執行離線測試

-q, --quiet-check:返回失敗的測試數

-1, --auto-on:開啓自動離線測試

-0, --auto-off:關閉自動離線測試

-n, --nagios:輸出適合Nagios的信息


十八、check_ifoperstatuscheck_ifstatus

錯誤插件,目前暫不瞭解原因。

十九、check_ircd

作用:用Perl語言寫成的插件,爲Nagios檢查IRCD

用法:check_ircd -H <host> [-w <warn>] [-c <crit>] [-p <port>]


-H, --hostname=HOST:指定要檢測的主機名或ip地址

-w, --warning=INTEGER:產生一個warn狀態的連接用戶數的閾值(默認爲50

-c, --critical=INTEGER:產生一個crit狀態的連接用戶數的閾值(默認爲50

-p, --port=INTEGERircd的守護進程運行使用的端口,默認爲6667


二十、check_load

作用:這個插件用於測試當前系統的負載平均值。

用法:check_load [-r] -w WLOAD1,WLOAD5,WLOAD15 -c CLOAD1,CLOAD5,CLOAD15


-w, --warning=WLOAD1,WLOAD5,WLOAD15:分別爲1515分鐘內的負載平均值,如果有其中一個時間內的負載平均值超過設定的閾值,則會告警warn

-c, --critical=CLOAD1,CLOAD5,CLOAD15:分別爲1515分鐘內的負載平均值,如果有其中一個時間內的負載平均值超過設定的閾值,則會嚴重告警cirt

-r, --percpu:如果存在多個cpu,將各個cpu的負載平均值分開顯示


二十一、check_log

作用:用於日誌文件的檢測和比對

用法:check_log -F logfile -O oldlog -q query


二十二、check_mailq

作用:用於檢查郵件隊列中的郵件數,支持多個sendmail郵件隊列,qmail

用法:check_mailq -w <warn> -c <crit> [-W <warn>] [-C <crit>] [-M <MTA>] [-t <timeout>] [-v verbose]


-w:多少條郵件在發送隊列中就會發送告警warn

-c:多少條郵件在發送隊列中就會發送告警cirt

-W:相同域內多少條郵件在發送隊列中就會發送告警warn

-C:相同域內多少條郵件在發送隊列中就會發送告警crit

-t:超時時間,默認爲15s

-M (--mailserver):指定監控的郵件程序,有sendmail | qmail | postfix | exim,默認sendmail


二十三、check_mrtg

作用:這個插件用於檢查任何一個變量記錄在MRTG日誌文件的平均值或最大值。

用法:

check_mrtg -F log_file -a <AVG | MAX> -v variable -w warning -c critical

[-l label] [-u units] [-e expire_minutes] [-t timeout] [-v]


-F:指定日誌文件

-a, --aggregation=AVG|MAX:監控平均值還是最大值

-v, --variable=INTEGER:選擇那個變量,12

-w, --warning=INTEGERwarn閾值

-c, --critical=INTEGERcrit閾值

-l, --label=STRING:數據類型標籤,(例如: Conns, "Processor Load", In, Out)

-u, --units=STRING:選擇數據的單位標籤(例如: Packets/Sec, Errors/Sec,"Bytes Per Second", "%% Utilization")


二十四、check_mrtgtraf

作用:這個插件用於檢測一個路由器、交換機等的在MRTG日誌記錄中輸入/輸出傳輸速率

用法:

check_mrtgtraf -F <log_file> -a <AVG | MAX> -w <warning_pair>

-c <critical_pair> [-e expire_minutes]


-F, --filename=STRING:讀取的日誌文件

-e, --expires=INTEGER:日誌過期後的時間閾值,單位min

-w, --warningwarn閾值,格式<incoming>,<outgoing>

-c, --critical:cirt閾值,格式<incoming>,<outgoing>


二十五、check_nagios

作用:這個插件用於檢查本地Nagios服務進程。這個插件將設定時間閾值去檢查Nagios的狀態日誌文件的創建時間時長併產生響應的報警信息。它還檢查進程匹配的過程表的命令參數。

用法:check_nagios -F <status log file> -e <expire_minutes> -C <process_string>

-e:設定時間閾值,單位爲分鐘

例子:check_nagios -e 5 -F /usr/local/nagios/var/status.dat -C /usr/local/nagios/bin/nagios


二十六、check_mysql

找不到模塊libmysqlclient.so的處理方法

>#locate libmysqlclient.so

>#vim /etc/ld.so.conf.d/mysql***.conf

把模塊位置添加進去

>#ldconfig -v //更新模塊信息

作用:這個插件程序用於測試mysql服務器的客戶連接

用法:check_mysql [-d database] [-H host] [-P port] [-s socket] [-u user] [-p password] [-S]


-d, --database=STRING:指定數據庫名

-H, --hostname=ADDRESS:指定mysql服務器地址

-P, --port=INTEGER:指定端口,默認3306

-s, --socket=STRING:指定socket套接字,如果指定了-H參數,則-s參數則沒有實際作用

-u:指定連接數據庫的用戶名

-p:指定鏈接數據庫的密碼,因爲這些設置都是明文設置,所以很不安全,要做好相關的文件權限設置

-S:同時檢查slave,檢查從數據庫


二十七、check_mysql_query

作用:此程序檢查閾值級別的查詢結果

用法:

check_mysql_query -q SQL_query [-w warn] [-c crit] [-H host] [-P port] [-s socket] [-d database] [-u user] [-p password]


-q, --query=STRING:指定SQL查詢語句,只能讀取第一行的第一列

-w, --warning=RANGEwarn範圍(格式:start:end)。如果在這個範圍之外則×××告警warn

-c, --critical=RANGE:紅色告警

-H, --hostname=ADDRESS:主機名或主機ip地址

-P, --port=INTEGER:指定端口,默認3306

-s, -d,-u,-p:則四個參數和check_mysql相同


二十八、check_nrpe

作用:用於鏈接遠程被監控客戶機的nrpe進程,從而調用客戶機的插件執行相關操作

用法:check_nrpe -H <host> [-n] [-u] [-p <port>] [-t <timeout>] [-c <command>] [-a <arglist...>]


-H:指定被監控客戶機

-n:不使用ssl安全鏈接

-u:使返回結果爲critical換成unknow

-p:指定鏈接端口,默認5666,如果客戶端的端口不是5666,這邊也要響應的改變

-c:調用客戶端nrpe.conf配置文件設定的命令定義

-a:傳遞給命令的可選參數,多個參數用空格分隔。如果選用,這必須是命令行最後的選項。


二十九、check_nt

作用:這個插件用於收集運行在windows NT/2000/XP/2003 服務器上的NSClient 服務的數據

用法:

check_nt -H host -v variable [-p port] [-w warning] [-c critical] [-l params] [-d SHOWALL] [-u] [-t timeout]


-H:要檢查數主機名或ip地址

-v, --variable=STRING:變量檢查,如:

  -v CLIENTVERSION -l <version>:配合使用檢查客戶端版本,如果不同,則顯示crit告警

  -v CUPLOAD:檢測CPU最近n秒內的平均負載情況。注意:n=<24*60

  -v CUPLOAD -l <minutes range>,<warning threshold>,<critical threshold>

  -v UPTIME:獲取機器的正常運行時間,沒有任何告警信息。沒必要指定-l參數

  -v USEDDISKSPACE:檢測磁盤的使用量和百分比,需要結合-l參數指定磁盤設備

  -v USEDDISKSPACE -l C:/ :同時可以結合-w-c參數設定告警閾值

  -v MEMUSE:內存使用量,結合-w-c參數設定告警閾值

  -v SERVICESTATE:檢查一個或多個服務的狀態

  -v SERVICESTATE -l <service1>,<service2>,<service3>,…

  -v PROCSTATE:檢查一個或多個正在運行的進程

  -v PROCSTATE -l <process1>,<process2><process3>,…

  -v COUNTER:檢查windows NT/2000的性能計數器

  -v COUNTER -l "\\<performance object>\\counter","[description]

  -v INSTANCES:檢查windows NT/2000的性能計數器的對象

  -v INSTANCES -l <counter object>:如果對象是兩個詞,必須使用雙引號括起來

-p, --port=INTEGER:指定端口,默認爲1248

-w:指定warn閾值

-c:指定crit閾值

-t, --timeout=INTEGER:鏈接超時,單位爲s

-t <INTEGER> [-l <parameters>]:檢查指定的超時

-t <INTEGER> [-d SHOWALL] :檢查所有超時

-t <INTEGER> -u:返回unknow信息


三十、check_ntp

作用:這個插件用於檢查指定的ntp服務

用法:check_ntp -H <host> [-w <warn>] [-c <crit>] [-j <warn>] [-k <crit>] [-v verbose]


-H, --hostname=ADDRESS:主機名或ip地址

-p, --port=INTEGER:指定鏈接的端口,默認123

-wwarn閾值,單位s

-ccrit閾值,單位s

-j, --jwarn=THRESHOLD:抖動的warn閾值

-k, --jcrit=THRESHOLD:抖動的crit閾值

-t:延遲,默認10s


三十一、check_ntp_peer

作用:這個插件用於檢查指定的ntp服務,這個插件檢查一個獨立於任何命令行程序或外部庫的NTP服務器。

用法:

check_ntp_peer -H <host> [-w <warn>] [-c <crit>] [-W <warn>] [-C <crit>] [-j <warn>] [-k <crit>] [-v verbose]


-Wstrtum(層級)warn閾值

-Cstartumcrit閾值

-m, --twarn=THRESHOLD:可用時間源數的warn閾值

-n, --tcrit=THRESHOLD:可用時間源數的crit閾值

-t:延遲,默認10s


三十二、check_ntp_time

作用:這個插件用於檢查NTP服務器的時間偏移。用於檢查本地的時間和遠程NTP服務器的時間偏移。這個插件獨立於任何命令行程序或外部庫。

用法:check_ntp_time -H <host> [-w <warn>] [-c <crit>] [-v verbose]


-H, --hostname=ADDRESS:主機名或ip地址

-p, --port=INTEGER:指定鏈接的端口,默認123

-q, --quiet:但無法獲取偏移量的時候,返回unkown而不是critical


三十三、check_nwstat

作用:這個插件嘗試聯繫mrtgext NLMNovell服務器運行收集所要求的系統信息

用法:check_nwstat -H host [-p port] [-v variable] [-w warning] [-c critical] [-t timeout]

 

-H:要檢查數主機名或ip地址

-p, --port=INTEGER:端口,默認9999

-v, --variable=STRING:選擇變量,正確的變量包括:

  LOAD1:最近1min內的CPU平均負載量

  LOAD5:最近5min內的CPU平均負載量

  LOAD15:最近15min內的CPU平均負載量

  SPROCS:當前的服務進程數(僅使用NW 5.x版本)

  ABENDSabended的線程數(僅使用NW 5.x版本)

  UPTIME:獲取服務正常運行的時間

  LTCH:長期高速瀏覽次數的百分比

  CBUFF:高速緩存緩衝區的當前數目

  CDBUFF:當前髒緩存緩衝區數目

  DCB:當前髒緩存緩衝區佔所有緩衝區的百分比

  TCB:當前髒緩存緩衝區佔原有緩衝區的百分比

  OFILES:打開的文件數

    VMF<vol> = MB of free space on Volume <vol>

    VMU<vol> = MB used space on Volume <vol>

    VMP<vol> = MB of purgeable space on Volume <vol>

    VPF<vol> = percent free space on volume <vol>

    VKF<vol> = KB of free space on volume <vol>

    VPP<vol> = percent purgeable space on volume <vol>

    VKP<vol> = KB of purgeable space on volume <vol>

    ***P<vol> = percent not yet purgeable space on volume <vol>

    VKNP<vol> = KB of not yet purgeable space on volume <vol>

    LRUM = LRU sitting time in minutes

    LRUS = LRU sitting time in seconds

    DSDB = check to see if DS Database is open

    DSVER = NDS version

    UPRB = used packet receive buffers

    PUPRB = percent (of max) used packet receive buffers

    SAPENTRIES = number of entries in the SAP table

    SAPENTRIES<n> = number of entries in the SAP table for SAP type <n>

    TSYNC = timesync status

    LOGINS = check to see if logins are enabled

    CONNS = number of currently licensed connections

    NRMH = NRM Summary Status

    NRMP<stat> = Returns the current value for a NRM health item

    NRMM<stat> = Returns the current memory stats from NRM

    NRMS<stat> = Returns the current Swapfile stats from NRM

    NSS1<stat> = Statistics from _Admin:Manage_NSS\GeneralStats.xml

    NSS3<stat> = Statistics from _Admin:Manage_NSS\NameCache.xml

    NSS4<stat> = Statistics from _Admin:Manage_NSS\FileStats.xml

    NSS5<stat> = Statistics from _Admin:Manage_NSS\ObjectCache.xml

    NSS6<stat> = Statistics from _Admin:Manage_NSS\Thread.xml

    NSS7<stat> = Statistics from _Admin:Manage_NSS\AuthorizationCache.xml

    NLM:<nlm> = check if NLM is loaded and report version

-o, --osversion:包含服務器版本信息在返回信息裏面

-t:延遲,默認10s


三十四、check_oracle

作用:用於檢查ORACLE數據庫的狀態

用法:

check_oracle --tns <Oracle Sid or Hostname/IP address>

check_oracle --db <ORACLE_SID>

check_oracle --login <ORACLE_SID>

check_oracle --cache <ORACLE_SID> <USER> <PASS> <CRITICAL> <WARNING>

check_oracle --tablespace <ORACLE_SID> <USER> <PASS> <TABLESPACE> <CRITICAL> <WARNING>

check_oracle --oranames <Hostname>


--tns <SID/IP Address/Hostname>Oracle數據庫SIDip地址或者主機名

--db <SID>:檢查本地數據庫,通過檢測ps命令查看相關Oracle進程和檢測sgadefORACLE_SID.dbf的文件系統

--login <SID>:嘗試虛擬登錄,如果不存在ORA-01017(無效的username/password),alert告警

--cache:檢查本地庫和緩衝區緩存命中率,需要指定username/passwordSID

--tablespace:檢查在oracle_sid的本地數據庫的表空間容量,需要指定username/password

--oranames <Hostname>:檢查遠程Oracle名稱服務器


三十五、check_overcr

作用:這個插件嘗試聯繫以daemon用戶運行在遠程UNIX服務器上Over-CR”收集器以便收集所要求的系統信息。

用法:check_overcr -H host [-p port] [-v variable] [-w warning] [-c critical] [-t timeout]


-H:要檢查數主機名或ip地址

-p, --port=INTEGER:端口,默認2000

-w, --warning=INTEGERwarn閾值

-c, --critical=INTEGERcrit閾值

-v, --variable=STRING:變量

  LOAD1:最近1min內的CPU平均負載量

  LOAD5:最近5min內的CPU平均負載量

  LOAD15:最近15min內的CPU平均負載量

  DPU<filesys>:文件系統上的磁盤空間的使用百分比

  PROC<process>:運行的進程數和名稱

  NET<port>:鏈接活躍的TCP端口

  UPTIME:系統正常運行的時間,s爲單位

-t, --timeout=INTEGER:延遲,默認10s


三十六、check_ping

作用:只用ping來檢測遠程主機的鏈接統計

用法:

check_ping -H <host_address> -w <wrta>,<wpl>% -c <crta>,<cpl>% [-p packets] [-t timeout] [-4|-6]


-H:指定ping的主機

-wwarn閾值對,

-ccrit閾值對

-p, --packets=INTEGER:發送ping包數,默認5

-t, --timeout=INTEGER:延遲,默認10s


>#check_ping -H 172.16.111.115 -w 100.0,20% -c 500.0,60%

//100.0表示ping包到收到返回信息的平均時間長度,單位爲ms,百分比是表示丟包率

三十七、check_procs

作用:檢查所有的進程,如果指定的度量值超過閾值範圍之外就會生成warncrit狀態。度量值取決於進程數。搜索過濾器可以限制進程數的檢查。

用法:

check_procs -w <range> -c <range> [-m metric] [-s state] [-p ppid] [-u user] [-r rss] [-z vsz] [-P %cpu] [-a argument-array] [-C command] [-t timeout] [-v]


選項:

-wwarn閾值

-ccrit閾值

-m, --metric=TYPE:指定閾值所屬類型,有:

  PROCS:進程數,默認選擇

  VSZ:虛擬內存大小

  RSSRSS是駐留集合大小,即進程所使用的非交換區的物理內存。

  CPUCPU使用的百分比

  ELAPSED:流逝的時間

過濾器:

-s, --state=STATUSFLAGS:通過一個或者多個標籤的過濾,掃描在ps命令中存在的進程,比如:R, Z, S, RS,RSZDT等標籤。

-p, --ppid=PPID:僅掃描指定父進程的子進程

-z, --vsz=VSZ:僅掃描使用VSZ高過指定閾值的進程

-r, --rss=RSS:僅掃描使用RSS高過指定閾值的進程

-P, --pcpu=PCPU:僅掃描使用CPU百分比高過指定閾值的進程

-u, --user=USER:僅掃描指定用戶打開和使用的進程

-a, --argument-array=STRING:只掃描參數和字符串相匹配的進程

--ereg-argument-array=STRING:只掃描參數和正則表達式相匹配的進程

-C, --command=COMMAND:只有掃描精確匹配的命令


三十八、check_real

作用:這個插件測試了指定主機上的REAL服務。這個插件將嘗試打開一個RTSP連接去鏈接指定主機。成功鏈接返回OK狀態,拒絕鏈接或者鏈接超時返回Crit狀態,鏈接成功但不能正確反饋信息返回warn狀態。

用法:check_real -H host [-e expect] [-p port] [-w warn] [-c crit] [-t timeout] [-v]


-H, --hostname=ADDRESS:主機名、ip地址或套接字

-e, --expect=STRING:希望顯示在返回信息的第一行,默認爲RTSP/1.

-p, --port=INTEGER:指定鏈接的端口,默認爲554

-w, --warning=DOUBLE:導致warn狀態的響應時間

-c, --critical=DOUBLE:導致crit狀態的響應時間

-t, --timeout=INTEGER:延時,默認10s

-v:詳細信息


三十九、check_rpc

作用:調用命令rpcinfo -H host -C rpc_command去檢測一個rpc服務的註冊過程和運行狀態

用法:check_rpc -H host -C rpc_command [-p port] [-c program_version] [-u|-t] [-v]


-H:指定提供rpc服務的主機,主機名、ip地址或套接字

-C:程序名稱或數字

-c:檢測版本,236對應v2v3v6,可以同時指定多個

[-u | -t]:指定udp還是tcp


四十、check_sensors

作用:這個插件用於檢查使用lm_sensors包的硬件的狀態

用法:check_sensors [--ignore-fault]

四十一、check_smtp

作用:這個插件將嘗試打開指定主機的SMTP連接

用法:

check_smtp -H host [-p port] [-4|-6] [-e expect] [-C command] [-f from addr][-A authtype -U authuser -P authpass] [-w warn] [-c crit] [-t timeout] [-q] [-F fqdn] [-S] [-D warn days cert expire[,crit days cert expire]] [-v]


-H, --hostname=ADDRESS:主機名、ip地址或套接字

-p, --port=INTEGER:指定端口,默認25

-4|-6:使用ipv4還是ipv6鏈接

-e, --expect=STRING:希望顯示在返回信息的第一行,默認爲220

-C, --command=STRINGSMTP命令,可以重複使用

-R, --command=STRING:希望反饋給指定命令的參數

-f, --from=STRING:包含在MAIL郵件發送命令中的始發ip地址信息,要求Exchange 2000

-A, --authtype=STRING:選擇SMTP的驗證類型,默認沒有,僅支持登錄

-U, --authuser=STRING:指定用於登錄的的用戶名

-P, --authpass=STRING:用戶密碼

-w, --warning=DOUBLE:導致warn狀態的響應時間

-c, --critical=DOUBLE:導致crit狀態的響應時間

-t, --timeout=INTEGER:延時,默認10s

-q, --ignore-quit-failure:單發送QUIT信息給服務器時忽略失敗信息

-F, --fqdn=STRINGFQDN used for HELO

-S, --starttls:鏈接時使用STARTTLS安全鏈接

-D, --certificate=INTEGER[,INTEGER]:一個證書有效的最短天數,第一個天數爲warn天數,第二個天數爲crit天數



四十二、check_snmp

作用:通過SNMP協議查看遠程機器狀態和獲取系統信息

用法:

check_snmp -H <ip_address> -o <OID> [-w warn_range] [-c crit_range] [-C community] [-s string] [-r regex] [-R regexi] [-t timeout] [-e retries] [-l label] [-u units] [-p port-number] [-d delimiter]

[-D output-delimiter] [-m miblist] [-P snmp version] [-L seclevel] [-U secname] [-a authproto]

[-A authpasswd] [-x privproto] [-X privpasswd]


-H:指定的主機名、ip地址或套接字

-o, --oid=OID(s):指定需要查詢的對象標識符(S)或SNMP變量的值

-w, --warning=THRESHOLD(s)warn閾值範圍

-c, --critical=THRESHOLD(s)crit閾值範圍

-C, --community=STRINGSNMP通行社區,默認public

-s, --string=STRING:如果oid信息和-s指定的字符串匹配,則返回OK狀態

-r, --ereg=REGEX:如果oid信息和-r指定的正則表達式相匹配,返回OK狀態

-R, --eregi=REGEX:匹配正則表達式時,不區分大小寫,功能作用和-r一樣

-t, --timeout=INTEGER:鏈接超時,默認10s

-e, --retries=INTEGER:重試請求鏈接數

-l, --label=STRING:插件輸出的前綴標籤

-u, --units=STRING:用於輸出數據的單位標籤,如sec.‘

-p, --port=INTEGER:指定端口,默認161

-d, --delimiter=STRING:解析返回的數據時使用的分隔符,默認=“等號。在分隔符右邊的任何數據被認爲是應該用來評價數據。

-D, --output-delimiter=STRING:指定分隔符將輸出多個OID的請求分開

-m, --miblist=STRING:需要加載MIBS表。使用數字的OID默認爲none,使用符號的OID默認爲ALL

-P, --protocol=[1|2c|3]:指定SNMP協議版本

-L, --seclevel=[noAuthNoPriv|authNoPriv|authPriv]SNMPv3的安全級別

-U, --secname=USERNAMESNMPv3的用戶名指定方式

-a, --authproto=[MD5|SHA]SNMPv3 驗證協議

-A, --authpassword=PASSWORDSNMPv3的用戶驗證密碼

-x, --privproto=[DES|AES]SNMPv3密碼的加密方式,DESAES,默認DES

-X, --privpasswd=PASSWORDSNMPv3隱私密碼


四十三、check_ssh

作用:使用指定的服務器地址和端口鏈接SSH服務器

用法:check_ssh [-4|6] [-t <timeout>] [-r <remote version>] [-p <port>] <host>


-r, --remote-version=STRING:指定版本,如果遠程OpenSSH版本不匹配則warn告警,如:OpenSSH_3.9p1

-p:指定端口,默認22


四十四、check_swap

作用:檢查本地機子的交換空間

用法:

check_swap [-av] -w <percent_free>% -c <percent_free>%

check_swap [-av] -w <bytes_free> -c <bytes_free>


-a:進行所有交換分區的比較,一個接着一個

-wwarn閾值,交換分區的剩餘使用量的百分比或者剩餘容量大小(Bytes)

-ccrit閾值,交換分區的剩餘使用量的百分比或者剩餘容量大小(Bytes)


四十五、check_time

作用:該插件將檢查指定主機上的時間

用法:check_time -H <host_address> [-p port] [-u] [-w variance] [-c variance] [-W connect_time] [-C connect_time] [-t timeout]


-H, --hostname=ADDRESS:主機名,ip地址或套接字

-p, --port=INTEGER:指定端口,默認37

-u, --udp:使用udp協議去鏈接

-w, --warning-variance=INTEGER:時間差異多少秒將告警warn,單位sec.

-c, --critical-variance=INTEGER:時間差異多少秒將告警crit,單位sec.

-W, --warning-connect=INTEGERwarn狀態響應時間,單位sec.

-C, --critical-connect=INTEGERcrit狀態響應時間,單位sec.

-t, --timeout=INTEGER:延時10s


四十六、check_ups

作用:這個插件用於測試指定主機上的UPS服務。UPS工具官網下載:www.networkupstools.org。網絡UPS工具必須運行這個插件來工作。這個插件試圖確定一個在本地或遠程主機(不間斷電源)的UPS的狀態。如果該UPS是在線的或校準,該插件將返回一個確定的狀態。如果電池是正在使用本機的則告警warn。如果該UPS掛掉或者電池過低則告警crit狀態。如果遠程主機有多個UPS正在運行,需要結合--ups指定相應的ups。這個插件要求在被檢測的遠程主機上安裝UPSD發行版本軟件工具包。

用法:check_ups -H host -u ups [-p port] [-v variable] [-w warn_value] [-c crit_value] [-to to_sec] [-T]


-H, --hostname=ADDRESS:主機名,ip地址或套接字

-u, --ups=STRINGUPS服務器的名稱

-p, --port=INTEGER:指定鏈接端口,默認3493

-v, --variable=STRING:變量檢查,有效的變量有:LINETEMPBATTPCTLOADPCT

-w, --warning=DOUBLEwarn狀態響應時間,單位sec.

-c, --critical=DOUBLEcrit狀態響應時間,單位sec.

-T, --temperature:攝氏溫度的輸出


四十七、check_users

作用:這個插件用於檢測當前用戶的登錄數量,並且當用戶數量超過設定的閾值時會生成響應的告警狀態。

用法:check_users -w <users> -c <users>


四十八、check_wave

作用:檢測信號強度

用法:check_wave -H <host> [-w <warn>] [-c <crit>]


-w:當信號強度達到一定值時告警warn

-c:當信號強度達到一定值時告警crit


四十九、negate

作用:用於否定一個插件的狀態,當一個插件的返回狀態爲OK時,經nagate處理變成critical狀態,反之亦然。

用法:negate [-t timeout] [-Towcu STATE] [-s] <definition of wrapped plugin>


-t:延時,默認11s

-T, --timeout-result=STATUSNegate超時的自定義結果;見下面的狀態定義

-o, --ok=STATUS

-w, --warning=STATUS

-c, --critical=STATUS

-u, --unknown=STATUS

如果沒有指定,okcirt將被置換


-s, --substitute:替代輸出文本。只能用大寫字母替換文本。將替代輸出的文本替換成大寫


例子:

>#negate /usr/local/nagios/libexec/check_ping -H host

>#negate -w OK -c UNKNOWN /usr/local/nagios/libexec/check_procs -a 'vi negate.c'


五十、urlize

作用:這個插件將另一個命令(插件)的文本輸包裝在HTML <A>標籤中,從而該子插件的輸出作爲一個可點擊的鏈接顯示在Nagios狀態屏幕。這個插件用於返回調用的插件的狀態。

用法:urlize <url> <plugin> <arg1> ... <argN>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章