2016-10-17 6 views
0

Ich habe meine Python-App durch uWSGI ausgeführt. In seltenen Fällen wird die App auf einen Fehler stoßen, durch den sie nicht geladen werden kann. An diesem Punkt, wenn ich Anfragen an uWSGI sende, erhalte ich den Fehler no python application found, check your startup logs for errors. Was ich in dieser Situation gerne tun würde, ist, dass uWSGI einfach so stirbt, dass das Programm, das es verwaltet (Supervisor, in meinem Fall), es neu starten kann. Gibt es eine Einstellung oder etwas, das ich verwenden kann, um dies zu erzwingen?Wie man uWSGI zum Absturz bringt, wenn ein Fehler auftritt?

Weitere Informationen über meine Einrichtung: Python 2.7 App wird durch uWSGI in einem Andock-Container ausgeführt. Der Andockcontainer wird von Supervisor verwaltet, und wenn er abstürzt, wird er von Supervisor neu gestartet. Genau das möchte ich auch.

Antwort

1

Nach einer Stunde der Suche fand ich endlich einen Weg, dies zu tun. Übergeben Sie einfach das --need-app Argument, wenn Sie uWSGI starten, oder fügen Sie in Ihrer INI-Datei need-app = true hinzu, wenn Sie die Dinge auf diese Weise ausführen. Keine Ahnung, warum das standardmäßig deaktiviert ist (in welcher Situation würdest du jemals wollen, dass uWSGI weiter läuft, wenn deine App gestorben ist?), Aber so geht es.

+0

Ich bin froh, dass Sie eine Antwort gefunden haben, aber es scheint, dass Sie diesen Teil beheben sollten: _Rely, die App wird einen Fehler auftreten, der es nicht in der Lage, – IanAuld

+0

@IanAuld 100% laden kann. Aber unerwartete Fehler passieren, und ich möchte zumindest eine Art von Backup haben, wenn sie es tun. Um zu verdeutlichen, ist dies nicht derselbe Fehler und ich ignoriere ihn einfach. Ich habe mich auf die Menge aller unerwarteten Fehler bezogen, die passieren können. – Eli

Verwandte Themen