Oktatóanyag: Helyi Service Fabric-fürtön üzembe helyezett Java-alkalmazás hibakeresése
Ez az oktatóanyag egy sorozat második része. Megtudhatja, hogyan csatolhat egy távoli hibakeresőt az Eclipse használatával a Service Fabric-alkalmazáshoz. Azzal is megismerkedhet, hogyan irányíthat át naplókat a futó alkalmazásokból egy olyan helyre, amelyhez a fejlesztő kényelmesen hozzáfér.
Ebben az oktatóanyag-sorozatban az alábbiakkal ismerkedhet meg:
- Service Fabric Reliable Services Java-alkalmazás létrehozása
- Az alkalmazás üzembe helyezése és hibakeresése egy helyi fürtön
- Alkalmazás üzembe helyezése egy Azure-fürtön
- Figyelés és diagnosztika beállítása az alkalmazáshoz
- CI/CD beállítása
A sorozat második részében az alábbiakkal fog megismerkedni:
- Hibakeresés Java-alkalmazásokban az Eclipse használatával
- Naplók átirányítása egy konfigurálható helyre
Előfeltételek
Az oktatóanyag elkezdése előtt:
- Állítsa be a fejlesztési környezetet Mac vagy Linux rendszerhez. Az utasításokat követve telepítse a következőket: Eclipse beépülő modul, Gradle, Service Fabric SDK és Service Fabric parancssori felület (sfctl).
A mintául szolgáló szavazóalkalmazás letöltése
Ha nem az oktatóanyag-sorozat első részében hozta létre a Szavazó mintaalkalmazást, letöltheti. Egy parancssori ablakban futtassa a következő parancsot a mintaalkalmazás-adattár helyi számítógépre történő klónozásához.
git clone https://github.com/Azure-Samples/service-fabric-java-quickstart
Hozza létre és helyezze üzembe az alkalmazást a helyi fejlesztési fürtön.
Hibakeresés Java-alkalmazásokban az Eclipse használatával
Nyissa meg az Eclipse IDE-t a gépén, és kattintson a Fájl –> Importálás... elemre.
Az előugró ablakban válassza az Általános –> Meglévő projektek munkaterületre lehetőséget, és nyomja le a Tovább gombot.
Az Import Projects (Projektek importálása) ablakban válassza a Select root directory (Gyökérkönyvtár kiválasztása) lehetőséget, majd válassza a Voting könyvtárat. Ha követte az első oktatóanyag-sorozatot, a Voting könyvtár az Eclipse-workspace könyvtárban található.
Frissítse azon szolgáltatás entryPoint.sh fájlját, amelyben hibakeresést szeretne végezni, hogy távoli hibakeresési paraméterekkel indítsa el a Java-folyamatot. Ebben az oktatóanyagban az állapot nélküli kezelőfelületet használjuk: Voting/VotingApplication/VotingWebPkg/Code/entryPoint.sh. Ebben a példában a 8001-es port van beállítva hibakeresésre.
java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Djava.library.path=$LD_LIBRARY_PATH -jar VotingWeb.jar
Az alkalmazásjegyzék frissítéséhez állítsa egyre azon szolgáltatás példányszámát vagy replikaszámát, amelyen hibakeresést végez. Ezzel a beállítással elkerülheti, hogy ütközések alakuljanak ki a hibakereséshez használt portnál. Állapotmentes szolgáltatások esetén például állítsa be az
InstanceCount="1"
értéket, állapotalapú szolgáltatások esetén pedig állítsa be a cél és a minimális replikakészlet méretét 1-re a következőképpen:TargetReplicaSetSize="1" MinReplicaSetSize="1"
.Az Eclipse IDE-ben válassza a Futtatás –> Hibakeresési konfigurációk –> Távoli Java-alkalmazás lehetőséget, nyomja le az Új gombot, állítsa be a tulajdonságokat az alábbiak szerint, majd kattintson az Alkalmaz gombra.
Name: Voting Project: Voting Connection Type: Standard Host: localhost Port: 8001
Tegyen egy töréspontot a Voting/VotingWeb/src/statelessservice/HttpCommunicationListener.java fájl 109. sorába.
A Csomagkezelőben kattintson a jobb gombbal a szavazóprojektre , és kattintson a Service Fabric –> Alkalmazás közzététele ... elemre.
A Publish Application (Alkalmazás közzététele) ablakban válassza ki a Local.json elemet a legördülő listából, és kattintson a Publish (Közzététel) elemre.
Az Eclipse IDE-ben válassza a Futtatás –> Hibakeresési konfigurációk –> Távoli Java-alkalmazás lehetőséget, kattintson a létrehozott szavazási konfigurációra, majd a Hibakeresés elemre.
Nyissa meg a webböngészőt, és nyissa meg a localhost:8080 címet. Ez automatikusan eléri a töréspontot, és az Eclipse beírja a hibakeresési perspektívát.
Most ugyanezeket a lépéseket alkalmazhatja bármely Service Fabric-alkalmazás hibakereséséhez az Eclipse-ben.
Alkalmazásnaplók átirányítása egyéni helyre
Az alábbi lépések bemutatják, hogyan irányíthatja át az alkalmazásnaplókat az alapértelmezett /var/log/syslog helyről egy egyéni helyre.
A Service Fabric Linux-fürtökön futó alkalmazások jelenleg csak egyetlen naplófájl felvételét támogatják. Ha úgy szeretne beállítani egy alkalmazást, hogy a naplók mindig a /tmp/mysfapp0.0.log helyre lépjenek, hozzon létre egy logging.properties nevű fájlt a következő helyen : Voting/VotingApplication/VotingWebPkg/Code/logging.properties , és adja hozzá a következő tartalmat.
handlers = java.util.logging.FileHandler java.util.logging.FileHandler.level = ALL java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter # This value specifies your custom location. # You will have to ensure this path has read and write access by the process running the SF Application java.util.logging.FileHandler.pattern = /tmp/mysfapp0.0.log
Adja meg a következő paramétert a Voting/VotingApplication/VotingWebPkg/Code/entryPoint.sh helyen a Java futtatási parancsához:
-Djava.util.logging.config.file=logging.properties
Az alábbi példa egy mintavégrehajtást mutat be, amelyhez a hibakereső csatlakoztatva van, hasonlóan az előző szakasz végrehajtásához.
java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Djava.library.path=$LD_LIBRARY_PATH -Djava.util.logging.config.file=logging.properties -jar VotingWeb.jar
Megismerkedett vele, hogyan végezhet hibakeresést, és hogyan érheti el az alkalmazásnaplókat a Service Fabric Java-alkalmazások fejlesztésekor.
Következő lépések
Az oktatóanyag jelen részében megismerkedhetett a következőkkel:
- Hibakeresés Java-alkalmazásokban az Eclipse használatával
- Naplók átirányítása egy konfigurálható helyre
Folytassa a következő oktatóanyaggal:
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: