扩展

http 请求方法以及返回状态码的类型和含义

服务器状态码

1、200 OK表示从客户端发来的请求在服务器端被正常处理了。2、204 No Content 该状态码代表服务器接收的请求已成功处理,但在返回的响应报文中不含实体的主体部分。3、206 Partial Content 该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求。4、301 Moved Permanently 永久性重定向。该状态码表示请求的资源已被分配了新的URL,以后应使用资源现在所指的URL。5、302 Found 临时性重定向。该状态码表示请求的资源已被分配了新的URL ,希望用户(本次)能使用新的URL访问。6、303 See Other 该状态码表示由于请求对应的资源存在着另一个URL,应使用GET方法定向获取请求的资源。7、304 Not Modified 该状态码表示客户端发送附带条件的请求时,服务端允许请求访问资源。8、307 Temporary Redirect 临时重定向。不会从POST变成GET。9、400 Bad Request 表示请求报文中存在语法错误。10、401 Unauthorized 表示发送的请求需要有通过HTTP认证(BASIC、DIGEST认证)的认证信息。11、403 Forbidden 表示对请求资源的访问被服务器拒绝了。12、404 Not Found 服务器上没有请求的资源。13、500 Internal Server Error 表明服务器端在执行请求时发生了错误。14、503 Service Unavailable 表明服务器暂时维护等,无法处理请求。

目的:

批量监控业务url的返回码,通过返回码的监控来判断业务的好坏。

解决方案:

使用zabbix的discovery功能来实现监控。
1、安装zabbix,跳过
2、通过脚本实现:
cd /usr/local/zabbix/etc/zabbix_scripts.d/
vim web_site_code_status.sh

#!/bin/bash
source /etc/profile >/dev/null 2>&1
WEB_SITE_discovery () {WEB_SITE=($(grep -v "^#" /usr/local/zabbix/etc/zabbix_script.d/WEBURL.txt))printf '{\n'printf '\t"data":[\n'
for((i=0;i<${#WEB_SITE[@]};++i))
{num=$(echo $((${#WEB_SITE[@]}-1)))if [[ "$i" != ${num} ]]thenprintf "\t\t{ \n"printf "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$i]}\"},\n"elseprintf "\t\t{ \n"printf "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$num]}\"}]}\n"fi
}
}web_site_code () {#下面注释的是也可以使用域名+端口号
#        host=$(echo "$1"|awk -F "/" '{print $3}')
#   port=$(echo "$1"|awk -F "/" '{print $3}'|awk -F':' '{print $2}')
#   if [[ -z $port ]]
#   then
#       ntlocal="127.0.0.1"
#   else
#       ntlocal="127.0.0.1:$port"
#   fi
#        http_uri=$(echo "$1"|awk -F "/" '{for(i=4;i<=NF;i++) printf "/" $i;printf "\n"}')
#        /usr/bin/curl -H "Host:$host" -o /dev/null -s -w %{http_code} $ntlocal${http_uri}/usr/bin/curl -I "$1" 2> /dev/null | grep 'HTTP' | awk '{print $2}'
}case "$1" inweb_site_discovery)WEB_SITE_discovery;;web_site_code)web_site_code $2;;*)echo "Usage:$0 {web_site_discovery|web_site_code URL}";;
esac

3、创建url列表:vim WEBURL.txt

http://www.baidu.com
www.df.com
www.sdfdsfa.com
www.sdfsd.cn

注意:这里也可以在后面加端口号
4、在zabbix_agentd.conf中添加相关的key

Include=/data/usr/local/zabbix/etc/zabbix_agentd.conf.d/*
UnsafeUserParameters=1
UserParameter=web.site.discovery,/data/usr/local/zabbix/scripts/web_site_code_status.sh web_site_discovery
UserParameter=web.site.code[*],/data/usr/local/zabbix/scripts/web_site_code_status.sh web_site_code $1


或者:
在zabbix_agentd.conf.d目录下创建文件,

web_site_discovery.confUserParameter=web.site.discovery,/usr/local/zabbix/etc/zabbix_script.d/web_site_code_status web_site_discovery
UserParameter=web.site.code[*],/usr/local/zabbix/etc/zabbix_script.d/web_site_code_status web_site_code $1

5、重启agent就可以实现了。
systemctl restart zabbix-agent
6、zabbix仪表板配置:

先创建一个模板
7、设置自动发现规则,键值为发现url的keys

8、设置监控原型,键值为httpcode的keys,后面括号里是发现的url列表的前缀说明,如图:


9、设置触发器类型:

10、设置图形原型:

11、到此为止全部完成,等待看图

zabbix自动发现url以及对http返回状态码监控实现相关推荐

  1. zabbix自动发现,端口 url检测

    一,自动发现 1,开启自动发现 配置自动发现 修改自动发现的网段 启用自动发现 2.配置自动发现的动作 配置自动发现的动作 添加动作的IP地址 添加自动发现的操作 启用动作 3,检验 二,自动注册 1 ...

  2. 利用zabbix自动发现监控mongo数据库

    但如果公司使用mongo的端口如果不一致的话,那建议使用zabbix的自动发现的功能,自动发现mongo监听的端口,并对它进行相关数据的收集. 先看一下效果图, 教你如何利用zabbix自动发现监控m ...

  3. 5 zabbix 添加host_运维监控实战篇,zabbix自动发现和自动注册图文详解

    一.介绍 自动发现 Zabbix自动发现就是为了解决批量监控而设计的功能之一,什么是自动发现呢,简单来说就是Zabbix Server端可以基于设定的规则,自动批量的去发现局域网若干服务器,并自动把服 ...

  4. zabbix自动发现oracle表空间并监控其使用率

    监控需求 Oracle表空间使用率实时监控,当表空间使用率达到95%时触发告警机制.Oracle表空间分为系统默认表空间和用户创建的表空间,而表空间又有自动扩展和非自动扩展两种类型,用户(DBA)在创 ...

  5. zabbix自动发现规则实现批量监控主机的TCP监听端口

    检查服务器所有监听端口和其对应的服务名称的脚本可以参考https://blog.zzyyxx.top/blog/post/gordy/acf57f04f9e1  现在准备加入zabbix自动发现规则并 ...

  6. zabbix自动发现监控磁盘(iops和读写量)

    2019独角兽企业重金招聘Python工程师标准>>> 对于磁盘有个iops的概念比较奇怪,想监控起来看下,利用zabbix的自动发现把每个磁盘的iops监控起来,思路:自动发现所有 ...

  7. zabbix自动发现主机并加入组绑定模板

    在被监控主机多的情况下,怎样将这些主机加入zabbix server进行监控呢?下面将介绍下zabbix自动发现功能 1.创建自动发现规则 创建"规则名称,配置ip范围及检查方式" ...

  8. zabbix 自动发现规则 触发器_运维监控实战篇,zabbix自动发现和自动注册图文详解...

    一.介绍 自动发现 Zabbix自动发现就是为了解决批量监控而设计的功能之一,什么是自动发现呢,简单来说就是Zabbix Server端可以基于设定的规则,自动批量的去发现局域网若干服务器,并自动把服 ...

  9. zabbix 自动发现

    转自:https://blog.csdn.net/yyy72999/article/details/76065374 zabbix自动发现/zabbix自动发现规则 置顶2017年07月25日 14: ...

最新文章

  1. redis php数据插入失败,redis插入数据,恢复数据测试(禁止淘汰策略下恢复大于redis内存限制数据情况)...
  2. ubuntu ifconfig_Ubuntu 设置固定 IP 最简单的方法!
  3. Zookeeper系列四:Zookeeper实现分布式锁、Zookeeper实现配置中心
  4. 三星Galaxy S11+电池谍照曝光:5000mAh超大容量 5G 不虚
  5. Mybatis_day4_Mybatis的注解开发
  6. 走向.NET架构设计—第四章—业务层分层架构(中篇)
  7. MATLAB均值滤波
  8. Linux部署django项目最全,linux部署django项目流程(全)
  9. android webview 文件下载,Android编程使用WebView实现文件下载功能的两种方法
  10. 【转载】通过搜狗站长平台手动向搜狗搜索提交死链
  11. 微信小程序加载闪屏,黑白屏,闪退问题
  12. 现货跌期货涨(现货大涨期货就大涨吗)
  13. 蓝桥杯——算法训练——数字三角形
  14. c语言程序中x>>=1是什么意思??
  15. 机械臂速成小指南(九):正运动学分析
  16. 高架桥隔音墙厂家价格@平衡生命
  17. ENVI shp转roi并对栅格进行掩膜提取
  18. 【学习笔记】数学小厦
  19. win 7 蓝屏、清理注册表、杀毒软件
  20. [转]DOTween教程☀️DOTween的使用教程

热门文章

  1. 数据结构排序系列详解之五 简单选择排序
  2. 设计模式原则之三:接口隔离原则
  3. android 编译系统make文件
  4. php清空单例属性_PHP单例模式--典型的三私一公
  5. 【AngularJS】—— 3 我的第一个AngularJS小程序
  6. 彻底搞懂单例模式如何安全的实现
  7. Vultr 修改 Root 密码
  8. KNN算法之图像处理二
  9. JAVA的array中indexOf
  10. MySQL必知必会:数据插入(Insert)