Halom memóriaképének és szálképének manuális rögzítése és a Java Flight Recorder használata az Azure Spring Appsben

Feljegyzés

Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken a régi nevet fogja látni egy darabig, miközben az eszközök, például képernyőképek, videók és diagramok frissítésével dolgozunk.

Ez a cikk a következőre vonatkozik: ✔️ Basic/Standard ✔️ Enterprise

Ez a cikk bemutatja, hogyan hozhat létre manuálisan halomképet vagy szálképet, és hogyan indíthatja el a Java Flight Recordert (JFR).

A hatékony hibaelhárítás kritikus fontosságú annak érdekében, hogy az éles környezetekben felmerülő problémákat megoldhassa, és online állapotban tarthassa vállalkozását. Az Azure Spring Apps alkalmazásnapló-streamelést és lekérdezést, gazdag metrikákat bocsát ki, riasztásokat, elosztott nyomkövetést és így tovább. Ha azonban riasztást kap a nagy késéssel, JVM-halomszivárgással vagy magas processzorhasználattal rendelkező kérelmekről, nincs utolsó mérföldes megoldás. Ezért lehetővé tettük, hogy manuálisan hozzon létre egy halomképet, hozzon létre egy szálképet, és indítsa el a JFR-t.

Előfeltételek

Halomkép létrehozása

Az alábbi paranccsal hozzon létre egy halomképet az alkalmazásról az Azure Spring Appsben.

az spring app deployment generate-heap-dump \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --app <app-name> \
    --deployment <deployment-name> \
    --app-instance <app-instance name> \
    --file-path <your-target-file-path-in-your-persistent-storage-mount-path>

Szálkép létrehozása

Az alábbi paranccsal létrehozhatja az alkalmazás szálképét az Azure Spring Appsben.

az spring app deployment generate-thread-dump \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --app <app-name> \
    --deployment <deployment-name> \
    --app-instance <app-instance name> \
    --file-path <your-target-file-path-in-your-persistent-storage-mount-path>

JFR indítása

Az alábbi paranccsal indítsa el a JFR-t az alkalmazáshoz az Azure Spring Appsben.

az spring app deployment start-jfr \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --app <app-name> \
    --deployment <deployment-name> \
    --app-instance <app-instance name> \
    --file-path <your-target-file-path-in-your-persistent-storage-mount-path> \
    --duration <duration-of-JFR>

Az alapértelmezett érték duration 60 másodperc.

Memóriakép létrehozása az Azure Portal használatával

Az alábbi lépésekkel hozhatja létre az alkalmazás halom- vagy szálképét az Azure Spring Appsben.

  1. Az Azure Portalon keresse meg a célalkalmazást, majd válassza a Hibaelhárítás lehetőséget.

    Képernyőkép az Azure Portalról, amelyen az alkalmazás áttekintési lapja látható, és a Hibaelhárítás gomb ki van emelve.

  2. A Hibaelhárítás panelen válassza ki az alkalmazáspéldányt és a gyűjtendő memóriakép típusát.

    Képernyőkép az Azure Portal hibaelhárítási paneljéről.

  3. A Fájl elérési útja mezőben adja meg az állandó tár csatlakoztatási útvonalát.

  4. Válassza a Gyűjtés lehetőséget.

Diagnosztikai fájlok lekérése

Keresse meg a célfájl elérési útját az állandó tárolóban, és keresse meg a memóriaképet/JFR-t. Innen letöltheti őket a helyi gépére. A létrehozott fájl neve hasonló <app-instance>_heapdump_<time-stamp>.hprof lesz a halomképhez, <app-instance>_threaddump_<time-stamp>.txt a szálképhez és <app-instance>_JFR_<time-stamp>.jfr a JFR-fájlhoz.

Következő lépések