Prüfen Sie, ob die verzögerte job läuft in Schienen
Entwerfe ich eine status-Seite, wo ich zeigen müssen, ob die verzögerte job ausgeführt wird. Bitte helfen Sie mir, einen Weg zu finden, es in den code.
Bin mit
Schienen 3.0.20,
ruby 1.8.7 (2011-06-30 patchlevel 352), und
delayed_job 3.0.4
InformationsquelleAutor Virtual | 2013-02-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
mit Rails4 können Sie über ssh in deinen server und gehe in die /aktuellen Ordner innerhalb Ihrer app ausführen:
RAILS_ENV=production script/delayed_job status
aktualisieren Sie das Projekt von rails 3?
Ja, ich habe ein upgrade von rails 3.
InformationsquelleAutor pastullo
Können Sie verwenden
RAILS_ENV=production script/delayed_job status, wenn Sie Ihre Prüfung in der Produktion-Modus
InformationsquelleAutor Niket
Derzeit der beste Weg, ich kann denken, um sicherzustellen, die
delayed_job daemon
immer ausgeführt wird, fügen Sie eininitializer
für unsere Rails-Applikation, die prüft, ob der daemon läuft. Wenn es nicht läuft, dann ist dieinitializer
beginnt diedaemon
ansonsten lässt es sein.Nun die Frage ist also, wie können wir feststellen, dass die
Delayed_Job daemon
läuft aus in einem Skript?Der einfache Weg-
Überprüfen Sie für die Existenz der Dämonen
PID file
("Datei.gibt es? ...). Wenn es da ist dann davon auszugehen, dass Sie laufen sonst starten Sie es.Wie starten Sie die Arbeiter im Skript? Würde das Skript/delayed_job neu starten, Arbeit?
InformationsquelleAutor My God
Die am meisten einfache Weise, zu überprüfen, ob delayed_job ausgeführt wird oder nicht, ist zu prüfen, in
locked_by
Feld.Dieses Feld enthält die Arbeitnehmer oder die Prozess-Verriegelung/Bearbeitung des Auftrags.
Läuft
Delayed::Job.where('locked_by is not null')
geben Sie einige Ergebnisse, wenn es Aufträge ausführen.Außerdem können Sie eine Uhrwerk Aufgabe ausführen dieser Abfrage, um zu überprüfen, auf diesen status.
Hoffe, das hilft.
InformationsquelleAutor Ron
Überprüfen der job-status etc können Sie delayed_job_web Juwel, das trägt alles die jobs in die Warteschlange eingereiht. Und um sicherzustellen, dass Sie läuft die ganze Zeit installieren, monit. Hier den railscast. Hier weitere Informationen über das konfigurieren von monit für delayed_job
InformationsquelleAutor benchwarmer
Überprüfen Wie kann ich ermitteln, ob eine andere Prozess-id ausgeführt wird, die mit Java oder JRuby auf Linux?
InformationsquelleAutor Zernel