Ich benutze Luigi, um eine Pipeline zu starten. Nehmen wir ein einfaches exemple nehmenKann Luigi eine Ausnahme propagieren oder ein Ergebnis zurückgeben?
task = myTask()
w = Worker(scheduler=CentralPlannerScheduler(), worker_processes=1)
w.add(task)
w.run()
Lassen Sie uns jetzt sagen, dass myTask
eine Ausnahme während der Ausführung erzieht. Alles, was ich haben kann, ist ein Log von Luigi, der die Ausnahme zeigt.
Gibt es eine Möglichkeit, dass Luigi es propagieren könnte oder zumindest einen failure
Status zurückgeben?
Ich wäre dann in der Lage, mein Programm in Abhängigkeit von diesem Zustand reagieren zu lassen.
Danke.
BEARBEITEN Ich habe vergessen zu spezifizieren, dass luigis Ausgaben eine Datenbank zielen, wenn ich das Ergebnis speichere. Wenn eine Ausnahme ausgelöst wird, wird kein Ergebnis gespeichert, aber die Ausnahme wird nicht a luigi verbreitet. Ich habe mich gefragt, ob Luigi eine Option dafür haben könnte.
Was meinen Sie propagieren es oder einen Fehlerstatus zurückgeben? Überall, wo das Programm fehlschlägt, können Sie eine except-Klausel eingeben, und dann können Sie die except-Klausel verwenden, um in die luigi-Ausgabe zu schreiben. Dann könnten Sie den Luigi-Ausgang einlesen und entsprechend reagieren. –
Entschuldigung, Ihr Kommentar hat mir klar gemacht, dass ich genauer auf die Art und Weise eingehen muss, wie ich Luigi und die Ausgabe verwende. Ich bearbeite. – MathiasDesch