[转]nagios自带插件check_http详解及用法实例

作用:

检测指定主机上的http服务,可以是http或者https,可以重定向,查找字符串,正则表达式,检测链接次数,证书过期时间。

用法:

check_http?-H?<vhost>?|?-I?<IP-address>?[-u?<uri>]?[-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]?[–sni]?[-C?<age>]?[-T?<content-type>]

[-j?method]

选项:

-H?和-I?必须指定一个或者两个都写

-h,?–help

显示帮助信息

-V,?–version

打印版本信息

-H,?–hostname=ADDRESS

主机名,支持虚拟主机,也可以添加端口。

-I,?–IP-address=ADDRESS

使用IP地址或者名字(直接使用数字的IP可以不适用dns解析)

-p,?–port=INTEGER

Port?number?(default:?80)

检测端口,默认是80

-4,?–use-ipv4

-6,?–use-ipv6

使用ipv4或者ipv6连接

-S,?–ssl

通过ssl链接

–sni

启用SSL/TLS支持主机名扩展

-C,?–certificate=INTEGER

证书有效地时间

-e,?–expect=STRING

用“,”分割的字符串列表,预期至少有一个出现在服务响应的第一列。

服务器响应的第一行:是状态行,由协议版本,数字状态码,和相关的原因文本短语组成。

-s,?–string=STRING

在返回的页面中出现的字符串

-u,?–url=PATH

访问资源的路径,默认是/

-P,?–post=STRING

URL?encoded?http?POST?data

URL编码的http?post?数据

-j,?–method=STRING??(for?example:?HEAD,?OPTIONS,?TRACE,?PUT,?DELETE)

设置http方法,例如:OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,CONNECT.

-N,?–no-body

只读取文件头部

-M,?–max-age=SECONDS

文档过期时间

-T,?–content-type=STRING

指定POST数据的内容类型的头部媒体类型

Content-Type指定了下层数据的媒体类型

-l,?–linespan

允许正则表达式跨行?必须在-R或者-r前面

-r,?–regex,?–ereg=STRING

对正则表达式字符串搜索页面

-R,?–eregi=STRING

对于不区分大小写的搜索页面的正则表达式的字符串

–invert-regex

如果搜索到就返回critical,如果没有就返回OK,和-r/-R结合。不可以和-s结合使用。

-a,?–authorization=AUTH_PAIR

用户名密码?基于网站的基本认证

-b,?–proxy-authorization=AUTH_PAIR

代理服务器的用户名密码

-A,?–useragent=STRING

在http头部发送的字符串,“用户代理”

-k,?–header=STRING

Any?other?tags?to?be?sent?in?http?header.?Use?multiple?times?for?additional?headers

任何其他标记中被发送http头

-L,?–link

包装输出html连接

-f,?–onredirect=<ok|warning|critical|follow|sticky|stickyport>

如何处理重定向页面

-m,?–pagesize=INTEGER<:INTEGER>

页面大小需要??最小:最大(单位:bytes)

-w,?–warning=DOUBLE

告警响应时间

-c,?–critical=DOUBLE

发送危险警告的响应时间

-t,?–timeout=INTEGER

连接超时时间

-v,?–verbose

显示命令行调试的细节,默认被nagios截断。

注意:

这个插件将试图打开一个HTTP连接的主机,成功连接则返回state_ok;拒绝或者连接超时,则返回STATE_CRITICAL,其他错误则返回STATE_UNKNOWN.成功连接,但是返回信息不正确则发送STATE_WARNING.如果访问一个虚拟主机服务,则需要在主机头使用全域名作为【host_name】。

实例:

1、-u测试页面?是否可以到开?可以用相对路径和绝对路径?

-H?-I?有一个就可以

相对路径

#./check_http?-H?www.****.com?-u?/url1/url2/index.html

绝对路径

#./check_http?-H?www.****.com?-u?http://www.****.com/url1/url2/index.html

端口,默认就是80

#./check_http?-H?www.****.com?-p?80?-u?http://www.****.com/url1/url2/index.html

使用数字IP

#./check_http?-I?xxx.xxx.xxx?-u?/url1/url2/index.html

2、加密传输??-S?

#?./check_http?-H?”log.gw.com.cn”??-S

Connection?refused

HTTP?CRITICAL?-?Unable?to?open?TCP?socket

3、测试服务器的http版本协议或者状态返回码???-e?

#?./check_http?-I?114.80.136.138?-k?”HOST:log.gw.com.cn”?-e?”HTTP/1.1″

HTTP?OK:?Status?line?output?matched?”HTTP/1.1″?-?3088?bytes?in?0.206?second?response?time?|time=0.205964s;;;0.000000?size=3088B;;;0

#?./check_http?-I?114.80.136.138?-k?”HOST:log.gw.com.cn”?-e?”HTTP/1.0″

HTTP?CRITICAL?-?Invalid?HTTP?response?received?from?host:?HTTP/1.1?200?OK

4、搜索返回的页面中的内容?-s?

#?./check_http?-I?114.80.136.138?-k?”HOST:log.gw.com.cn”?-s?”Piwik”

HTTP?OK:?HTTP/1.1?200?OK?-?3088?bytes?in?0.196?second?response?time?|time=0.196134s;;;0.000000?size=3088B;;;0

$?curl?114.80.136.138?-H?”host:log.gw.com.cn”?显示的页面中出现的“Piwik”

5、以用户名密码访问一个需认证的页面?-a;?

#?./check_http?-I?10.15.62.38?-u?/nagios/

HTTP?WARNING:?HTTP/1.1?401?Authorization?Required?-?726?bytes?in?0.019?second?response?time?|time=0.019393s;;;0.000000?size=726B;;;0

#?./check_http?-I?10.15.62.38?-u?/nagios/??-a?nagiosadmin:nagios

HTTP?OK:?HTTP/1.1?200?OK?-?917?bytes?in?0.066?second?response?time?|time=0.066009s;;;0.000000?size=917B;;;0

6、连接超时的时间?-t;

#?./check_http?-I?10.15.62.38?-t?1

HTTP?OK:?HTTP/1.1?200?OK?-?38056?bytes?in?0.017?second?response?time?|time=0.017460s;;;0.000000?size=38056B;;;0

7、定义warning和critical的告警阀值:-w和-c;

8、检测返回的页面大小?-m?;?

#?./check_http?-H?”log.gw.com.cn”?-I?114.80.136.151??-m?10:400

HTTP?WARNING:?HTTP/1.1?200?OK?-?page?size?3128?too?large?-?3128?bytes?in?0.223?second?response?time?|time=0.223207s;;;0.000000?size=3128B;10;0;0

返回的页面是3128?bytes,超过了最大限制400,发出了报警。

9、检测证书是否过期?-C

#check_http?-H?www.verisign.com?-C?14

证书过期时间大于14天?返回OK状态;证书还有0-14天过期,返回警告信息;证书已经过期,返回紧急状态。

10、设置返回的http的头部信息?-A?

#?./check_http?-H?”log.gw.com.cn”??-v

GET?/?HTTP/1.1

User-Agent:?check_http/v1.4.16?(nagios-plugins?1.4.16)

Connection:?close

Host:?log.gw.com.cn

#?./check_http?-H?”log.gw.com.cn”??-v?-A?”check_http”

GET?/?HTTP/1.1

User-Agent:?check_http

Connection:?close

Host:?log.gw.com.cn

11、只显示头部信息,不显示页面信息。?-N

#?./check_http?-H?”log.gw.com.cn”?-I?114.80.136.151?-N

HTTP?OK:?HTTP/1.1?200?OK?-?1460?bytes?in?0.219?second?response?time?|time=0.218590s;;;0.000000?size=1460B;;;0

#?./check_http?-H?”log.gw.com.cn”?-I?114.80.136.151

HTTP?OK:?HTTP/1.1?200?OK?-?3128?bytes?in?0.220?second?response?time?|time=0.220288s;;;0.000000?size=3128B;;;0

12、检测文档修改时间?-M?

#?./check_http?-I?114.80.136.138?-k?”HOST:log.gw.com.cn”?-M?1

HTTP?CRITICAL:?HTTP/1.1?200?OK?-?Document?modification?date?unknown?-?3088?bytes?in?0.197?second?response?time?|time=0.196606s;;;0.000000?size=3088B;;;0?文档修改时间未知

本文出自 “单人旅行” 博客,请务必保留此出处http://5122542.blog.51cto.com/5112542/1080481

[转]nagios自带插件check_http详解及用法实例
Scroll to top