Cronjob-Logs per Mail nur, wenn Fehler auftreten

Locked
jacboy
Posts: 125
Joined: Mon 29. Jan 2018, 16:59
Location: Stuttgart
Contact:

Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by jacboy »

Hallo,

ich habe nach diesem Einwurf von Tobi habe ich nun erfolgreich die von mir benötigten Cronjobs konfigurieren können.
Jedoch besteht das Problem, dass ich nun alle paar Minuten eine Mail vom Server bekomme, dass der Cronjob ausgeführt wurde. Ich würde das gerne nur auf Problemfälle beschränken. Meine Einstellungen sehen so aus:

Bildschirmfoto 2018-02-01 um 13.22.00.png
Das Script so:

Code: Select all

#!/usr/bin/php
<?php
$urls = array(
				"https://cloud.jacboy.com/cron.php",
				);
				
foreach ($urls AS $url){
	echo "\n\n";
	echo "TIME: ".date("d.m.Y H:i:s")."\n";
	echo "starte Cron URL : ".$url."\n\n";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_HEADER, 0);
	curl_exec($ch);
	curl_close($ch);
	echo "\n\n=====================================\n";
}
				

?>

Gibt es da eine Möglichkeit?


J
User avatar
Martin
Posts: 984
Joined: Wed 20. Jan 2016, 00:43

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by Martin »

Hallo,

die Mail erfolgt mit der Textausgabe des Cronjobs. D.H. sofern der Job selbst nur bei einem Fehler eine Ausgabe erzeugt, so wird auch nur dann der Fehler erzeugt.

Alternativ kann man nur STOUT nach /dev/null umleiten und STERR beibehalten, so würde bei einer Ausgabe des jeweiligen Tasks eine Mail erzeugt, bei normalen Ausgaben in STOUT aber nicht.

Alle Ausgabe unterdrücken:
Befehl > /dev/null 2>&1

Nur normale Ausgabe unterdrücken:
Befehl > /dev/null
Viele Grüße,
Martin
User avatar
Tobi
Community Moderator
Posts: 2832
Joined: Thu 5. Jan 2017, 13:24

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by Tobi »

Martin wrote: Thu 1. Feb 2018, 14:10 Gibt es da eine Möglichkeit?
Die gibt es immer :D

Ich habe mir mal die Ausgabe deines Crons angeschaut.

Code: Select all

{"status":"success"}
Diesen Wert müsste man auswerten und entsprechend reagieren.

Wenn ich Martin richtig verstanden habe, wird die Mail durch die Ausgabe des Cronjob-Scriptes bereits getriggert.
Also müsste man zuerst curlen, dann auswerten und erst anschließend im Fehlerfall eine Ausagbe erzeugen.

Solange deine Script auf eine URL bzw. einen zu erwartenden Rückgabewert beschränkt ist sollte diese Anpassung recht einfach sein. Schwieriger wird es wenn verschiedene URLs unterschiedliche Rückgabewerte liefern.

Außerdem ist auch eine Routine-Mail alle X Minuten nicht verkehrt. So kann man sich jederzeit sicher sein, daß der Cron auch ausgeführt wurde.

Ich würde ganz pragmartisch eine E-Mail Filterregel im Mailprogramm oder online einrichten und die Status-Mails in einen definierten Ordner verschieben. Diesen kann man dann bei Bedarf händisch leeren.

Habe grade geguckt. Aktueller Stand bei mir 19.107 Mails. Ich komme mir vor wie Tim Bendzko :mrgreen:
https://youtu.be/4BAKb2p450Q?t=2m50s
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
jacboy
Posts: 125
Joined: Mon 29. Jan 2018, 16:59
Location: Stuttgart
Contact:

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by jacboy »

Hi,

@martin danke dir für die Erläuterung. Man lernt immer wieder dazu! :)
Tobi wrote: Thu 1. Feb 2018, 15:07 Außerdem ist auch eine Routine-Mail alle X Minuten nicht verkehrt. So kann man sich jederzeit sicher sein, daß der Cron auch ausgeführt wurde.

Ich würde ganz pragmartisch eine E-Mail Filterregel im Mailprogramm oder online einrichten und die Status-Mails in einen definierten Ordner verschieben. Diesen kann man dann bei Bedarf händisch leeren.
Jo, werde ich jetzt wohl erst mal machen.
Wenn ich in Roundcube einen Filter erstelle, läuft das ja automatisch, wenn ich richtig informiert bin? Ich muss mich also nicht ständig aufm Webmail einloggen, das läuft praktisch "serverseitig"? Ansonsten müsste ich überall Filter einrichten, was leider nicht auf jedem Endgerät praktikabel ist - außerdem wechsle ich meine Smartphones recht häufig, das ist dann nur noch mehr Routine :D



J
User avatar
Martin
Posts: 984
Joined: Wed 20. Jan 2016, 00:43

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by Martin »

Hallo,

Roundcube stellt für die Filter effektiv ein Interface für den Sievedienst von Dovecot dar, d.H. die dort angelegten Regeln werden beim Empfang direkt durch den IMAP Server behandelt und die Mails entsprechend in die IMAP Ordner einsortiert. Für den Zugriff auf Mails muss daher nicht auf Roundcube zurückgegriffen werden, die Nutzung als Regeleditor reicht ;).
Natürlich wäre es zudem auch möglich einen beliebigen anderen Sieve Editor zu nutzen, für Thunderbird gibt es hier z.B. ein entsprechendes Plugin. Persönlich fand ich die Bedienung dieses Plugins aber eher dürftig, sodass ich hier zur Nutzung von Roundcube als Regeleditor raten würde.
Viele Grüße,
Martin
jacboy
Posts: 125
Joined: Mon 29. Jan 2018, 16:59
Location: Stuttgart
Contact:

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by jacboy »

Guten Abend,
Martin wrote: Thu 1. Feb 2018, 20:01 Roundcube stellt für die Filter effektiv ein Interface für den Sievedienst von Dovecot dar, d.H. die dort angelegten Regeln werden beim Empfang direkt durch den IMAP Server behandelt und die Mails entsprechend in die IMAP Ordner einsortiert. Für den Zugriff auf Mails muss daher nicht auf Roundcube zurückgegriffen werden, die Nutzung als Regeleditor reicht ;).
Regulär verwende ich auf dem Desktop mein Apple Mail, mobil ist es Gmail. Mein Hauptproblem wäre dabei halt, dass ich mobil die Filter immer wieder einrichten muss. Jedoch gut, dass die Regeln dann serverseitig sind, dann richte ich das ein Ma ein und genieße das automatische Filtern auf allen Geräten. :D
Martin wrote: Thu 1. Feb 2018, 20:01 Natürlich wäre es zudem auch möglich einen beliebigen anderen Sieve Editor zu nutzen, für Thunderbird gibt es hier z.B. ein entsprechendes Plugin. Persönlich fand ich die Bedienung dieses Plugins aber eher dürftig, sodass ich hier zur Nutzung von Roundcube als Regeleditor raten würde.
Fällt für mich eh raus, da das Thunderbird für den Mac echt eklig ist. Die Windows-Version nutze ich gerne, auf dem Mac jedoch eher das hauseigene Mail-Program.
User avatar
Alexander
Keyweb AG
Posts: 3842
Joined: Wed 20. Jan 2016, 02:23

Re: Cronjob-Logs per Mail nur, wenn Fehler auftreten

Post by Alexander »

Zur Ursprünglichen Frage:
Cronjob-Logs per Mail nur, wenn Fehler auftreten

Hier auch nochmal der Verweis auf diesen Beitrag:
viewtopic.php?f=7&t=1367&p=5001#p5001
Mit freundlichen Grüßen / Best regards
Alexander Mahr

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
Locked