html巡检脚本,WEB服务器巡检脚本
脚本功能:
监控多台Web服务器状态,一旦发生问题就发送邮件
运行环境:
Python2.7/2.4皆可运行
脚本使用方法:
可利用Crontab或者计划任务来指定时间运行,例如:
*/10 * * * * 脚本路径
脚本运行效果如下:
脚本内容如下:
#!/usr/bin/env python
# coding=utf-8
#----------------------------------------------------------
# Name: WEB服务器巡检脚本
# Purpose: 监控多台Web服务器状态,一旦出现问题就发送邮件
# Version: 1.0
# Author: LEO
# BLOG: http://linux5588.blog.51cto.com
# EMAIL: chanyipiaomiao@163.com
# Created: 2013-06-04
# Copyright: (c) LEO 2013
# Python: 2.4/2.7
#----------------------------------------------------------
from smtplib import SMTP
from email import MIMEText
from email import Header
from datetime import datetime
import httplib
#定义要检测的服务器,URL 端口号 资源名称
web_servers = [('192.168.1.254', 80, 'index.html'),
('www.xxx.com', 80, 'index.html'),
('114.114.114.114', 9000, '/main/login.html'),
]
#定义主机 帐号 密码 收件人 邮件主题
smtpserver = 'smtp.163.com'
sender = 'xxxx@xxx.com'
password = 'password'
receiver = ('收件人1','收件人2')
subject = u'WEB服务器告警邮件'
From = u'Web服务器'
To = u'服务器管理员'
#定义日志文件位置
error_log = '/tmp/web_server_status.txt'
def send_mail(context):
'''发送邮件'''
#定义邮件的头部信息
header = Header.Header
msg = MIMEText.MIMEText(context,'plain','utf-8')
msg['From'] = header(From)
msg['To'] = header(To)
msg['Subject'] = header(subject + '\n')
#连接SMTP服务器,然后发送信息
smtp = SMTP(smtpserver)
smtp.login(sender, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.close()
def get_now_date_time():
'''获取当前的日期'''
now = datetime.now()
return str(now.year) + "-" + str(now.month) + "-" \
+ str(now.day) + " " + str(now.hour) + ":" \
+ str(now.minute) + ":" + str(now.second)
def check_webserver(host, port, resource):
'''检测WEB服务器状态'''
if not resource.startswith('/'):
resource = '/' + resource
try:
try :
connection = httplib.HTTPConnection(host, port)
connection.request('GET', resource)
response = connection.getresponse()
status = response.status
content_length = response.length
except :
return False
finally :
connection.close()
if status in [200,301] and content_length != 0:
return True
else:
return False
if __name__ == '__main__':
logfile = open(error_log,'a')
problem_server_list = []
for host in web_servers:
host_url = host[0]
check = check_webserver(host_url, host[1], host[2])
if not check:
temp_string = 'The Server [%s] may appear problem at %s\n' % (host_url,get_now_date_time())
print >> logfile, temp_string
problem_server_list.append(temp_string)
logfile.close()
#如果problem_server_list不为空,就说明服务器有问题,那就发送邮件
if problem_server_list:
send_mail(''.join(problem_server_list))
html巡检脚本,WEB服务器巡检脚本相关推荐
- linux服务器运维巡检脚本,linux服务器巡检脚本
巡检的基本步骤: 1.在每台服务器上部署巡检的脚本,查询相应的日志. 2.将每台服务器上的日志发送到ftp服务器的指定目录下. 3.遍历ftp服务器指定目录,并且将各个的文件信息整理到一个文件中. 4 ...
- mysql巡检脚本_mysql 服务器巡检脚本
#! /bin/bash ### AUTHOR: cenliang ### EMAIL: xuanniaoxi@sina.com ### DATE:2018/03/22### REV:3.0# 数据库 ...
- 服务器巡检文档,服务器巡检工具
服务器巡检工具 内容精选 换一换 由于root用户拥有最高权限,直接使用root用户登录服务器可能会存在安全风险.建议您使用普通用户登录服务器后切换为root用户,再执行后续安装操作,并建议您通过配置 ...
- 系统服务器性能巡检报告,pc服务器巡检报告
pc服务器巡检报告 内容精选 换一换 简要介绍iPerf是一种命令行工具,它通过测量服务器可以处理的最大网络吞吐量来测试网络速度,因此在遇到网络速度问题时特别有用,通过该工具可以确定哪台服务器存在性能 ...
- 华为服务器虚拟化巡检报告,pc服务器巡检报告
pc服务器巡检报告 内容精选 换一换 JMeter测试报告提供实时.离线两种类型的测试报告,供用户随时查看和分析测试数据.JMeter测试报告说明如表1所示.本测试报告展现了测试过程中被测系统在模拟高 ...
- linux操作系统巡检报告,linux服务器巡检报告
linux服务器巡检报告 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 完美WORD格式.整理 Linux服务器巡检 . 专业资料分享 ...
- java框架 - web服务器
web是互联网的总称,全称为World Wide Web,缩写WWW ,即全球广域网,也称为万维网,它是一种基于超文本和HTTP的.全球性的.动态交互的.跨平台的分布式图形信息系统.是建立在Inter ...
- mysql 5.7巡检脚本_mysql自动化巡检脚本生成html报告
一. 前言 1.之前出了一篇oracle自动巡检脚本生成html报告和一篇Linux服务器系统自动巡检脚本生成html报告,本篇文章出一篇mysql自动巡检脚本生成html报告. 2.脚本只提供部分简 ...
- PHP服务器脚本实例,Shell脚本实现的一个简易Web服务器例子分享_linux shell
这篇文章主要介绍了Shell脚本实现的一个简易Web服务器例子分享,本文实现的Web服务器非常简单实用,可以在你不想安装nginx.apache等大型WEB服务器时使用,需要的朋友可以参考下 假设你想 ...
最新文章
- UVA 10515 - Powers Et Al.(数论)
- mysql for mac 使用_MySQL for Mac 安装和基本操作
- 繁凡的ACM算法全家桶(全新的模板整合计划)
- 利用jQuery实现回收站删除效果
- 互联网1分钟 |1214
- pymysql的安装
- Ubuntu 20.04安装Ros Noetic及Ubuntu 18.04安装ROS Melodic(两版本详细填坑)
- 花旗银行文章解释DeFi的好处
- Vue项目中安装axios
- 车牌识别系列(二)生成具有真实感的(realistic)车牌数据
- 支持多线程编程的Web Workers
- 汇编-ARMv8架构指令集
- trinity运行原理及常见报错(二)
- pycharm 破解方法
- 【UML】 用例粒度
- java 截屏 锁屏黑色_Appium 解决锁屏截屏问题(java篇)
- 【论文翻译】Robot-Centric Elevation Mapping with Uncertainty Estimates---具有不确定性估计的机器人中心高程图映射
- 【渝粤教育】国家开放大学2018年春季 8644-21T汽车电子商务 参考试题
- 【WEB安全自学】第一节 WEB基础环境搭建
- android 自定义View 视差动画