11.3.1 Zabbix5.0: 通监控网站的URL来监控网站的存活(web监测)
11.3.1 Zabbix5.0: 通监控网站的URL来监控网站的存活(web监测)
通过Zabbix来监控网站URL地址是否正常。
无需在被监控的网站部署agent端,也就是说只要网络可达,便可以监控任意网址URL是否正常。
常见HTTP状态码(200、301、302、500等)
对网站管理工作者来说有个词不陌生,HTTP状态码,它是用以表示网页服务器HTTP响应状态的3位数字代码。状态码的第一个数字代表了响应的五种状态之一。
1XX系列:指定客户端应相应的某些动作,代表请求已被接受,需要继续处理。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。
2XX系列:代表请求已成功被服务器接收、理解、并接受。这系列中最常见的有200、201状态码。
200状态码:表示请求已成功,请求所希望的响应头或数据体将随此响应返回。
201状态码:表示请求成功并且服务器创建了新的资源,且其 URI 已经随Location 头信息返回。假如需要的资源无法及时建立的话,应当返回 '202 Accepted'
202状态码:服务器已接受请求,但尚未处理
3XX系列:代表需要客户端采取进一步的操作才能完成请求,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。这系列中最常见的有301、302状态码。
301状态码:被请求的资源已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。
302状态码:请求的资源临时从不同的URI响应请求,但请求者应继续使用原有位置来进行以后的请求
304自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。 如果网页自请求者上次请求后再也没有更改过,您应将服务器配置为返回此响应(称为 If-Modified-Since HTTP 标头)。
4XX系列:表示请求错误。代表了客户端看起来可能发生了错误,妨碍了服务器的处理。常见有:401、404状态码。
401状态码:请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
403状态码:服务器已经理解请求,但是拒绝执行它。与401响应不同的是,身份验证并不能提供任何帮助,而且这个请求也不应该被重复提交。
404状态码:请求失败,请求所希望得到的资源未被在服务器上发现。没有信息能够告诉用户这个状况到底是暂时的还是永久的。假如服务器知道情况的话,应当使用410状态码来告知旧资源因为某些内部的配置机制问题,已经永久的不可用,而且没有任何可以跳转的地址。404这个状态码被广泛应用于当服务器不想揭示到底为何请求被拒绝或者没有其他适合的响应可用的情况下。
5xx系列:代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。常见有500、503状态码。
500状态码:服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器的程序码出错时出现。
503状态码:由于临时的服务器维护或者过载,服务器当前无法处理请求。通常,这个是暂时状态,一段时间会恢复
了解基本SEO状态码,是SEO优化人员必备知识。HTTP状态码是服务器和客户端之间交流信息的语言。通过查看网站日志的HTTP码,我们可以清楚查看搜索引擎在网站的爬取情况。
1、创建应用集(此步骤可忽略,非必须)
在主机中创建应用集(该步骤不是必须的),应用集名称自己起
创建Web场景
点击Web场景,在右上角创建Web场景
名称:自行定义
应用集:如有应用集则下拉选择,或新建
更新间隔:默认1分钟,我这里设置成了30s,结合使用情况自行调整
尝试次数:默认1次,我这里设置2次
客户端:可自行设置
注意:配置完场景后,继续配置“步骤”,否则无法添加
web方案步骤
名称:同样是自定义
URL:即你要监听的URL地址
勾选跟随跳转,如当前监控URL地址存在页面跳转,http至https也算,则会报错步骤失败,失败原因是因为301,所以我这里推荐勾选上跟随跳转。
要求的字串:我这里配置了title内容
状态码:200
所有未提及的参数均保持默认,未提及的配置参数可自行去官网查看,按照本文配置流程的话,正常URL监控是够用了
触发器报警
如果你是按照以上配置,那么在“触发器”创建的时候,会看到以下五个监控项
{Zabbix server:web.test.rspcode[WebRUL,10.11.160.2:8888].last(,5)}<>200
{Zabbix server:web.test.rspcode[WebRUL,10.11.160.2:8888].last(,5)}=200
查看是否有数据:
测试:把10.11.160.2网站关闭
默认的仪表板并不出错相关的信息:
解决:把Web监测界面调出来即可。
再次测试:把10.11.160.2网站关闭,查看结果
测试不关闭网站,但修改网站的标题,看看是否也会有触发:测试结果会触发
<!DOCTYPE
HTML>
<html>
<head>
<title>珠海珠海cjh个人博客</title>
<meta name="description" content=""
/>
</head>
<body>
珠海珠海cjh个人博客
</body>
</html>
原网站:
修改后的网站:
结果:已触发
web监控已经告警,有错误提示,但是没有触发告警
zabbix-servers用户组下的监控触发器已经触发,即有故障发生了,但是在仪表盘问题中不显示
原因:
URL 因网络问题无法访问,zabbix 没有采集到http状态码或者采集到的状态码为0,所有无法触发告警。
3.0 版本遇到无法访问的URL,会返回一个0 ,但是4.4 版本没有返回数据。
所以修改触发器,返回的状态如果不是200或者为0,则直接报警。
{Zabbix server:web.test.rspcode[WebRUL,10.11.160.2:8888].last(,5)}<>200 or {Zabbix server:web.test.time[WebRUL,10.11.160.2:8888,resp].last()}<>0
https://www.zabbix.com/documentation/5.0/zh/manual/web_monitoring/items
例子 1
要创建“Web 场景失败”触发器,可以定义触发器表达式:
{host:web.test.fail[Scenario].last()}<>0
确保将“Scenario”替换为场景的真实名称。
陈解决思路:如果没有收到数据,则直接判断为故障。如,下载速度为0,则可能是网站已经出故障了。
{Zabbix server:web.test.rspcode[WebRUL,10.11.160.2:8888].last(,5)}<>200
or {Zabbix server:web.test.time[WebRUL,10.11.160.2:8888,resp].last()}=0
or {Zabbix server:web.test.in[WebRUL,10.11.160.2:8888,bps].last()}=0
or {Zabbix server:web.test.in[WebRUL,,bps].last()}=0
测试:
恢复后:
Zabbix5(列表、list、全)zabbixlist
http://www.zh-cjh.com/wenzhangguilei/722.html
文章归类、所有文章列表、LISTLIST
http://www.zh-cjh.com/wangzhangonggao/2195.html
2、本资源基本为原创,部分来源其他付费资源平台或互联网收集,如有侵权请联系及时处理。
3、本站大部分文章的截图来源实验测试环境,请不要在生产环境中随意模仿,以免带来灾难性后果。
转载请保留出处: www.zh-cjh.com珠海陈坚浩博客 » 11.3.1 Zabbix5.0: 通监控网站的URL来监控网站的存活(web监测)
作者: cjh
手机扫一扫,手机上查看此文章: |
一切源于价值!
其他 模板文件不存在: ./template/plugins/comment/pc/index.htm