geïnteresseerd om te weten hoe mensen meestal controleren of Tomcat op een Unix-omgeving draait.
Ik controleer of het proces gebruikt met
ps -ef | grep java
ps -ef | grep logging
of ik controleer of het poortnummer actief is
netstat -a | grep 8080
Is er een betere manier om te controleren of Tomcat loopt? Het bovenstaande lijkt te zijn om een ’hacky’-manier te zijn om te controleren of Tomcat actief is.
Antwoord 1, Autoriteit 100%
Waarom grep ps
, wanneer de PID is geschreven naar de $CATALINA_PID
Bestand?
Ik heb een cron
‘D Checker Script die een e-mail verzendt wanneer Tomcat down is:
kill -0 `cat $CATALINA_PID` > /dev/null 2>&1
if [ $? -gt 0 ]
then
echo "Check tomcat" | mailx -s "Tomcat not running" [email protected]
fi
Ik denk dat u ook wget
kunt gebruiken om de gezondheid van uw Tomcat te controleren. Als u een pagina met de diagnosepagina met gebruikerslast, enz., Kunt u het periodiek ophalen en het parseren om te bepalen of er iets misgaat.
Antwoord 2, Autoriteit 163%
Op mijn Linux-systeem start ik Tomcat met het startup.sh-script. Om te weten of het wordt uitgevoerd of niet, ik gebruik
ps -ef | grep tomcat
Als het uitvoerresultaat het hele pad naar mijn Tomcat-map bevat, wordt het gebruikt
Antwoord 3, Autoriteit 120%
Probeer dit in plaats daarvan en omdat het root-privileges nodig heeft, gebruikt u sudo
sudo service tomcat7 status
Antwoord 4, Autoriteit 25%
netstat -lnp | grep 8080
zou waarschijnlijk de beste manier zijn, als je weet dat de luisterpoort van Tomcat. Als u zeker wilt zijn dat het functioneel is, moet u een verbinding tot stand brengen en een HTTP-verzoek sturen en een reactie krijgen. U kunt dit uitvoeren, of met behulp van een webbrowser.
Antwoord 5, Autoriteit 18%
U kunt de status van Tomcat controleren op de volgende manieren:
ps -ef | grep tomcat
Hierdoor wordt het Tomcat-pad aangetroffen als de tomcat wordt uitgevoerd
netstat -a | grep 8080
Waar 8080 de Tomcat-poort is
Antwoord 6, Autoriteit 13%
Als Tomcat lokaal is geïnstalleerd, typt u de volgende URL in een browservenster:
{localhost: 8080}
Hiermee wordt de Tomcat-startpagina weergegeven met het volgende bericht.
Als u dit ziet, hebt u Tomcat met succes geïnstalleerd. Gefeliciteerd!
Als Tomcat op een aparte server is geïnstalleerd, kunt u typen
Vervang localhost door een geldige hostnaam of IESS waar Tomcat is geïnstalleerd.
Het bovenstaande is van toepassing op een standaardinstallatie waarbij Tomcat de standaardpoort 8080
gebruikt
Antwoord 7, Autoriteit 10%
wget url
of curl url
waarbij URL een URL van de Tomcat-server is die bijvoorbeeld beschikbaar zou moeten zijn:
wget http://localhost:8080
.
Controleer vervolgens de exitcode, als het 0 – Tomcat is.
Antwoord 8, Autoriteit 8%
Maak een shell-script dat controleert of Tomcat omhoog of omlaag is en een cron voor SH instel om deze om de paar minuten te controleren en de Tomcat automatisch starten. Voorbeeldfragment van de onderstaande code
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
Antwoord 9, Autoriteit 7%
Ik heb Tomcat gevonden om nogal finicky te zijn in het feit dat een hardloopproces of een open poort niet noodzakelijk betekent dat het daadwerkelijk verzoeken is. Ik probeer meestal een bekende pagina te pakken en de inhoud ervan te vergelijken met een verwachte verwachte waarde.
Antwoord 10, Autoriteit 7%
Ik doe altijd
tail -f logs/catalina.out
Wanneer ik daar zie
INFO: Server startup in 77037 ms
Dan weet ik dat de server omhoog is.
Antwoord 11, Autoriteit 3%
probeer je een waarschuwingssysteem in te stellen? Voor een eenvoudige “heartbeat”, doet u een HTTP-verzoek naar de Tomcat-poort.
Voor meer uitgebreide monitoring kunt u JMX en / of SNMP instellen om JVM-statistieken te bekijken. We runnen Nagios met de SNMP-plug-in (Bruggen naar JMX) om het Tomcat-geheugengebruik te controleren en om de 10-15 minuten van de draadpool te vragen.
http://tomcat.apache.org/tomcat-6.0-doc/ monitoring.html
Update (2012):
We hebben onze systemen opgewaardeerd om “MONIT” te gebruiken om het Tomcat-proces te controleren. Ik vind het erg leuk. Met een zeer kleine configuratie verifieert het automatisch dat de service wordt uitgevoerd en start opnieuw op als het dat niet is. (een e-mail alert verzenden). Het kan integreren met de /etc/init.d-scripts of cheque per procesnaam.
Antwoord 12, Autoriteit 3%
Omdat mijn Tomcat-instanties worden genoemd als Tomcat_. Bijvoorbeeld. tomcat_8086, ik gebruik
#
ps aux | grep tomcat
Andere methode gebruikt NC-hulpprogramma
nc -l 8086
(poortnummer)
of
ps aux | grep java
Antwoord 13, Autoriteit 3%
Probeer deze opdracht
ps -ef | awk '/[t]omcat/{print $2}'
Het zal de PID retourneren als Tomcat actief is.
Antwoord 14
$ sudo netstat -lpn |grep :8080
Om het poortnummer
te controleren
$ ps -aef|grep tomcat
is elke tomcat uitgevoerd onder de server.
tsssinfotech-K53U infotech # ps -aef|grep tomcat
Root 9586 9567 0 11:35 PTS / 6 00:00:00 GREP –COLOUR = AUTO TOMCAT
Antwoord 15
In principe wilt u
testen
- Connectiviteit met uw Tomcat-instantie
- Verzamel enkele basisstatistieken
- Of het UNIX-proces wordt uitgevoerd
Ik zal de eerste 2 opties evalueren, omdat de 3e er al voldoende is beantwoord.
het gemakkelijkst is gewoon om een webpagina te ontwikkelen op uw webApp die een aantal basismeters verzamelt en een client heeft die de resultaten kan lezen of connectiviteitsproblemen moeten detecteren.
Daarvoor heb je verschillende problemen
Antwoord 16
Hier zijn mijn twee cent.
Ik heb meerdere Tomcat-instanties die op verschillende poorten voor mijn clusteropstelling draaien. Ik gebruik de volgende opdracht om elke processen op verschillende poorten te controleren.
/sbin/fuser 8080/tcp
Vervang het poortnummer volgens uw behoefte.
En om het proces te doden, gebruik dan -k
in de bovenstaande opdracht.
- Dit is veel sneller dan de
ps -ef
Way of andere opdrachten waar u een opdracht belt en een anderegrep
belt. - Werkt goed met meerdere installaties van tomcat, of elke andere server die een poort gebruikt die feitelijk op dezelfde server draait.
Het equivalente commando op BSD
besturingssystemen is fstat
Antwoord 17
tomcat.sh
helpt je dit gemakkelijk te weten.
tomcat.sh gebruiksdocument zegt:
geen argument: toon de proces-id van de kater, als deze actief is, doe anders niets
Dus, voer de opdracht uit op je opdrachtprompt en controleer op pid:
$ tomcat.sh