Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Wie kann ich Fehler des Typs „Runtime Exited“ bei der Lambda-Funktion beheben?
Lesedauer: 2 Minute
0
Meine AWS-Lambda-Funktion hat die Fehlermeldung „Runtime exited with error: exit status 129“ zurückgegeben.
Lösung
Folge diesen bewährten Methoden, um den Lambda-Funktionscode zu überprüfen, die Ursache zu ermitteln und dann den Laufzeitfehler zu beheben:
Überprüfe den Funktionscode auf Exit-Codes, die ausdrücklich Syntax wie process.exit(0), exit (), quit(), os.Exit() und Environment.Exit() aufrufen. Wenn der Funktionscode einen dieser Exit-Codes enthält, entferne ihn entweder oder ersetze ihn durch eine gültige Return-Anweisung.
Überprüfe die Amazon CloudWatch Logs für die Lambda-Funktion und bestätige den Funktionsspeicher. Lambda weist die CPU-Leistung proportional zur konfigurierten Speichermenge zu. Wenn der Speicherverbrauch das eingestellte Limit ausgeschöpft hat, musst du möglicherweise die Speichermenge erhöhen. Du kannst die einer Lambda-Funktion zugewiesene Speichermenge zwischen 128 MB und 10.240 MB konfigurieren. Du kannst den Code auch optimieren, um den Ressourcenverbrauch zu reduzieren. Weitere Informationen findest du unter Ermitteln der passenden Speichereinstellungen für eine Lambda-Funktion.
Wenn die Funktion eine Verbindung zu Backend-Datenbanken herstellt, kann die Zahl der Verbindungen zu hoch sein. Um unnötige Verbindungen zu vermeiden, initialisiere Datenbankverbindungen außerhalb des Funktionshandlers. Nachfolgende Lambda-Funktionsaufrufanfragen können diese Datenbankverbindungen wiederverwenden. Weitere Informationen findest du unter Bewährte Methoden für die Arbeit mit AWS-Lambda-Funktionen.
Versuche, beim Aufruf einer Lambda-Funktion eine inaktive Verbindung wiederzuverwenden, führen zu einem Verbindungsfehler. Um eine persistente Verbindung aufrechtzuerhalten, verwende die Keep-Alive-Direktive, die deiner Laufzeit zugeordnet ist. Weitere Informationen findest du unter Wiederverwenden von Verbindungen mit Keep-Alive in Node.js.