Veelvoorkomende problemen met afsluitcode in Azure Spring Apps oplossen

Notitie

Azure Spring Apps is de nieuwe naam voor de Azure Spring Cloud-service. Hoewel de service een nieuwe naam heeft, ziet u de oude naam op sommige plaatsen terwijl we werken aan het bijwerken van assets, zoals schermopnamen, video's en diagrammen.

Dit artikel is van toepassing op: ✔️ Enterprise ✔️ Basic/Standard

In dit artikel worden de acties beschreven die u kunt ondernemen wanneer uw toepassing in Azure Spring Apps wordt afgesloten met een foutcode. Mogelijk ontvangt u een foutcode als de implementatie van uw toepassing mislukt of als de toepassing wordt afgesloten wanneer deze wordt uitgevoerd.

Afsluitcodes

De afsluitcode geeft de reden aan waarom de toepassing is beëindigd. In de volgende lijst worden enkele algemene afsluitcodes beschreven:

  • 0 : de toepassing is afgesloten omdat deze is voltooid. Werk uw servertoepassing zo bij dat deze continu wordt uitgevoerd.

    Geïmplementeerde Azure-apps in Azure Spring Apps moeten continu services bieden. Een afsluitcode van 0 geeft aan dat de toepassing niet continu wordt uitgevoerd. Controleer uw logboeken en broncode.

  • 1 : als de toepassing wordt afgesloten met een afsluitcode die niet nul is, voert u fouten in de code en gerelateerde services uit en implementeert u de toepassing opnieuw.

    Houd rekening met de volgende mogelijke oorzaken van een afsluitcode die niet nul is:

    • Er is iets mis met uw Spring Boot-configuratie.

      U hebt bijvoorbeeld een parameter spring.db.URL nodig om verbinding te maken met de database, maar deze is niet gevonden in uw configuratiebestand.

    • U bent niet verbonden met een service van derden.

      U moet bijvoorbeeld verbinding maken met een Redis-service, maar de service werkt niet of is niet beschikbaar.

    • U hebt onvoldoende toegang tot een service van derden.

      U moet bijvoorbeeld verbinding maken met Azure Key Vault om certificaten in uw toepassing te importeren, maar uw toepassing beschikt niet over de benodigde machtigingen voor toegang.

    • Als uw toepassing een statisch bestand of een dynamische front-endtoepassing is die wordt geleverd door een webserver, raadpleegt u de sectie Veelvoorkomende build- en implementatiefouten van statische webbestanden implementeren.

  • 137 - De toepassing wordt onmiddellijk beëindigd door het hostingplatform zonder respijtperiode. Deze afsluitcode kan het resultaat zijn van een van de volgende scenario's:

    • Wanneer de liveness-controle mislukt, wordt de toepassing door het hostingplatform onmiddellijk beëindigd nadat de toepassing is beëindigd en wordt gewacht op een respijtperiode. Zorg ervoor dat uw toepassing correct afsluit.

    • De toepassing is afgesloten vanwege een fout met onvoldoende geheugen. De toepassing heeft resources aangevraagd die het hostingplatform niet heeft opgegeven. Werk de JVM-parameters (Java Virtual Machine) van uw toepassing bij om het resourcegebruik te beperken of om toepassingsresources op te schalen.

      Als de toepassing een Java-toepassing is, controleert u de JVM-parameterwaarden. Ze kunnen de geheugenlimiet van uw toepassing overschrijden.

      Stel dat u de parameter Xmx JVM instelt op 10 GB, maar dat de toepassing maximaal 5 GB geheugen gebruikt. Verlaag de Xmx-waarde of verhoog het geheugen van de toepassing om ervoor te zorgen dat de waarde van de Xmx-parameter lager of gelijk is aan de geheugenlimiet van de toepassing.

  • 143 - De toepassing is afgesloten omdat de toepassing niet kon reageren op een statuscontrole vanwege een fout buiten het geheugen of een andere fout.

    Deze foutcode wordt meestal gegenereerd door een out-of-memory-fout. Zie Problemen met opnieuw opstarten van apps die worden veroorzaakt door problemen met onvoldoende geheugen voor meer informatie.

    U kunt ook details ophalen uit het toepassingslogboek met behulp van de azure CLI az spring app logs command. Zie Stream Azure Spring Apps-toepassingsconsolelogboeken in realtime voor meer informatie.

Volgende stappen