Server(Windows&Linux)2014. 3. 6. 09:53

Tomcat 서비스 먹통 체크를 위한 Batch 파일 작성

아래 Tomcat 재시작 bat 파일은 Tomcat 구동이 정상일때는 잘 실행 되나 Tomcat 이 뻗은 경우 안되어서 톰캣 체크를 추가 함

이 또한 뻘짓.... (Tomcat 고수님이 보신다면 Tomcat 튜닝 해 주세요... 후사함... ㅠ.ㅠ)

혹시나 아래 내용을 복사하신다면 주석 처리 된 부분은 지워 주세요.

Bat 주석이 아님... 제가 나중에 다시 볼때 참고 하려고 그냥 주석 단 거예요... ㅠ.ㅠ

tomcatCheck.bat 파일 내용

@echo off

set TRYCNT=1                                             // 시도 횟수 TRYCNT 선언 **주의** 변수=값 은 반드시 붙여 쓰기를 해야 함

:LOOP                                                       // goto 시 도착지(?)

sc query "Tomcat6" | find "RUNNING"            // sc query "서비스명"

if "%ERRORLEVEL%"=="0" (                        // 위의 명령으로 반환된 ERRORLEVEL 이 0 이면 서비스 정상

    goto QUIT                                             // QUIT 로 이동

) else if %TRYCNT% GTR 2 (                      // Tomcat 스타트 시도 횟수가 2이상이면 아래 실행

   taskkill /f /im Tomcat6.exe                      // 정상적인 Tomcat 스타트를 하였을 때 구동 되지 않았으므로 강제 종료
   ping 1.1.1.1 -n 1 -w 4000 > nul                // 4초 sleep
   net.exe start "Tomcat6"                           // Tomcat 서비스 스타트

   ping 1.1.1.1 -n 1 -w 4000 > nul                // 4초 sleep
   set /a TRYCNT=%TRYCNT%+1                // 시도횟수 + 1 증가  **주의** set /a 해야만 연산됨
   goto LOOP

) else (                                                   // Tomcat 서비스가 정상 동작 중이지 않을때 2회 까지 시도

    net.exe start "Tomcat6"                         // Tomcat 서비스 스타트
    ping 1.1.1.1 -n 1 -w 4000 > nul              // 4초 sleep
    set /a TRYCNT=%TRYCNT%+1              // 시도횟수 + 1 증가
    goto LOOP                                          // LOOP 로 이동 ( 정상 서비스 체크를 위함 )
)

:QUIT

echo %TRYCNT%                                    // batch 테스트 시 몇번 만에 성공 하였는지 볼려고 넣었음.

 

Posted by 비니미니파파