Monitorización en VIVO de Servidores

Al hilo de los articulos de Monitorizar Servicios con Powershell y Monitorizar espacio en disco con Powershell, nos puede interesar revisar constantemente el estado de los servidores:


Siempre me gusta invocar los scripts powershell desde ficheros bat, y con unas pocas lineas mas podemos automatizar su ejecución cada X minutos:

@echo off
set minutos=30
set /a segundos= 60 * %minutos% 
:inicio
powershell -noprofile .\RevisarEspacioenDisco.ps1

for /f "tokens=1,2,3 delims=:," %%a in ("%time%") do (set hh=%%a&set mm=%%b&set ss=%%c)
REM HORARIO LABORAL 8h-17h
if %hh% LEQ 17 (if %hh% GEQ 8 (echo Esperando %minutos% minutos... & sleep %segundos%) else (pause)) else (pause)
goto inicio
Separo la variable %time% en hh:mm:ss y si hh está dentro del horario laboral espero 30 minutos antes de volver a ejecutar el script powershell, si no, hago un pause hasta que pulse una tecla.
Necesitamos el comando SLEEP que viene en el Kit de Recursos de Windows 2003.

Comentarios