Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2130

Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2130

Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2154
正文

BAT批处理判断服务是否正常运行的方法(批处理命令综合应用)(bat批处理命令运行程序)真没想到

文章摘要

本文介绍了通过批处理脚本实现的自动化健康检查系统,用于监控QlikTeam相关服务的运行状态。脚本的主要功能包括: 1. 配置日志文件路径和格式,记录服务的健康检查结果。 2. 定义需要检查的服务列表(如QlikSenseServiceDispatcher、QlikSenseProxyService等)。 3. 自动调用`:health_check`宏,对每个服务进行性能测试,并记录成功或失败情况。 4. 统计检查结果,生成日志文件和状态报告。 5. 根据检查结果(errorCount和allCount),在`:check_status`宏中输出服务健康状态。 该脚本能够实时监控并记录QlikTeam服务的运行状态,帮助管理员快速发现并解决问题。

 @echo off color 2E set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2% set hhmiss=%time:~0,2%%time:~3,2%%time:~6,2% set filename=healthcheck.log REM set “filename=healthcheck_%YYYYmmdd%_%hhmiss%.log” set “datetime=%YYYYmmdd%%hhmiss%” set allCount=0 set errorCount=0 set checkList=”QlikSenseServiceDispatcher” “QlikSenseSchedulerService” “QlikSenseRepositoryService” “QlikSenseRepositoryDatabase” “QlikSenseProxyService” “QlikSensePrintingService” “QlikSenseEngineService” “QlikLoggingService” echo============================================>%filename% echo Health Checking by Qlik Team >>%filename% echo zhengkai.blog.csdn.net echo (datetime: %datetime% ) >>%filename% echo============================================>>%filename% echo. >>%filename% echo. >>%filename% for %%L in (%checkList%) do call :health_check %%L echo============================================>>%filename% echo Checking Finish. >>%filename% echo. >>%filename% echo Error : %errorCount% of %allCount% >>%filename% echo. >>%filename% echo============================================>>%filename% call :check_status echo============================================>>%filename% goto:end :health_check sc query |find /i %1 >nul 2>nul if not errorlevel 1 ( echo SUCCESS…… %1 >>%filename% )else ( echo FAILD…… %1 is error ! >>%filename% set /a errorCount+=1 ) set /a allCount+=1 goto:eof :check_status if %errorCount% gtr 0 ( echo ###### this server is Not Health >>%filename% ) else ( echo ###### this server is Health >>%filename% ) goto:eof :end copy %filename% \\xxxx\DataShare\CSDN\ZhengKai\