Cronjob läuft nachträglich nicht automatisch?

  • Ich habe mir einen Cronjob erstellt, der eigentlich nachts ein paar Daten syncronisieren soll. Wenn ich diesen manuell auslöse, dann macht er seine Arbeit auch einwandfrei.

    Nur in der Testumgebung wird der Cronjob nicht automatisch ausgeführt, obwohl dieser aktiviert ist.

    Gut. zu dem Zeitpunkt (hier 6:00 Uhr an jedem Tag und an jedem Monat) soll der Cronjob laufen. Klar ist zu diesem Zeitpunkt teilweise keiner im Forum unterwegs. Aber werden die Cronjobs, die schon hätte laufen müssen, nicht automatisch nochmals abgefeuert? Oder tun Sie das nur, wenn man auch als Benutzer sich im Forum bewegt zu dem entsprechenden Zeitpunkt?

    Wie kann ich denn ein Cronjob auch definitiv nachträglich ausführen lassen?


    hier mal meine cronjob.xml vom Paket. Gibt es da noch eine Einstellung die fehlt oder falsch ist? Ziel ist es, jeden Tag egal wann um 6:00 Uhr den Sync laufen zu lassen.


    Fehlt da noch was?

  • Cronjobs werden nur ausgeführt, wenn im Frontend Besucher unterwegs sind. Wenn Du einen Server hast oder Webspace mit echten Cronjobs, würde ich den Cronjob extern anstoßen lassen.

  • Kann es sein, dass das System mit der Zeile <active>1</active> nichts anfangen kann? Spontan würde ich darauf verzichten. Für diesen Zweck ist mir eigentlich nur <isDisabled> </isDisabled> bekannt. Der Rest der xml erscheint mir korrekt. Eigentlich sollte die unbekannte Anweisung die Ausführung auch nicht verhindern, sondern schlicht ignoriert werden, aber man weiß ja nie.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Cronjobs werden nur ausgeführt, wenn im Frontend Besucher unterwegs sind. Wenn Du einen Server hast oder Webspace mit echten Cronjobs, würde ich den Cronjob extern anstoßen lassen.

    Ja das ist mir ja bekannt… aber werden die Cronjobs auch nachträglich ausgeführt? Sprich um 6:00 Uhr soll er laufen aber zu dem Zeitpunkt ist keiner im Forum unterwegs. Wenn jetzt ein Benutzer um 7 Uhr sich im Frontend bewegt, werden kann die Cronjobs die vorher hätten laufen sollen noch ausgeführt?
    Und das ich der richtigen Reihenfolge?

    Wenn nicht, kann man es dennoch irgendwie programmieren, dass die nachträglich noch ausgeführt werden?

    Kann es sein, dass das System mit der Zeile <active>1</active> nichts anfangen kann? Spontan würde ich darauf verzichten. Für diesen Zweck ist mir eigentlich nur <isDisabled> </isDisabled> bekannt. Der Rest der xml erscheint mir korrekt. Eigentlich sollte die unbekannte Anweisung die Ausführung auch nicht verhindern, sondern schlicht ignoriert werden, aber man weiß ja nie.


    Gruß norse

    Mmm also beim installieren gibt es keine Fehlermeldung… und der wird auch korrekt angelegt. Ich lasse mal die Zeile weg… muss ich denn die andere Zeile isDisabled auf 0 setzen?
    Welche Zeilen oder Tags kann denn das Crinjob PiP alles?

  • muss ich denn die andere Zeile isDisabled auf 0 setzen?


    Meine Wissens kannst Du die einfach weg lassen. Siehe auch die cronjob.xml im WSC.

    Welche Zeilen oder Tags kann denn das Crinjob PiP alles?


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Hallo,

    Kann es sein, dass das System mit der Zeile <active>1</active> nichts anfangen kann? Spontan würde ich darauf verzichten. Für diesen Zweck ist mir eigentlich nur <isDisabled> </isDisabled> bekannt. Der Rest der xml erscheint mir korrekt. Eigentlich sollte die unbekannte Anweisung die Ausführung auch nicht verhindern, sondern schlicht ignoriert werden, aber man weiß ja nie.

    Das hat hier keine Auswirkungen und hätte wenn überhaupt nur Auswirkungen im Installationsprozess: Wenn das Paket sauber durchinstalliert, dann passt es. Nichtsdestotrotz sollten solche ungenutzten Anweisungen natürlich nicht existieren und wir erhöhen zunehmend die Striktheit im Paketsystem, damit solche Fehler direkt auffallen, sonst sucht man sich bei einem Tippfehler nämlich dämlich …

    In der package.xml führen unbekannte Tags mit WoltLab Suite 6.0 beispielsweise zu einem Fehler.

    Ja das ist mir ja bekannt… aber werden die Cronjobs auch nachträglich ausgeführt? Sprich um 6:00 Uhr soll er laufen aber zu dem Zeitpunkt ist keiner im Forum unterwegs. Wenn jetzt ein Benutzer um 7 Uhr sich im Frontend bewegt, werden kann die Cronjobs die vorher hätten laufen sollen noch ausgeführt?

    Ja, Cronjobs werden nachgeholt. Beziehungsweise werden sie ausgeführt, sobald der nächste Ausführungszeitpunkt (sichtbar im ACP) in der Vergangenheit liegt.

  • Dann muss ich einen Fehler melden. Tim Düsterhus .

    Im Testforum ist ein Cronjob aktiv, der jeden Tag um 6 Uhr starten soll. Das Forum wird jeden Tag besucht. Und seit 3 Tagen lief der Cronjob nicht.

    Nur immer dann, wenn ich Ihn manuell ausgeführt hatte.

    Man sieht auch, die anderen Cronjobs laufen ebenfalls nicht korrekt nachträglich automatisch...


    Oder liegt es eventuell am Wartungsmodus, der ist derzeit aktiv...


    Der Screenshot ist heute erstellt worden. Im Forum war ich jeden Tag immer unterwegs. Nur zu den Zeiten, die im Cronjob eingetragen sind allerdings nicht.

    Und wie man sieht, laufen eigentlich keine Cronjobs sofort beim ersten Besuch automatisch.


    EDIT sagt: Ach, es lag am Wartungsmodus. Kaum habe ich diesen deaktiviert, laufen diese Cronjobs auch wie sie sollen...

    Ist das denn so gewollt?

  • Also wäre diese XML derzeit korrekt:


    ? norse  Tim Düsterhus

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!