답변:
왜 grep ps
pid가 $CATALINA_PID
파일 에 쓰여졌 을까요?
나는이 cron
바람둥이가 다운되었을 때 이메일을 전송 'D 검사 스크립트를 :
kill -0 `cat $CATALINA_PID` > /dev/null 2>&1
if [ $? -gt 0 ]
then
echo "Check tomcat" | mailx -s "Tomcat not running" support@dom.com
fi
나는 당신이 wget
당신의 바람둥이의 건강을 확인하는 데 사용할 수도 있다고 생각합니다 . 사용자로드 등의 진단 페이지가있는 경우 주기적으로 가져 와서 파싱하여 문제가 있는지 확인할 수 있습니다.
tasklist |find /I "Tomcat" || echo "Tomcat not running"
bat 파일 의 줄을 따라 뭔가를 할 수 있지만 프로세스 이름에 따라 Tomcat이 아닌 Java를 찾아야 할 수도 있습니다.
ps aewwx | grep CATALINA_PID
실행중인 프로세스의 출력에서 다른 환경 변수 중에서 찾을 수 있습니다. Debian 8에서이 값은 다음과 같습니다. CATALINA_PID = / var / run / tomcat8.pid
대신 이것을 시도하고 루트 권한이 필요하기 때문에 sudo를 사용하십시오.
sudo service tomcat7 status
tomcat7: unrecognized service
netstat -lnp | grep 8080
Tomcat의 수신 포트를 알고 있다면 아마도 가장 좋은 방법 일 것입니다. 제대로 작동하는지 확인하려면 연결을 설정하고 HTTP 요청을 보내고 응답을 받아야합니다. 프로그래밍 방식으로 또는 웹 브라우저를 사용하여이 작업을 수행 할 수 있습니다.
다음과 같은 방법으로 바람둥이의 상태를 확인할 수 있습니다.
ps -ef | grep tomcat
Tomcat이 실행중인 경우 Tomcat 경로를 반환합니다.
netstat -a | grep 8080
여기서 8080은 바람둥이 포트입니다.
tomcat이 로컬로 설치된 경우 브라우저 창에 다음 URL을 입력하십시오. {localhost : 8080}
그러면 다음 메시지와 함께 Tomcat 홈 페이지가 표시됩니다.
이것이 보이면 Tomcat을 성공적으로 설치 한 것입니다. 축하합니다!
tomcat이 별도의 서버에 설치된 경우, replace localhost를 유효한 호스트 이름으로 입력하거나 tomcat이 설치된 Iess를 입력 할 수 있습니다.
위의 내용은 tomcat이 기본 포트 8080을 사용하는 표준 설치에 적용됩니다.
tomcat이 작동 또는 작동 중지되었는지 확인하는 Shell 스크립트를 만들고 sh에 대한 cron을 설정하여 몇 분마다 확인하고 작동 중지되면 tomcat을 자동으로 시작합니다. 아래 코드의 샘플 스 니펫
TOMCAT_PID=$(ps -ef | awk '/[t]omcat/{print $2}')
echo TOMCAT PROCESSID $TOMCAT_PID
if [ -z "$TOMCAT_PID" ]
then
echo "TOMCAT NOT RUNNING"
sudo /opt/tomcat/bin/startup.sh
else
echo "TOMCAT RUNNING"
fi
경보 시스템을 설정하려고합니까? 간단한 "하트 비트"의 경우 Tomcat 포트에 대한 HTTP 요청을 수행하십시오.
보다 정교한 모니터링을 위해 JMX 및 / 또는 SNMP를 설정하여 JVM 통계를 볼 수 있습니다. SNMP 플러그인 (JMX로 연결)과 함께 Nagios를 실행하여 Tomcat 메모리 사용량을 확인하고 10-15 분마다 스레드 풀 크기를 요청합니다.
http://tomcat.apache.org/tomcat-6.0-doc/monitoring.html
업데이트 (2012) :
Tomcat 프로세스를 확인하기 위해 "monit"를 사용하도록 시스템을 업그레이드했습니다. 난 정말 좋아. 매우 적은 구성으로 서비스가 실행 중인지 자동으로 확인하고 그렇지 않은 경우 자동으로 다시 시작합니다. (이메일 알림 보내기). /etc/init.d 스크립트와 통합하거나 프로세스 이름으로 확인할 수 있습니다.
$ sudo netstat -lpn |grep :8080
포트 번호를 확인하려면
$ ps -aef|grep tomcat
어떤 바람둥이가 서버에서 실행되고 있습니까?
tsssinfotech-K53U infotech # ps -aef|grep tomcat
루트 9586 9567 0 11:35 pts / 6 00:00:00 grep --colour = auto tomcat
기본적으로 테스트하고 싶습니다.
세 번째 옵션이 이미 충분히 답변되었으므로 처음 두 옵션을 평가하겠습니다.
가장 쉬운 방법은 웹 애플리케이션에서 몇 가지 기본 메트릭을 수집하고 결과를 읽거나 연결 문제를 감지 할 수있는 클라이언트가있는 웹 페이지를 개발하는 것입니다.
이를 위해 몇 가지 문제가 있습니다.
여기 내 2 센트입니다.
클러스터 설정을 위해 서로 다른 포트에서 실행되는 여러 Tomcat 인스턴스가 있습니다. 다음 명령을 사용하여 다른 포트에서 실행되는 각 프로세스를 확인합니다.
/sbin/fuser 8080/tcp
필요에 따라 포트 번호를 교체하십시오.
그리고 -k
위의 명령에서 프로세스 사용 을 종료하십시오.
ps -ef
명령을 호출 grep
하고 그 위에 다른 명령을 호출하는 방법이나 다른 명령 보다 훨씬 빠릅니다 .BSD
운영 체제 에서 동일한 명령은 다음과 같습니다.fstat