Sdílet prostřednictvím


Řešení běžných problémů s ukončovacím kódem ve službě Azure Spring Apps

Poznámka:

Plány Basic, Standard a Enterprise budou od poloviny března 2025 vyřazeny ze 3letého období vyřazení. Doporučujeme přejít na Azure Container Apps. Další informace najdete v oznámení o vyřazení Azure Spring Apps.

Od 30. září 2024 bude od 30. září 2024 zastaralý plán s úplným vypnutím po šesti měsících. Doporučujeme přejít na Azure Container Apps. Další informace najdete v tématu Migrace spotřeby Azure Spring Apps Úrovně Standard a vyhrazeného plánu do Azure Container Apps.

Tento článek se vztahuje na:✅ Enterprise ✅ Basic/Standard

Tento článek popisuje akce řešení potíží, které můžete provést, když se aplikace ve službě Azure Spring Apps ukončí s kódem chyby. Kód chyby se může zobrazit, pokud nasazení aplikace není úspěšné nebo pokud se aplikace ukončí, když je spuštěná.

Ukončovací kódy

Ukončovací kód označuje důvod ukončení aplikace. Následující seznam popisuje některé běžné ukončovací kódy:

  • 0 – Aplikace se ukončila, protože se spustila k dokončení. Aktualizujte serverové aplikace tak, aby běžela nepřetržitě.

    Nasazené aplikace Azure v Azure Spring Apps by měly nepřetržitě nabízet služby. Ukončovací kód 0 znamená, že aplikace neběží nepřetržitě. Zkontrolujte protokoly a zdrojový kód.

  • 1 – Pokud aplikace skončí s nenulovým ukončovacím kódem, laďte kód a související služby a pak aplikaci znovu nasaďte.

    Zvažte následující možné příčiny nenulového ukončovacího kódu:

    • V konfiguraci Spring Bootu se něco nepovedlo.

      K připojení k databázi potřebujete například parametr spring.db.url , ale v konfiguračním souboru se nenajde.

    • Odpojíte se od služby třetí strany.

      Musíte se například připojit ke službě Redis, ale služba nefunguje nebo není dostupná.

    • Nemáte dostatečný přístup ke službě třetí strany.

      Pokud například chcete importovat certifikáty ve vaší aplikaci, musíte se připojit ke službě Azure Key Vault, ale vaše aplikace nemá potřebná oprávnění pro přístup k ní.

    • Pokud je vaše aplikace statický soubor nebo dynamická front-endová aplikace obsluhovaná webovým serverem, přečtěte si část Běžné chyby sestavení a nasazení v části Nasazení webových statických souborů.

  • 137 - Aplikace je ukončena okamžitě hostitelským platformou bez odkladu. Tento ukončovací kód může být výsledkem jednoho z následujících scénářů:

    • Když kontrola aktivity selže, hostitelská platforma okamžitě ukončí aplikaci po pokusu o ukončení a čekání na období odkladu. Ujistěte se, že aplikace zpracovává řádné vypnutí správně.

    • Aplikace se ukončila kvůli chybě nedostatku paměti. Aplikace požadovala prostředky, které hostitelská platforma neposkytla. Aktualizujte parametry Java Virtual Machine (JVM) vaší aplikace, abyste omezili využití prostředků nebo vertikálně navyšte kapacitu prostředků aplikace.

      Pokud je aplikace aplikací v Javě, zkontrolujte hodnoty parametrů JVM. Můžou překročit limit paměti vaší aplikace.

      Předpokládejme například, že nastavíte parametr Xmx JVM na 10 GB, ale aplikace používá až 5 GB paměti. Snižte hodnotu Xmx nebo zvyšte paměť aplikace, abyste měli jistotu, že je hodnota parametru Xmx nižší nebo rovna limitu paměti aplikace.

  • 143 – Aplikace se ukončila, protože nereagovala na kontrolu stavu kvůli chybě nedostatku paměti nebo jiné chybě.

    Tento kód chyby je nejčastěji generován chybou nedostatku paměti. Další informace najdete v tématu Problémy s restartováním aplikace způsobené problémy s nedostatkem paměti.

    Podrobnosti můžete získat také z protokolu aplikace pomocí příkazu Azure CLI az spring app logs . Další informace najdete v tématu Stream protokolů konzoly aplikace Azure Spring Apps v reálném čase.

Další kroky