监控url是否正常脚本

1.用wget命令监控

wget命令

下载网页或文件

--spider

模拟爬虫的行为去访问网站,但不会下载网页

-q,    --quiet

安静的访问,禁止输出,类似-o /dev/null功能

-o,   --output-file=FILE

记录输出到文件

-T, --timeout=SECONDS

访问网站的超时时间

-t,   --tries=NUMBER

当网站异常时重试网站的次数

#!/bin/sh
function usage() {    
    echo $"usage:$0 url"
    exit 1
}
function check_url() { #<==检测URL函数。
    wget --spider -q -o /dev/null --tries=1 -T 5 $1 
   #<==采用wget返回值方法,这里的$1就是函数传参。
    #curl -s -o /dev/null $1 #<==采用curl返回值方法也是可以的。
    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 $*            #<==这里的$*就是把命令行接收的所有参数作为函数参数传给函数内部,常用手法。

sh *.sh www.baidu.com

2. 用url监控

curl命令

访问网站url

-I/--head

显示响应头信息

-m/--max-time <seconds>

访问超时的时间

-o/--output <file>

记录访问信息到文件

-s/--silent

沉默模式访问,就是不输出信息

-w/--write-out <format>

以固定特殊的格式输出,例如:%{http_code},输出状态码

#!/bin/bash
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 $*
sh *.sh www.baidu.com
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 为了编写一个自动监控脚本,您需要考虑您想要监控的内容以及需要采取哪些操作来响应问题。 以下是一个简单的脚本示例,它可以监控一个网站是否正在运行,并在检测到问题时发送电子邮件通知管理员: ```python import requests import smtplib from email.mime.text import MIMEText # 网站URL和管理员电子邮件地址 url = "https://www.example.com" admin_email = "[email protected]" # 发送电子邮件的SMTP服务器和凭据 smtp_server = "smtp.example.com" smtp_username = "[email protected]" smtp_password = "password" # 每隔5分钟检查一次网站 while True: response = requests.get(url) if response.status_code != 200: # 如果网站无法访问,发送电子邮件给管理员 message = MIMEText("The website is down!") message['Subject'] = "Website down" message['From'] = admin_email message['To'] = admin_email with smtplib.SMTP(smtp_server) as server: server.login(smtp_username, smtp_password) server.sendmail(admin_email, admin_email, message.as_string()) # 等待5分钟再次检查网站 time.sleep(300) ``` 请注意,这只是一个简单的示例,您可以根据需要进行修改和调整。例如,您可以添加更多的监控功能,例如监控服务器的CPU和内存使用情况,并在检测到问题时执行其他操作,例如重启服务器。 ### 回答2: 自动监控脚本是一种能够自动执行特定任务并监控系统状态的计算机脚本。它能够周期性地检测和记录系统的各种指标,例如CPU利用率、内存使用情况、磁盘空间、网络连接等,并在出现异常时发送警报通知管理员。 为了编写一个自动监控脚本,我们可以按照以下步骤进行: 1. 确定监控指标:首先,我们需要确定要监控的系统指标。这些指标可以根据系统需求进行调整,常见的包括CPU利用率、内存使用、磁盘空间、网络连接等。 2. 选择脚本语言:根据个人喜好和系统环境,选择适合的编程语言来编写脚本。常见的选择包括Python、Bash等。 3. 编写脚本代码:根据选择的编程语言,编写相应的脚本代码。可以使用系统命令或API来获取系统指标,并设置适当的阈值来触发警报。 4. 设置定时任务:使用操作系统提供的定时任务工具来定期执行脚本。例如,在Linux系统中可以使用cron来设定定时任务,Windows系统可以使用任务计划程序。 5. 处理警报通知:当系统指标超出阈值时,脚本应该能够发送警报通知管理员。可以使用电子邮件、短信等方式发送通知。 6. 日志记录和数据分析:在脚本中添加日志记录功能,将监控数据保存到文件或数据库中。这样可以方便后续的数据分析和性能优化。 7. 测试和优化:完成脚本编写后,进行测试并进行优化。确保脚本能够准确地监控系统,并及时响应异常情况。 自动监控脚本可以大大减轻管理员的工作负担,并提高系统的可靠性和稳定性。同时,及时地掌握系统状态变化也有助于预防潜在问题的发生,提高系统的安全性。 ### 回答3: 自动监控脚本是一种用于定期检测、记录和报告系统或应用程序运行状况的工具。我编写了一个基本的自动监控脚本,该脚本可以在指定的时间间隔内运行,并根据预定义的条件来监控系统。 首先,脚本需要访问要监控的系统或应用程序。为此,我使用了Python编程语言中的requests模块,该模块可以轻松地发送HTTP请求并获得响应。 接下来,脚本需要定义要监视的指标。例如,可以监测服务器的响应时间、内存使用情况、磁盘空间等。我选择了监测服务器响应时间作为示例。 脚本会定时向服务器发送请求,并测量服务器的响应时间。如果响应时间超过了预设的阈值,脚本会将此信息记录下来。可以使用Python的时间模块来实现定时运行脚本的功能。 一旦脚本检测到问题,它可以采取相应措施。例如,可以发送电子邮件给系统管理员,提醒他们已经发现了问题,并记录问题的详细信息。我使用Python的smtplib模块来实现发送电子邮件的功能。 为了保证脚本的可靠性,我还实现了日志记录功能。脚本会将每个请求的响应时间和状态记录下来,以便于后续的故障排查和分析。可以使用Python的logging模块来实现日志记录功能。 最后,我将脚本部署在服务器上,并设置为每隔一定时间自动运行。这样,就可以实现对系统或应用程序的自动监控。 需要注意的是,脚本监控范围和功能可以根据具体需求进行扩展和优化。以上只是一个基本的示例,可以根据实际情况进行进一步的开发和定制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值