Megosztás a következőn keresztül:


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:

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

  1. Nyissa meg az Eclipse IDE-t a gépén, és kattintson a Fájl –> Importálás... elemre.

  2. Az előugró ablakban válassza az Általános –> Meglévő projektek munkaterületre lehetőséget, és nyomja le a Tovább gombot.

  3. 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ó.

  4. 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
    
  5. 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".

  6. 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
    
  7. Tegyen egy töréspontot a Voting/VotingWeb/src/statelessservice/HttpCommunicationListener.java fájl 109. sorába.

  8. A Csomagkezelőben kattintson a jobb gombbal a szavazóprojektre , és kattintson a Service Fabric –> Alkalmazás közzététele ... elemre.

  9. 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.

  10. 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.

  11. 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.

  1. 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
    
  2. 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: