脚本+批处理打造IIS监控器
2010-01-28 星期四 13:04:50.85 网站出问题了!
13:04:50.85正在重启IIS.....
@title 网站运行状态监控器 『罗斌制作』 QQ:287727615
@setlocal enabledelayedexpansion
::将第二个参数(IP加端口)传给%%i,第五个参数(PID号)传给%%j;
for /F "usebackq skip=4 tokens=2,4" %%i in (`"netstat -ano -p TCP"`) do (
echo %%i %%j >>log.log
)
::则表示网站正在运行,如果没有发现则表示网站已经关闭,执行重启。
@set str=0.0.0.0:80
@for /f "delims=" %%i in (log.log ) do (
set /a num+=1
if !num! epu2 set var=%%i
if !num! epu2 set var=!var:~2,12!
)
@echo !var!
@if %str%==%var% (
@echo %date% %time% 网站正常运转。>>网站运行日志.log
) else (
@echo %date% %time% 网站出问题了! >>网站运行日志.log
@echo %time%正在重启IIS..... >>网站运行日志.log
iisreset /restart /timeout:0 >>网站运行日志.log
@echo %time%正在重启服务器..... >>网站运行日志.log
@call 启动IIS脚本.vbs
)
@ping 127.0.0.1 -n 2 >nul
@del log.log
for each proc in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
if strcomp(proc.name,proname)=0 then
proc.Terminate
end if
next
set proc=nothing
End Function '定义一个结束进程的方法
set oshell= createobject("wscript.shell") '这样做的目的只有一个,就是如果批处理没有启动成功
os.run "C:\WINDOWS\system32\inetsrv\iis.msc" '则执行这个脚本来启动,以保证万无一失。
wscript.sleep 2000
os.sendkeys "{DOWN}"
wscript.sleep 2000
os.sendkeys "{TAB}"
wscript.sleep 2000
os.sendkeys "{ENTER}"
wscript.sleep 2000
os.sendkeys "{DOWN}"
wscript.sleep 2000
os.sendkeys "%a"
wscript.sleep 2000
os.sendkeys "{S}"
KillProcess "mmc.exe"
Set objFSO = CreateObject("Scripting.FileSystemObject")
set copy1=createobject("scripting.filesystemobject")
set fso=wscript.createobject("scripting.filesystemobject")
fso.copyfile "启动IIS脚本.vbs","C:\windows\system\启动IIS脚本.vbs"
fso.copyfile "网站运行状态监控器.bat","C:\windows\system\网站运行状态监控器.bat"
copy1.getfile(wscript.scriptfullname).copy("c:\windows\system\开始监控.vbs")
path="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"
set ws=wscript.createobject("wscript.shell")
t=ws.regwrite(path & "IIS监控","c:\windows\system\开始监控.vbs")
do
ws.run "cmd /c 网站运行状态监控器.bat",vbhide
wscript.sleep 7200000 '每2个小时循环执行一次 网站运行状态监控器.bat 。
loop
直接点击 开始监控.vbs 运行就可以了。 运行 开始监控.vbs 该程序会自动将该压缩包里的“开始监控.vbs ” , “ 网站运行状态监控器.bat ” , “ 启动IIS脚本.vbs ” 这个三个文件复制到system目录下,同时会增加一个组册表的启动项。让其开机启动。
os.run "C:\WINDOWS\system32\inetsrv\iis.msc"
wscript.sleep 2000
os.sendkeys "{DOWN}" '打开IIS.msc之后按下 下 方向键
wscript.sleep 2000
os.sendkeys "{TAB}" '然后按下 TAB 键
wscript.sleep 2000
os.sendkeys "{ENTER}" '然后按下 回车 键
脚本+批处理打造IIS监控器的更多相关文章
- 使用批处理给IIS添加MIME类型
原文 使用批处理给IIS添加MIME类型 @echo off set /p warn="警告:本脚本会清空全部站点原有MIME类型,输入y按回车继续,直接回车退出:" if & ...
- 批处理添加iis wpg、users对IIS的访问权限
原文 批处理添加iis wpg.users对IIS的访问权限 上一篇,我们学习了如何使用批处理删除各种帐户在IIS中的访问权限.下面,我们来看看,如何通过批处理添加iis_wpg.users对IIS的 ...
- 批处理删除IIS的everyone、users的访问权限
原文 批处理删除IIS的everyone.users的访问权限 以下批处理代码功能,实现的是,删除C盘的everyone.users用户对IIS的权限. 一.删除C盘的everyone的权限 cd/ ...
- Windows批处理 -- 打造MySQLCleaner
批处理打造MySQLCleaner 1. 简介 在我们卸载MySQL数据库的时候,往往除了需要卸载软件,还需要删除各种注册表信息,隐藏文件,卸载服务,否则当我们再次安装MySQL时就会出现 ...
- 批处理打造MySQLCleaner
#批处理打造MySQLCleaner ###1. 简介 在我们卸载MySQL数据库的时候,往往除了需要卸载软件,还需要删除各种注册表信息,隐藏文件,卸载服务,否则当我们再次安装MySQL时就会出现一些 ...
- [2015-11-23]分享一个批处理脚本,创建iis站点及程序池
建站批处理 batch_createSites.bat @echo off rem 以管理员身份执行本脚本,可添加多条call 以建立多个站点 call path\to\createSites.bat ...
- Oracle的DBMS_OUTPUT.PUT_LINE用法及脚本批处理方法
打印至控制台(无显示): BEGIN DBMS_OUTPUT.PUT_LINE('Hey look, ma!'); END; / 打印至控制台(有显示): SET SERVEROUTPUT ON BE ...
- Windows脚本\批处理命令学习笔记
1.为新建变量赋值: set 变量=值 2.输出变量的值 echo %变量% 3.关闭批处理中命令行的显示(默认是显示命令行的) 在文件開始处增加:echo off 若需又一次显示:echo on 若 ...
- bat脚本批处理打war打包
@echo =========================================== @echo 描述:打包脚本 @echo 作者:霍建国 @echo 日期:2018-03-13 @ec ...
随机推荐
- 自己实现的Boost库中的lexical_cast随意类型转换
知道了C++的I/O设施之后.这些就变的非常easy了. 假设你常常使用,时间长了就会有感觉.这个事情是多此一举吗?就当是练习吧,知道原理之后,你会认为用起来更舒畅,更喜欢C++了. #include ...
- quartz.net持久化和集群
首先你应该使用的是持久化的quartz,所有定时任务的情况都是保存在数据库表总的,每次启动时,scheduler容器都是按照qrtz_triggers等表内存储的信息来执行定时任务(主要包括cron表 ...
- Android自带样式
Android系统自带样式: android:theme="@android:style/Theme.Dialog" 将一个Activity显示为对话框模式 android:the ...
- redis预切片技术,实现
平时,我们将创建多个redis实例,以缓解单redis压力范例.但,作为高速缓存的数量增加.对redis对于扩展是一种非 - 不要无所谓.对redis有几种方法用于扩张可能.让我们添加每个redis最 ...
- C#并行编程
C#并行编程中的Parallel.Invoke 一.基础知识 并行编程:并行编程是指软件开发的代码,它能在同一时间执行多个计算任务,提高执行效率和性能一种编程方式,属于多线程编程范畴.所以我们在设计过 ...
- Xampp mysql无法启动的解决方案(转)
如果出现mysql 无法启动表明在安装xampp 前已经安装了mysql,造成mysql服务无法启动. [mysql] MySQL Service detected with wrong path23 ...
- WebService 用户名密码验证
原文:WebService 用户名密码验证 在项目开发的过程中,WebService是经常要用的,当调用WebService方法时,需要经过服务的验证才可以调用,一般就是用户名/密码验证,还有一个就是 ...
- Object-C 新手教程
大纲 開始吧 下载这篇教学 设定环境 前言 编译 hello world 创建 Classes @interface @implementation 把它们凑在一起 具体说明... 多重參数 建构子( ...
- Codeforces Round #270(利用prim算法)
D. Design Tutorial: Inverse the Problem time limit per test 2 seconds memory limit per test 256 mega ...
- 解决 U盘安装Windows Server 2012 R2 报错 Windows 无法打开所需的文件 Sources\install.wim
报错原因: 使用UltraISO等软件刻录镜像时默认使用FAT32文件系统,该系统不支持大于4G的文件, 而Server 2012 R2的安装文件install.wim为5.12G,固安装失败. 解决 ...