温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Shell怎么监控网站URL运行情况

发布时间:2022-02-17 15:34:50 来源:亿速云 阅读:145 作者:iii 栏目:开发技术

今天小编给大家分享一下Shell怎么监控网站URL运行情况的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

Shell怎么监控网站URL运行情况

wget命令

wget命令的参数非常多,至少也有数十个, 但是运维工作中常用的并不多,老男孩老师把最有用的列表如下。

wget命令   下载网页或文件
--spider   模拟爬虫的行为去访问网站,但不会下载网页
-q, --quiet   安静的访问,禁止输出,类似-o /dev/null功能
-o, --output-file=FILE   记录输出到文件
-T, --timeout=SECONDS   访问网站的超时时间
-t, --tries=NUMBER   当网站异常时重试网站的次数

实际监控方法如下:利用wget命令返回值确定网站是否正常

  [root@oldboy ~]# wget --spider -T 5 -q -t 2 www.oldboyedu.com  [root@oldboy ~]# echo $? #

  0

curl命令

curl命令的参数比wget的参数还多,但运维中常用的参数也并不多,因此也是列表如下:

curl命令   访问网站url
-I/--head   显示响应头信息
-m/--max-time   访问超时的时间
-o/--output   记录访问信息到文件
-s/--silent   沉默模式访问,就是不输出信息
-w/--write-out   以固定特殊的格式输出,例如:%{http_code},输出状态码

实际监控方法

1、利用curl命令返回值确定网站是否正常

  [root@oldboy ~]# curl -s -o /dev/null www.oldboyedu.com  [root@oldboy ~]# echo $?  0

2、获取命令执行后的状态码(200表示正常)

  [root@oldboy ~]# curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null www.baidu.com  200

3 开发Shell脚本实现监控指定的URL是否正常

  解答:

  方法1:

  #!/bin/sh  function usage() { #

  echo $"usage:$0 url"  exit 1

  }

  function check_url() { #

  wget --spider -q -o /dev/null --tries=1 -T 5 $1  #

  #curl -s -o /dev/null $1 #

  if [ $? -eq 0 ]

  then  echo "$1 is yes."  exit 0

  else  echo "$1 is fail."  exit 1

  fi  }

  function main() { #

  if [ $# -ne 1 ] #

  then  usage

  fi  check_url $1 #

  }

  main $* #

实践结果

  [root@oldboy ~]# sh checkurl.sh www.oldboyedu.com  www.oldboyedu.com is ok

  [root@oldboy ~]# sh checkurl.sh www.baidu.com  www.baidu.com is ok

  [root@oldboy ~]# sh checkurl.sh 10.0.0.8  10.0.0.8 is fail

  方法2:

  [root@oldboy ~]# cat checkurl1.sh  #!/bin/bash  ##############################################################  # File Name: checkurl.sh  # Version: V1.0  # Author: oldboy  # Organization: www.oldboyedu.com  # Created Time : 2018-06-07 18:29:19  ##############################################################  usage(){

  echo "Usage:$0 url"  exit 1

  }

  checkurl(){

  local num=`curl -I -m 5 -s -w "%{http_code}\n" -o /dev/null|grep 200|wc -l`

  if [ $num -eq 1 ] #

  then  echo "$1 is ok"  else  echo "$1 is fail"  fi  }

  main(){

  if [ $# -ne 1 ]

  then  usage

  fi  checkurl $1  }

  main $*

实践结果

  [root@oldboy ~]# sh checkurl.sh www.oldboyedu.com  www.oldboyedu.com is ok

  [root@oldboy ~]# sh checkurl.sh www.baidu.com  www.baidu.com is ok

  [root@oldboy ~]# sh checkurl.sh 10.0.0.8  10.0.0.8 is fail

如果网友能否读懂本文,相信以后再写监控网站URL的脚本就会很轻松了。

以上就是“Shell怎么监控网站URL运行情况”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI