Skip to main content

Einrichten der Jobverwaltung

Falls Sie Squeeze nicht selbst betreiben, ist dieser Artikel nicht relevant. Vermutlich möchten Sie nur wissen, wie Jobs in der Benutzeroberfläche zu verwalten sind: Jobs über Benutzeroberfläche steuern

Einleitung

Ab Squeeze 2 sollen Jobs primär über die UI konfiguriert werden. Somit ist nur noch die Konfiguration eines einzelnen Jobs im Betriebssystems notwendig, der Rest geschieht dann über die UI.

In Squeeze 1 musste noch pro auszuführendem Job in Squeeze ein Job im Betriebssystem geplant werden. Das System ist in der Theorie weiterhin nutzbar, erzeugt allerdings administrativen Mehraufwand.

Job im Betriebssystem einrichten (ab Squeeze 2.5)

Für die Gewährleistung der zeitgesteuerten Ausführungen muss auf dem Host ein Job hinterlegt werden der das PHP-Job-Script squeezer jobs:schedule --all immer zur vollen Minute ausführt.

Dieses Skript ist verantwortlich für die eigentliche Job-Ausführung und führt je nach Parameter die Jobs aller Mandanten oder nur der angegebenen Mandanten aus.

Für weitere Informationen können alle Optionen mittels --help flag gelistet werden (siehe auch Einführung zur Squeeze 2.5 CLI):

image-1688040387563.png

Beispiel Linux

Auf Linux ist besonders darauf zu achten, dass Jobs mittels des www-data Users ausgeführt werden.

Falls SQUEEZE auf Linux betrieben wird, ist ein Cronjob (bspw. mittels sudo crontab -u www-data -e) einzurichten.

*/1 * * * * php /var/www/html/squeeze/squeezer jobs:schedule --all

Job im Betriebssystem einrichten (vor Squeeze 2.5)

Für die Gewährleistung der zeitgesteuerten Ausführungen muss auf dem Host ein Job hinterlegt werden der das PHP-Jobs-Script cli/jobs.php schedule immer zu vollen Minute ausführt.

Dieses Skript ist verantwortlich für die eigentliche Job-Ausführung und führt Jobs aller Mandanten aus.

Beispiel Linux

Auf Linux ist besonders darauf zu achten, dass Jobs mittels des www-data Users ausgeführt werden.

Falls SQUEEZE auf Linux betrieben wird, ist ein cronjob (bspw. mittels sudo crontab -u www-data -e) einzurichten.

*/1 * * * * php /var/www/html/squeeze/cli/jobs.php schedule

Beispiel Windows

In der Windows Aufgabenplanung (Task Scheduler) muss ein Task definiert werden, welcher als Trigger die folgenden Einstellungen aufweist:

  • Nach einem Zeitplan
  • Täglich
  • Wiederholen jede 1 Minute für die Dauer von 1 Tag
    Die 1 Minute kann man manuell eintragen

image-1697025935085.png

Als Aktion muss die PHP Excutable aus dem SQUEEZE Installationsverzeichnis mit den CLI script jobs.php ausgeführt werden:

  • Programm starten
  • <INSTALLATIONS_PFAD_SQUEEZE>/php/php.exe
  • Argumente: <INSTALLATIONS_PFAD_SQUEEZE>/htdocs/cli/jobs.php schedule
    (für alle Mandanten)

image-1697025969245.png

Ohne Angabe von Mandanten, werden die Jobs für alle SQUEEZE Mandanten geprüft. Der Mandant kann im Aufruf angegeben werden:

<INSTALLATIONS_PFAD_SQUEEZE>/htdocs/cli/jobs.php schedule <tenant>

Hinweis bzgl. Performance

Bei einem System mit vielen Mandanten kann es vorkommen, dass die Job-Ausführung länger dauert. Das ist im Kontext von Job-Skripten besonders kritisch, da sich ggf. Jobs "überholen" oder parallel ablaufen könnten. In solchen Fällen kontaktieren Sie bitte den DEXPRO Support, damit gemeinsam evaluiert werden kann, ob eine Sonderanpassung notwendig ist.