Fragen rund um CronJob: Optimierung der Check-Ups

Neben dem Programmieren umfangreicher Problemlösungen finden wir von den Conversion-Junkies auch Möglichkeiten und Wege, kleinere Hindernisse aus der Welt zu schaffen. So beispielsweise im Umgang mit CronJobs und deren Überprüfung. Wie genau wir uns den Arbeitsalltag erleichtert haben und warum auch du einen Nutzen daraus ziehen kannst, erfährst du hier!

Was ist eigentlich ein CronJob?

Ganz einfach gesagt: eine (meist wiederkehrende) Aufgabe, die innerhalb eines Betriebssystems automatisch abläuft, in unserem Fall Linux. Dieser Task sendet einen Impuls an verschiedene Tools und löst dort neue Prozesse aus.

CronJobs kannst du beispielsweise zum Verschicken von E-Mails verwenden, um in Shopware Bilder und ähnliches aufzuräumen oder Daten auszulesen. Wir nutzen es unter anderem zum Zusammentragen von Werten für Repricing-Analysen. Dieses eigentlich so simple Tool hat jedoch auch seine Schwächen.

Worin bestand die Problematik?

Eine der größten Schwachstellen von CronJobs ist, dass sie manchmal nicht ausgeführt werden. Ein eindeutiger Grund lässt sich hierfür häufig nicht feststellen. Beispielsweise könnte es am Arbeitsspeicher liegen oder dass im Hintergrund ein anderer Vorgang nicht korrekt gelaufen ist.

Fehlt aber der Impuls, findet auch der gewünschte Prozess nicht statt. Damit es hier nicht zu größeren Problemen kommt, braucht es theoretisch eine händische Überprüfung der einzelnen Anstöße. Bei einer hohen Aufgabenlast ist eine solche allerdings nicht möglich. Hierfür müssten wir uns bzw. du dich durch eine sehr lange Liste an Log-Einträgen arbeiten.

Das wäre nicht nur zeitaufwendig, sondern ist schlichtweg, bei täglich hunderten ablaufenden Prozessen, nicht realisierbar. Das Problem: Startet der Prozess nicht und werden die Logs nicht überprüft, stellt man es meist erst durch die nachfolgenden Ausfallerscheinungen fest. Also zum Beispiel anhand eines Newsletters, der nicht versendet wurde.

Wie haben wir die CronJob-Check-ups optimiert?

Um uns das Ganze zu erleichtern und sicherzustellen, dass alle CronJobs gelaufen sind, hat unser Team ein einfaches Tool programmiert, das uns den Großteil der Arbeit abnimmt. Alle Aufgaben werden hierfür übersichtlich in einer Liste dargestellt und farblich markiert, ob diese gelaufen sind oder nicht. Auf diese Weise können wir hunderte Prozesse in nur wenigen Sekunden kontrollieren und bei Ausfall direkt an die entsprechende IT-Abteilung weiterleiten. Das reine Überprüfen dieser Listen ist an alle Mitarbeiter:innen outsourcebar.

Eine Tabelle mit grün und rot markierten CronJob-Prozessen

Hier siehst du sowohl gelaufene als auch nicht gelaufene Prozesse

Unser Tool kann dabei nach zwei unterschiedlichen Prinzipien verfahren: Push und Pull. Darunter verstehen wir Folgendes:

  • Push: Die CronJobs melden sich bei unserem Tool, sobald sie gelaufen sind. Dafür muss es jedoch immer von außen erreichbar sein.
  • Pull: Unser Werkzeug holt sich die entsprechenden Informationen von den einzelnen Aufgaben. Auch diese Schnittstellen müssen entsprechend erreichbar sein.

Warum ist das für dich relevant? Ganz einfach: Wir von den Conversion-Junkies können mit dieser Art von Tool sicherstellen, dass jegliche interne Programme und Prozesse, die wir für dich erarbeiten, ohne Probleme laufen. Denn nur mit nutzbringender Software sparen wir Zeit und können uns auf die gemeinsame Erreichung deiner Ziele konzentrieren. Interessiert? Dann nimm jetzt mit uns Kontakt auf. Wir freuen uns bereits auf die Zusammenarbeit!