Windows Server 脚本记录Apache、Mysql 每分钟并发数

打开windows server 计划任务管理器。定时执行如下的Bat脚本即可。

在D盘新建一个monitor文件夹,创建ApacheMysql.bat文件。内容如下:

 

在monitor文件夹中新建mysql、apache文件夹

进入mysql文件夹,创建sql.sql文件,保存如下内容:

select count(*) from information_schema.processlist into outfile ‘d:/monitor/mysql/b‘;

执行后,脚本会生成日志文件。记录当前时间与当前并发数,保存在各自文件夹中。

技术分享
@echo off
setlocal enabledelayedexpansion
echo %date:~0,4%%date:~5,3%%date:~8,6% %time:~0,2%:%time:~3,2%:%time:~6,2% >d:\monitor\apache\a
netstat -ant |find /i "ESTABLISHED"|find /i ":80 " /c >d:\monitor\apache\b

cd d:
cd monitor
cd apache

for /f "tokens=*" %%i in (a) do (
set /a n+=1
set #!n!=%%i)
set n=
(for /f "tokens=*" %%i in (b) do (
set /a n+=1
call echo %%#!n!%%%%i))>>apacheResult

del a b
cd C:\Program Files\MySQL\MySQL Server 5.6\bin
set user_mysql=dbmonitor
set password_mysql=dbPassword

mysql -u%user_mysql% -p%password_mysql% < d:\monitor\mysql\sql.sql
echo %date:~0,4%%date:~5,2%%date:~8,6% %time:~0,2%:%time:~3,2%:%time:~6,2% >d:\monitor\mysql\a

cd d:
cd monitor
cd mysql

for /f "tokens=*" %%i in (a) do (
set /a n+=1
set #!n!=%%i)
set n=
(for /f "tokens=*" %%i in (b) do (
set /a n+=1
call echo %%#!n!%%%%i))>>mysqlResult

del a b

:end  
Monitor Code

备注:BAT脚本在计划任务中不执行,是计划任务设置有问题,若脚本未执行,请安装下图修改:

技术分享

技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。