使用curl探测http接口
curl http://www.baidu.com #正常访问
echo $?
curl -m选项设置超时时间
curl http://www.baidu.com:82 #响应超时,卡住
curl -m 2 http://www.baidu.com:82 #设置2s超时
echo $?
curl -s选项静默输出,不会输出下载速度
curl -s www.baidu.com >/tmp/aaa
curl -v输出接口的请求和响应详细信息
curl -m 2 -v http://www.baidu.com
探测http接口有以下几个方向
curl的返回值可判断接口是否假死或者不通,检测不出异常的响应,假如服务器响应5开头的状态码
根据响应状态码来监控
根据响应的内容监控
所有url写入配置文件/tmp/urls
www.baidu.com
www.baidu.com:82
www.baidu.com:81
127.0.0.1
127.0.0.1:81
批量探测http接口
for one_url in $(cat /tmp/urls);do
curl -s -m 2 $one_url >/dev/null
if [ $? -eq 0 ];then
echo "$one_url is normal"
else
echo "$one_url is unnormal"
fi
done