Cronjob verschickt nicht mehr alle E-Mails

Cronjob verschickt nicht mehr alle E-Mails

von Elena Spyrou -
Anzahl Antworten: 10

Hallo zusammen

Wir haben vor Kurzem ein Update von Moodle 3.9.3 auf 3.11.4+ gemacht (inkl. Update von PHP 7.2 auf 7.3). Nun haben wir aber festgestellt, dass der Cronjob von Moodle teilweise nicht mehr ausgeführt wird bzw. E-Mails nicht mehr verschickt. In den Task-Logdaten steht nur "fehlgeschalgen" und in den Details, dass der Job ausgeführt worden ist.

Wie kann ich nun detaillierter prüfen, weshalb der Cron fehlgeschlagen ist? Und gibt es eine Übersicht mit den gesendeten bzw. nicht gesendeten E-Mails?

Danke euch schon im Voraus für eure Hilfe.


Gruss

Elena


Mittelwert:  -
Als Antwort auf Elena Spyrou

Re: Cronjob verschickt nicht mehr alle E-Mails

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Es werden immer mehr einzelne Aufgaben als Hintergrundprozesse abgearbeitet. Das heisst, ihr Logs erscheinen nicht mehr in den Cron-Logs. Du kannst den Zustand der Prozesse unter dein-moodle/admin/tool/task/scheduledtasks.php untersuchen und ggf. manuell eingreifen. Siehe https://docs.moodle.org/311/en/Administration_via_command_line#Scheduled_tasks.
Als Antwort auf Visvanath Ratnaweera

Re: Cronjob verschickt nicht mehr alle E-Mails

von Elena Spyrou -
Hallo Visvanath

Vielen Dank für deine Hilfe.

Ich habe zuerst mit "$ sudo -u www-data /usr/bin/php /var/www/html/moodlebbzg/admin/cli/cron.php -l" herausgefunden, welche Tasks "hängen" bleiben.

$ sudo -u www-data /usr/bin/php /var/www/html/moodlebbzg/admin/cli/cron.php -l
The list of currently running tasks:
PID HOST TYPE TIME CLASSNAME
16284 dmz13 scheduled 6 Tage 13 Stunden \tool_brickfield\task\update_summarydata
10313 dmz13 scheduled 8 Sekunden \core\task\registration_cron_task

Wenn ich diese dann mit "$ php schedule_task.php --showsql --showdebugging --execute="\tool_brickfield\task\update_summarydata"" sehe ich nur die SQL-Queries:
--------------------------------
SELECT * FROM mdl_task_scheduled WHERE classname = ?
[array (
0 => '\\tool_brickfield\\task\\update_summarydata',
)]
--------------------------------
Query took: 0.00021100044250488 seconds.
--------------------------------
--------------------------------
SELECT * FROM mdl_user WHERE id = ? AND deleted = ?
[array (
0 => '2273',
1 => 0,
)]
--------------------------------
Query took: 0.00020813941955566 seconds.
--------------------------------
[..]

Gibt es noch andere Möglichkeiten, direkten Einfluss auf die "hängengebliebenen" Tasks zu nehmen? Und gibt es irgendwo eine Übersicht mit den gesendeten bzw. zu sendenden E-Mails von den Tasks?
Den Task von tool_brickfield habe ich im Web-GUI bereits deaktiviert, aber er läuft trotzdem noch weiter. Kann ich einzelne Tasks stoppen?

Gruss
Elena
Als Antwort auf Elena Spyrou

Re: Cronjob verschickt nicht mehr alle E-Mails

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Hast du "Background processing" abgeschaltet und versucht?

Du kennst Site administration > Server > Tasks > Scheduled tasks, oder?
Als Antwort auf Visvanath Ratnaweera

Re: Cronjob verschickt nicht mehr alle E-Mails

von Elena Spyrou -
> Hast du "Background processing" abgeschaltet und versucht?
Wie/wo kann ich das machen?

> Du kennst Site administration > Server > Tasks > Scheduled tasks, oder?
Ja, dort habe ich auch schon nachgeschaut. Das Problem ist, dass auch beim Klicken auf den Feldstecher bei den fehlgeschlagenen Tasks nur ersichtlich ist, dass diese ausgeführt wurden, aber nicht wieso sie fehlgeschlagen sind. Hier ein Beispiel:
Execute scheduled task: Website-Registrierung (core\task\registration_cron_task)
... started 13:53:01. Current memory use 19.2MB.
Als Antwort auf Elena Spyrou

Re: Cronjob verschickt nicht mehr alle E-Mails

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Vielleicht hilft das: https://moodle.org/mod/forum/discuss.php?d=430740#p1734175.

Sonst von tool_brickfield weiss ich nichts. Bis Moodle-Rel. 3.9 ist mir nie begegnet. Scheint was neues zu sein.
Als Antwort auf Visvanath Ratnaweera

Re: Cronjob verschickt nicht mehr alle E-Mails

von Dag Klimas -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Deutsche Moodle Übersetzer Nutzerbild von Translators
Moin,

vielleicht hilft es dir schon unter Website-Administration - Zusatzoptionen - Tools zur Barrierefreiheit aktivieren/enableaccessibilitytools zu deaktivieren.

Viel Erfolg!
Dag
Als Antwort auf Dag Klimas

Re: Cronjob verschickt nicht mehr alle E-Mails

von Elena Spyrou -
Hallo Dag

Vielen Dank für den Tipp. Habe die Zusatzoption deaktiviert. Der Cron läuft aber trotzdem noch weiter und E-Mails werden leider auch keine verschickt. Gibt es denn seitens Moodle eine Möglichkeit, die Mailqueue (also nicht die vom System sondern von Moodle selber) einzusehen?

Gruss
Elena
Als Antwort auf Elena Spyrou

Re: Cronjob verschickt nicht mehr alle E-Mails

von Visvanath Ratnaweera -
Nutzerbild von Besonders aktive Moodler Nutzerbild von Translators
Hallo Elena

Ich bin nicht Dag. Aber bin immer wieder mit "Forummails werden nicht zugestellt" unterwegs und dachte die Befunde kannst du auch brauchen.

Zur Theorie: Moodle ist kein Mail-Server (MTA, Message Transfer Agent) sondern nur ein Mail-Client (MUA, Mail User Agent). Ergo führt Moodle keine Warteschlange für Mails. Eine Warteschlange gibt es schon, in Form von Tasks. Diese Tasks lösen die Sende-Prozedere aus, genau wie wenn du im Thunderbird ein Mail sendest. Entweder geht das Mail los oder eben nicht. Ähnlich übergibt Moodle das Mail an die Gegenstelle. Sie nimmt es entgegen. Ist aber frei um weiterzuleiten oder in seine Warteschlange zu stellen (Delay) oder einen Fehler auszulösen (Bounce). Das wärs.

Dein Fall scheint komplex zu sein, denn der Mail-Test meldet Erfolg. An wen sendest du die Testmails? Das spielt eine Rolle. Was ist die Mail-Adresse von 'admin'? Was ist dein "noreply" Adresse? Statt all das zu spekulieren, sollst du das Log beim Senden von Mails und was die Gegenstelle anschauen und/oder die "bounced" Mail abfangen und lesen.

Was ist überhaupt die Gegenstelle, ich meine deinmoodle/admin/category.php?category=email -> SMTP hosts (smtphosts)? Die "noreply" ist weiter unten.
Als Antwort auf Elena Spyrou

Re: Cronjob verschickt nicht mehr alle E-Mails

von Ralph Ballier -
Nutzerbild von Besonders aktive Moodler
Hallo Elena,

am besten, erst einmal das Versenden von Mail generell testen. Dazu eine Testmail verschicken und die anderen Einstellungsmöglichkeiten auf dieser Seite (siehe unten) ansehen.

Gruß
Ralph




Als Antwort auf Ralph Ballier

Re: Cronjob verschickt nicht mehr alle E-Mails

von Elena Spyrou -
Hallo Ralph

Danke vielmals für deinen Tipp.
Der Versand der Test E-Mail funktioniert einwandfrei.

Gruss
Elena