首页 > 其他分享 >网页正常性监控脚本

网页正常性监控脚本

时间:2023-11-30 11:03:23浏览次数:34  
标签:COUNT 网页 URL httpmonitor 监控 正常性 FAIL HTTP Define

#!/bin/bash

# Script name: httpmonitor.sh
# Author: wanghongwei
# Date: 2023-11-30
# Version: 1.0
# Description: A script to monitor http request and send email alerts
# Description: 使用 cURL 请求网页,如果连续三次失败,则发送告警信息
# Usage: ./httpmonitor.sh

# Define lockfile and add exclusive lock
LOCKFILE=/var/run/httpmonitor.lock
exec 200>$LOCKFILE
flock -n 200
if [ $? != 0 ]; then
	echo "Fatal: The script is already running!" && exit 1
fi

trap "exec 200>&-; rm -f $LOCKFILE; exit" SIGINT SIGTERM

# Define the logfile
LOGFILE=/var/log/httpmonitor.log

# Define the email subject and recipient
SUBJECT="HTTP Requests Failure"
RECIPIENT="[email protected]"

# Define the fail count and url
FAIL_COUNT=0
URL=https://www.example.com

while true; do
	# Request the URL and obtain the HTTP return code
	DATE=$(date +"%Y-%m-%d %H:%M:%S")
	HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" "$URL")
	echo -e "${DATE}\t${URL}\t${HTTP_CODE}" >>$LOGFILE

	# Count the number of failures
	if [ $HTTP_CODE -eq 200 ]; then
		FAIL_COUNT=0
	else
		FAIL_COUNT=$((FAIL_COUNT + 1))
	fi

	# Determine if the number of failures has reached 3
	if [ $FAIL_COUNT -eq 3 ]; then
		echo -e "网站 $URL 请求异常,请检查网络连接." | mailx -s "$SUBJECT" "$RECIPIENT"
		sleep 30
		FAIL_COUNT=0
	fi

	# Sleep for 2 seconds before checking again
	sleep 2
done

标签:COUNT,网页,URL,httpmonitor,监控,正常性,FAIL,HTTP,Define
From: https://www.cnblogs.com/wanghongwei-dev/p/17866793.html

相关文章

  • zabbix6监控k8s指标说明
    一.deploy中的指标1.1Deployment副本数未达预期告警min(/Kubernetes_testclusterstatebyHTTP/kube.deployment.replicas_mismatched[{#NAMESPACE}/{#NAME}],{$KUBE.REPLICA.MISMATCH.EVAL_PERIOD:"deployment:{#NAMESPACE}:{#NAME}"})>0andlast(/Kubernetes_testclus......
  • 学会XPath,轻松抓取网页数据
    一、定义XPath(XMLPathLanguage)是一种用于在XML文档中定位和选择节点的语言。XPath的选择功能非常强大,可以通过简单的路径选择语法,选取文档中的任意节点或节点集。学会XPath,可以轻松抓取网页数据,提高数据获取效率。二、XPath基础语法节点(Nodes):XML文档的基本构建块,可以是元......
  • SpringMvc集成开源流量监控、限流、熔断降级、负载保护组件Sentinel
    前言:作者查阅了Sentinel官网、51CTO、CSDN、码农家园、博客园等很多技术文章都没有很准确的springmvc集成Sentinel的示例,因此整理了本文,主要介绍SpringMvc集成SentinelSpringMvc集成Sentinel一、Sentinel介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel......
  • 学会XPath,轻松抓取网页数据
    一、定义XPath(XMLPathLanguage)是一种用于在XML文档中定位和选择节点的语言。它是一种用于导航和查询XML结构的强大工具,也可以用于HTML文档的搜索。它可以用来在XML或HTML文档中对元素和属性进行遍历,选择特定的节点。XPath的选择功能非常强大,可以通过简单的路径选择语法,选取文......
  • 十、Docker 可视化与监控
    6.1常用工具介绍当Docker部署规模逐步变大后,可视化监控容器环境的性能和健康状态将会变得越来越重要。Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集......
  • 全网最详细!Centos7.X 搭建Grafana+Jmeter+Influxdb 性能实时监控平台 (上)
    来源:https://developer.aliyun.com/article/907041本文涉及的产品可观测可视化Grafana版,10个用户账号1个月 立即试用 简介: 全网最详细!Centos7.X搭建Grafana+Jmeter+Influxdb性能实时监控平台(上)背景日常工作中,经常会用到Jmeter......
  • 商品发布网页
    index.jsp<%@pagecontentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>商品发布</title><style>......
  • Jmeter压测可视化监控平台
    许多小伙伴在使用Jmeter原生测试报告时,有以下四点困扰: 报告不具备实时性。报告文件的大小随着测试时间的增长而增长,而磁盘存在读写瓶颈,随时都可能崩溃。报告中的数据是测试时间段内的平均值。报告较为冗余,可读性较差。在实际测试过程中,我们一般只关心三条曲线的数据......
  • 性能测试监控--Prometheus
    随着业务的增长,服务器部署由单一架构向分布式集群架构转变,性能测试过程中指标监控也由单一服务器向集群服务器转变。 对于性能测试团队来说,需要建立起适用于测试的多机监控系统,以便后期顺利且高效地进行监控分析调优,从而保证整个测试过程的高可靠性。 因此,小编本期为大家讲......
  • 智慧环保:视频监控平台EasyCVR与AI智能分析在环保领域的应用
    人工智能(AI)视频分析技术在环保领域有着广泛的应用,通过智能识别和跟踪技术,AI视频分析可以实时监测空气质量、水质和噪音等环境指标,帮助环保部门及时发现污染源并进行有效治理,提高监测、管理和保护环境的效率。今天我们就来介绍下AI视频智能分析识别技术以及EasyCVR视频监控技术在环......